/* Integração da landing GVS com o tema/Elementor.
 * O escopo preserva os estilos globais no header, footer e formulário Elementor. */
#gvs-life-sciences-app > main,
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) {
  color: var(--text);
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
}
#gvs-life-sciences-app > main :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,strong,span),
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) :where(h1,h2,h3,h4,h5,h6,p,a,button,input,select,textarea,label,strong,span) {
  font-family: inherit;
}
#gvs-life-sciences-app > main :where(button,input,select,textarea) {
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  text-transform: none;
}
#gvs-life-sciences-app > main img {
  border: 0;
  max-width: 100%;
}
#gvs-life-sciences-app > main .product-image {
  background-color: transparent;
  border: 0;
  color: inherit;
}
#gvs-life-sciences-app > main .text-button {
  background-color: transparent;
  border: 0;
  color: var(--blue);
}
#gvs-life-sciences-app > main .button,
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) .button {
  align-items: center;
  background: var(--blue);
  border: 1px solid var(--blue);
  border-radius: 999px;
  box-shadow: 0 12px 28px #0053ae33;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  font-family: inherit;
  font-size: 14px;
  font-weight: 750;
  justify-content: center;
  min-height: 50px;
  padding: 0 24px;
  text-transform: none;
}
#gvs-life-sciences-app > main .button-light {
  background: #fff;
  border-color: #fff;
  color: var(--blue-dark);
}
#gvs-life-sciences-app > main .cinematic-filters button {
  background: transparent;
  border: 0;
  border-bottom: 4px solid transparent;
  color: rgba(255,255,255,.9);
}
#gvs-life-sciences-app > main .cinematic-filters button.is-active {
  background: transparent;
  border-bottom-color: var(--green);
  color: var(--green);
}
#gvs-life-sciences-app > main .search-field button {
  background: var(--surface-soft);
  border: 0;
  color: var(--muted);
}
#gvs-life-sciences-app > main .mobile-line-picker select {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.25);
  color: #fff;
}
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) .modal-close {
  background: #fffffff0;
  border: 0;
  color: var(--ink);
}
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) :where(.variant-summary,.variants-more) {
  border-left: 0;
  border-right: 0;
  color: var(--ink);
  font-family: inherit;
  text-transform: none;
}
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) .variant-summary {
  background: #fff;
}
#gvs-life-sciences-app > #modal-root .modal-card:not(.gvs-specialist-modal) .variants-more {
  background: var(--blue-soft);
  color: var(--blue);
}
.gvs-specialist-modal > .elementor {
  display: block !important;
}
/* O menu de linhas ocupa o topo porque esta landing não renderiza cabeçalho. */
#gvs-life-sciences-app .cinematic-filter-shell {
  top: 0 !important;
}

/* Rodapé Elementor: acabamento exclusivo da landing GVS Life Sciences. */
body.page-id-156575 footer.elementor-134088 {
  --gvs-footer-ink: #062a4d;
  --gvs-footer-blue: #0053ae;
  --gvs-footer-green: #62be41;
  color: rgba(255,255,255,.84);
  font-family: "Segoe UI", Arial, Helvetica, sans-serif;
  overflow: hidden;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-d79fdbc {
  background: linear-gradient(145deg, #062a4d 0%, #073966 100%) !important;
  border-top: 5px solid var(--gvs-footer-green);
  padding: 56px 24px 44px !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-d79fdbc > .elementor-container {
  display: grid !important;
  gap: 44px;
  grid-template-columns: minmax(220px,.85fr) minmax(290px,1.15fr) minmax(240px,1fr);
  margin: 0 auto;
  max-width: 1240px !important;
  width: 100% !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-d79fdbc > .elementor-container > .elementor-column {
  width: auto !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-9da790b > .elementor-widget-wrap {
  align-content: center;
  background: #fff;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 24px;
  box-shadow: 0 22px 55px rgba(0,19,41,.28);
  padding: 30px !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-9da790b .elementor-widget-image img {
  height: auto;
  max-width: 220px;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-581b680 .elementor-social-icons-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-581b680 .elementor-social-icon {
  align-items: center;
  background: #eef5fb !important;
  border-radius: 999px;
  color: var(--gvs-footer-blue) !important;
  display: inline-flex;
  height: 42px;
  justify-content: center;
  margin: 0 !important;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
  width: 42px;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-581b680 .elementor-social-icon:hover {
  background: var(--gvs-footer-green) !important;
  color: #062a4d !important;
  transform: translateY(-2px);
}
body.page-id-156575 footer.elementor-134088 .elementor-element-8b3b053 > .elementor-widget-wrap,
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 > .elementor-widget-wrap {
  align-content: start;
  padding: 8px 0 !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-heading-title {
  color: #fff !important;
  font-family: inherit !important;
  line-height: 1.25 !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-2be3ca9 .elementor-heading-title,
body.page-id-156575 footer.elementor-134088 .elementor-element-b45cc5a .elementor-heading-title {
  color: var(--gvs-footer-green) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .12em;
  margin-bottom: 12px;
  text-transform: uppercase;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-2a9ce3e .elementor-heading-title,
body.page-id-156575 footer.elementor-134088 .elementor-element-23e880f .elementor-heading-title,
body.page-id-156575 footer.elementor-134088 .elementor-element-56568f9 .elementor-heading-title {
  font-size: 20px !important;
  font-weight: 750 !important;
  margin-top: 20px;
}
body.page-id-156575 footer.elementor-134088 .elementor-icon-list-items {
  display: grid;
  gap: 9px;
}
body.page-id-156575 footer.elementor-134088 .elementor-icon-list-item {
  align-items: flex-start !important;
  color: rgba(255,255,255,.82) !important;
  font-family: inherit !important;
  line-height: 1.55 !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-icon-list-icon {
  color: var(--gvs-footer-green) !important;
  padding-top: 4px;
}
body.page-id-156575 footer.elementor-134088 .elementor-icon-list-text,
body.page-id-156575 footer.elementor-134088 .elementor-icon-list-text a {
  color: rgba(255,255,255,.82) !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-581b680 .elementor-social-icon i,
body.page-id-156575 footer.elementor-134088 .elementor-element-581b680 .elementor-social-icon svg {
  color: inherit !important;
  fill: currentColor !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 .elementor-widget-text-editor {
  margin-bottom: 20px;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 .elementor-widget-text-editor .elementor-widget-container {
  color: rgba(255,255,255,.78) !important;
  font-family: inherit !important;
  line-height: 1.45 !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 .elementor-widget-text-editor p {
  margin: 0 !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 .elementor-widget-text-editor br {
  display: none;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 .elementor-widget-text-editor a {
  border-bottom: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.86) !important;
  display: block;
  padding: 8px 0;
  text-decoration: none !important;
}
body.page-id-156575 footer.elementor-134088 .elementor-element-e23d278 .elementor-widget-text-editor a:hover {
  border-bottom-color: var(--gvs-footer-green);
  color: var(--gvs-footer-green) !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937 {
  background: #031d36 !important;
  border-top: 1px solid rgba(255,255,255,.11);
  padding: 24px !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937 > .elementor-container {
  margin: 0 auto;
  max-width: 1240px !important;
  width: 100% !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937,
body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937 :where(p,span,strong,a) {
  color: rgba(255,255,255,.72) !important;
  font-family: inherit !important;
  line-height: 1.65 !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937 strong {
  color: #fff !important;
}
body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937 img {
  height: auto;
  max-height: 58px;
  object-fit: contain;
  width: auto;
}

@media (max-width: 1100px) {
  body.page-id-156575 footer.elementor-134088 > .elementor-element-d79fdbc > .elementor-container {
    grid-template-columns: 1fr 1fr;
  }
  body.page-id-156575 footer.elementor-134088 .elementor-element-9da790b {
    grid-column: 1 / -1;
  }
  body.page-id-156575 footer.elementor-134088 .elementor-element-9da790b > .elementor-widget-wrap {
    margin: 0 auto;
    max-width: 520px;
    width: 100%;
  }
}
@media (max-width: 720px) {
  body.page-id-156575 footer.elementor-134088 > .elementor-element-d79fdbc {
    padding: 40px 20px 34px !important;
  }
  body.page-id-156575 footer.elementor-134088 > .elementor-element-d79fdbc > .elementor-container {
    gap: 28px;
    grid-template-columns: 1fr;
  }
  body.page-id-156575 footer.elementor-134088 .elementor-element-9da790b {
    grid-column: auto;
  }
  body.page-id-156575 footer.elementor-134088 .elementor-element-9da790b > .elementor-widget-wrap {
    padding: 24px !important;
  }
  body.page-id-156575 footer.elementor-134088 > .elementor-element-8fa3937 {
    padding: 22px 20px !important;
  }
}

/* Ajuste exclusivo do hero em telas móveis: separa a descrição do lockup de marcas. */
@media (max-width: 720px) {
  body.page-id-156575 .cinematic-inner {
    padding-bottom: 182px;
  }
}

/* O container oculto do checkout não deve reservar espaço após o rodapé. */
body.page-id-156575 .fct-checkout-modal-container {
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden;
}
