/* ============ FLEXY + WORDPRESS/INSTAGRAM — estilos da página ============
   Hero: .page-hero · Cards: .fcard · Depoimentos: .d-marq/.dcard
   CTA final: .cases-cta (cases.css). Aqui vive só o que é próprio.
   ======================================================================== */

/* ---------- Preço no hero ---------- */
.flexy-preco{
  display:inline-flex;align-items:baseline;gap:10px;
  margin-top:26px;padding:13px 22px;border-radius:100px;
  background:rgba(255,102,1,.12);border:1px solid rgba(255,102,1,.32);
}
.flexy-preco-lab{
  font-family:var(--mono);font-size:10.5px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6);
}
.flexy-preco b{
  font-family:var(--display);font-weight:700;font-size:19px;
  letter-spacing:-.02em;color:#fff;
}
.flexy-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}

/* ---------- Seções ---------- */
.flexy-sec{background:var(--paper);padding:96px 0;position:relative;overflow-x:clip}
.flexy-soft{background:var(--paper-2)}

.flexy-sec .head{max-width:760px;margin-bottom:46px}
.flexy-sec .head.ctr{margin-left:auto;margin-right:auto;text-align:center}
.flexy-sec .head.ctr .tag{justify-content:center}
.flexy-sec .head h2{
  font-family:var(--display);font-weight:700;
  font-size:clamp(26px,3.2vw,42px);line-height:1.07;letter-spacing:-.028em;
  color:var(--navy);margin:20px 0 0;
}
.flexy-sec .head h2 em{font-style:normal;color:var(--ignite)}
.flexy-sec .head p{font-size:16.5px;color:var(--ink-2);margin-top:18px;line-height:1.65}
.flexy-sec .head.ctr p{margin-left:auto;margin-right:auto}

/* ---------- Bloco de integração ---------- */
.flexy-int{
  display:grid;grid-template-columns:.92fr 1.08fr;gap:52px;align-items:center;
}
.flexy-int + .flexy-int{margin-top:88px}
.flexy-int.rev .flexy-int-copy{order:2}
.flexy-int.rev .flexy-int-art{order:1}

.flexy-badge{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--mono);font-size:11px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:var(--ignite);
  background:rgba(255,102,1,.1);border:1px solid rgba(255,102,1,.28);
  padding:8px 15px;border-radius:100px;margin-bottom:20px;
}
.flexy-badge svg{width:16px;height:16px}

.flexy-int-copy h2{
  font-family:var(--display);font-weight:700;
  font-size:clamp(24px,2.9vw,38px);line-height:1.08;letter-spacing:-.028em;
  color:var(--navy);margin-bottom:18px;
}
.flexy-int-copy h2 em{font-style:normal;color:var(--ignite)}
.flexy-int-copy > p{font-size:16px;color:var(--ink-2);line-height:1.68;margin-bottom:14px}

.flexy-list{list-style:none;display:flex;flex-direction:column;gap:11px;margin-top:24px}
.flexy-list li{
  display:flex;gap:11px;align-items:flex-start;
  font-size:14.5px;color:var(--ink-2);line-height:1.5;
}
.flexy-list b{color:var(--navy);font-weight:600}

.flexy-int-art{
  margin:0;border-radius:20px;overflow:hidden;
  border:1px solid var(--line);background:#fff;
  box-shadow:0 30px 66px -38px rgba(18,42,62,.34);
}
.flexy-int-art img{width:100%;height:auto;display:block}

/* ---------- Benefícios ---------- */
.flexy-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.flexy-benefits .fcard p{margin-bottom:0}

/* ---------- Depoimentos ---------- */
.flexy-tst{background:var(--void);color:#fff;overflow:hidden;padding:88px 0 104px}
.flexy-tst .head{max-width:760px;margin:0 auto 46px;text-align:center}
.flexy-tst .head .tag{justify-content:center}
.flexy-tst .head h2{
  font-family:var(--display);font-weight:700;
  font-size:clamp(26px,3.2vw,44px);line-height:1.06;letter-spacing:-.028em;
  color:#fff;margin:20px 0 0;
}
.flexy-tst .head h2 em{font-style:normal;color:var(--ignite)}
.flexy-tst .head p{font-size:16.5px;color:var(--ink-l);margin-top:18px;line-height:1.65}

/* ---------- Responsivo ---------- */
@media(max-width:1024px){
  .flexy-sec{padding:72px 0}
  .flexy-int{grid-template-columns:1fr;gap:32px}
  .flexy-int + .flexy-int{margin-top:64px}
  .flexy-int.rev .flexy-int-copy{order:1}
  .flexy-int.rev .flexy-int-art{order:2}
  .flexy-benefits{grid-template-columns:repeat(2,1fr)}
  .flexy-tst{padding:68px 0 84px}
}
@media(max-width:680px){
  .flexy-sec{padding:56px 0}
  .flexy-benefits{grid-template-columns:1fr}
  .flexy-int + .flexy-int{margin-top:48px}
}
