:root{--page-title-display:none;}/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500&display=swap');

/* ================= BASE ================= */
html { scroll-behavior: smooth; background-color: #000000; }
body { background-color: #000000; color: #e9eef3; margin: 0; }

.lpp-page, .lpp-page p, .lpp-page h1, .lpp-page h2, .lpp-page h3,
.lpp-page a, .lpp-page button, .lpp-page summary, .lpp-page label {
  font-family: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
}
.lpp-page .lpp-code, .lpp-page .lpp-price {
  font-family: "JetBrains Mono", ui-monospace, Consolas, monospace;
}

.lpp-h1 span, .lpp-cta-h2 span, .lpp-pct span { color: #8e9bab; }
.lpp-price span { font-size: 16px; color: #8e9bab; }
.lpp-small s { color: #5c6775; text-decoration-color: rgba(255,255,255,0.35); }

/* ====== ETIQUETA VERTICAL ======
   O posicionamento NAO pode viver na classe global: o Elementor converte
   left/top em propriedades logicas, e o writing-mode vertical-rl as inverte. */
.lpp-page .lpp-vlabel {
  position: absolute;
  writing-mode: vertical-rl;
  left: 48px; right: auto; top: 50%; bottom: auto;
  width: max-content; height: auto;
  transform: translateY(-50%);
  pointer-events: none;
}

/* ================= CRONOMETRO EM CSS PURO =================
   Uma custom property <integer> animada com steps(), exibida por counter()
   no ::after. O jump-start faz o primeiro valor ja ser o de baixo. */
@property --lpp-d { syntax: "<integer>"; inherits: false; initial-value: 0; }
@property --lpp-h { syntax: "<integer>"; inherits: false; initial-value: 0; }
@property --lpp-m { syntax: "<integer>"; inherits: false; initial-value: 0; }
@property --lpp-s { syntax: "<integer>"; inherits: false; initial-value: 0; }

@keyframes lpp-cd { from { --lpp-d: 7;  } to { --lpp-d: 0; } }
@keyframes lpp-ch { from { --lpp-h: 24; } to { --lpp-h: 0; } }
@keyframes lpp-cm { from { --lpp-m: 60; } to { --lpp-m: 0; } }
@keyframes lpp-cs { from { --lpp-s: 60; } to { --lpp-s: 0; } }

.lpp-count-cell .lpp-mono-xl::after {
  font-family: "JetBrains Mono", ui-monospace, Consolas, monospace;
  font-weight: 300; font-size: 36px; line-height: 1;
  color: #e9eef3; font-variant-numeric: tabular-nums;
}
@media (max-width: 767px) {
  .lpp-count-cell .lpp-mono-xl::after { font-size: 26px; }
}

.lpp-count-cell:nth-child(1) .lpp-mono-xl {
  counter-reset: lppd var(--lpp-d);
  animation: lpp-cd 604800s steps(7, jump-start) 0s 1 forwards;
}
.lpp-count-cell:nth-child(1) .lpp-mono-xl::after { content: counter(lppd, decimal-leading-zero); }

.lpp-count-cell:nth-child(2) .lpp-mono-xl {
  counter-reset: lpph var(--lpp-h);
  animation: lpp-ch 86400s steps(24, jump-start) 0s infinite;
}
.lpp-count-cell:nth-child(2) .lpp-mono-xl::after { content: counter(lpph, decimal-leading-zero); }

.lpp-count-cell:nth-child(3) .lpp-mono-xl {
  counter-reset: lppm var(--lpp-m);
  animation: lpp-cm 3600s steps(60, jump-start) 0s infinite;
}
.lpp-count-cell:nth-child(3) .lpp-mono-xl::after { content: counter(lppm, decimal-leading-zero); }

.lpp-count-cell:nth-child(4) .lpp-mono-xl {
  counter-reset: lpps var(--lpp-s);
  animation: lpp-cs 60s steps(60, jump-start) 0s infinite;
}
.lpp-count-cell:nth-child(4) .lpp-mono-xl::after { content: counter(lpps, decimal-leading-zero); }

/* ================= RELOGIO: fios entre as celulas ================= */
.lpp-count > .lpp-count-cell + .lpp-count-cell {
  border-left: 1px solid rgba(255,255,255,0.10);
}

/* ================= MOTOR DE RESERVA ================= */
.lpp-engine > .lpp-engine-field + .lpp-engine-field {
  border-left: 1px solid rgba(255,255,255,0.10);
}
/* com 4 campos a barra vira coluna ja no tablet */
@media (max-width: 1024px) {
  .lpp-engine > .lpp-engine-field + .lpp-engine-field {
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,0.10);
  }
}
.lpp-input::placeholder { color: #8e9bab; opacity: 1; }
.lpp-input::-webkit-calendar-picker-indicator { filter: invert(1); opacity: .45; cursor: pointer; }
.lpp-input:focus { outline: none; }
.lpp-input option { background-color: #0a0a0b; color: #e9eef3; }
.lpp-engine .e-form-success-message-base,
.lpp-engine .e-form-error-message-base { flex-basis: 100%; }

/* ================= ANIMACOES ================= */
@keyframes lpp-zoom    { from { transform: scale(1); } to { transform: scale(1.12); } }
@keyframes lpp-intro   { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes lpp-rise-in { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes lpp-draw    { from { transform: scaleX(0); } to { transform: scaleX(1); } }

@media (prefers-reduced-motion: no-preference) {
  .lpp-hero-inner > * { animation: lpp-intro .9s cubic-bezier(.22,1,.36,1) both; }
  .lpp-hero-inner > *:nth-child(1) { animation-delay: .15s; }
  .lpp-hero-inner > *:nth-child(2) { animation-delay: .30s; }
  .lpp-hero-inner > *:nth-child(3) { animation-delay: .46s; }
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .lpp-rise {
      animation: lpp-rise-in linear both;
      animation-timeline: view();
      animation-range: entry 6% cover 26%;
    }
    .lpp-grid3 > .lpp-rise:nth-child(2) { animation-range: entry 11% cover 31%; }
    .lpp-grid3 > .lpp-rise:nth-child(3) { animation-range: entry 16% cover 36%; }
  }
}

.lpp-sec-head { border-bottom-color: transparent; }
.lpp-sec-head::after {
  content: ''; position: absolute; left: 0; bottom: -1px;
  width: 100%; height: 1px; background-color: rgba(255,255,255,0.14);
  transform-origin: left;
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .lpp-sec-head::after {
      animation: lpp-draw linear both;
      animation-timeline: view();
      animation-range: entry 10% cover 32%;
    }
  }
}

/* ================= MENU: sublinhado que cresce ================= */
.lpp-header nav p { position: relative; }
.lpp-header nav p::after {
  content: ''; position: absolute; left: 0; bottom: -7px;
  width: 100%; height: 1px; background-color: #e9eef3;
  transform: scaleX(0); transform-origin: right;
  transition: transform .45s cubic-bezier(.22,1,.36,1);
}
.lpp-header nav p:hover::after { transform: scaleX(1); transform-origin: left; }

/* ================= CARTAO DE OFERTA ================= */
.lpp-card-media::after {
  content: ''; position: absolute; left: 0; right: 0; top: 0; bottom: 0;
  background-color: rgba(0,0,0,0.46);
  pointer-events: none; z-index: 1;
  transition: background-color .5s ease;
}
@media (hover: hover) and (min-width: 1025px) {
  .lpp-card:hover .lpp-card-media::after { background-color: rgba(0,0,0,0.28); }
  .lpp-card:hover .lpp-card-img { transform: scale(1.05); opacity: 0.92; }
  .lpp-card:hover .lpp-reveal,
  .lpp-card:focus-within .lpp-reveal { max-height: 160px; opacity: 1; }
}

/* ================= ACORDEAO: + que vira x ================= */
.lpp-faq-head { list-style: none; }
.lpp-faq-head::-webkit-details-marker { display: none; }
.lpp-faq-item > summary::marker { content: ''; }
.lpp-faq-head::before,
.lpp-faq-head::after {
  content: ''; position: absolute; top: 50%; right: 0px;
  background-color: #8e9bab;
  transition: transform .35s cubic-bezier(.22,1,.36,1), background-color .3s ease;
}
.lpp-faq-head::before { width: 16px; height: 1px; transform: translateY(-50%); }
.lpp-faq-head::after  { width: 1px; height: 16px; right: 7.5px; transform: translateY(-50%); }
.lpp-faq-head:hover::before, .lpp-faq-head:hover::after { background-color: #e9eef3; }
.lpp-faq-item[open] .lpp-faq-head::before { transform: translateY(-50%) rotate(45deg); background-color: #e9eef3; }
.lpp-faq-item[open] .lpp-faq-head::after  { transform: translateY(-50%) rotate(45deg); background-color: #e9eef3; }

/* ================= MOBILE ================= */
@media (max-width: 1024px) { .lpp-footer { padding-bottom: 124px; } }

/* ================= MOVIMENTO REDUZIDO ================= */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .lpp-hero-img { animation: none; }
  .lpp-hero-inner > *, .lpp-rise { animation: none; opacity: 1; transform: none; }
  .lpp-sec-head::after { animation: none; transform: none; }
  .lpp-card-img, .lpp-reveal, .lpp-card-media::after,
  .lpp-faq-head::before, .lpp-faq-head::after { transition: none; }
}/* End custom CSS */