/* ==========================================================================
   PharmaOne — Landing pages (HTML + Bootstrap 5)
   Tema compartilhado por todas as páginas de /landing-pages-html/
   ========================================================================== */

/* Ícones: subconjunto do Bootstrap Icons 1.10.5 (MIT) só com os ícones usados nas LPs.
   Para usar um ícone novo, veja o LEIAME.md desta pasta. */
/* ICONES:INICIO (gerado) */
@font-face{font-display:block;font-family:"bootstrap-icons";src:url("icons.woff2?v=2") format("woff2")}
.bi::before,[class*=" bi-"]::before,[class^=bi-]::before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.bi-arrow-down::before{content:"\f128"}
.bi-arrow-left-right::before{content:"\f12b"}
.bi-bank2::before{content:"\f62f"}
.bi-bar-chart::before{content:"\f17e"}
.bi-bar-chart-line::before{content:"\f17c"}
.bi-box-seam::before{content:"\f1c7"}
.bi-building::before{content:"\f1dd"}
.bi-calendar-check::before{content:"\f1e2"}
.bi-capsule::before{content:"\f7df"}
.bi-cart3::before{content:"\f244"}
.bi-cash-coin::before{content:"\f632"}
.bi-check-circle-fill::before{content:"\f26a"}
.bi-check2::before{content:"\f272"}
.bi-check2-square::before{content:"\f271"}
.bi-clock-history::before{content:"\f292"}
.bi-cloud-check::before{content:"\f299"}
.bi-database-check::before{content:"\f8b0"}
.bi-envelope::before{content:"\f32f"}
.bi-exclamation-circle::before{content:"\f333"}
.bi-funnel::before{content:"\f3e1"}
.bi-gift::before{content:"\f3ec"}
.bi-graph-up-arrow::before{content:"\f673"}
.bi-headset::before{content:"\f414"}
.bi-heart::before{content:"\f417"}
.bi-heart-pulse::before{content:"\f76f"}
.bi-lightning-charge::before{content:"\f46d"}
.bi-moon-stars::before{content:"\f496"}
.bi-mortarboard::before{content:"\f6fe"}
.bi-patch-check::before{content:"\f4b6"}
.bi-pc-display::before{content:"\f6a6"}
.bi-percent::before{content:"\f4d1"}
.bi-play-circle::before{content:"\f4f3"}
.bi-play-fill::before{content:"\f4f4"}
.bi-receipt::before{content:"\f50f"}
.bi-rocket-takeoff::before{content:"\f845"}
.bi-shield-check::before{content:"\f52f"}
.bi-shuffle::before{content:"\f544"}
.bi-telephone::before{content:"\f5c1"}
.bi-truck::before{content:"\f5ea"}
.bi-unlock::before{content:"\f600"}
.bi-upc-scan::before{content:"\f601"}
.bi-whatsapp::before{content:"\f618"}
.bi-x-circle-fill::before{content:"\f622"}
/* ICONES:FIM */


:root {
  /* Marca (extraído do logo) */
  --p1-navy-950: #121a2e;
  --p1-navy-900: #1a2440;
  --p1-navy-800: #2f3c5c;
  --p1-navy-700: #3f4e74;
  --p1-purple-500: #8a4fa8;
  --p1-purple-300: #c9a4dd;

  /* Ação (WhatsApp) — verde escurecido p/ contraste AA com texto branco */
  --p1-cta: #128046;
  --p1-cta-hover: #0e6a39;
  --p1-cta-glow: rgba(20, 138, 75, .35);

  --p1-ink: #1d2433;
  --p1-muted: #5b6479;
  --p1-line: #e3e7ef;
  --p1-soft: #f5f7fb;
  --p1-white: #ffffff;

  --p1-radius: 1rem;
  --p1-radius-lg: 1.5rem;
  --p1-shadow: 0 10px 30px -12px rgba(18, 26, 46, .18);

  --bs-body-font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --bs-body-color: var(--p1-ink);
  --bs-link-color: var(--p1-navy-800);
}

body {
  background: var(--p1-white);
  color: var(--p1-ink);
  -webkit-font-smoothing: antialiased;
  padding-bottom: 0;
}

h1, h2, h3, .p1-display {
  font-family: "Plus Jakarta Sans", var(--bs-body-font-family);
  letter-spacing: -.02em;
  color: var(--p1-navy-900);
}

html { scroll-behavior: smooth; scroll-padding-top: 80px; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

.section { padding: 4.5rem 0; }
@media (min-width: 992px) { .section { padding: 6rem 0; } }
.section-soft { background: var(--p1-soft); }
.section-dark { background: var(--p1-navy-950); color: #cfd6e6; }
.section-dark h2, .section-dark h3 { color: #fff; }

.eyebrow {
  display: inline-block;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--p1-purple-500);
  margin-bottom: .75rem;
}
.section-dark .eyebrow { color: var(--p1-purple-300); }

.section-title { font-size: clamp(1.6rem, 1.1rem + 2vw, 2.5rem); font-weight: 800; line-height: 1.15; }
.section-lead { color: var(--p1-muted); font-size: 1.075rem; max-width: 46rem; }
.section-dark .section-lead { color: #aab4c8; }

/* ---------- Topbar ---------- */
.p1-topbar {
  position: fixed; inset: 0 0 auto 0; z-index: 1030;
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid transparent;
  transition: box-shadow .2s, border-color .2s;
}
.p1-topbar.is-scrolled { border-color: var(--p1-line); box-shadow: 0 6px 20px -14px rgba(18, 26, 46, .35); }
.p1-topbar .container { height: 68px; }
/* celular: só o cabeçalho fica fixo (com o botão do WhatsApp), e mais baixo para sobrar tela */
@media (max-width: 575.98px) {
  .p1-topbar .container { height: 56px; }
  .p1-logo { height: 28px; }
}
.p1-logo { height: 34px; width: auto; }
.p1-topbar .p1-phone { color: var(--p1-navy-800); font-weight: 600; text-decoration: none; font-size: .925rem; }
.p1-topbar .p1-phone:hover { color: var(--p1-navy-950); }
/* botão do WhatsApp no cabeçalho: só o ícone */
.p1-topbar-wa { width: 2.6rem; height: 2.6rem; padding: 0; font-size: 1.3rem; }
.p1-topbar-wa .bi { font-size: 1em; }

/* ---------- Botões ---------- */
.btn-cta {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--p1-cta);
  --bs-btn-border-color: var(--p1-cta);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--p1-cta-hover);
  --bs-btn-hover-border-color: var(--p1-cta-hover);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--p1-cta-hover);
  --bs-btn-active-border-color: var(--p1-cta-hover);
  --bs-btn-focus-shadow-rgb: 20, 138, 75;
  font-weight: 700;
  border-radius: 999px;
  box-shadow: 0 10px 24px -10px var(--p1-cta-glow);
  display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
  transition: transform .15s ease, background-color .15s ease;
}
.btn-cta:hover { transform: translateY(-1px); }
.btn-cta .bi { font-size: 1.15em; }
.btn-cta.btn-lg { padding: .95rem 1.75rem; font-size: 1.05rem; }

.btn-ghost-light {
  --bs-btn-color: #fff;
  --bs-btn-border-color: rgba(255, 255, 255, .45);
  --bs-btn-hover-color: var(--p1-navy-950);
  --bs-btn-hover-bg: #fff;
  --bs-btn-hover-border-color: #fff;
  --bs-btn-focus-shadow-rgb: 255, 255, 255;
  border-radius: 999px; font-weight: 600;
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
}
.btn-outline-navy {
  --bs-btn-color: var(--p1-navy-800);
  --bs-btn-border-color: var(--p1-navy-800);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--p1-navy-800);
  --bs-btn-hover-border-color: var(--p1-navy-800);
  border-radius: 999px; font-weight: 600;
}

/* ---------- Hero ---------- */
.p1-hero {
  position: relative; overflow: hidden;
  padding: calc(68px + 3.5rem) 0 4rem;
  background-color: var(--p1-navy-950);
  color: #d6dcea;
}
@media (max-width: 575.98px) { .p1-hero { padding-top: calc(56px + 2.5rem); } }
@media (min-width: 992px) { .p1-hero { padding: calc(68px + 5rem) 0 5.5rem; } }
.p1-hero__bg {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; object-position: center top;
}
.p1-hero::before {
  content: ""; position: absolute; inset: 0; z-index: 1;
  background:
    radial-gradient(60rem 30rem at 85% 10%, rgba(138, 79, 168, .28), transparent 60%),
    linear-gradient(100deg, rgba(18, 26, 46, .9) 0%, rgba(18, 26, 46, .74) 45%, rgba(26, 36, 64, .38) 100%);
}
/* no celular o texto ocupa a largura toda: camada mais uniforme para manter a leitura */
@media (max-width: 991.98px) {
  .p1-hero::before { background: linear-gradient(180deg, rgba(18, 26, 46, .72) 0%, rgba(18, 26, 46, .86) 60%, rgba(18, 26, 46, .92) 100%); }
}
.p1-hero > .container { position: relative; z-index: 2; }
.p1-hero h1 {
  color: #fff; font-weight: 800; line-height: 1.08;
  font-size: clamp(2rem, 1.2rem + 3.4vw, 3.5rem);
}
.p1-hero h1 em { font-style: normal; color: #7ee2a8; }
.p1-hero .lead { color: #c3cbdc; font-size: clamp(1.05rem, 1rem + .3vw, 1.25rem); }
.p1-badge {
  display: inline-flex; align-items: center; gap: .5rem;
  border: 1px solid rgba(201, 164, 221, .35);
  background: rgba(138, 79, 168, .18);
  color: #e6d3f0; border-radius: 999px;
  padding: .35rem .9rem; font-size: .75rem; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
}
.p1-badge .dot { position: relative; width: .5rem; height: .5rem; border-radius: 50%; background: #7ee2a8; }
.p1-badge .dot::after {
  content: ""; position: absolute; inset: 0; border-radius: 50%; background: #7ee2a8;
  animation: p1pulse 2s ease-out 3; will-change: transform, opacity;
}
@keyframes p1pulse { from { transform: scale(1); opacity: .7; } to { transform: scale(2.6); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .p1-badge .dot::after { animation: none; } }

.p1-checks { list-style: none; padding: 0; margin: 0; }
.p1-checks li { display: flex; gap: .6rem; align-items: flex-start; margin-bottom: .55rem; }
.p1-checks .bi { color: #7ee2a8; flex-shrink: 0; margin-top: .15rem; }
.p1-hero .p1-checks li { color: #e3e8f2; }

.p1-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.p1-chip {
  border: 1px solid rgba(255, 255, 255, .22); background: rgba(255, 255, 255, .07);
  color: #e3e8f2; border-radius: .6rem; padding: .3rem .7rem; font-size: .8rem; font-weight: 500;
}
.p1-micro { font-size: .85rem; color: #9fa9bf; }
.p1-micro .bi { color: #7ee2a8; }


/* ---------- Faixa de confiança ---------- */
.p1-trust { background: var(--p1-navy-900); color: #c3cbdc; padding: 1.1rem 0; font-size: .9rem; }
.p1-trust .item { display: flex; align-items: center; gap: .55rem; }
.p1-trust .bi { color: #7ee2a8; font-size: 1.15rem; }

/* ---------- Cards ---------- */
.p1-card {
  height: 100%;
  background: #fff; border: 1px solid var(--p1-line);
  border-radius: var(--p1-radius-lg); padding: 1.75rem;
  transition: border-color .2s, box-shadow .2s, transform .2s;
}
.p1-card:hover { border-color: #cdd3e1; box-shadow: var(--p1-shadow); transform: translateY(-2px); }
.p1-card h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: .5rem; }
.p1-card p { color: var(--p1-muted); margin-bottom: 0; font-size: .95rem; }
.p1-icon {
  width: 3rem; height: 3rem; border-radius: .9rem;
  display: inline-flex; align-items: center; justify-content: center;
  background: #efeaf6; color: var(--p1-purple-500); font-size: 1.35rem; margin-bottom: 1rem;
}
.p1-card ul { list-style: none; padding: 0; margin: 0; }
.p1-card ul li { display: flex; gap: .55rem; color: var(--p1-muted); font-size: .93rem; padding: .3rem 0; }
.p1-card ul li .bi { color: var(--p1-cta); }
.p1-card .card-label { font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--p1-purple-500); margin-bottom: .9rem; }

/* Dores */
.p1-pain {
  display: flex; gap: .9rem; align-items: flex-start;
  background: #fff; border: 1px solid var(--p1-line); border-left: 4px solid #d9534f;
  border-radius: var(--p1-radius); padding: 1.1rem 1.25rem; height: 100%;
}
.p1-pain .bi { color: #c43c37; font-size: 1.25rem; margin-top: .1rem; }
.p1-pain p { margin: 0; color: var(--p1-ink); font-weight: 500; }

/* Passos */
.p1-step { position: relative; height: 100%; }
.p1-step__num {
  width: 2.75rem; height: 2.75rem; border-radius: 50%;
  background: var(--p1-navy-800); color: #fff; font-weight: 800;
  display: inline-flex; align-items: center; justify-content: center; margin-bottom: 1rem;
}
.section-dark .p1-step__num { background: var(--p1-cta); }
.p1-step h3 { font-size: 1.1rem; font-weight: 700; }
.p1-step p { color: var(--p1-muted); margin: 0; }
.section-dark .p1-step p { color: #aab4c8; }

/* Comparativo */
.p1-compare { border-radius: var(--p1-radius-lg); padding: 1.75rem; height: 100%; }
.p1-compare--bad { background: #fff5f4; border: 1px solid #f3d3d0; }
.p1-compare--good { background: #effaf3; border: 1px solid #bfe6cd; }
.p1-compare .tag { font-size: .75rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.p1-compare--bad .tag { color: #b33a35; }
.p1-compare--good .tag { color: var(--p1-cta); }
.p1-compare ul { list-style: none; padding: 0; margin: 1rem 0 0; }
.p1-compare li { display: flex; gap: .6rem; padding: .45rem 0; }
.p1-compare--bad li .bi { color: #c43c37; }
.p1-compare--good li .bi { color: var(--p1-cta); }
.p1-compare--good li { font-weight: 500; }

/* Vídeo */
.p1-video {
  position: relative; display: block; width: 100%; padding: 0; border: 0;
  border-radius: var(--p1-radius-lg); overflow: hidden; background: #000;
  box-shadow: 0 30px 60px -30px rgba(18, 26, 46, .55); cursor: pointer;
}
.p1-video img { width: 100%; height: auto; display: block; opacity: .92; transition: opacity .2s, transform .4s; }
.p1-video:hover img { opacity: .8; transform: scale(1.015); }
.p1-video__play {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
}
.p1-video__play span {
  width: 5rem; height: 5rem; border-radius: 50%; background: var(--p1-cta); color: #fff;
  display: flex; align-items: center; justify-content: center; font-size: 2.2rem; padding-left: .25rem;
  box-shadow: 0 0 0 .75rem rgba(20, 138, 75, .25);
  transition: transform .2s;
}
.p1-video:hover .p1-video__play span { transform: scale(1.08); }
.p1-video__cap {
  position: absolute; left: 0; right: 0; bottom: 0; padding: 2.5rem 1.25rem 1rem; text-align: left;
  color: #fff; font-size: .9rem; background: linear-gradient(to top, rgba(0, 0, 0, .7), transparent);
}
#p1VideoModal .modal-content { background: #000; border: 0; }
#p1VideoModal video { width: 100%; max-height: 80vh; display: block; background: #000; }

/* Suporte */
.p1-support { background: #fff; border-radius: var(--p1-radius-lg); padding: 1.5rem; height: 100%; border: 1px solid var(--p1-line); }
.p1-support h3 { font-size: 1rem; font-weight: 700; margin-bottom: .35rem; }
.p1-support p { margin: 0; color: var(--p1-muted); font-size: .93rem; }

/* FAQ */
.p1-faq .accordion-item { border: 1px solid var(--p1-line); border-radius: var(--p1-radius) !important; overflow: hidden; margin-bottom: .75rem; }
.p1-faq .accordion-button { font-weight: 600; color: var(--p1-navy-900); padding: 1.1rem 1.25rem; }
.p1-faq .accordion-button:not(.collapsed) { background: #f3f0f8; color: var(--p1-navy-900); box-shadow: none; }
.p1-faq .accordion-button:focus { box-shadow: 0 0 0 .2rem rgba(138, 79, 168, .25); }
.p1-faq .accordion-body { color: var(--p1-muted); }

/* Painel destaque (conciliação, receita etc.) */
.p1-panel { background: #fff; border-radius: var(--p1-radius-lg); box-shadow: var(--p1-shadow); padding: 1.5rem; border: 1px solid var(--p1-line); }
.p1-panel .row-line { display: flex; justify-content: space-between; gap: 1rem; padding: .85rem 0; border-bottom: 1px dashed var(--p1-line); }
.p1-panel .row-line:last-child { border-bottom: 0; }
.p1-panel .ok { color: var(--p1-cta); font-weight: 800; }

.p1-logo-chip {
  border: 1px solid var(--p1-line); background: #fff; border-radius: .8rem;
  padding: .6rem 1.1rem; font-weight: 700; color: var(--p1-navy-800);
}
.p1-sigla { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 800; font-size: 1.6rem; color: var(--p1-navy-800); }

/* CTA final */
.p1-final {
  position: relative; overflow: hidden; color: #d6dcea;
  background:
    radial-gradient(40rem 20rem at 15% 0%, rgba(138, 79, 168, .35), transparent 60%),
    radial-gradient(40rem 20rem at 90% 100%, rgba(20, 138, 75, .3), transparent 60%),
    var(--p1-navy-950);
}
.p1-final h2 { color: #fff; }

/* Footer */
.p1-footer { background: #0c1222; color: #8f9ab2; font-size: .875rem; padding: 2.5rem 0; }
.p1-footer a { color: #c3cbdc; text-decoration: none; }
.p1-footer a:hover { color: #fff; }
.p1-footer .p1-logo { filter: brightness(0) invert(1); opacity: .85; height: 28px; }

/* WhatsApp flutuante (só desktop; no celular o botão fica no cabeçalho) */
.p1-float {
  position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 1040;
  width: 3.75rem; height: 3.75rem; border-radius: 50%; border: 0;
  background: #25d366; color: #fff; font-size: 1.9rem;
  display: none; align-items: center; justify-content: center;
  box-shadow: 0 12px 28px -8px rgba(37, 211, 102, .6);
  transition: transform .15s;
}
.p1-float:hover { transform: scale(1.07); }
@media (min-width: 768px) { .p1-float { display: flex; } }

/* Revelar ao rolar (só quando o JS estiver ativo) */
.js .reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.js .reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .js .reveal { opacity: 1; transform: none; transition: none; } }

/* Ajustes finos do hero */
@media (min-width: 576px) { .p1-hero .btn-lg { white-space: nowrap; } }

/* CTA final com foto de fundo */
.p1-final--foto { background: var(--p1-navy-950); }
.p1-final__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.p1-final--foto::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(18, 26, 46, .78), rgba(18, 26, 46, .88)); }
.p1-final--foto > .container { position: relative; z-index: 2; }
