/* Página de captação da Black Friday Aligner Class. Identidade da Plataforma (Geologica, serifa itálica nos destaques) com a linguagem da Black: grafite, dourado, o infinito do acesso vitalício e as três caixas dos cursos. Página escura por desenho, sem bibliotecas e com imagens embutidas e comprimidas. */
:root{
  color-scheme:dark;
  --bg:#08080A;
  --bg-2:#0E0F12;
  --line:rgba(255,255,255,.09);
  --line-2:rgba(255,255,255,.16);
  --ink:#F5F5F5;
  --ink-2:#C5C8CE;
  --muted:#8C919A;
  --gold:#C18604;
  --gold-2:#E0B04F;
  --gold-3:#F4D891;
  --f-sans:"Geologica","Segoe UI",system-ui,sans-serif;
  --f-serif:"Tinos","Times New Roman",Times,serif;
  --r:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--f-sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--gold-3)}
p{margin:0 0 14px;color:inherit}
li{color:inherit}
strong,b{font-weight:600;color:var(--ink)}
.wrap{max-width:1120px;margin:0 auto;padding-inline:24px}
.serif{font-family:var(--f-serif);font-style:italic;font-weight:400}
.gold-text{background:linear-gradient(180deg,#F8E2A6 0%,#E2B04F 48%,#B5800F 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.logo{display:block;width:96px;height:38px;background:url("../assets/imagens/bfac-logo-aligner-class.png") no-repeat left center/contain}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:16px 30px;border:0;border-radius:12px;cursor:pointer;text-decoration:none;text-align:center;
  font:800 15px/1.2 var(--f-sans);letter-spacing:.06em;text-transform:uppercase;color:#140E02;
  background:linear-gradient(180deg,#F4D891 0%,#E0B04F 45%,#C18604 100%);box-shadow:0 10px 30px rgba(224,176,79,.28),inset 0 1px 0 rgba(255,255,255,.5);transition:filter .2s,transform .2s}
.btn:hover{filter:brightness(1.07);transform:translateY(-1px)}
.btn:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--gold-3);outline-offset:3px}
.btn.ghost{color:var(--gold-3);background:transparent;border:1px solid rgba(224,176,79,.55);box-shadow:none}
.btn.ghost:hover{background:rgba(224,176,79,.08)}
.under{margin:12px 0 0;font-size:13.5px;color:var(--muted)}

/* abertura */
.hero{overflow:hidden;border-bottom:1px solid var(--line);background:
  radial-gradient(46% 42% at 80% 30%,rgba(224,176,79,.12),transparent 72%),
  radial-gradient(42% 32% at 74% 94%,rgba(193,134,4,.22),transparent 72%),
  radial-gradient(40% 60% at 0% 100%,rgba(255,255,255,.04),transparent 70%),
  linear-gradient(180deg,#0E0F12 0%,#08080A 100%)}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:22px 0}
.topbar .meta{font:600 11.5px/1.3 var(--f-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);text-align:right}
.hero-grid{display:grid;grid-template-columns:1.28fr .72fr;gap:36px;align-items:center;padding-block:26px 64px}
.hero-copy{min-width:0}
.eyebrow{display:flex;align-items:center;gap:12px;font:600 12.5px/1.4 var(--f-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2);margin:0}
.eyebrow svg{width:34px;height:17px;flex:none}
.rule{height:1px;max-width:440px;margin:16px 0 0;background:linear-gradient(90deg,var(--gold-2),rgba(224,176,79,.25) 70%,transparent)}
h1{font:800 clamp(30px,3.6vw,48px)/1.07 var(--f-sans);letter-spacing:-.025em;margin:22px 0 0;text-wrap:balance;color:var(--ink)}
h1 .gold-text{display:block;margin-top:4px}
.lead{font-size:17.5px;line-height:1.6;color:var(--ink-2);max-width:62ch;margin:18px 0 0}
.facts{display:flex;flex-direction:column;align-items:flex-start;gap:8px;list-style:none;padding:0;margin:22px 0 24px}
.facts li{display:flex;align-items:center;gap:10px;padding:10px 14px;white-space:nowrap;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018));font-size:15px;line-height:1.35;color:var(--ink)}
.facts svg{width:18px;height:18px;flex:none;color:var(--gold-2)}
.hero-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:600px}
.hero-form label{display:block;min-width:0}
.hero-form .f-nome,.hero-form .btn{grid-column:1 / -1}
.hero-form input{width:100%;min-height:52px;padding:14px 16px;border-radius:10px;border:1px solid var(--line-2);background:rgba(17,18,22,.9);color:var(--ink);font:400 16px/1.2 var(--f-sans)}
.hero-form input::placeholder{color:#7A7F88}
.hero-form input:focus{border-color:var(--gold-2)}
.hero-form .btn{width:100%}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.hero-visual{position:relative;width:100%;max-width:460px;aspect-ratio:4/5;justify-self:end}
.hero-visual .ph{position:absolute;inset:0 0 10% 0}
.hero-visual .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 8%;filter:brightness(.86) contrast(1.14) saturate(.9);
  -webkit-mask-image:radial-gradient(ellipse 50% 46% at 50% 44%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 50% 46% at 50% 44%,#000 60%,transparent 100%)}
.hero-visual::before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:30%;z-index:1;background:linear-gradient(180deg,rgba(6,6,7,0),rgba(6,6,7,.8) 55%,rgba(6,6,7,0))}
.hero-visual::after{content:"";position:absolute;left:6%;right:6%;bottom:3%;height:16%;z-index:1;border-radius:50%;background:radial-gradient(closest-side,rgba(226,176,79,.42),rgba(226,176,79,0));filter:blur(10px)}
.hero-visual .inf{position:absolute;left:-4%;width:108%;bottom:4%;height:30%;z-index:2;overflow:visible}
.hero-visual .inf.front{z-index:4;-webkit-mask-image:linear-gradient(180deg,transparent 52%,#000 60%);mask-image:linear-gradient(180deg,transparent 52%,#000 60%)}
.boxes{position:absolute;left:9%;right:9%;bottom:7%;z-index:3;display:flex;align-items:flex-end;justify-content:center;gap:3.5%}

/* caixas dos cursos */
.box{position:relative;flex:0 0 29%;aspect-ratio:.74;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;padding:14% 6% 0;container-type:inline-size;
  background:linear-gradient(158deg,#1E1F23 0%,#0D0D10 52%,#050506 100%);border:1px solid rgba(255,255,255,.11);box-shadow:0 22px 40px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.09)}
.box.c{flex-basis:35%;aspect-ratio:.8}
.box .l1{font:600 9.6cqw/1.15 var(--f-sans);letter-spacing:.07em;text-transform:uppercase;color:#ECECEC}
.box .l2{font:800 12.5cqw/1.05 var(--f-sans);text-transform:uppercase;color:var(--gold-2);margin-top:3%;letter-spacing:.01em}
.box .big{font:800 19cqw/1 var(--f-sans);color:#fff;letter-spacing:-.01em}
.box .big + .l2{text-transform:none}
.box svg.arch{width:78%;margin-top:auto;margin-bottom:22%}
.box svg.sw{position:absolute;left:0;right:0;bottom:7%;width:100%;height:18%}

/* seções */
section{padding-block:88px;border-bottom:1px solid var(--line)}
section.band{background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0) 70%)}
.kick{display:flex;align-items:center;gap:12px;font:600 12px/1.3 var(--f-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-2);margin:0 0 14px}
.kick::before{content:"";width:28px;height:1px;background:var(--gold-2);flex:none}
h2{font:800 clamp(27px,3.4vw,40px)/1.12 var(--f-sans);letter-spacing:-.02em;margin:0 0 22px;max-width:24ch;text-wrap:balance;color:var(--ink)}
.center{text-align:center}
.center .kick{justify-content:center}
.center h2{margin-inline:auto}
.prose{max-width:66ch;color:var(--ink-2)}
.cta-row{margin-top:36px}
h3{font:600 18.5px/1.3 var(--f-sans);margin:0 0 8px;color:var(--ink)}

.card{background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018));border:1px solid var(--line);border-radius:var(--r);padding:24px;min-width:0}
.card p{color:var(--ink-2);font-size:15.5px;line-height:1.6}
.card p:last-child{margin-bottom:0}
.card.gold{border-color:rgba(224,176,79,.5);background:linear-gradient(180deg,rgba(224,176,79,.13),rgba(224,176,79,.03))}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.n{display:block;font:italic 400 34px/1 var(--f-serif);color:var(--gold-2);margin:0 0 14px}

/* você se reconhece */
.pains{list-style:none;padding:0;margin:0;display:grid;gap:10px;max-width:760px}
.pains li{display:flex;gap:14px;align-items:flex-start;padding:15px 18px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);color:var(--ink-2)}
.pains li::before{content:"";flex:none;width:8px;height:8px;margin-top:.62em;border-radius:50%;background:var(--gold-2);box-shadow:0 0 0 4px rgba(224,176,79,.14)}
.turn{margin-top:26px;max-width:760px;padding:24px 26px;border-left:2px solid var(--gold-2);background:linear-gradient(90deg,rgba(224,176,79,.1),rgba(224,176,79,0));border-radius:0 12px 12px 0;color:var(--ink-2)}
.turn p:last-child{margin:0}
.turn .serif{color:var(--gold-3);font-size:1.12em}

/* o que entra */
.courses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:10px}
.course{position:relative;overflow:hidden;padding:26px 24px;border-radius:var(--r);border:1px solid rgba(224,176,79,.3);background:linear-gradient(158deg,#1C1D21 0%,#0D0D10 55%,#060607 100%);box-shadow:0 20px 40px rgba(0,0,0,.4)}
.course .tag{display:inline-block;font:600 10.5px/1 var(--f-sans);letter-spacing:.16em;text-transform:uppercase;color:#140E02;background:var(--gold-2);padding:5px 8px 4px;border-radius:999px;margin-bottom:16px}
.course h3{font:800 21px/1.15 var(--f-sans);color:var(--gold-3);margin-bottom:10px}
.course p{margin:0;color:var(--ink-2);font-size:15.5px;line-height:1.55}
.course svg{position:absolute;right:-18px;bottom:-14px;width:120px;height:60px;opacity:.22}
.plus{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;margin-top:16px;padding:20px 24px;border:1px dashed rgba(224,176,79,.45);border-radius:var(--r)}
.plus .lbl{font:600 11px/1.2 var(--f-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2)}
.plus p{margin:0;color:var(--ink-2)}
.release{margin:26px 0 0;font-size:18px;color:var(--ink)}
.release .serif{color:var(--gold-3);font-size:1.1em}

/* com foto */
.with-photo{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
.with-photo.left{grid-template-columns:340px minmax(0,1fr)}
.photo{position:relative;margin:0;border-radius:16px;overflow:hidden;aspect-ratio:2/3;border:1px solid rgba(224,176,79,.22);box-shadow:0 30px 60px rgba(0,0,0,.5)}
.photo img{width:100%;height:100%;object-fit:cover;object-position:50% 10%}
.photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,8,10,0) 60%,rgba(8,8,10,.6) 100%)}

/* revelação */
.before{font-size:15.5px;color:var(--muted);margin:0 0 26px;max-width:60ch}
.before b{color:var(--ink-2)}
.reveal{border:1px solid rgba(224,176,79,.4);border-radius:var(--r);overflow:hidden}
.reveal header{padding:14px 20px;font:800 13px/1.3 var(--f-sans);letter-spacing:.16em;text-transform:uppercase;color:#140E02;background:linear-gradient(90deg,#E0B04F,#C18604)}
.reveal ol{list-style:none;margin:0;padding:6px 20px;counter-reset:r}
.reveal li{counter-increment:r;display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink-2);font-size:15.5px;line-height:1.55}
.reveal li:last-child{border-bottom:0}
.reveal li::before{content:counter(r);font:italic 400 24px/1 var(--f-serif);color:var(--gold-2)}

/* programação */
.when{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.when h2{margin:0;max-width:none}
.when p{margin:8px 0 0;color:var(--ink-2)}

/* inscrição */
.signup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:0;border:1px solid rgba(224,176,79,.45);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,rgba(224,176,79,.09),rgba(224,176,79,.02));box-shadow:0 30px 80px rgba(0,0,0,.45)}
.signup .info{padding:36px}
.signup .info h2{margin-bottom:14px}
.signup .info > p{color:var(--ink-2)}
.seal{display:inline-flex;align-items:center;gap:8px;margin:4px 0 20px;padding:7px 12px;border-radius:999px;border:1px solid rgba(224,176,79,.6);font:800 12px/1 var(--f-sans);letter-spacing:.14em;color:var(--gold-3)}
.seal::before{content:"";width:8px;height:8px;border-radius:50%;background:#E5484D;box-shadow:0 0 0 3px rgba(229,72,77,.25)}
.incl{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:9px}
.incl li{display:flex;gap:10px;align-items:flex-start;color:var(--ink-2);font-size:15.5px;line-height:1.5}
.incl svg{flex:none;width:18px;height:18px;margin-top:2px;color:var(--gold-2)}
.price{display:flex;align-items:baseline;gap:12px;padding-top:18px;border-top:1px solid var(--line)}
.price small{font:600 11px/1 var(--f-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.price b{font:800 34px/1 var(--f-sans);color:var(--gold-3);letter-spacing:-.02em}
.form{padding:36px;background:#0C0D10;border-left:1px solid rgba(224,176,79,.25);display:flex;flex-direction:column;gap:16px;justify-content:center}
.form label{display:grid;gap:7px;font:600 12.5px/1.2 var(--f-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.form input{width:100%;min-height:52px;padding:14px 16px;border-radius:10px;border:1px solid var(--line-2);background:#111216;color:var(--ink);font:400 16px/1.2 var(--f-sans)}
.form input::placeholder{color:#6A6F78}
.form input:focus{border-color:var(--gold-2)}
.form .btn{width:100%;margin-top:6px}
.form .under{margin:0;text-align:center}

/* quem é */
.byname{margin:-8px 0 16px;font:italic 400 20px/1.3 var(--f-serif);color:var(--gold-3)}
.creds{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 24px}
.creds li{padding:7px 12px;border-radius:999px;border:1px solid rgba(224,176,79,.45);background:rgba(224,176,79,.07);font:600 13px/1.3 var(--f-sans);color:var(--ink)}
.board{display:flex;align-items:center;gap:18px;margin-top:26px;padding:18px 22px;border:1px solid rgba(224,176,79,.5);border-radius:var(--r);background:linear-gradient(90deg,rgba(224,176,79,.13),rgba(224,176,79,.03))}
.board b{flex:none;font:800 clamp(34px,3.6vw,44px)/1 var(--f-sans);letter-spacing:-.02em}
.board span{font-size:15.5px;line-height:1.5;color:var(--ink)}
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}
.num{padding:18px 16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}
.num b{display:block;font:800 clamp(24px,2.6vw,32px)/1.05 var(--f-sans);letter-spacing:-.02em}
.num span{display:block;margin-top:8px;font-size:13.5px;line-height:1.4;color:var(--muted)}

/* faq */
.faq{max-width:820px;margin:0 auto;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 2px;font:600 17px/1.4 var(--f-sans);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;font:400 26px/1 var(--f-sans);color:var(--gold-2);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 40px 22px 2px;color:var(--ink-2)}
.faq-more{max-width:820px;margin:26px auto 0;color:var(--muted);font-size:15px;text-align:center}

/* última chamada */
.final{position:relative;overflow:hidden;text-align:center;background:radial-gradient(50% 70% at 50% 100%,rgba(193,134,4,.2),transparent 72%)}
.final svg.big-inf{width:min(420px,80%);height:auto;margin:0 auto 18px;display:block}
.final h2{max-width:none;font-size:clamp(30px,4.4vw,52px)}
.final p{max-width:60ch;margin:0 auto;color:var(--ink-2)}

footer{padding-block:48px 120px;background:#060607}
footer .wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px 40px;align-items:start}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:13.5px;color:var(--muted)}

/* barra fixa */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:12px 0;background:rgba(8,8,10,.92);border-top:1px solid rgba(224,176,79,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translateY(110%);transition:transform .3s}
.sticky.on{transform:none}
.sticky .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px}
.sticky p{margin:0;font-size:14.5px;color:var(--ink-2)}
.sticky p b{color:var(--gold-3)}
.sticky .btn{min-height:46px;padding:12px 22px;font-size:13.5px;flex:none}

@media (prefers-reduced-motion:no-preference){
  .inf .spark{animation:run 7s linear infinite}
  .eyebrow .spark{animation:run 5s linear infinite}
}
@keyframes run{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sticky,.btn{transition:none}}

@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:12px;padding-block:24px 56px}
  .hero-visual{justify-self:center;max-width:420px}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3,.courses{grid-template-columns:1fr}
  .with-photo,.with-photo.left{grid-template-columns:1fr;gap:32px}
  .with-photo .photo{max-width:320px;aspect-ratio:4/5}
  .with-photo.left .photo{order:2}
  .signup{grid-template-columns:1fr}
  .form{border-left:0;border-top:1px solid rgba(224,176,79,.25)}
  .nums{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  body{font-size:16px}
  .wrap{padding-inline:16px}
  section{padding-block:60px}
  .topbar .meta{display:none}
  .topbar{padding-block:16px 0}
  .hero-grid{padding-block:14px 48px}
  h1{margin-top:16px}
  .lead{font-size:15.5px;margin-top:14px}
  .facts{gap:8px;margin:16px 0}
  .facts li{padding:9px 12px;font-size:12.5px;gap:8px;white-space:normal}
  .facts svg{display:none}
  .hero-form{grid-template-columns:1fr;gap:8px}
  .hero-form input{min-height:46px;padding:12px 14px}
  .hero-form .btn{min-height:52px}
  .grid-2,.grid-4{grid-template-columns:1fr}
  .btn{width:100%;padding-inline:20px}
  .signup .info,.form{padding:26px 20px}
  .plus{grid-template-columns:1fr;gap:8px}
  .faq details p{padding-right:4px}
  footer .wrap{grid-template-columns:1fr}
  .sticky p{display:none}
  .sticky .btn{width:100%}
}


/* Mensagens e estados do formulário; preservam o layout original. */
.bfac-feedback{grid-column:1 / -1;font-size:13px;line-height:1.5;margin:0;color:var(--gold-3)}
.bfac-feedback[data-state="error"]{color:#FFB0A7}
.bfac-feedback[hidden]{display:none}
.bfac-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
form .btn:disabled{opacity:.65;cursor:wait;transform:none}

/* Notas de privacidade junto aos formulários */
.bfac-form-legal{grid-column:1 / -1;margin:2px 0 0;color:#9DA2AC;font-size:12px;line-height:1.55}
.bfac-form-legal a{color:#E9CA83;text-decoration:underline;text-underline-offset:3px}
.bfac-form-legal a:hover{color:#fff}
