/* =========================================================
   Freitas Comex | LP Exportação de Máquinas
   Mobile-first. Tokens da marca conforme home V3.
   ========================================================= */

@font-face{font-family:'Avenir LT Std';src:url('../fonts/avenir-35.woff') format('woff');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir LT Std';src:url('../fonts/avenir-45.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir LT Std';src:url('../fonts/avenir-55.woff') format('woff');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir LT Std';src:url('../fonts/avenir-85.woff') format('woff');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Avenir LT Std';src:url('../fonts/avenir-95.woff') format('woff');font-weight:900;font-style:normal;font-display:swap}

:root{
  --navy:#2c2d65;
  --navy-deep:#13142b;
  --amber:#ff9e1b;
  --magenta:#ce0f69;
  --ink:#1d1e35;
  --body:#4a4b63;
  --line:#e3e4ee;
  --bg-alt:#f5f6fa;
  --white:#fff;
  --radius:12px;
  --shadow:0 16px 38px rgba(19,20,43,.15);
  --font:'Avenir LT Std','Avenir Next',Avenir,'Segoe UI',system-ui,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--font);font-weight:400;color:var(--body);
  background:var(--white);line-height:1.55;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{color:var(--ink);line-height:1.12;margin:0 0 .45em;font-weight:800}
p{margin:0 0 .9em}

.container{width:min(1160px,100% - 36px);margin-inline:auto}
.container--narrow{width:min(800px,100% - 36px)}

/* ---------- Botões ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  padding:14px 26px;border-radius:999px;font-weight:800;font-size:.97rem;
  text-decoration:none;border:2px solid transparent;cursor:pointer;
  transition:transform .15s ease,background .15s ease,color .15s ease;
}
.btn--primary{background:var(--amber);color:var(--navy-deep)}
.btn--primary:hover{background:#ffb04a;transform:translateY(-1px)}
.btn--block{width:100%}

.eyebrow{
  text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:800;
  color:var(--amber);margin-bottom:.7rem;
}

/* ---------- Topbar ---------- */
.topbar{background:var(--navy);padding:11px 0}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.topbar__logo img{width:108px;height:auto}
.topbar__cta{
  color:var(--navy-deep);background:var(--amber);text-decoration:none;
  font-weight:800;font-size:.82rem;padding:9px 18px;border-radius:999px;white-space:nowrap;
}
.topbar__cta:hover{background:#ffb04a}

/* ---------- Hero ---------- */
.hero{
  background:
    radial-gradient(1000px 480px at 10% -12%, #3a3b7d 0%, rgba(58,59,125,0) 60%),
    linear-gradient(160deg,var(--navy) 0%,var(--navy-deep) 100%);
  color:#dfe0ee;padding:34px 0 40px;
}
.hero__grid{display:grid;gap:24px}
.hero h1{color:#fff;font-size:clamp(1.85rem,5.6vw,2.7rem);font-weight:900;letter-spacing:-.015em}
.hero h1 span{color:var(--amber)}
.hero__lead{font-size:1.02rem;color:#c9cae0;max-width:44ch;margin-bottom:.8em}
.hero__mini{
  font-size:.76rem;letter-spacing:.04em;color:#9fa0c2;margin:0;font-weight:500;
}

/* ---------- Card do formulário ---------- */
.card{
  background:var(--white);border-radius:var(--radius);padding:22px 20px;
  box-shadow:var(--shadow);border-top:4px solid var(--amber);
}
.card__title{font-size:1.25rem;margin-bottom:.3em}
.card__sub{font-size:.87rem;color:var(--body);margin-bottom:1.1em;line-height:1.45}
.field-row{display:grid;gap:0 14px}
.field{margin-bottom:12px}
.field label{display:block;font-size:.76rem;font-weight:800;color:var(--ink);margin-bottom:5px}
.field label span{color:var(--magenta);margin-left:2px}
.field input,.field select{
  width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;
  font-family:inherit;font-size:.95rem;color:var(--ink);background:#fbfbfe;
}
.field input:focus,.field select:focus{
  outline:none;border-color:var(--navy);background:#fff;box-shadow:0 0 0 3px rgba(44,45,101,.12);
}
.field.is-invalid input,.field.is-invalid select{border-color:var(--magenta);background:#fff6fa}
.field__err{color:var(--magenta);font-size:.74rem;margin:5px 0 0;display:none;line-height:1.35}
.field.is-invalid .field__err{display:block}
#submitBtn{margin-top:6px}
#submitBtn[disabled]{opacity:.65;cursor:progress}
.card__legal{font-size:.7rem;color:#7b7c95;margin:11px 0 0;line-height:1.45}
.card__legal a{color:var(--navy);font-weight:500}
.card__ok-title{font-weight:800;color:var(--ink);font-size:1.1rem;margin-bottom:.35em}

/* ---------- Seções ---------- */
.section{padding:40px 0}
.section--alt{background:var(--bg-alt)}
.section--tight{padding:30px 0}
.section__title{font-size:clamp(1.45rem,4.2vw,2.05rem);font-weight:900;letter-spacing:-.015em;margin-bottom:.7em}
.section__title span{color:var(--magenta)}
.section__lead{font-size:1rem;max-width:58ch;margin-bottom:1.6rem}

/* ---------- Grid de cenários ---------- */
.grid-3{display:grid;gap:10px}
.tile{
  background:var(--white);border:1px solid var(--line);border-radius:10px;
  padding:14px 16px;border-left:3px solid var(--amber);
}
.tile h3{font-size:.98rem;margin-bottom:.2em}
.tile p{margin:0;font-size:.88rem;line-height:1.4}

/* ---------- Split (texto + imagem) ---------- */
.split{display:grid;gap:22px;align-items:center}
.split__media img{
  border-radius:var(--radius);width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;
}
.split__text .btn{margin-top:6px}

.steps{list-style:none;counter-reset:s;padding:0;margin:0 0 6px}
.steps li{counter-increment:s;position:relative;padding-left:44px;margin-bottom:16px}
.steps li::before{
  content:counter(s,decimal-leading-zero);position:absolute;left:0;top:-1px;
  font-weight:900;font-size:.92rem;color:var(--amber);
  border:2px solid rgba(255,158,27,.35);border-radius:50%;
  width:32px;height:32px;display:grid;place-items:center;
}
.steps h3{font-size:.99rem;margin-bottom:.15em}
.steps p{margin:0;font-size:.9rem;line-height:1.45}

.risks{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:8px}
.risks li{
  padding:12px 14px 12px 38px;background:var(--white);border:1px solid var(--line);
  border-radius:9px;font-size:.9rem;color:var(--ink);position:relative;line-height:1.4;
}
.risks li::before{
  content:"";position:absolute;left:15px;top:1.05em;width:9px;height:9px;border-radius:2px;
  background:var(--magenta);
}
.risks__note{font-weight:800;color:var(--ink);margin:0;font-size:.95rem}

/* ---------- Case (bloco de prova, 2a dobra) ---------- */
.section--case{background:var(--bg-alt);border-bottom:1px solid var(--line)}
.section--case .eyebrow{color:var(--magenta)}
.section--case p{font-size:.95rem}
.stats{
  list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px 14px;
  grid-template-columns:repeat(2,1fr);
}
.stats li{border-top:2px solid var(--amber);padding-top:8px}
.stats strong{display:block;font-size:1.2rem;font-weight:900;color:var(--navy);line-height:1.1}
.stats span{font-size:.68rem;color:#7b7c95;text-transform:uppercase;letter-spacing:.05em}

/* ---------- Logos ---------- */
.logos__title{
  text-align:center;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;
  color:#8b8ca6;font-weight:800;margin-bottom:16px;
}
.logos{display:grid;grid-template-columns:repeat(4,1fr);gap:4px 12px;align-items:center}
.logos img{filter:brightness(0) invert(.68);opacity:.9;width:100%;height:46px;object-fit:contain}

/* ---------- FAQ ---------- */
.faq details{
  background:var(--white);border:1px solid var(--line);border-radius:9px;
  padding:13px 15px;margin-bottom:8px;
}
.faq summary{
  font-weight:800;color:var(--ink);cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;gap:14px;font-size:.94rem;line-height:1.35;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--amber);font-weight:900;font-size:1.2rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:9px 0 0;font-size:.9rem;line-height:1.5}

/* ---------- CTA final ---------- */
.cta-final{background:var(--amber);padding:30px 0}
.cta-final__inner{display:grid;gap:16px}
.cta-final h2{color:var(--navy-deep);font-size:clamp(1.35rem,4vw,1.8rem);margin-bottom:.15em}
.cta-final p{color:#5a4413;margin:0;font-weight:500;font-size:.95rem}
.cta-final .btn--primary{background:var(--navy);color:#fff}
.cta-final .btn--primary:hover{background:var(--navy-deep)}

/* ---------- Footer ---------- */
.footer{background:var(--navy-deep);color:#9a9bb8;padding:30px 0;font-size:.82rem}
.footer__logo{width:110px;margin-bottom:16px;opacity:.9}
.footer__cols{display:grid;gap:12px}
.footer p{margin:0}
.footer a{color:#c9cae0;text-decoration:none}
.footer a:hover{text-decoration:underline}
.footer__legal{margin:18px 0 0;font-size:.74rem;color:#71729a}

/* =========================================================
   Tablet
   ========================================================= */
@media (min-width:640px){
  .field-row{grid-template-columns:1fr 1fr}
  .grid-3{grid-template-columns:repeat(2,1fr);gap:12px}
  .stats{grid-template-columns:repeat(5,1fr)}
  .logos{grid-template-columns:repeat(8,1fr)}
  .footer__cols{grid-template-columns:repeat(2,1fr);gap:40px}
  .cta-final__inner{grid-template-columns:1fr auto;align-items:center}
  .section{padding:56px 0}
  .card{padding:26px 24px}
  .topbar__logo img{width:130px}
}

/* =========================================================
   Desktop
   ========================================================= */
@media (min-width:1000px){
  .hero{padding:44px 0 56px}
  .hero__grid{grid-template-columns:minmax(0,1fr) 500px;gap:48px;align-items:start}
  .hero h1{margin-bottom:.35em}
  .grid-3{grid-template-columns:repeat(3,1fr);gap:14px}
  .split{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:48px}
  .split__media img{aspect-ratio:4/5;max-height:520px}
  .split--rev .split__media{order:2}
  .split--rev .split__text{order:1}
  .section--case .split{grid-template-columns:minmax(0,1fr) minmax(0,380px)}
  .section--case .split__media{order:2}
  .section{padding:68px 0}
  .section--tight{padding:38px 0}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn{transition:none}
}

/* =========================================================
   RD Station embed — veste o form oficial com o visual da LP.
   O CSS do template bricks é injetado depois deste arquivo,
   por isso os !important abaixo (só neste bloco).
   ========================================================= */
.card [id^="expo-maquinas-form-campanha-"]{
  font-family:var(--font) !important;
}
/* o template do RD traz fundo cinza: neutraliza para o card branco */
.card [id^="expo-maquinas-form-campanha-"] .bricks--section,
.card [id^="expo-maquinas-form-campanha-"] .bricks--section > div,
.card [id^="expo-maquinas-form-campanha-"] .bricks-form,
.card [id^="expo-maquinas-form-campanha-"] .bricks--column > div{
  background:transparent !important;
  padding:0 !important;
  max-width:100% !important;
}
.card .bricks--section > div{
  max-width:100% !important;
}
.card .bricks--component{
  font-family:var(--font) !important;
}
/* fieldset em grade: 1 col no mobile, 2 col no tablet+ (como o .field-row) */
.card .bricks-form__fieldset{
  display:grid !important;
  gap:0 14px !important;
  grid-template-columns:1fr !important;
}
.card .bricks-form__field{
  width:100% !important;
  padding:0 !important;
  margin-bottom:12px !important;
}
/* Reordena os campos do RD para os mesmos pares do modelo:
   Nome+Empresa / E-mail+Telefone / Cargo+Destino / Importa-Exporta (linha cheia).
   Ordem vinda do RD: 1 Nome, 2 Email, 3 Empresa, 4 Cargo, 5 Importa, 6 Telefone, 7 Destino. */
.card .bricks-form__fieldset > .bricks-form__field:nth-child(1){ order:1 !important; }
.card .bricks-form__fieldset > .bricks-form__field:nth-child(3){ order:2 !important; }
.card .bricks-form__fieldset > .bricks-form__field:nth-child(2){ order:3 !important; }
.card .bricks-form__fieldset > .bricks-form__field:nth-child(6){ order:4 !important; }
.card .bricks-form__fieldset > .bricks-form__field:nth-child(4){ order:5 !important; }
.card .bricks-form__fieldset > .bricks-form__field:nth-child(7){ order:6 !important; }
.card .bricks-form__fieldset > .bricks-form__field:nth-child(5){ order:7 !important; grid-column:1 / -1 !important; }
.card .rd-req{ color:var(--magenta) !important; margin-left:2px !important; }
.card .bricks-form__label{
  display:block !important;
  font-family:var(--font) !important;
  font-size:.76rem !important;
  font-weight:800 !important;
  color:var(--ink) !important;
  margin-bottom:5px !important;
}
.card .bricks-form__input{
  width:100% !important;
  padding:11px 12px !important;
  border:1px solid var(--line) !important;
  border-radius:8px !important;
  font-family:var(--font) !important;
  font-size:.95rem !important;
  color:var(--ink) !important;
  background:#fbfbfe !important;
  height:auto !important;
  box-shadow:none !important;
}
.card .bricks-form__input:focus{
  outline:none !important;
  border-color:var(--navy) !important;
  background:#fff !important;
  box-shadow:0 0 0 3px rgba(44,45,101,.12) !important;
}
.card .bricks-form__input.error{
  border-color:var(--magenta) !important;
  background:#fff6fa !important;
}
.card label.error{
  color:var(--magenta) !important;
  font-family:var(--font) !important;
  font-size:.74rem !important;
  margin:5px 0 0 !important;
  line-height:1.35 !important;
}
/* honeypots anti-spam do RD continuam invisíveis */
.card input[name="emP7yF13ld"],
.card input[name="sh0uldN07ch4ng3"]{
  display:none !important;
}
/* botão = .btn--primary bloco cheio */
.card .bricks-form__submit{
  margin-top:6px !important;
}
.card .bricks-form__submit button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.6rem !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  padding:14px 26px !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  border-radius:999px !important;
  border:2px solid transparent !important;
  background:var(--amber) !important;
  color:var(--navy-deep) !important;
  font-family:var(--font) !important;
  font-weight:800 !important;
  font-size:.97rem !important;
  line-height:1.2 !important;
  box-shadow:none !important;
  cursor:pointer !important;
  min-width:100% !important;
  text-decoration:none !important;
}
/* telefone com DDI: bandeira + input lado a lado, mesma altura dos demais */
.card .bricks-form__field.with-select-flags .phone-input-group{
  display:flex !important;
  gap:8px !important;
  align-items:stretch !important;
}
.card .phone-input-group .select2-container.form-control{
  width:72px !important;
  flex:0 0 72px !important;
  border:1px solid var(--line) !important;
  border-radius:8px !important;
  background:#fbfbfe !important;
  height:auto !important;
  min-height:46px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 4px !important;
}
.card .phone-input-group .select2-choice{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  height:100% !important;
  min-height:44px !important;
  line-height:normal !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
#rd-form-mu73tb6l .with-select-flags > .phone-input-group > .select2-container > .select2-choice > .select2-chosen > .flag {
    width: 50%;
    vertical-align: middle;
    margin: 9px;
}
.card .phone-input-group input.bricks-form__input{
  flex:1 1 auto !important;
  min-width:0 !important;
  width:auto !important;
}
/* DDI (+55) no lugar da bandeira no seletor de país */
.card .phone-country .select2-chosen{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.card .phone-country .fx-ddi{
  font-family:var(--font) !important;
  font-weight:800 !important;
  font-size:.95rem !important;
  color:var(--ink) !important;
  line-height:1 !important;
}
.card .bricks-form__submit button:hover{
  background:#ffb04a !important;
}
/* mensagem de sucesso do RD com a cara do .card__ok */
.card .bricks-form__success,
.card .bricks-form__thank-you{
  font-family:var(--font) !important;
  color:var(--body) !important;
  font-size:.95rem !important;
}
@media (min-width:640px){
  .card .bricks-form__fieldset{
    grid-template-columns:1fr 1fr !important;
  }
}
