/* =========================================================
   iFree — Landing Page
   Tokens: roxo #8F2C87 · amarelo #FFCB28 · fundo #FBF8F6
   Tipografia: Clash Display (títulos) · Inter (corpo) · Space Mono (tags/números)
   ========================================================= */

@import url('https://api.fontshare.com/v2/css?f[]=clash-display@600,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap');

:root{
  --roxo: #8F2C87;
  --roxo-escuro: #4E1749;
  --roxo-profundo: #1F0F1E;
  --amarelo: #FFCB28;
  --amarelo-escuro: #E8AE00;
  --laranja: #FDC928;
  --laranja-escuro: #E0AD16;
  --off-white: #FBF8F6;
  --branco: #FFFFFF;
  --ink: #221226;
  --ink-suave: #5B4A5C;
  --verde: #2F9E5B;
  --borda: rgba(34,18,38,0.08);

  --display: 'Clash Display', 'Inter', sans-serif;
  --body: 'Inter', sans-serif;
  --mono: 'Space Mono', monospace;

  --fs-hero: clamp(2.4rem, 5vw, 3.6rem);
  --fs-h2: clamp(1.9rem, 4vw, 3rem);
  --fs-h3: clamp(1.2rem, 2.2vw, 1.5rem);
  --fs-body: 1.05rem;
  --fs-small: 0.95rem;
  --fs-tiny: 0.85rem;

  --sp-section: clamp(4rem, 9vw, 8rem);
  --sp-gap: clamp(1.5rem, 4vw, 3rem);

  --container: 1180px;
  --ease: cubic-bezier(.22,.9,.35,1);
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family: var(--body);
  color: var(--ink);
  background: var(--off-white);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
.container{
  width:100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 4vw, 2rem);
}
.eyebrow{
  font-family: var(--mono);
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
  display:inline-flex;
  align-items:center;
  gap:0.5em;
}
.eyebrow::before{
  content:"";
  width: 22px; height: 2px;
  background: currentColor;
  display:inline-block;
}
h1,h2,h3{ font-family: var(--display); font-weight: 600; line-height:1.05; letter-spacing:-0.01em;}
h1{ font-size: var(--fs-hero); }
h2{ font-size: var(--fs-h2); margin-bottom: 0.6em;}
h3{ font-size: var(--fs-h3); margin-bottom: 0.4em;}
.lead{ font-size: 1.15rem; color: var(--ink-suave); max-width: 46ch;}
.section-head{ max-width: 640px; margin-bottom: clamp(2rem, 5vw, 3.5rem);}
.section-head.center{ margin-left:auto; margin-right:auto; text-align:center;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;
  align-items:center;
  gap:0.6em;
  font-family: var(--body);
  font-weight:700;
  font-size: 0.98rem;
  padding: 0.95em 1.7em;
  border-radius: 100px;
  border: none;
  cursor:pointer;
  transition: transform 0.25s var(--ease), box-shadow 0.25s var(--ease), background 0.25s var(--ease);
  white-space: nowrap;
}
.btn-primary{
  background: var(--amarelo);
  color: var(--roxo-profundo);
  box-shadow: 0 8px 24px -8px rgba(255,203,40,0.6);
}
.btn-primary:hover{ transform: translateY(-2px); box-shadow: 0 12px 28px -8px rgba(255,203,40,0.75);}
.btn-outline{
  background: transparent;
  color: var(--branco);
  border: 1.5px solid rgba(255,255,255,0.5);
}
.btn-outline:hover{ background: rgba(255,255,255,0.12); border-color: rgba(255,255,255,0.9);}
.btn-dark{
  background: var(--roxo);
  color: var(--branco);
}
.btn-dark:hover{ transform: translateY(-2px); box-shadow: 0 10px 26px -10px rgba(143,44,135,0.5);}
.btn svg{ width:18px; height:18px; }

/* ---------- Nav ---------- */
.nav{
  position: fixed;
  top:0; left:0; right:0;
  z-index: 100;
  padding: 1.1rem 0;
  background: var(--roxo);
  box-shadow: 0 4px 24px rgba(0,0,0,0.12);
  transition: background 0.3s var(--ease), padding 0.3s var(--ease), box-shadow 0.3s var(--ease);
}
.nav.solid{
  background: rgba(143,44,135,0.96);
  backdrop-filter: blur(10px);
  padding: 0.75rem 0;
  box-shadow: 0 4px 24px rgba(0,0,0,0.15);
}
.nav .container{ display:flex; align-items:center; justify-content:space-between; gap:1rem;}
.nav-logo{
  font-family: var(--display);
  font-size: 1.4rem;
  color: var(--branco);
  font-weight:700;
  letter-spacing: -0.01em;
}
.nav-logo span{ color: var(--amarelo);}
.nav-links{ display:flex; align-items:center; gap: clamp(1rem, 3vw, 2rem);}
.nav-links a:not(.btn){
  color: rgba(255,255,255,0.85);
  font-weight:600;
  font-size: var(--fs-small);
  position:relative;
}
.nav-links a:not(.btn)::after{
  content:"";
  position:absolute; left:0; right:0; bottom:-4px;
  height:2px; background: var(--amarelo);
  transform: scaleX(0); transform-origin:left;
  transition: transform 0.25s var(--ease);
}
.nav-links a:not(.btn):hover::after{ transform: scaleX(1);}
.nav-links a.active::after{ transform: scaleX(1);}
.nav .btn-primary{ padding: 0.7em 1.4em; font-size:0.9rem;}
.nav-toggle{
  display:none;
  flex-direction:column;
  justify-content:center;
  align-items:flex-end;
  gap:5px;
  width:34px;
  height:34px;
  background:none;
  border:none;
  cursor:pointer;
  padding:0;
  flex-shrink:0;
  z-index: 110;
}
.nav-toggle span{
  display:block;
  width:100%;
  height:2.5px;
  background: var(--branco);
  border-radius:2px;
  transition: transform 0.25s var(--ease), opacity 0.25s var(--ease), width 0.25s var(--ease);
}
.nav-toggle.active span:nth-child(1){ transform: translateY(7.5px) rotate(45deg); width:100%; }
.nav-toggle.active span:nth-child(2){ opacity:0; }
.nav-toggle.active span:nth-child(3){ transform: translateY(-7.5px) rotate(-45deg); width:100%; }

.nav-overlay{
  display:none;
  position:fixed; inset:0;
  background: rgba(31,15,30,0.55);
  z-index: 95;
  opacity:0;
  transition: opacity 0.3s var(--ease);
}
.nav-overlay.open{ display:block; opacity:1; }

@media (max-width: 760px){
  .nav-toggle{ display:flex; }
  .nav-links{
    position:fixed;
    top: 0;
    right: 0;
    height: 100dvh;
    width: min(78vw, 320px);
    background: var(--roxo-escuro);
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0;
    padding: 6rem 2rem 2rem;
    transform: translateX(100%);
    transition: transform 0.35s var(--ease);
    box-shadow: -10px 0 40px rgba(0,0,0,0.3);
    z-index: 100;
  }
  .nav-links.open{ transform: translateX(0); }
  .nav-links a:not(.btn){
    width:100%;
    padding: 0.9rem 0;
    font-size: 1.05rem;
    border-bottom: 1px solid rgba(255,255,255,0.14);
  }
  .nav-links a:not(.btn)::after{ display:none; }
  .nav-links .btn-primary{
    margin-top: 1.6rem;
    width:100%;
    justify-content:center;
  }
}

/* ---------- Diagonal section helper ----------
   Uses clip-path so it works at any width; each section
   overlaps the previous slightly to avoid gaps. */
.diag{
  position: relative;
  clip-path: polygon(0 4vw, 100% 0, 100% calc(100% - 4vw), 0 100%);
  margin-top: -4vw;
  padding-top: calc(var(--sp-section) + 4vw);
  padding-bottom: calc(var(--sp-section) + 4vw);
}
.diag-flat-bottom{
  clip-path: polygon(0 4vw, 100% 0, 100% 100%, 0 100%);
  padding-bottom: var(--sp-section);
}
.diag-flat-top{
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 4vw), 0 100%);
  padding-top: var(--sp-section);
}
@media (max-width: 720px){
  .diag, .diag-flat-bottom, .diag-flat-top{ clip-path:none; margin-top:0; padding-top: var(--sp-section); padding-bottom: var(--sp-section);}
}

#o-que-e{ padding-top: calc(var(--sp-section) * 0.55 + 4vw); padding-bottom: calc(var(--sp-section) * 0.7); }
@media (max-width: 720px){
  #o-que-e{ padding-top: calc(var(--sp-section) * 0.7); padding-bottom: calc(var(--sp-section) * 0.7); }
}

.bg-roxo{ background: linear-gradient(155deg, var(--roxo) 0%, var(--roxo-escuro) 100%); color: var(--branco);}
.bg-dark{ background: var(--roxo-profundo); color: var(--branco);}
.bg-amarelo{ background: var(--amarelo); color: var(--roxo-profundo);}
.bg-laranja{ background: var(--laranja); color: var(--roxo-profundo);}
.bg-white{ background: var(--branco); color: var(--ink);}
.bg-offwhite{ background: var(--off-white); color: var(--ink);}
.bg-roxo-flat{ background: var(--roxo); color: var(--branco);}

/* ---------- Hero ---------- */
.hero{
  position:relative;
  padding-top: clamp(7rem, 14vw, 10rem);
  padding-bottom: clamp(5rem, 10vw, 7rem);
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(60% 55% at 85% 15%, rgba(255,203,40,0.16), transparent 60%),
    radial-gradient(50% 50% at 10% 90%, rgba(255,255,255,0.08), transparent 60%);
  pointer-events:none;
}
.hero .container{
  position:relative;
  display:grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items:center;
}
.hero-copy h1{ color: var(--branco); margin: 0.4em 0 0.5em;}
.hero-copy h1 em{
  font-style:normal;
  color: var(--amarelo);
  position:relative;
}
.hero-copy .lead{ color: rgba(255,255,255,0.82); margin-bottom: 2.2em;}
.hero-eyebrow{ color: var(--amarelo);}
.hero-cta-row{ display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap;}
.hero-stats{ display:flex; gap: clamp(1.5rem,4vw,2.5rem); margin-top: 3rem; flex-wrap:wrap;}
.hero-stat b{ font-family: var(--mono); font-size:1.6rem; color: var(--amarelo); display:block;}
.hero-stat span{ font-size: var(--fs-tiny); color: rgba(255,255,255,0.7);}

.hero-visual{ position:relative; display:flex; justify-content:center;}
.hero-visual img{
  max-width: 380px;
  width: 100%;
  height: auto;
}
.price-tag{
  position:absolute;
  font-family: var(--mono);
  font-weight:700;
  background: var(--branco);
  color: var(--roxo);
  border-radius: 14px;
  padding: 0.7em 1em;
  box-shadow: 0 14px 30px -10px rgba(0,0,0,0.35);
  transform: rotate(-6deg);
  display:flex;
  flex-direction:column;
  line-height:1.15;
}
.price-tag small{ font-size:0.6rem; letter-spacing:0.08em; color: var(--ink-suave); font-family: var(--body); font-weight:700; text-transform:uppercase;}
.price-tag .big{ font-size:1.6rem; color: var(--verde);}
.price-tag.tag-1{ top: 6%; left: -4%; }
.price-tag.tag-2{ bottom: 10%; right: -2%; transform: rotate(5deg); }
@media (max-width: 640px){ .price-tag{ display:none; } }

@media (max-width: 900px){
  .hero .container{ grid-template-columns: 1fr; text-align:center;}
  .hero-cta-row{ justify-content:center;}
  .hero-stats{ justify-content:center;}
  .hero-visual{ order:-1; margin-bottom:1rem;}
  .hero-visual img{ max-width:260px;}
}

/* ---------- Hero (versão clara) ---------- */
.hero-light{
  background: var(--branco);
  color: var(--roxo);
}
.hero-light::before{ display:none; }
.hero-light .hero-eyebrow{ color: var(--roxo); }
.hero-light .hero-copy h1{ color: var(--roxo); }
.hero-light .hero-copy h1 em{ color: var(--roxo-escuro); }
.hero-light .hero-copy .lead{ color: var(--ink-suave); }
.hero-light .hero-stat b{ color: var(--roxo); }
.hero-light .hero-stat span{ color: var(--ink-suave); }
.hero-light .btn-primary{
  background: var(--roxo);
  color: var(--branco);
  box-shadow: 0 8px 24px -8px rgba(143,44,135,0.4);
}
.hero-light .btn-primary:hover{ box-shadow: 0 12px 28px -8px rgba(143,44,135,0.55); }
.hero-light .btn-outline{
  color: var(--roxo);
  border: 1.5px solid var(--roxo);
}
.hero-light .btn-outline:hover{ background: rgba(143,44,135,0.08); border-color: var(--roxo); }

/* ---------- Sobre / O que é ---------- */
.about{ display:grid; grid-template-columns: 1.05fr 1fr; gap: clamp(1.5rem,4vw,3rem); align-items:center;}
.about-visual{ position:relative; display:flex; justify-content:center; }
.about-visual img{ max-width: 880px; width:100%; height:auto; }
.chip-row{ display:flex; flex-wrap:wrap; gap:0.6rem; margin-top:1.8rem;}
.chip{
  font-family: var(--mono);
  font-size:0.78rem;
  padding: 0.55em 0.95em;
  border-radius: 100px;
  border: 1.5px solid var(--borda);
  color: var(--ink-suave);
  background: var(--off-white);
}
.chip b{ color: var(--roxo); }
@media (max-width: 860px){ .about{ grid-template-columns:1fr;} }

.dash-list{ margin-top: 1.6rem; display:flex; flex-direction:column; gap:0.5rem; }
.dash-list li{
  position:relative;
  padding-left: 1.4em;
  font-size: 1.05rem;
  font-weight:600;
  color: var(--roxo-profundo);
}
.dash-list li::before{
  content:"–";
  position:absolute;
  left:0;
}

/* ---------- Vantagens ---------- */
.advantages{
  display:grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: clamp(2rem,5vw,4rem);
  align-items:center;
}
.advantages-visual{ display:flex; justify-content:center; }
.advantages-visual img{ max-width: 380px; width:100%; height:auto; }
.advantages-copy .eyebrow{ margin-bottom: 0.5rem; }
.advantages-copy h2{ margin-bottom: clamp(1.5rem, 4vw, 2.5rem); }
.advantages-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.8rem 2rem;
}
.advantage-item h3{ color: var(--roxo); margin-bottom:0.3em; }
.advantage-item p{ font-size: var(--fs-small); color: var(--ink-suave); }
@media (max-width: 860px){
  .advantages{ grid-template-columns:1fr; text-align:center; }
  .advantages-visual{ order:-1; margin-bottom:1rem; }
}
@media (max-width: 560px){
  .advantages-grid{ grid-template-columns: 1fr; text-align:left; }
}

/* ---------- Cards (usado em outras seções/páginas) ---------- */
.cards-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.1rem;
}
.card{
  position:relative;
  padding: 1.7rem 1.6rem;
  border-radius: 22px;
  display:flex; flex-direction:column; justify-content:flex-start;
  overflow:hidden;
}
.card .icon{ width:38px; height:38px; margin-bottom:1rem; }
.card h3{ margin-bottom:0.3em; }
.card p{ font-size: var(--fs-small); opacity:0.85; }
.card.c-roxo{ background: var(--roxo); color:#fff; }
.card.c-dark{ background: var(--roxo-escuro); color:#fff; }
.card.c-amarelo{ background: var(--amarelo); color: var(--roxo-profundo); }
.card.c-white{ background: var(--branco); color: var(--ink); border: 1.5px solid var(--borda); }
@media (max-width: 980px){ .cards-grid{ grid-template-columns: repeat(2,1fr);} }
@media (max-width: 560px){ .cards-grid{ grid-template-columns: 1fr;} }

.benefits-cards{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem; }
@media (max-width: 760px){ .benefits-cards{ grid-template-columns: 1fr; } }

/* ---------- Selo flutuante ---------- */
.selo-float{
  position:absolute;
  width: 92px;
  filter: drop-shadow(0 10px 20px rgba(0,0,0,0.25));
  animation: float 5s ease-in-out infinite;
}
@keyframes float{
  0%,100%{ transform: translateY(0) rotate(-4deg); }
  50%{ transform: translateY(-10px) rotate(2deg); }
}
@media (prefers-reduced-motion: reduce){ .selo-float{ animation:none; } }

/* ---------- Transparência / Selo de confiança ---------- */
.trust-block{
  display:grid;
  grid-template-columns: 0.55fr 1.45fr;
  gap: clamp(2rem,5vw,4rem);
  align-items:center;
}
.trust-visual{ display:flex; justify-content:center; }
.trust-visual img{ max-width: 280px; width:100%; height:auto; }
.trust-copy h2{ color: var(--roxo-profundo); }
.trust-copy .lead{ color: rgba(31,15,30,0.75); }
@media (max-width: 860px){
  .trust-block{ grid-template-columns:1fr; text-align:center; }
  .trust-visual{ order:-1; margin-bottom:1rem; }
  .trust-copy .lead{ max-width:none; margin-left:auto; margin-right:auto; }
}

/* ---------- Parceiros ---------- */
.partners-strip{
  display:flex; align-items:center; justify-content:center;
  padding: 1rem 0;
}
.partners-strip img{ max-width: 900px; width:100%; height:auto; opacity:0.92; }

/* ---------- Fale conosco ---------- */
.fale-conosco-title{
  color: var(--roxo);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.social-row img{ width:100%; height:auto; }

@media (max-width: 600px){
  .social-row{
    gap: 14px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding: 0 4px;
  }
  .social-row a{ flex-shrink: 0; }
  .social-row img{ width: 46px !important; height: 46px !important; }
}

@media (max-width: 400px){
  .social-row{ gap: 10px !important; }
  .social-row img{ width: 40px !important; height: 40px !important; }
}

/* ---------- CTA cruzado (cliente <-> lojista) ---------- */
.cross-cta{
  display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap;
}
.cross-cta h2{ margin-bottom:0.2em; }
@media (max-width: 700px){ .cross-cta{ text-align:center; justify-content:center; } }

/* ---------- Footer ---------- */
.footer{ padding: 1.4rem 0; }
.footer-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 1.5rem;
  flex-wrap:wrap;
}
.footer-logo{ font-family: var(--display); font-size:1.3rem; color:#fff; flex-shrink:0; }
.footer-logo span{ color: var(--amarelo); }
.footer p{ color: rgba(255,255,255,0.85); font-size: var(--fs-tiny); margin:0; text-align:center; flex:1; }
.footer-bottom{ color: rgba(255,255,255,0.75); font-size: var(--fs-tiny); text-align:right; flex-shrink:0; }
@media (max-width: 700px){
  .footer-row{ flex-direction:column; text-align:center; }
  .footer p, .footer-bottom{ text-align:center; }
}
.footer-links{ display:flex; gap:1.5rem; margin-top:0.5rem; flex-wrap:wrap; justify-content:center; }
.footer-links a{ color: rgba(255,255,255,0.75); font-size: var(--fs-tiny); }
.footer-links a:hover{ color: var(--amarelo); }

/* ---------- Reveal on scroll ---------- */
.reveal{ opacity:0; transform: translateY(24px); transition: opacity 0.7s var(--ease), transform 0.7s var(--ease); }
.reveal.is-visible{ opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){ .reveal{ opacity:1; transform:none; transition:none; } }

/* ---------- Focus visibility ---------- */
a:focus-visible, button:focus-visible, summary:focus-visible{
  outline: 3px solid var(--amarelo);
  outline-offset: 3px;
}

/* =========================================================
   Página Lojista — elementos específicos
   ========================================================= */
.hero-lojista{
  position:relative;
  background: var(--roxo);
  overflow:hidden;
}
.hero-lojista-image{
  margin-top: clamp(4.5rem, 9vw, 5.5rem); /* espaço pra nav fixa não cobrir a foto */
  width: 100%;
  max-height: 560px;
  overflow: hidden;
}
.hero-lojista-image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 25%;
  display: block;
}
.hero-lojista-content{
  padding: clamp(2.5rem, 6vw, 3.5rem) 0 clamp(3.5rem, 7vw, 5rem);
}
.hero-lojista-content .container{ max-width: 680px; }
.hero-lojista h1{ color:#fff; margin: 0.4em 0 0.5em; }
.hero-lojista .lead{ color: rgba(255,255,255,0.92); margin-bottom: 2.2rem; }
@media (max-width: 640px){
  .hero-lojista-image{ max-height: 320px; }
}

.steps{ display:grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; counter-reset: step; }
.step{ position:relative; padding: 2.2rem 1.6rem 1.8rem; border-radius: 22px; }
.step .step-num{
  font-family: var(--mono);
  font-size: 3rem;
  font-weight:700;
  opacity:0.35;
  line-height:1;
  margin-bottom: 0.6rem;
  display:block;
}
.step h3{ margin-bottom:0.35em; }
.step p{ font-size: var(--fs-small); }
.step.s1{ background: var(--roxo); color:#fff; }
.step.s2{ background: var(--amarelo); color: var(--roxo-profundo); }
.step.s3{ background: var(--roxo); color:#fff; }
@media (max-width: 860px){ .steps{ grid-template-columns:1fr; } }

.benef-grid{ display:grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 1.1rem; }
.benef-visual{
  border-radius: 22px;
  background: linear-gradient(160deg, var(--amarelo) 0%, #FFE082 100%);
  display:flex; align-items:center; justify-content:center;
  padding: 1rem;
  min-height: 210px;
}
.benef-visual img{ max-width: 150px; }
@media (max-width: 980px){ .benef-grid{ grid-template-columns: 1fr 1fr; } .benef-visual{ grid-column: 1 / -1; } }
@media (max-width: 560px){ .benef-grid{ grid-template-columns: 1fr; } }

.reasons{ display:grid; grid-template-columns: 1fr 1fr; gap: 0.9rem 2rem; max-width: 820px; margin: 0 auto; }
.reason{ display:flex; align-items:flex-start; gap:0.8rem; font-weight:600; }
.reason svg{ flex-shrink:0; width:22px; height:22px; color: var(--amarelo); margin-top:0.1em; }
@media (max-width: 640px){ .reasons{ grid-template-columns:1fr; } }

.faq-list{ max-width: 760px; margin: 0 auto; display:flex; flex-direction:column; gap:0.8rem; }
.faq-item{
  border: none;
  border-radius: 16px;
  padding: 0.3rem 1.5rem;
}
.faq-item.faq-roxo{ background: var(--roxo); color: #fff; }
.faq-item.faq-amarelo{ background: var(--amarelo); color: var(--roxo-profundo); }
.faq-item summary{
  cursor:pointer;
  list-style:none;
  display:flex; align-items:center; justify-content:space-between;
  padding: 1.2rem 0;
  font-weight:700;
  font-family: var(--display);
  font-size:1.05rem;
  color: inherit;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item.faq-roxo summary .plus{ color: var(--amarelo); }
.faq-item.faq-amarelo summary .plus{ color: var(--roxo); }
.faq-item summary .plus{
  font-family: var(--mono); font-size:1.4rem;
  transition: transform 0.25s var(--ease);
}
.faq-item[open] summary .plus{ transform: rotate(45deg); }
.faq-item.faq-roxo p{ color: rgba(255,255,255,0.85); }
.faq-item.faq-amarelo p{ color: rgba(31,15,30,0.75); }
.faq-item p{ padding-bottom: 1.3rem; font-size: var(--fs-small); }

.final-cta{ position:relative; text-align:center; overflow:hidden; }
.final-cta .container{ position:relative; z-index:1; }
.final-cta h2{ color:#fff; }
.final-cta .lead{ color: rgba(255,255,255,0.82); margin: 0 auto 2rem; }
.final-cta .money-float{
  position:absolute;
  width: 260px;
  opacity:0.9;
  right: -3%;
  bottom: -8%;
  filter: drop-shadow(0 20px 40px rgba(0,0,0,0.4));
}
@media (max-width: 780px){ .final-cta .money-float{ display:none; } }
