/*
 * Valeflux · CSS do site · cotacao.css
 * Solicitar orçamento e Solicitação recebida.
 * Gerado a partir do CSS personalizado do Kit (Configurações do site) em 22/10/2026.
 * Para editar: altere aqui e limpe o cache do WP Rocket. Não volte a colar no Kit.
 */

.vf-quote-number {
  margin: 0;
  padding-bottom: 20px;
  font: 400 1rem/1.5 "Inter", sans-serif;
  color: var(--vf-muted);
  text-align: center;
  text-wrap: balance;
}
.vf-quote-number strong {
  font-weight: 600;
  color: var(--vf-graphite);
  font-variant-numeric: tabular-nums;
}
.ywraq-wrapper {
  font-family: "Inter", sans-serif;
  color: var(--vf-text);
}
.ywraq-wrapper *,
.ywraq-wrapper *::before,
.ywraq-wrapper *::after {
  box-sizing: border-box;
}
.ywraq-wrapper .ywraq-form-table-wrapper,
.ywraq-wrapper .ywraq-form-table-wrapper.wide,
.ywraq-wrapper.ywraq-with-form .ywraq-form-table-wrapper.wide {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  grid-auto-rows: auto !important;
  gap: 32px !important;
  align-items: start;
  overflow: visible !important;
}
@media (min-width: 1025px) {
  .ywraq-wrapper.ywraq-with-form .ywraq-form-table-wrapper,
    .ywraq-wrapper.ywraq-with-form .ywraq-form-table-wrapper.wide {
      grid-template-columns: minmax(0, 1fr) clamp(360px, 32vw, 400px);
      gap: 40px !important;
    }
}
.ywraq-wrapper .ywraq-form-table-wrapper > form#yith-ywraq-form,
.ywraq-wrapper .ywraq-form-table-wrapper > .yith-ywraq-mail-form-wrapper {
  min-width: 0;
  width: 100%;
  margin: 0 !important;
  flex-basis: auto !important;
}
.ywraq-wrapper #yith-ywraq-form table#yith-ywrq-table-list,
.ywraq-wrapper #yith-ywraq-form table.shop_table {
  width: 100%;
  margin: 0 0 16px !important;
  border: 1px solid var(--vf-border) !important;
  border-collapse: separate !important;
  border-spacing: 0;
  border-radius: var(--vf-radius);
  overflow: hidden;
  table-layout: auto;
  background: #FFFFFF;
}
.ywraq-wrapper #yith-ywrq-table-list thead th {
  padding: 12px 16px !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  line-height: 1.35;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-align: left !important;
  color: var(--vf-muted) !important;
  background: var(--vf-canvas) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--vf-border) !important;
}
.ywraq-wrapper #yith-ywrq-table-list thead th.product-quantity { text-align: center !important; }
.ywraq-wrapper #yith-ywrq-table-list tbody td {
  padding: 16px !important;
  vertical-align: middle !important;
  text-align: left !important;
  background: #FFFFFF;
  border: 0 !important;
  border-top: 1px solid var(--vf-divider) !important;
}
.ywraq-wrapper #yith-ywrq-table-list tbody tr:first-child td { border-top: 0 !important; }
.ywraq-wrapper #yith-ywrq-table-list td.product-remove {
  width: 56px;
  max-width: none !important;
  padding-right: 0 !important;
}
.ywraq-wrapper #yith-ywrq-table-list a.remove,
.ywraq-wrapper #yith-ywrq-table-list a.yith-ywraq-item-remove {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 36px !important;          /* area de toque confortavel, sem moldura visivel */
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;         /* esconde o "x" de texto (fica torto conforme a fonte) */
  line-height: 0 !important;
  color: #A1A1A1 !important;       /* discreto: nao convida a excluir */
  background: transparent !important;
  border: 0 !important;
  border-radius: var(--vf-radius-ctl) !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background-color 160ms var(--vf-ease), color 160ms var(--vf-ease);
}
.ywraq-wrapper #yith-ywrq-table-list a.remove::before {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: currentColor;
  -webkit-mask: var(--vf-icon-x) center / contain no-repeat;
          mask: var(--vf-icon-x) center / contain no-repeat;
}
.ywraq-wrapper #yith-ywrq-table-list a.remove:hover,
.ywraq-wrapper #yith-ywrq-table-list a.remove:focus-visible {
  color: var(--vf-red-hover) !important;
  background: var(--vf-red-50) !important;
}
.ywraq-wrapper #yith-ywrq-table-list a.remove:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 5px var(--vf-focus) !important;
}
.ywraq-wrapper #yith-ywrq-table-list .ajax-loading {
  width: 16px;
  height: 16px;
  margin-left: 6px;
  vertical-align: middle;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-thumbnail {
  display: table-cell;
  width: 96px;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-thumbnail a,
.ywraq-wrapper #yith-ywrq-table-list td.product-thumbnail > img {
  display: block;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-thumbnail img {
  display: block;
  width: 64px !important;
  max-width: 64px !important;
  height: 64px !important;
  padding: 6px;
  object-fit: contain;
  background: var(--vf-canvas);
  border: 1px solid var(--vf-divider);
  border-radius: var(--vf-radius-ctl);
  mix-blend-mode: multiply;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name {
  min-width: 0;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 1.4;
  color: var(--vf-graphite);
  overflow-wrap: anywhere;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name a {
  color: var(--vf-graphite) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name a:hover {
  color: var(--vf-red-hover) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name :is(dl.variation, .wc-item-meta, ul) {
  margin: 6px 0 0 !important;
  padding: 0 !important;
  font-size: 0.8125rem !important;
  font-weight: 400 !important;
  line-height: 1.5;
  color: var(--vf-text-2) !important;
  list-style: none;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name dl.variation :is(dt, dd) {
  display: inline;
  margin: 0 !important;
  float: none !important;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name dl.variation dt { margin-right: 4px !important; }
.ywraq-wrapper #yith-ywrq-table-list td.product-name dl.variation dd p { display: inline; margin: 0; }
.ywraq-wrapper #yith-ywrq-table-list td.product-name dl.variation dd::after { content: ""; display: block; }
.ywraq-wrapper #yith-ywrq-table-list td.product-name .mobile-price { display: none !important; }
.ywraq-wrapper #yith-ywrq-table-list td.product-name .vf-quote-table__catalog {
  display: block;
  margin-top: 4px;
  font-family: "Inter", sans-serif;
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.01em;
  color: var(--vf-muted) !important;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-name .vf-quote-table__catalog {
  display: block;
  margin-top: 4px;
  font-family: "Inter", sans-serif !important;
  font-size: 0.75rem !important;     /* 12px */
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.01em;
  color: var(--vf-muted) !important;
}
.ywraq-wrapper #yith-ywrq-table-list td.product-quantity {
  width: 168px;
  text-align: center !important;
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .quantity {
  display: inline-flex;
  align-items: stretch;
  justify-content: center;
  height: 44px;
  margin: 0 !important;
  background: #FFFFFF;
  border: 1px solid var(--vf-border-strong);
  border-radius: var(--vf-radius-ctl);
  overflow: hidden;
  transition: border-color 160ms var(--vf-ease), box-shadow 160ms var(--vf-ease);
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .quantity:focus-within {
  border-color: var(--vf-graphite);
  box-shadow: inset 0 0 0 1px var(--vf-graphite);
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) input.qty {
  width: 56px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 4px !important;
  font: 600 1rem/1 "Inter", sans-serif !important;
  font-variant-numeric: tabular-nums;
  text-align: center !important;
  color: var(--vf-graphite) !important;
  background: #FFFFFF !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -moz-appearance: textfield;
  appearance: textfield;
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) input.qty::-webkit-outer-spin-button,
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) input.qty:focus { outline: none; }
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn {
  all: unset;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  color: var(--vf-graphite);
  background: var(--vf-canvas);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background-color 160ms var(--vf-ease), color 160ms var(--vf-ease);
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn--minus { border-right: 1px solid var(--vf-border); }
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn--plus  { border-left: 1px solid var(--vf-border); }
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn::before {
  content: "";
  width: 14px;
  height: 14px;
  background: currentColor;
  -webkit-mask: var(--vf-icon-minus) center / contain no-repeat;
          mask: var(--vf-icon-minus) center / contain no-repeat;
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn--plus::before {
  -webkit-mask-image: var(--vf-icon-plus);
          mask-image: var(--vf-icon-plus);
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn:hover,
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn:focus {
  color: var(--vf-red);
  background: var(--vf-red-50);
}
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn:active { color: #FFFFFF; background: var(--vf-red); }
:is(.ywraq-wrapper #yith-ywrq-table-list, .single-product .yith-ywraq-add-to-quote) .vf-qty__btn:focus-visible { outline: 2px solid var(--vf-focus); outline-offset: -2px; }
.ywraq-wrapper #yith-ywrq-table-list :is(td, th):is(.product-price, .product-subtotal) {
  text-align: right !important;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.ywraq-wrapper #yith-ywraq-message .ywraq-question-message:empty,
.ywraq-wrapper #yith-ywraq-message:not(:has(.woocommerce-message, .woocommerce-error, .woocommerce-info)) { display: none; }
.ywraq-wrapper .yith-ywraq-before-table {
  margin: 0 0 16px !important;
  text-align: left !important;
}
.ywraq-wrapper .yith-ywraq-before-table a.button.wc-backward,
.ywraq-wrapper a.button.wc-backward {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  margin: 0 !important;
  padding: 0 !important;
  font: 600 0.875rem/1.2 "Inter", sans-serif !important;
  text-transform: none !important;
  text-decoration: none !important;
  color: var(--vf-text-2) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  float: none !important;
}
.ywraq-wrapper a.button.wc-backward::before {
  content: "";
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  background: currentColor;
  -webkit-mask: var(--vf-icon-arrow-left) center / contain no-repeat;
          mask: var(--vf-icon-arrow-left) center / contain no-repeat;
  transition: transform 160ms var(--vf-ease);
}
.ywraq-wrapper a.button.wc-backward:hover { color: var(--vf-red-hover) !important; }
.ywraq-wrapper a.button.wc-backward:hover::before { transform: translateX(-3px); }
.ywraq-wrapper #yith-ywraq-form .update-list-wrapper {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between !important;
  gap: 12px;
  margin: 0 !important;
  text-align: left !important;
}
.ywraq-wrapper #yith-ywraq-form .update-list-wrapper .after-table-right {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0;
}
.ywraq-wrapper #yith-ywraq-form .update-list-wrapper input[name="update_raq"],
.ywraq-wrapper #yith-ywraq-form .update-list-wrapper :is(.button, button):not(.ywraq_clean_list) {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  float: none !important;
  min-height: 44px;
  margin: 0 !important;
  padding: 0 16px !important;
  font: 600 0.875rem/1.2 "Inter", sans-serif !important;
  text-transform: none !important;
  color: var(--vf-graphite) !important;
  background: #FFFFFF !important;
  border: 1px solid var(--vf-border-strong) !important;
  border-radius: var(--vf-radius-ctl) !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color 160ms var(--vf-ease), border-color 160ms var(--vf-ease);
}
.ywraq-wrapper #yith-ywraq-form .update-list-wrapper input[name="update_raq"]:hover {
  background: var(--vf-canvas) !important;
  border-color: var(--vf-text-2) !important;
}
.ywraq-wrapper #yith-ywraq-form button.ywraq_clean_list {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  margin: 0 !important;
  padding: 0 4px !important;
  font: 600 0.875rem/1.2 "Inter", sans-serif !important;
  text-transform: none !important;
  color: var(--vf-text-2) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
}
.ywraq-wrapper #yith-ywraq-form button.ywraq_clean_list::before {
  content: "";
  width: 16px;
  height: 16px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='square'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 13h10l1-13M9 7V4h6v3'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='square'%3E%3Cpath d='M4 7h16M10 11v6M14 11v6M6 7l1 13h10l1-13M9 7V4h6v3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.ywraq-wrapper #yith-ywraq-form button.ywraq_clean_list:hover { color: var(--vf-red-hover) !important; }
.ywraq-wrapper #yith-ywraq-form :is(.update-list-wrapper .button, button.ywraq_clean_list, input[name="update_raq"]):focus-visible,
.ywraq-wrapper a.button.wc-backward:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 5px var(--vf-focus) !important;
}
.ywraq-wrapper .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (max-width: 767px) {
  .ywraq-wrapper #yith-ywraq-form table#yith-ywrq-table-list,
    .ywraq-wrapper #yith-ywrq-table-list tbody {
      display: block !important;
      width: 100%;
    }
  .ywraq-wrapper #yith-ywrq-table-list thead { display: none !important; }
  .ywraq-wrapper #yith-ywrq-table-list tbody tr.cart_item {
      display: grid !important;
      grid-template-columns: 64px minmax(0, 1fr) 36px;
      grid-template-areas:
        "thumb name remove"
        "thumb qty  qty";
      column-gap: 12px;
      row-gap: 12px;
      align-items: start;
      padding: 16px;
      border-top: 1px solid var(--vf-divider);
    }
  .ywraq-wrapper #yith-ywrq-table-list tbody tr.cart_item:first-child { border-top: 0; }
  .ywraq-wrapper #yith-ywrq-table-list tbody tr.cart_item > td {
      display: block !important;
      width: auto !important;
      max-width: none !important;
      padding: 0 !important;
      border: 0 !important;
      text-align: left !important;
    }
  .ywraq-wrapper #yith-ywrq-table-list tbody td::before { content: none !important; }
  .ywraq-wrapper #yith-ywrq-table-list td.product-thumbnail { grid-area: thumb; display: block !important; }
  .ywraq-wrapper #yith-ywrq-table-list td.product-name      { grid-area: name; font-size: 0.875rem !important; }
  .ywraq-wrapper #yith-ywrq-table-list td.product-remove    { grid-area: remove; justify-self: end; }
  .ywraq-wrapper #yith-ywrq-table-list tbody tr.cart_item > td.product-quantity {
      grid-area: qty;
      display: flex !important;
      align-items: center;
      gap: 12px;
    }
  .ywraq-wrapper #yith-ywrq-table-list td.product-quantity::before {
      content: "Quantidade" !important;
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: var(--vf-muted);
    }
  .ywraq-wrapper #yith-ywrq-table-list :is(td.product-price, td.product-subtotal) {
      grid-column: 2 / -1;
      text-align: left !important;
    }
  .ywraq-wrapper #yith-ywrq-table-list tr:not(.cart_item) { display: block; }
  .ywraq-wrapper #yith-ywrq-table-list tr:not(.cart_item) td { display: block !important; padding: 16px !important; }
  .ywraq-wrapper #yith-ywraq-form .update-list-wrapper { gap: 8px; }
  .ywraq-wrapper #yith-ywraq-form .update-list-wrapper input[name="update_raq"] { flex: 1 1 auto; max-width: 200px; }
}
.ywraq-wrapper .yith-ywraq-mail-form-wrapper {
  container-type: inline-size;
  container-name: vfform;
  margin-top: 0 !important;
  padding: 24px !important;
  background: var(--vf-canvas) !important;
  border: 1px solid var(--vf-border);
  border-radius: var(--vf-radius);
}
@media (min-width: 1025px) {
  .ywraq-wrapper.ywraq-with-form .yith-ywraq-mail-form-wrapper {
      position: sticky;
      top: var(--vf-sticky-top);
    }
}
@media (max-width: 767px) {
  .ywraq-wrapper .yith-ywraq-mail-form-wrapper { padding: 20px 16px !important; }
}
.ywraq-wrapper .yith-ywraq-mail-form-wrapper > :is(h2, h3, h4) {
  text-align: center !important;
  text-wrap: balance;
  margin: 0 0 20px !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em;
  color: var(--vf-graphite) !important;
}
#yith-ywraq-default-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  column-gap: 16px;
  row-gap: 16px;
  margin: 0;
}
#yith-ywraq-default-form > * { grid-column: 1 / -1; min-width: 0; }
@container vfform (min-width: 480px) {
  #yith-ywraq-default-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #yith-ywraq-default-form > :is(.form-row-first, #first_name_field, #email_field) { grid-column: 1; }
  #yith-ywraq-default-form > :is(.form-row-last, #last_name_field, #whatsapp_field) { grid-column: 2; }
}
#yith-ywraq-default-form .form-row {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
#yith-ywraq-default-form .form-row.form-row-wide { padding-top: 0 !important; }
#yith-ywraq-default-form .form-row > label,
#yith-ywraq-default-form .form-row label:not(.checkbox):not(.radio):not(.ywraq_acceptance_label) {
  display: block;
  margin: 0 0 6px !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  color: var(--vf-text) !important;
}
#yith-ywraq-default-form abbr.required,
#yith-ywraq-default-form .required {
  color: var(--vf-red-hover) !important;
  text-decoration: none !important;
  border: 0 !important;
}
#yith-ywraq-default-form .woocommerce-input-wrapper { display: block; width: 100%; }
#yith-ywraq-default-form .optional { display: none !important; }
#yith-ywraq-default-form label.required_field { display: block; }
#yith-ywraq-default-form :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], input[type="date"], input[type="password"], select, textarea),
#yith-ywraq-default-form .select2-container .select2-selection--single {
  display: block;
  width: 100% !important;
  min-height: 48px;
  margin: 0 !important;
  padding: 0 14px !important;
  font: 400 1rem/1.4 "Inter", sans-serif !important;
  color: var(--vf-graphite) !important;
  background-color: #FFFFFF !important;
  border: 1px solid var(--vf-border-strong) !important;
  border-radius: var(--vf-radius-ctl) !important;
  box-shadow: none !important;
  transition: border-color 160ms var(--vf-ease), box-shadow 160ms var(--vf-ease);
}
#yith-ywraq-default-form textarea,
#yith-ywraq-default-form textarea.input-text {
  min-height: 128px !important;
  padding: 12px 14px !important;
  resize: vertical;
}
#yith-ywraq-default-form .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: 46px !important;
}
#yith-ywraq-default-form .select2-container .select2-selection__arrow { height: 46px !important; right: 8px !important; }
#yith-ywraq-default-form ::placeholder { color: var(--vf-muted) !important; opacity: 1; font-size: 1rem !important; }
#yith-ywraq-default-form :is(input, select, textarea):hover { border-color: var(--vf-text-2) !important; }
#yith-ywraq-default-form :is(input, select, textarea):focus,
#yith-ywraq-default-form .select2-container--focus .select2-selection {
  outline: none !important;
  border-color: var(--vf-graphite) !important;
  box-shadow: inset 0 0 0 1px var(--vf-graphite) !important;
}
#yith-ywraq-default-form input[type="file"] {
  width: 100%;
  padding: 10px;
  font: 400 0.875rem/1.4 "Inter", sans-serif;
  background: #FFFFFF;
  border: 1px dashed var(--vf-border-strong);
  border-radius: var(--vf-radius-ctl);
}
#yith-ywraq-default-form input[type="file"]::file-selector-button {
  margin-right: 12px;
  padding: 8px 12px;
  font: 600 0.8125rem "Inter", sans-serif;
  color: var(--vf-graphite);
  background: var(--vf-canvas);
  border: 1px solid var(--vf-border-strong);
  border-radius: var(--vf-radius-ctl);
  cursor: pointer;
}
#yith-ywraq-default-form :is(input[type="checkbox"], input[type="radio"]) {
  width: 20px;
  height: 20px;
  margin: 0 8px 0 0 !important;
  vertical-align: -4px;
  accent-color: var(--vf-red);
}
#yith-ywraq-default-form :is(label.checkbox, label.radio, label.ywraq_acceptance_label) {
  display: inline-block !important;
  margin: 0 16px 0 0 !important;
  font-size: 0.875rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  color: var(--vf-text) !important;
}
#yith-ywraq-default-form .ywraq_acceptance_description {
  display: block;
  margin: 0 0 8px !important;
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--vf-text-2);
}
#yith-ywraq-default-form .ywraq_acceptance_description a,
#yith-ywraq-default-form label a { color: var(--vf-red-hover); text-underline-offset: 2px; }
#yith-ywraq-default-form span.ywraq_error {
  display: block;
  margin-top: 6px;
  font-size: 0.8125rem !important;
  line-height: 1.4;
  color: var(--vf-red-hover) !important;
}
#yith-ywraq-default-form span.ywraq_error:empty { display: none; }
#yith-ywraq-default-form .form-row:has(span.ywraq_error:not(:empty)) :is(input, select, textarea) {
  border-color: var(--vf-red-hover) !important;
}
.ywraq-wrapper :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) {
  grid-column: 1 / -1;
  margin: 0 0 16px !important;
  padding: 12px 16px !important;
  font-size: 0.875rem !important;
  line-height: 1.5;
  list-style: none;
  color: var(--vf-text) !important;
  background: #FFFFFF !important;
  border: 1px solid var(--vf-border) !important;
  border-left: 3px solid var(--vf-focus) !important;
  border-radius: var(--vf-radius-ctl);
  box-shadow: none !important;
}
.ywraq-wrapper .woocommerce-error { background: var(--vf-red-50) !important; border-left-color: var(--vf-red-hover) !important; }
.ywraq-wrapper .woocommerce-message { background: var(--vf-success-bg) !important; border-left-color: var(--vf-success) !important; }
.ywraq-wrapper :is(.woocommerce-error, .woocommerce-message, .woocommerce-info)::before { display: none !important; }
#yith-ywraq-default-form .raq-send-request-row {
  position: relative;
  margin-top: 8px !important;
  text-align: left !important;
}
#yith-ywraq-default-form input.raq-send-request,
#yith-ywraq-default-form .raq-send-request {
  display: block;
  width: 100% !important;
  min-height: 48px;
  margin: 0 !important;
  padding: 0 20px !important;
  font: 600 1rem/1.25 "Inter", sans-serif !important;
  letter-spacing: 0.01em;
  text-transform: none !important;
  color: #FFFFFF !important;
  background: var(--vf-red) !important;
  border: 1px solid var(--vf-red) !important;
  border-radius: var(--vf-radius-ctl) !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color 160ms var(--vf-ease), transform 120ms var(--vf-ease);
}
#yith-ywraq-default-form .raq-send-request:hover { background: var(--vf-red-hover) !important; border-color: var(--vf-red-hover) !important; }
#yith-ywraq-default-form .raq-send-request:active { background: var(--vf-red-active) !important; transform: scale(0.99); }
#yith-ywraq-default-form .raq-send-request:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 5px var(--vf-focus) !important;
}
#yith-ywraq-default-form .raq-send-request:disabled {
  color: transparent !important;
  cursor: progress;
}
#yith-ywraq-default-form .raq-send-request-row .ywraq-loader { display: none !important; }
#yith-ywraq-default-form .raq-send-request-row:has(.ywraq-loader)::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 14px;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  border: 2px solid #FFFFFF;
  border-right-color: transparent;
  border-radius: 50%;
  animation: q-spin 640ms linear infinite;
}
#yith-ywraq-default-form .g-recaptcha { margin: 0 !important; transform-origin: 0 0; }
@container vfform (max-width: 320px) {
  #yith-ywraq-default-form .g-recaptcha { transform: scale(0.88); }
}
.ywraq-wrapper .ywraq-before-form,
.ywraq-wrapper.ywraq-empty .ywraq-before-form {
  padding: 48px 24px !important;
  text-align: center;
  background: var(--vf-canvas);
  border: 1px dashed #C7C7CC !important;
  border-radius: var(--vf-radius);
}
.ywraq-wrapper .ywraq-before-form::before { margin-top: 0 !important; width: 96px !important; height: 96px !important; background-size: contain !important; }
.ywraq-wrapper .ywraq_list_empty_message {
  margin: 16px 0 !important;
  font-size: 1rem;
  line-height: 1.6;
  color: var(--vf-text-2);
}
body .return-to-shop a.button,
body .return-to-shop a.button.wc-backward,
body .ywraq-wrapper .return-to-shop a.button.wc-backward {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  margin: 0 !important;
  padding: 0 24px !important;
  font: 600 1rem/1.2 "Inter", sans-serif !important;
  text-transform: none !important;
  text-decoration: none !important;
  color: #FFFFFF !important;
  background: #D41414 !important;
  border: 0 !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  transition: background-color 160ms cubic-bezier(0.25, 1, 0.5, 1);
}
body .return-to-shop a.button:hover,
body .return-to-shop a.button:focus,
body .return-to-shop a.button.wc-backward:hover,
body .return-to-shop a.button.wc-backward:focus,
body .ywraq-wrapper .return-to-shop a.button.wc-backward:hover,
body .ywraq-wrapper .return-to-shop a.button.wc-backward:focus {
  color: #FFFFFF !important;
  background: #B70E0E !important;
}
body .return-to-shop a.button:active,
body .ywraq-wrapper .return-to-shop a.button.wc-backward:active {
  color: #FFFFFF !important;
  background: #970F0F !important;
}
body .return-to-shop a.button:focus-visible,
body .ywraq-wrapper .return-to-shop a.button.wc-backward:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px #FFFFFF, 0 0 0 5px #005FCC !important;
}
@media (prefers-reduced-motion: reduce) {
  .ywraq-wrapper *, .ywraq-wrapper *::before, .ywraq-wrapper *::after { transition: none !important; }
  #yith-ywraq-default-form .raq-send-request-row:has(.ywraq-loader)::after { animation-duration: 1.6s; }
}
.vf-quote-peek__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--vf-divider);
}
.vf-quote-peek__total {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--vf-red);
}
.vf-quote-peek__list { margin: 0; padding: 0; list-style: none; }
.vf-quote-peek__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--vf-divider);
  animation: vf-peek-in 320ms var(--vf-ease-soft) both;
  animation-delay: calc(var(--i, 0) * 50ms);
}
.vf-quote-peek__thumb {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 4px;
  background: var(--vf-canvas);
  border: 1px solid var(--vf-divider);
  border-radius: var(--vf-radius-ctl);
}
.vf-quote-peek__thumb img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.vf-quote-peek__info { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.vf-quote-peek__name {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--vf-graphite);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.vf-quote-peek__cat { font-size: 0.75rem; color: var(--vf-muted); }
.vf-quote-peek__qty {
  flex: 0 0 auto;
  font-size: 0.8125rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  color: var(--vf-text-2);
}
.vf-quote-peek__foot { padding-top: 16px; }
.vf-quote-peek__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 44px;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #FFFFFF !important;
  text-decoration: none !important;
  background: var(--vf-red);
  border-radius: var(--vf-radius-ctl);
  overflow: hidden;
  transition: background-color 160ms var(--vf-ease);
}
.vf-quote-peek__btn::after {
  content: "";
  width: 16px;
  height: 16px;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='square'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='square'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
  transition: transform 240ms var(--vf-ease-soft);
}
.vf-quote-peek__btn:hover { background: var(--vf-red-hover); }
.vf-quote-peek__btn:hover::after { transform: translateX(4px); }
html.vf-kbd .ywraq-wrapper #yith-ywrq-table-list .quantity:focus-within {
  border-color: var(--vf-focus);
  box-shadow: 0 0 0 3px rgba(0, 95, 204, 0.24);
}
:root .elementor .e-button-base.vf-btn.vf-btn--secondary { --vf-arrow: var(--vf-arrow-dark); --vf-arrow-bg: rgba(22, 22, 22, 0.06); box-shadow: none; }
@media (max-width: 767px) {
  :root .elementor .vf-actions > .e-button-base.vf-btn { width: 100%; }
}
:root .elementor .vf-cta-strip {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 32px;
  padding: 32px 32px 32px 104px;
  border: 0;
  border-radius: 8px;
  background: #161616 radial-gradient(120% 140% at 100% 0%, rgba(212, 20, 20, 0.28), rgba(212, 20, 20, 0) 55%);
  overflow: hidden;
}
.elementor .vf-cta-strip::before {
  content: "";
  position: absolute;
  left: 32px;
  top: 50%;
  width: 48px;
  height: 48px;
  margin-top: -24px;
  border-radius: 6px;
  background: var(--vf-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4z'/%3E%3Cpath d='M8 9.5h8M8 12.5h5'/%3E%3C/svg%3E") center / 24px no-repeat;
}
:root .elementor .vf-cta-strip > .e-paragraph-base,
:root .elementor .vf-cta-strip > .e-heading-base {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 560px;
  margin: 0;
  font-family: Inter, sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.015em;
  color: #FFFFFF;
}
:root .elementor .vf-cta-strip > .e-con { width: auto; max-width: none; flex-direction: row; flex-wrap: wrap; justify-content: flex-end; gap: 12px; padding: 0; }
:root .elementor .vf-cta-strip .e-button-base.vf-btn.vf-btn--secondary { color: #FFFFFF; border-color: rgba(255, 255, 255, 0.4); --vf-arrow: var(--vf-arrow-white); --vf-arrow-bg: rgba(255, 255, 255, 0.1); }
@media (max-width: 1024px) {
  :root .elementor .vf-cta-strip { grid-template-columns: minmax(0, 1fr); align-items: start; padding: 96px 24px 28px; gap: 24px; }
  :root .elementor .vf-cta-strip > .e-con { justify-content: flex-start; }
  .elementor .vf-cta-strip::before { left: 24px; top: 28px; margin-top: 0; }
  :root .elementor .vf-cta-strip > .e-paragraph-base,
    :root .elementor .vf-cta-strip > .e-heading-base { font-size: 20px; }
}
@media (max-width: 767px) {
  :root .elementor .vf-cta-strip > .e-con { width: 100%; flex-direction: column; }
  :root .elementor .vf-cta-strip > .e-con .vf-btn { width: 100%; }
}
:root .elementor .vf-post-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  height: 100%;
  padding: 0;
  border: 1px solid #E4E4E7;
  border-radius: 8px;
  background: #FFFFFF;
  overflow: hidden;
  text-decoration: none;
  transition: transform 400ms var(--vf-ease-soft), box-shadow 400ms var(--vf-ease), border-color 300ms var(--vf-ease);
}
.elementor .vf-post-card:hover { transform: translateY(-4px); border-color: #D9D9DD; box-shadow: 0 30px 50px -34px rgba(22, 22, 22, 0.45); }
:root .elementor .vf-post-card__media { position: relative; width: 100%; aspect-ratio: 16 / 10; padding: 0; overflow: hidden; border-radius: 0; background: #ECECEE; }
.elementor .vf-post-card__media img { width: 100% !important; height: 100% !important; object-fit: cover; transition: transform 900ms var(--vf-ease-soft); }
.elementor .vf-post-card:hover .vf-post-card__media img { transform: scale(1.05); }
:root .elementor .vf-post-card__body { display: flex; flex-direction: column; gap: 10px; flex: 1 1 auto; padding: 22px 24px 24px !important; overflow: visible; }
:root .elementor .vf-post-card__body .e-con { display: flex; flex-direction: column; gap: 10px; padding: 0; }
.elementor .vf-post-card__title,
.elementor .vf-post-card__body :is(h2, h3) {
  margin: 0;
  font-family: Inter, sans-serif;
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.015em;
  color: #161616 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color 200ms var(--vf-ease);
}
.elementor .vf-post-card:hover :is(.vf-post-card__title, h2, h3) { color: var(--vf-red) !important; }
.elementor .vf-post-card__body .vf-small { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.elementor .vf-post-card__body::after {
  content: "Ler artigo";
  margin-top: auto;
  padding-top: 8px;
  padding-right: 24px;
  width: max-content;
  font: 600 14px/1.4 Inter, sans-serif;
  color: #161616;
  background: var(--vf-arrow-dark) right center / 16px no-repeat;
  transition: padding-right 300ms var(--vf-ease-soft), color 200ms var(--vf-ease);
}
.elementor .vf-post-card:hover .vf-post-card__body::after { padding-right: 30px; color: var(--vf-red); }
:root .elementor .vf-assurance {
  position: relative;
  display: inline-block;
  width: auto;
  max-width: 560px;
  margin: 0;
  padding: 12px 20px 12px 54px;
  font: 500 15px/1.4 "Inter", sans-serif;
  color: #1C1C1E;
  background: #FFFFFF;
  border: 1px solid #DEDEE1;
  border-radius: 999px;
  box-shadow: 0 14px 30px -24px rgba(22, 22, 22, 0.45);
}
:root .elementor .vf-assurance::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  width: 32px;
  height: 32px;
  margin-top: -16px;
  border-radius: 50%;
  background: #EAF8F1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316794A' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 8.3-7 10-4-1.7-7-5.5-7-10V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E") center / 18px no-repeat;
}
:root .elementor .vf-assurance strong { font-weight: 700; }
@media (max-width: 767px) {
  :root .elementor .vf-assurance { width: 100%; max-width: none; border-radius: 12px; font-size: 14px; }
}
:root .elementor .vf-steps {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0;
  width: 100%;
  max-width: 720px;
  padding: 0;
  counter-reset: none;
}
:root .elementor .vf-steps > .e-con {
  flex: 0 0 auto;
  width: auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 0;
  background: none;
  border: 0 !important;
}
:root .elementor .vf-steps > .e-con + .e-con {
  margin-left: 14px;
  padding-left: clamp(36px, 6vw, 72px) !important;
  background: linear-gradient(#D9D9DD, #D9D9DD) 0 50% / calc(clamp(36px, 6vw, 72px) - 14px) 2px no-repeat !important;
}
:root .elementor .vf-steps > .e-con > .e-paragraph-base:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px !important;
  height: 32px !important;
  margin: 0;
  font: 700 14px/1 "Inter", sans-serif !important;
  color: #77777D !important;
  background: #FFFFFF;
  border: 2px solid #D9D9DD;
  border-radius: 50% !important;
}
:root .elementor .vf-steps > .e-con > .e-paragraph-base:last-child { margin: 0; font: 600 15px/1.2 "Inter", sans-serif !important; color: #77777D !important; white-space: nowrap; }
:root .elementor .vf-steps > .e-con.vf-step--current > .e-paragraph-base:first-child { color: #FFFFFF !important; background: var(--vf-red); border-color: var(--vf-red); box-shadow: 0 0 0 5px rgba(212, 20, 20, 0.14); }
:root .elementor .vf-steps > .e-con.vf-step--current > .e-paragraph-base:last-child { color: #161616 !important; }
:root .elementor .vf-section--dark .vf-steps > .e-con > .e-paragraph-base:last-child { color: #A1A1A6 !important; }
:root .elementor .vf-section--dark .vf-steps > .e-con > .e-paragraph-base:first-child { background: transparent; border-color: #3A3A3F; }
@media (max-width: 767px) {
  :root .elementor .vf-steps > .e-con + .e-con { margin-left: 8px; padding-left: 30px !important; background-size: 22px 2px !important; }
  :root .elementor .vf-steps > .e-con > .e-paragraph-base:last-child { font-size: 13px !important; }
  :root .elementor .vf-steps > .e-con:not(.vf-step--current) > .e-paragraph-base:last-child { display: none; }
}
:root .elementor .vf-timeline { display: flex; flex-direction: column; gap: 0; padding: 0; }
:root .elementor .vf-timeline > .e-con {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  margin: 0 !important;
  padding: 0 0 32px !important;
  border: 0 !important;
}
:root .elementor .vf-timeline > .e-con::before {
  content: "";
  position: absolute;
  left: 21px;
  top: 44px;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0.08));
}
:root .elementor .vf-timeline > .e-con:last-child { padding-bottom: 0 !important; }
:root .elementor .vf-timeline > .e-con:last-child::before { display: none; }
:root .elementor .vf-timeline > .e-con > .e-con:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px !important;
  height: 44px !important;
  padding: 0;
  color: #FFFFFF;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 50%;
}
:root .elementor .vf-timeline > .e-con:first-child > .e-con:first-child { background: var(--vf-red); border-color: var(--vf-red); box-shadow: 0 0 0 6px rgba(212, 20, 20, 0.18); }
:root .elementor .vf-timeline > .e-con > .e-con:first-child svg { width: 20px; height: 20px; }
:root .elementor .vf-timeline > .e-con > .e-con:nth-child(2) { display: flex; flex-direction: column; gap: 6px; padding: 8px 0 0; }
:root .elementor .vf-timeline :is(h3, .e-heading-base) { margin: 0; font: 600 18px/1.3 "Inter", sans-serif; color: #FFFFFF; }
:root .elementor .vf-timeline .e-paragraph-base { margin: 0; font-size: 15px; line-height: 1.55; color: #A1A1A6; }
:root .elementor .vf-section--dark .vf-quote-number { color: #C9C9CE; }
:root .elementor .vf-section--dark .vf-quote-number strong { color: #FFFFFF; }
:root .elementor .vf-steps { min-width: 0; }
:root .elementor .vf-steps > .e-con { min-width: 0; }
@media (max-width: 767px) {
  :root .elementor .vf-steps > .e-con.vf-step--current ~ .e-con.vf-step--current > .e-paragraph-base:last-child { display: none; }
  :root .elementor .vf-steps > .e-con + .e-con { margin-left: 6px; padding-left: 26px !important; background-size: 18px 2px !important; }
}
@media (max-width: 767px) {
  .elementor .jet-listing-grid__items:has(.vf-post-card) > .jet-listing-grid__item { width: 100% !important; max-width: 100% !important; flex: 0 0 100% !important; }
}
:root .elementor .vf-timeline > .e-con > .e-con:first-child { background: rgba(255, 255, 255, 0.08); border-color: rgba(255, 255, 255, 0.28); }
:root [data-elementor-type] > .vf-section.vf-section--dark:first-child:not(.vf-hero-fx):not(:has(> .e-con.vf-clip)) { position: relative; overflow: hidden; isolation: isolate; }
.elementor[data-elementor-type] > .vf-section.vf-section--dark:first-child:not(.vf-hero-fx):not(:has(> .e-con.vf-clip))::before {
  content: ""; position: absolute; inset: 0; z-index: 0; width: auto; height: auto; border: 0; border-radius: 0; opacity: 1; mix-blend-mode: normal; pointer-events: none;
  background:
    radial-gradient(55% 80% at 88% 8%, rgba(212, 20, 20, 0.30), rgba(212, 20, 20, 0) 62%),
    linear-gradient(90deg, rgba(22, 22, 22, 0.88) 0%, rgba(22, 22, 22, 0.5) 55%, rgba(22, 22, 22, 0.15) 100%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 64px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 64px);
}
.elementor[data-elementor-type] > .vf-section.vf-section--dark:first-child:not(.vf-hero-fx):not(:has(> .e-con.vf-clip))::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; z-index: 0; height: 3px; pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, var(--vf-red) 20%, #FF5A4F 50%, var(--vf-red) 80%, transparent 100%) no-repeat;
  background-size: 50% 100%;
  animation: vf-hero-line 6s var(--vf-ease) infinite;
}
.elementor[data-elementor-type] > .vf-section.vf-section--dark:first-child:not(.vf-hero-fx):not(:has(> .e-con.vf-clip)) > * { position: relative; z-index: 1; }
:root .elementor .vf-assurance {
  padding: 16px 24px 16px 64px;
  font-size: 16px;
  line-height: 1.45;
  color: #161616;
  background: linear-gradient(90deg, #EFFAF3 0%, #FFFFFF 70%);
  border: 1px solid #BFE5CD;
  border-radius: 14px;
  box-shadow: 0 18px 40px -28px rgba(22, 121, 74, 0.55);
}
:root .elementor .vf-assurance::before {
  left: 14px; width: 38px; height: 38px; margin-top: -19px;
  background-color: #16794A;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4.5-3 8.3-7 10-4-1.7-7-5.5-7-10V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
  box-shadow: 0 0 0 5px rgba(22, 121, 74, 0.12);
}
:root .elementor .vf-assurance strong { color: #16794A; }
:root .elementor .vf-section:has(> .vf-steps) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 32px 48px !important;
  padding-bottom: 56px !important;
  margin-bottom: 0;
  position: relative; isolation: isolate; overflow: hidden;
  background:
    radial-gradient(45% 90% at 100% 0%, rgba(212, 20, 20, 0.10), rgba(212, 20, 20, 0) 65%),
    repeating-linear-gradient(0deg, rgba(22, 22, 22, 0.035) 0 1px, transparent 1px 56px),
    repeating-linear-gradient(90deg, rgba(22, 22, 22, 0.035) 0 1px, transparent 1px 56px),
    #F7F7F8 !important;
  border-bottom: 1px solid #E4E4E7;
}
:root .elementor .vf-section:has(> .vf-steps)::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, var(--vf-red) 20%, #FF5A4F 50%, var(--vf-red) 80%, transparent 100%) no-repeat;
  background-size: 40% 100%;
  animation: vf-hero-line 6s var(--vf-ease) infinite;
}
:root .elementor .vf-section:has(> .vf-steps) > .vf-stack { gap: 0; }
:root .elementor .vf-section:has(> .vf-steps) > .vf-stack .vf-caption { margin-top: 16px; max-width: 46ch; font-size: 18px; line-height: 1.55; color: #45454B; }
:root .elementor .vf-section:has(> .vf-steps) > .vf-steps {
  width: auto; max-width: none;
  padding: 18px 24px !important;
  background: #FFFFFF;
  border: 1px solid #E4E4E7;
  border-radius: 14px;
  box-shadow: 0 30px 60px -40px rgba(22, 22, 22, 0.45);
}
:root .elementor .vf-section:has(> .vf-steps) + .vf-section { padding-top: 40px !important; }
@media (max-width: 1024px) {
  :root .elementor .vf-section:has(> .vf-steps) { grid-template-columns: minmax(0, 1fr); align-items: start; padding-bottom: 32px !important; margin-bottom: 0; }
  :root .elementor .vf-section:has(> .vf-steps) > .vf-steps { width: 100%; justify-content: space-between; padding: 14px 16px !important; }
}
:root .elementor .vf-section--dark:has(.vf-timeline) { position: relative; isolation: isolate; overflow: hidden; }
.elementor .vf-section--dark:has(.vf-timeline)::before {
  content: ""; position: absolute; inset: 0; z-index: -1; width: auto; height: auto; border: 0; border-radius: 0; opacity: 1; pointer-events: none;
  background:
    radial-gradient(40% 70% at 0% 0%, rgba(22, 121, 74, 0.22), rgba(22, 121, 74, 0) 60%),
    radial-gradient(45% 80% at 100% 100%, rgba(212, 20, 20, 0.25), rgba(212, 20, 20, 0) 60%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 64px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 64px);
}
:root .elementor .vf-timeline {
  padding: 32px !important;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
}
:root .elementor .vf-timeline > .e-con:first-child > .e-con:first-child { background: #16794A; border-color: #16794A; box-shadow: 0 0 0 6px rgba(22, 121, 74, 0.25); }
:root .elementor .vf-timeline > .e-con:nth-child(2) > .e-con:first-child { border-color: rgba(255, 255, 255, 0.5); animation: vf-pulse 2.4s var(--vf-ease) infinite; }
:root .elementor .vf-section--dark .vf-quote-number { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 999px; }
@media (max-width: 767px) {
  :root .elementor .vf-timeline { padding: 22px !important; }
}
@media (max-width: 1024px) {
  body:not(.home) .vf-marquee .e-paragraph-base { font-size: 15px !important; letter-spacing: 0 !important; }
}
