/* ═══ consultoria_dark.css — loads AFTER dark_base.css ═══ */
/* ── header ── */
.hd{position:relative;overflow:hidden;padding:170px 0 0}
.hd::after{content:'';position:absolute;top:-14%;left:50%;width:1100px;height:1000px;margin-left:-550px;
    pointer-events:none;border-radius:50%;opacity:.6;
    background:radial-gradient(circle,rgba(255,183,77,.10) 0%,rgba(255,183,77,0) 62%)}
.hd-h1{font-size:64px;font-weight:100;letter-spacing:-.04em;line-height:1.06;margin:0 0 28px;
    max-width:24ch;color:#fff}
.hd-h1 em{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400;
    color:var(--fx-amber);letter-spacing:-.02em}
.hd-p{font-size:21px;font-weight:200;line-height:1.62;color:rgba(242,247,244,.66);max-width:44ch;margin:0;
    letter-spacing:-.005em}
.hd-p b{font-weight:400;color:var(--fx-ink)}
.hd-facts{display:flex;gap:0;margin:56px 0 0;border-top:1px solid var(--cs-line);border-bottom:1px solid var(--cs-line)}
.hd-fact{flex:1;padding:22px 6px;border-right:1px solid var(--cs-line)}
.hd-fact:last-child{border-right:none}
.hd-fact-n{font-size:30px;font-weight:200;letter-spacing:-.03em;color:var(--fx-amber);line-height:1}
.hd-fact-l{font-size:11px;font-weight:300;color:var(--fx-hint);margin-top:9px;line-height:1.5;max-width:24ch}


.rc{padding:106px 0 0}
.rc-t{font-size:38px;font-weight:200;letter-spacing:-.03em;line-height:1.14;margin:0 0 16px;color:var(--fx-ink);max-width:22ch}
.rc-p{font-size:15.5px;font-weight:300;line-height:1.88;color:var(--fx-muted);max-width:60ch;margin:0 0 48px}
.rc-heads{display:grid;grid-template-columns:1fr 92px 1fr;margin-bottom:20px;align-items:end}
.rc-h{font-size:10px;text-transform:uppercase;letter-spacing:.2em;font-weight:600;padding-bottom:12px;
    border-bottom:1px solid var(--fx-line-soft)}
.rc-h--s{color:rgba(255,183,77,.8);border-bottom-color:var(--cs-line)}
.rc-h--d{color:rgba(23,185,128,.85);border-bottom-color:rgba(23,185,128,.3);text-align:right}
.rc-h--m{border:none}

/* ── how a session runs ── */
.hw{padding:104px 0 0;margin-top:66px;border-top:1px solid var(--fx-line-soft)}
.hw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--fx-line-soft);
    border:1px solid var(--fx-line-soft);border-radius:var(--fx-radius);overflow:hidden;margin-top:44px}
.ph{background:var(--cs-ground);padding:30px 26px 32px;display:flex;flex-direction:column;gap:16px}
.ph-k{display:flex;align-items:center;gap:10px}
.ph-n{font-size:10px;font-weight:600;letter-spacing:.02em;color:#02220f;background:var(--fx-amber);
    width:22px;height:22px;border-radius:6px;display:grid;place-items:center}
.ph-w{font-size:9.5px;text-transform:uppercase;letter-spacing:.18em;font-weight:600;color:var(--fx-hint)}
.ph-t{font-size:22px;font-weight:200;letter-spacing:-.02em;color:var(--fx-ink);margin:0;line-height:1.25}
.ph-p{font-size:13.5px;font-weight:300;line-height:1.8;color:var(--fx-muted);margin:0}
.ph-list{display:flex;flex-direction:column;border-top:1px solid var(--fx-line-soft);margin-top:auto}
.ph-li{font-size:12.5px;font-weight:300;line-height:1.6;color:rgba(242,247,244,.64);padding:12px 0 12px 20px;
    border-bottom:1px solid var(--fx-line-soft);position:relative}
.ph-li:last-child{border-bottom:none}
.ph-li::before{content:'';position:absolute;left:0;top:19px;width:7px;height:1px;background:var(--fx-amber);opacity:.75}
.ph-li i{font-style:normal;color:var(--fx-violet)}

/* ── who ── */
.me{padding:104px 0 0;margin-top:66px;border-top:1px solid var(--fx-line-soft)}
.me-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start;margin-top:44px}
.me-photo{position:relative;aspect-ratio:4/5;border-radius:var(--fx-radius);overflow:hidden;
    border:1px solid var(--cs-line);
    background:linear-gradient(165deg,rgba(255,183,77,.16) 0%,rgba(23,185,128,.10) 100%);
    display:grid;place-items:center}
.me-photo img{width:100%;height:100%;object-fit:cover;display:block}
.me-photo span{font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:600;
    color:rgba(242,247,244,.35);text-align:center;padding:0 20px;line-height:1.7}
.me-t{font-size:32px;font-weight:200;letter-spacing:-.03em;line-height:1.16;margin:0 0 18px;color:var(--fx-ink)}
.me-p{font-size:15px;font-weight:300;line-height:1.9;color:var(--fx-muted);margin:0 0 18px;max-width:52ch}
.me-p strong{font-weight:400;color:var(--fx-ink)}
.me-creds{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--fx-line-soft);
    border:1px solid var(--fx-line-soft);border-radius:12px;overflow:hidden;margin-top:28px}
.cr{background:var(--cs-ground);padding:17px 18px}
.cr-t{font-size:13px;font-weight:400;color:var(--fx-ink);line-height:1.35}
.cr-s{font-size:11px;font-weight:300;color:var(--fx-hint);margin-top:5px;line-height:1.5}

/* ── topics ── */
.tp{padding:104px 0 0;margin-top:66px;border-top:1px solid var(--fx-line-soft)}
.tp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--fx-line-soft);
    border:1px solid var(--fx-line-soft);border-radius:var(--fx-radius);overflow:hidden;margin-top:40px}
.cs-topic{background:var(--cs-ground);padding:28px 24px;transition:background .4s ease}
.cs-topic:hover{background:rgba(255,183,77,.045)}
.cs-topic-n{font-size:9px;letter-spacing:.2em;font-weight:600;color:rgba(255,183,77,.6);margin-bottom:14px}
.cs-topic-t{font-size:17px;font-weight:400;color:var(--fx-ink);margin:0 0 10px;line-height:1.3}
.cs-topic-p{font-size:13px;font-weight:300;line-height:1.7;color:var(--fx-muted);margin:0}


.rv{padding:104px 0 0;margin-top:66px;border-top:1px solid var(--fx-line-soft)}
.rv-head{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;flex-wrap:wrap;margin-bottom:34px}
.rv-t{font-size:32px;font-weight:200;letter-spacing:-.03em;line-height:1.16;margin:14px 0 0;color:var(--fx-ink);max-width:20ch}
.rv-sc{display:flex;align-items:baseline;gap:12px}
.rv-sc-n{font-size:38px;font-weight:200;letter-spacing:-.03em;color:var(--fx-amber);line-height:1}
.rv-sc-m{font-size:12px;font-weight:300;line-height:1.6;color:var(--fx-muted)}
.rv-sc-m strong{font-weight:500;color:var(--fx-ink)}

.rv-stage{height:640px}

/* ── price strip ── */
.pr{padding:104px 0 0;margin-top:66px;border-top:1px solid var(--fx-line-soft)}
.pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}
.pr-c{border:1px solid var(--fx-line-soft);border-radius:var(--fx-radius);padding:26px 24px;
    display:flex;flex-direction:column;gap:12px;background:rgba(255,255,255,.02)}
.pr-c--best{border-color:var(--cs-line);background:rgba(255,183,77,.055)}
.pr-k{font-size:9px;text-transform:uppercase;letter-spacing:.18em;font-weight:600;color:var(--fx-hint)}
.pr-c--best .pr-k{color:rgba(255,183,77,.95)}
.pr-n{font-size:29px;font-weight:200;letter-spacing:-.03em;color:#fff;line-height:1;font-variant-numeric:tabular-nums}
.pr-u{font-size:11.5px;font-weight:300;color:var(--fx-hint);margin:0}
.pr-d{font-size:12.5px;font-weight:300;line-height:1.7;color:var(--fx-muted);margin:0;flex:1}
.pr-off{display:inline-block;font-size:9.5px;font-weight:600;color:#02220f;background:var(--fx-amber);
    padding:2px 8px;border-radius:100px;margin-left:8px}
.pr-note{margin:22px 0 0;font-size:12.5px;font-weight:300;color:var(--fx-hint)}
.pr-note a{color:rgba(255,183,77,.9);text-decoration:none;border-bottom:1px solid rgba(255,183,77,.3)}


/* ── closing ── */
.cl{margin-top:96px;padding:60px 0 130px;border-top:1px solid var(--fx-line-soft);
    display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.cl-t{font-size:27px;font-weight:200;line-height:1.38;color:var(--fx-ink);max-width:24ch;margin:0}
.cl-t em{font-family:Georgia,'Times New Roman',serif;font-style:italic;color:var(--fx-amber)}
.cl-a{display:flex;gap:11px;flex-wrap:wrap;align-items:center}
.cta{font-size:13px;font-weight:600;text-decoration:none;padding:15px 28px;border-radius:10px;transition:all .3s}
.cta--amber{background:var(--fx-amber);color:#02220f}
.cta--amber:hover{background:#FFC978}
.cta--ghost{border:1px solid var(--fx-line);color:var(--fx-muted)}
.cta--ghost:hover{border-color:rgba(255,255,255,.3);color:var(--fx-ink)}


/* ── responsive ── */
@media(max-width:1199.98px){
    .hd-h1{font-size:46px}
    .rc-t{font-size:32px}
    .me-grid{gap:36px}
}
@media(max-width:991.98px){
    .wrap{padding:0 24px}
    .nav-links{display:none}
    .hd{padding-top:118px}
    .hd-h1{font-size:34px;max-width:none}
    .hd-p{font-size:18px;max-width:none}
    .hd-facts{flex-wrap:wrap}
    .hd-fact{flex:1 0 50%;border-bottom:1px solid var(--cs-line)}
    .hd-fact:nth-child(2n){border-right:none}
    .rc-heads{display:none}
    .cs-pair{grid-template-columns:1fr;padding:16px 0 24px}
    .cs-seam{min-height:0;height:42px;transform:rotate(90deg)}
    .hw-grid,.tp-grid,.pr-grid{grid-template-columns:1fr}
    .me-grid{grid-template-columns:1fr}
    .me-photo{max-width:280px}
    .rv-stage{grid-template-columns:1fr;height:470px}
    .rv-stage .rv-col:nth-child(n+2){display:none}
    .rc,.hw,.me,.tp,.rv,.pr,.fq{padding-top:70px;margin-top:44px}
    .rc-t,.me-t,.rv-t{font-size:26px}
    .cl{margin-top:62px;padding-bottom:90px}
    .cl-t{font-size:22px;max-width:none}
}
@media(max-width:575.98px){
    .hd-h1{font-size:29px}
    .cs-said,.rv-q{font-size:15.5px}
    .me-creds{grid-template-columns:1fr}
}


/* ═══ V2.1 · números grandes da consultoria — append only ═══
   Mesmo ajuste do index: o peso 200 é o que os fazia sumir no fundo. ── */
.hd-fact-n{font-size:38px;font-weight:300}
.pr-n{font-size:36px;font-weight:300}
.rv-sc-n{font-size:46px;font-weight:300}
@media(max-width:991.98px){
    .hd-fact-n{font-size:32px}
    .pr-n{font-size:31px}
    .rv-sc-n{font-size:38px}
}
@media(max-width:575.98px){
    .hd-fact-n{font-size:28px}
    .pr-n{font-size:28px}
    .rv-sc-n{font-size:33px}
}


/* ═══ V2.3 · revisão completa — append only ═══ */
/* peso 100 cintila em telas não-retina; 200 é visualmente igual e estável */
.hd-h1{font-weight:200}
/* legenda da foto sobre o gradiente: media 3.03:1 */
.me-photo span{color:var(--fx-hint)}


/* ═══ V2.5 · reveal + wipe do <em> — append only ═══
   Mesma gramática do index: o <em> nasce cinza legível e é
   "pintado" pelo gradiente conforme entra na tela. O itálico
   serifado do .hd-h1 em e do .cl-t em é preservado. ── */
@supports ((-webkit-background-clip:text) or (background-clip:text)){
    .hd-h1 em,.cl-t em,.rc-t em{
        background-repeat:no-repeat;
        -webkit-background-clip:text;background-clip:text;
        color:transparent;
        background-size:100% 100%,100% 100%;
        transition:background-size 1.15s var(--fx-ease) .15s}
    .hd-h1 em,.cl-t em,.rc-t em{
        background-image:
            linear-gradient(96deg,var(--fx-amber) 0%,#FFD9A3 55%,var(--fx-amber) 100%),
            linear-gradient(rgba(242,247,244,.46),rgba(242,247,244,.46))}

    .fx-reveal .hd-h1 em,.fx-reveal .cl-t em,.fx-reveal .rc-t em{background-size:0% 100%,100% 100%}
    .fx-reveal .hd-h1.is-rev em,.fx-reveal .cl-t.is-rev em,
    .fx-reveal .rc-t.is-rev em{background-size:100% 100%,100% 100%}
}
@media (prefers-reduced-motion:reduce){
    .fx-reveal .hd-h1 em,.fx-reveal .cl-t em,.fx-reveal .rc-t em{
        background-size:100% 100%,100% 100%;transition:none}
}
