/*
 * fundadores.css — design das páginas "O Chamado dos Fundadores" (teste/alpha) e
 * "O Salão dos Fundadores" (galeria de apoiadores). Fonte do layout: os HTML
 * aprovados em docs/paginas-fundadores/. TUDO escopado em .fd-page pra conviver
 * com o cabeçalho/rodapé padrão do site sem colisão de tokens/classes.
 * Fontes (Cinzel + Crimson Text) já vêm do head padrão.
 */

.fd-page{
  --bg:#0a0908; --bg-2:#0d0b0a; --surface:#131110;
  --iron:#35302a; --iron-hi:#574f43; --iron-deep:#1a1613; --iron-line:rgba(122,110,92,.30);
  --ember:#c4652f; --ember-hi:#e89256; --blood:#7c2a1c;
  --bone:#d6cdbb; --bone-dim:#a99f8c; --ash:#837a69; --muted:#5f5748;
  --gold:#e2ad3c; --gold-hi:#f4d379; --gold-deep:#7c5c18;
  --wa:#25d366; --wa-hi:#33e074; --wa-deep:#159c49;
  --discord:#5865f2; --discord-hi:#7983f5; --discord-deep:#3b45c4;
  --seam:#000; --shadow:0 26px 64px -20px rgba(0,0,0,.9);
  --fd:'Cinzel',Georgia,serif; --fb:'Crimson Text',Georgia,serif;
  background:var(--bg); color:var(--bone-dim);
  font-family:var(--fb); font-size:1.15rem; line-height:1.62;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.fd-page *{box-sizing:border-box}
.fd-page img{max-width:100%;height:auto;display:block}
.fd-page a{color:inherit;text-decoration:none}
.fd-page h1,.fd-page h2,.fd-page h3{font-family:var(--fd);color:var(--bone);font-weight:700;line-height:1.16;text-wrap:balance;margin:0}
.fd-page h4{margin:0}
.fd-page p{margin:0}
.fd-page strong{color:var(--bone)}
.fd-page ::selection{background:rgba(226,173,60,.30);color:#fff}
.fd-page .wrap{max-width:1080px;margin:0 auto;padding:0 1.4rem}
.fd-page .eyebrow{font-family:var(--fd);font-weight:700;text-transform:uppercase;letter-spacing:.42em;font-size:.8rem;color:var(--gold);display:inline-flex;align-items:center;gap:.9em}
.fd-page .eyebrow::before,.fd-page .eyebrow::after{content:"";width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-deep))}
.fd-page .eyebrow.solo::before{display:none}

/* ---- botoes ---- */
.fd-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--fd);font-weight:700;font-size:1.02rem;letter-spacing:.05em;border-radius:2px;padding:.9rem 1.7rem;cursor:pointer;transition:filter .2s,box-shadow .2s,transform .12s;text-align:center}
.fd-page .btn:active{transform:translateY(1px)}
.fd-page .btn-gold{color:#f2c73f;background:linear-gradient(180deg,#212125 0%,#141416 44%,#0a0a0b 78%,#050506 100%);border:1px solid #4a3a17;text-shadow:0 1px 2px rgba(0,0,0,.9);box-shadow:0 10px 26px -8px rgba(0,0,0,.85),inset 0 1px 0 rgba(244,211,121,.14)}
.fd-page .btn-gold:hover{filter:brightness(1.14);box-shadow:0 12px 30px -8px rgba(0,0,0,.9),0 0 22px -8px rgba(226,173,60,.5),inset 0 1px 0 rgba(244,211,121,.2)}
.fd-page .btn-ghost{color:var(--bone);background:linear-gradient(180deg,rgba(30,28,25,.6),rgba(10,9,8,.6));border:1px solid var(--iron);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.fd-page .btn-ghost:hover{border-color:var(--gold-deep);color:var(--gold-hi)}
.fd-page .btn-wa{color:#08340f;background:linear-gradient(180deg,var(--wa-hi),var(--wa) 48%,var(--wa-deep));border:1px solid #1c7d3e;text-shadow:0 1px 0 rgba(255,255,255,.18);box-shadow:0 8px 20px -8px rgba(0,0,0,.6),0 0 16px -6px rgba(37,211,102,.4),inset 0 1px 0 rgba(255,255,255,.35)}
.fd-page .btn-wa:hover{filter:brightness(1.07)}
.fd-page .btn-discord{color:#eef0ff;background:linear-gradient(180deg,var(--discord-hi),var(--discord) 52%,var(--discord-deep));border:1px solid #2b34a8;text-shadow:0 1px 1px rgba(0,0,0,.35);box-shadow:0 8px 20px -8px rgba(0,0,0,.6),0 0 16px -7px rgba(88,101,242,.5),inset 0 1px 0 rgba(255,255,255,.25)}
.fd-page .btn-discord:hover{filter:brightness(1.08)}
.fd-page .btn-lg{font-size:1.1rem;padding:1.05rem 2.1rem}

/* ---- texturas / secoes ---- */
.fd-page section{position:relative;padding:clamp(3.4rem,8vw,6rem) 0}
.fd-page .seam{position:absolute;top:0;left:0;right:0;height:clamp(60px,9vh,120px);background:linear-gradient(180deg,var(--seam),transparent);pointer-events:none;z-index:1}
.fd-page .leather{background:linear-gradient(180deg,rgba(8,6,5,.72),rgba(8,6,5,.5) 40%,rgba(8,6,5,.78)),url('/images/lp/leather-texture.webp');background-size:cover,560px 560px;background-repeat:no-repeat,repeat}
.fd-page .stone{background:linear-gradient(180deg,rgba(10,9,8,.7),rgba(10,9,8,.82)),url('/images/lp/panel-texture.webp');background-size:cover,480px 480px}
.fd-page .sec-head{text-align:center;max-width:46rem;margin:0 auto 2.8rem}
.fd-page .sec-head h2{font-size:clamp(1.8rem,4.2vw,2.8rem);margin-top:.8rem}
.fd-page .sec-head p{margin-top:1rem;color:var(--bone-dim)}
.fd-page .lead-lg{font-size:1.22rem;color:var(--bone-dim)}

/* ---- alerta topo ---- */
.fd-page .alertbar{background:linear-gradient(180deg,#1c0f0b,#140b08);border-bottom:1px solid var(--blood);color:var(--gold-hi);font-family:var(--fd);font-weight:700;letter-spacing:.24em;text-transform:uppercase;font-size:.82rem;text-align:center;padding:.7rem 1rem;position:relative;z-index:5}
.fd-page .alertbar span{color:var(--ember-hi)}

/* ---- hero (compartilhado) ---- */
.fd-page .hero{position:relative;display:grid;align-items:center;isolation:isolate;overflow:hidden;padding:clamp(2.5rem,6vw,5rem) 0}
.fd-page .hero__bg{position:absolute;inset:0;z-index:-3;background-size:cover;transform:scale(1.05)}
.fd-page .hero__scrim{position:absolute;inset:0;z-index:-2}
.fd-page .hero__inner{position:relative;text-align:center;max-width:820px;margin:0 auto}
.fd-page .hero h1{color:#f0e7d3;text-shadow:0 4px 30px rgba(0,0,0,.8)}
/* teste */
.fd-page--teste .hero{min-height:92svh}
.fd-page--teste .hero__bg{background-image:url('/images/cena-de-aventura/aventura-001-a-furia-de-skultu/cena22.webp');background-position:50% 42%;filter:saturate(.8) brightness(.6) contrast(1.1)}
.fd-page--teste .hero__scrim{background:
  radial-gradient(60% 55% at 50% 42%,rgba(255,150,50,.14),transparent 60%),
  radial-gradient(135% 120% at 50% 42%,transparent 30%,rgba(0,0,0,.5) 74%,rgba(2,1,0,.94) 100%),
  linear-gradient(0deg,rgba(3,2,1,.96) 2%,rgba(3,2,1,.4) 34%,transparent 60%)}
.fd-page--teste .hero h1{font-size:clamp(2.5rem,7vw,4.6rem);letter-spacing:.01em}
.fd-page .hero h1 .em{color:var(--gold);display:block;font-size:.42em;letter-spacing:.34em;text-transform:uppercase;margin-bottom:.9rem}
.fd-page .hero__lead{font-size:clamp(1.15rem,2.4vw,1.42rem);color:var(--bone);margin:1.5rem auto 0;max-width:44rem}
.fd-page .hero__cta{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:2.4rem}
.fd-page .hero__note{margin-top:1.5rem;font-size:.95rem;color:var(--ash);font-style:italic}
/* salao */
.fd-page--hall .hero{min-height:74svh;text-align:center;padding:clamp(3rem,7vw,6rem) 0}
.fd-page--hall .hero__bg{background-image:url('/images/cena-de-aventura/aventura-001-a-furia-de-skultu/cena15.webp');background-position:50% 46%;filter:saturate(.78) brightness(.5) contrast(1.12)}
.fd-page--hall .hero__scrim{background:radial-gradient(120% 120% at 50% 40%,transparent 24%,rgba(0,0,0,.55) 70%,rgba(2,1,0,.95) 100%),linear-gradient(0deg,rgba(3,2,1,.96) 2%,rgba(3,2,1,.35) 40%,transparent 66%)}
.fd-page--hall .hero h1{font-size:clamp(2.2rem,6vw,4rem);margin:1.2rem auto 0;max-width:20ch}
.fd-page--hall .hero p{font-size:clamp(1.1rem,2.2vw,1.34rem);color:var(--bone);max-width:44rem;margin:1.4rem auto 0}
.fd-page--hall .hero .small{margin-top:1.4rem;color:var(--ash);font-style:italic;font-size:1rem}

/* ---- moldura de arte ---- */
.fd-page .frame{position:relative;border:1px solid var(--iron);padding:8px;background:linear-gradient(180deg,#16130f,#0c0a08);box-shadow:var(--shadow)}
.fd-page .frame::after{content:"";position:absolute;inset:3px;border:1px solid var(--iron-line);pointer-events:none}
.fd-page .frame img{width:100%}
.fd-page .frame.tilt{transform:rotate(-1.1deg)}
.fd-page .frame.tilt2{transform:rotate(1deg)}

/* ---- bloco texto+arte ---- */
.fd-page .feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.6rem,4vw,3.2rem);align-items:center}
.fd-page .feature.rev .txt{order:2}.fd-page .feature.rev .art{order:1}
.fd-page .feature h3{font-size:1.5rem;color:var(--gold-hi);margin-bottom:.7rem}
.fd-page .feature p+p{margin-top:.9rem}
.fd-page .portrait{max-width:340px;margin:0 auto}

/* ---- cards ganhar pontos ---- */
.fd-page .earn{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:.6rem}
.fd-page .earn-card{background:linear-gradient(180deg,rgba(19,17,16,.9),rgba(10,9,8,.9));border:1px solid var(--iron);padding:1.6rem 1.3rem;text-align:center;position:relative}
.fd-page .earn-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--gold-deep),transparent)}
.fd-page .earn-card .ic{font-size:1.9rem;margin-bottom:.5rem}
.fd-page .earn-card h4{font-family:var(--fd);color:var(--bone);font-size:1.12rem;letter-spacing:.03em}
.fd-page .earn-card .pts{font-family:var(--fd);color:var(--gold-hi);font-size:1.05rem;font-weight:700;margin-top:.5rem}
.fd-page .earn-card p{font-size:.98rem;color:var(--ash);margin-top:.5rem}

/* ---- escada de conquistas ---- */
.fd-page .ladder{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:.85rem}
.fd-page .rank{display:grid;grid-template-columns:auto 1fr;gap:1.3rem;align-items:center;background:linear-gradient(180deg,rgba(21,18,16,.92),rgba(11,10,9,.92));border:1px solid var(--iron);border-left:3px solid var(--iron-hi);padding:1.15rem 1.4rem;transition:border-color .2s,transform .2s}
.fd-page .rank:hover{transform:translateX(4px)}
.fd-page .rank__seal{flex:0 0 76px;width:76px;display:flex;flex-direction:column;align-items:center;gap:.45rem}
.fd-page .rank__seal .num{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-family:var(--fd);font-weight:700;color:var(--gold-hi);font-size:1.55rem;background:radial-gradient(circle at 50% 35%,#2a241a,#100d09);border:2px solid var(--gold-deep);box-shadow:inset 0 2px 8px rgba(0,0,0,.8),0 0 14px -6px rgba(226,173,60,.5)}
.fd-page .rank__seal .unit{font-family:var(--fd);font-size:.64rem;letter-spacing:.1em;color:var(--ash);text-transform:uppercase;text-align:center;line-height:1.18}
.fd-page .rank__body h4{font-family:var(--fd);color:var(--gold-hi);font-size:1.14rem;letter-spacing:.02em;margin-bottom:.25rem}
.fd-page .rank__body p{font-size:1rem;color:var(--bone-dim);line-height:1.5}
.fd-page .rank__body .k{color:var(--gold);font-weight:600}
.fd-page .hall-link{color:var(--gold-hi);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--gold-deep);transition:.2s}
.fd-page .hall-link:hover{text-decoration-color:var(--gold-hi)}
.fd-page .adv{display:block;margin-top:.6rem;padding-top:.55rem;border-top:1px solid var(--iron-line);font-family:var(--fd);color:var(--gold-hi);font-weight:700;font-size:1.05rem;letter-spacing:.02em}
.fd-page .adv + .adv{border-top:none;margin-top:.3rem;padding-top:0}
.fd-page .rank.crown{border-left-color:var(--gold);background:linear-gradient(180deg,rgba(32,25,14,.92),rgba(15,12,8,.94));box-shadow:0 0 30px -14px rgba(226,173,60,.5)}
.fd-page .rank.crown .rank__seal .num{border-color:var(--gold);color:#fff;background:radial-gradient(circle at 50% 35%,#4a3a15,#160f06)}
.fd-page .vagas{display:inline-block;font-family:var(--fd);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#120c05;background:linear-gradient(180deg,var(--gold-hi),var(--gold-deep));padding:.22rem .6rem;border-radius:2px;margin-left:.5rem;vertical-align:middle;font-weight:700}
.fd-page .ladder-note{text-align:center;color:var(--ash);font-style:italic;margin-top:1.4rem;font-size:.98rem}
.fd-page .divider-mini{display:flex;justify-content:center;gap:1.5rem;margin:2.2rem 0 1.4rem;opacity:.9}
.fd-page .divider-mini img{width:52px;height:auto;filter:drop-shadow(0 6px 10px rgba(0,0,0,.7))}
.fd-page .zone-label{text-align:center;font-family:var(--fd);text-transform:uppercase;letter-spacing:.28em;font-size:.86rem;color:var(--gold);margin:2.6rem 0 1.2rem}
.fd-page .zone-sub{text-align:center;color:var(--bone-dim);font-size:clamp(1.4rem,3.4vw,1.85rem);line-height:1.35;margin:-.2rem 0 2rem}

/* ---- urgencia ---- */
.fd-page .urgent{max-width:720px;margin:2.8rem auto 0;text-align:center;border:1px solid var(--blood);background:linear-gradient(180deg,rgba(28,15,11,.7),rgba(16,9,7,.7));padding:1.6rem 1.4rem;border-radius:2px}
.fd-page .urgent p{color:var(--bone);font-size:1.15rem}
.fd-page .urgent strong{color:var(--ember-hi)}

/* ---- pix ---- */
.fd-page .pix{display:grid;grid-template-columns:auto 1fr;gap:2.2rem;align-items:center;max-width:760px;margin:0 auto;background:linear-gradient(180deg,rgba(19,17,16,.92),rgba(10,9,8,.92));border:1px solid var(--iron);padding:1.8rem;box-shadow:var(--shadow)}
.fd-page .pix__qr{width:190px;height:190px;flex:0 0 190px;border:1px solid var(--iron-hi);background:#fff;display:grid;place-items:center;padding:10px}
.fd-page .pix__qr img{width:100%;height:100%;object-fit:contain}
.fd-page .pix h3{color:var(--gold-hi);font-size:1.4rem;margin-bottom:.5rem}
.fd-page .pix-emph{font-family:var(--fd);color:var(--gold-hi);text-transform:uppercase;letter-spacing:.1em;font-size:1rem;margin:.15rem 0 .55rem}
.fd-page .pix .key{margin-top:1rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.fd-page .pix .keybox{font-family:var(--fb);color:var(--bone);background:rgba(0,0,0,.5);border:1px solid var(--iron);padding:.55rem .8rem;border-radius:2px;font-size:1.02rem}
.fd-page .copybtn{font-family:var(--fd);font-size:.82rem;letter-spacing:.06em;color:var(--gold-hi);background:transparent;border:1px solid var(--gold-deep);border-radius:2px;padding:.5rem .8rem;cursor:pointer;transition:.2s}
.fd-page .copybtn:hover{background:rgba(226,173,60,.12)}
.fd-page .fine{max-width:46rem;margin:1.5rem auto 0;text-align:center;font-size:.86rem;line-height:1.5;color:var(--muted);font-style:italic}

/* ---- passos ---- */
.fd-page .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;counter-reset:s}
.fd-page .step{background:linear-gradient(180deg,rgba(19,17,16,.9),rgba(10,9,8,.9));border:1px solid var(--iron);padding:1.6rem 1.4rem;position:relative}
.fd-page .step::before{counter-increment:s;content:counter(s);font-family:var(--fd);font-weight:700;color:var(--gold);font-size:2.4rem;line-height:1;opacity:.5;display:block;margin-bottom:.5rem}
.fd-page .step h4{font-family:var(--fd);color:var(--bone);font-size:1.1rem;margin-bottom:.4rem}
.fd-page .step p{font-size:.98rem;color:var(--ash)}
.fd-page .submit-cta{text-align:center;margin-top:2rem}
.fd-page .submit-cta .btn{margin:.4rem}

/* ---- mod ---- */
.fd-page .mod{max-width:720px;margin:0 auto;text-align:center}
.fd-page .mod p{color:var(--bone-dim)}

/* ---- cta final ---- */
.fd-page .finalcta{text-align:center}
.fd-page .finalcta h2{font-size:clamp(2rem,5vw,3.2rem);color:#f0e7d3}
.fd-page .finalcta .kicker{color:var(--ember-hi);font-family:var(--fd);letter-spacing:.2em;text-transform:uppercase;font-size:.9rem;display:block;margin-bottom:1rem}
.fd-page .finalcta .btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:2rem}

/* ================= Salão dos Fundadores ================= */
.fd-page .hall-head{text-align:center;margin-bottom:2.6rem}
.fd-page .hall-head h2{font-size:clamp(1.7rem,4.2vw,2.6rem);margin-top:.7rem}
.fd-page .hall-head p{margin-top:.7rem;color:var(--bone-dim)}
.fd-page .founder{display:flex;flex-direction:column;align-items:center;gap:.85rem}
.fd-page .founder__frame{position:relative;border:1px solid var(--iron);padding:7px;background:linear-gradient(180deg,#16130f,#0c0a08);box-shadow:var(--shadow)}
.fd-page .founder__frame::after{content:"";position:absolute;inset:3px;border:1px solid var(--iron-line);pointer-events:none}
.fd-page .founder__ph{aspect-ratio:1;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 36%,#1b1712,#0a0806);color:#332d24}
.fd-page .founder__ph svg{width:54%;height:54%;opacity:.85}
/* Retrato do PERSONAGEM (img[data-race]): mesma calibração por raça do jogo
   (MnP_PortraitOffsets em session.blade), pra emoldurar o rosto em vez de cortar a cabeça.
   objPos = object-position%, scale 2.94, translateY por raça (altura). O avatar próprio do
   dashboard NÃO tem data-race, então usa o recorte simples (foto do usuário). */
.fd-page .founder__ph img[data-race]{transform-origin:top center}
.fd-page .founder__ph img[data-race="dragonborn"]{object-position:50% .1%;transform:scale(2.94) translateY(-10%)}
.fd-page .founder__ph img[data-race="orc"]{object-position:50% 9.3%;transform:scale(2.94) translateY(-8%)}
.fd-page .founder__ph img[data-race="human"]{object-position:50% 11.8%;transform:scale(2.94) translateY(-10%)}
.fd-page .founder__ph img[data-race="tiefling"]{object-position:50% 13%;transform:scale(2.94) translateY(-10%)}
.fd-page .founder__ph img[data-race="half-elf"]{object-position:50% 17.4%;transform:scale(2.94) translateY(-15%)}
.fd-page .founder__ph img[data-race="elf"]{object-position:50% 19.3%;transform:scale(2.94) translateY(-20%)}
.fd-page .founder__ph img[data-race="dwarf"]{object-position:50% 27.5%;transform:scale(2.94) translateY(-25%)}
.fd-page .founder__ph img[data-race="gnome"]{object-position:50% 28.5%;transform:scale(2.94) translateY(-37%)}
.fd-page .founder__ph img[data-race="halfling"]{object-position:50% 39.9%;transform:scale(2.94) translateY(-36%)}
.fd-page .founder__name{text-align:center;font-family:var(--fd);color:var(--bone);font-size:1rem;line-height:1.3}
.fd-page .founder__name span{display:block;font-size:.78rem;color:var(--ash);letter-spacing:.05em;margin-top:.18rem;font-family:var(--fb);font-style:italic}
.fd-page .king-wrap{display:flex;justify-content:center;isolation:isolate;position:relative}
.fd-page .king-wrap::before{content:"";position:absolute;width:min(560px,92vw);height:560px;top:-30px;left:50%;transform:translateX(-50%);z-index:-1;background:radial-gradient(circle,rgba(226,173,60,.17),transparent 60%);pointer-events:none}
.fd-page .crown-ico{width:60px;color:var(--gold-hi);margin:0 auto .7rem;filter:drop-shadow(0 4px 12px rgba(0,0,0,.7))}
.fd-page .tier-king .founder__frame{width:min(300px,82vw);border-color:var(--gold);box-shadow:0 0 54px -14px rgba(226,173,60,.6),var(--shadow)}
.fd-page .tier-king .founder__frame::after{border-color:var(--gold-deep)}
.fd-page .tier-king .founder__name{font-size:1.35rem}
.fd-page .tier-label{font-family:var(--fd);text-transform:uppercase;letter-spacing:.22em;font-size:.82rem;color:var(--gold);margin-top:.2rem}
.fd-page .row{display:flex;gap:clamp(1.4rem,4vw,3rem);justify-content:center;flex-wrap:wrap;align-items:flex-start}
.fd-page .tier-lord .founder__frame{width:min(240px,62vw);border-color:var(--gold-deep);box-shadow:0 0 30px -16px rgba(226,173,60,.5),var(--shadow)}
.fd-page .tier-champ .founder__frame{width:min(180px,40vw)}
.fd-page .tier-lord .founder__name{font-size:1.12rem}
.fd-page .founders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1.4rem;max-width:900px;margin:0 auto}
.fd-page .tier-group{margin-top:2.8rem}
.fd-page .tier-group:first-child{margin-top:0}
.fd-page .tier-group-label{text-align:center;font-family:var(--fd);color:var(--gold-hi);text-transform:uppercase;letter-spacing:.18em;font-size:1rem;margin-bottom:1.3rem}
.fd-page .tier-group-label::after{content:"";display:block;width:64px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-deep),transparent);margin:.6rem auto 0}
.fd-page .tier-founder .founder__name{font-size:.9rem}
.fd-page .tier-founder .founder__name span{font-size:.72rem}
/* ---- Top Recrutadores (quem mais convidou) ---- */
.fd-page .recruiters{list-style:none;max-width:560px;margin:0 auto;padding:0;display:flex;flex-direction:column;gap:.6rem}
.fd-page .recruiter{display:flex;align-items:center;gap:1rem;padding:.85rem 1.1rem;background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.22));border:1px solid var(--iron);border-radius:3px}
.fd-page .recruiter__rank{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;font-family:var(--fd);font-weight:700;color:var(--gold-hi);background:radial-gradient(circle,rgba(226,173,60,.16),transparent 70%);border:1px solid var(--gold-deep);border-radius:50%;font-size:.95rem}
.fd-page .recruiter__name{flex:1 1 auto;font-family:var(--fd);color:var(--bone);font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fd-page .recruiter__count{flex:0 0 auto;font-family:var(--fb);font-style:italic;color:var(--ash);font-size:.92rem}
.fd-page .recruiter:first-child{border-color:var(--gold-deep)}
.fd-page .recruiter:first-child .recruiter__name{color:var(--gold-hi)}

.fd-page .hall-cta{text-align:center}
.fd-page .hall-cta h2{font-size:clamp(1.8rem,4.6vw,2.8rem);color:#f0e7d3}
.fd-page .hall-cta p{max-width:38rem;margin:1rem auto 0;color:var(--bone-dim)}
.fd-page .hall-cta .btn{margin-top:2rem}

/* ---- reveal ---- */
.fd-page .rv{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}
.fd-page .rv.in{opacity:1;transform:none}

@media(max-width:820px){
  .fd-page .feature,.fd-page .pix{grid-template-columns:1fr}
  .fd-page .feature.rev .txt{order:1}.fd-page .feature.rev .art{order:2}
  .fd-page .earn,.fd-page .steps{grid-template-columns:1fr}
  .fd-page .pix{text-align:center}.fd-page .pix__qr{margin:0 auto}.fd-page .pix .key,.fd-page .pix .keybox{justify-content:center}
  .fd-page .rank{grid-template-columns:1fr;text-align:center;justify-items:center}
}
@media(prefers-reduced-motion:reduce){.fd-page .rv{transition:none;opacity:1;transform:none}}
