/* ============================================
   LANDING PAGE — Minimal Header/Footer
   DT Network
   ============================================ */

/* LP Header */
.lp-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--dt-bg-glass);
  backdrop-filter: blur(22px);
  -webkit-backdrop-filter: blur(22px);
  border-bottom: 1px solid var(--dt-border);
  padding: var(--dt-space-3) 0;
}
.lp-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.lp-header__logo { display: inline-flex; align-items: center; }
.lp-header__logo img { height: 32px; width: auto; }

/* LP Footer */
.lp-footer {
  border-top: 1px solid var(--dt-border);
  padding: var(--dt-space-8) 0;
  margin-top: var(--dt-space-16);
}
.lp-footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--dt-space-3);
  text-align: center;
}
.lp-footer__copy {
  font-size: var(--dt-text-xs);
  color: var(--dt-text-dim);
}
.lp-footer__link {
  font-size: var(--dt-text-xs);
  color: var(--dt-text-dim);
  text-decoration: none;
  transition: color var(--dt-transition);
}
.lp-footer__link:hover { color: var(--dt-orange); }

/* LP Sticky CTA bar */
.landing-page .sticky-cta {
  display: block;
}

/* ============================================
   CALC HERO — Bloco topo da calculadora
   Gradiente hero azul padrao + logo centralizada
   ============================================ */
.calc-hero {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--dt-space-10) var(--dt-space-4);
  background: linear-gradient(140deg, #05050e 0%, #0f1a3d 55%, #0d0d30 100%);
  border-bottom: 1px solid rgba(255,255,255,0.07);
  position: relative;
  overflow: hidden;
}
/* Brilho azul lateral — igual ao hero padrao */
.calc-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 70% 120% at 15% 50%, rgba(15,50,120,0.45) 0%, transparent 65%),
    radial-gradient(ellipse 50% 100% at 85% 50%, rgba(10,30,80,0.30) 0%, transparent 65%);
  pointer-events: none;
}
.calc-hero__logo-link {
  display: inline-flex;
  line-height: 0;
  position: relative;
  z-index: 1;
}
.calc-hero__logo-link img { height: 44px; width: auto; }

/* ============================================
   LP FOOTER FULL — Rodapé enhanced para LPs
   Linha principal: Logo (esq) | G.Reviews (centro) | espaco (dir)
   Barra inferior: copyright (esq) | Politica (dir)
   ============================================ */
.lp-footer-full {
  border-top: 1px solid var(--dt-border);
  margin-top: var(--dt-space-16);
  padding: var(--dt-space-8) 0 0;
  background: rgba(255,255,255,0.01);
}
[data-theme="light"] .lp-footer-full {
  background: var(--dt-bg-alt);
}

/* Linha principal: 3 zonas horizontais, sem wrap */
.lp-footer-full__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: var(--dt-space-6);
  padding-bottom: var(--dt-space-6);
}

/* Zona esquerda: logo + tagline */
.lp-footer-full__brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--dt-space-2);
  flex: 1 1 0;
  min-width: 0;
}
.lp-footer-full__brand img { height: 32px; width: auto; flex-shrink: 0; }
.lp-footer-full__tagline {
  font-size: 0.72rem;
  color: var(--dt-text-dim);
  margin: 0;
  line-height: 1.4;
  white-space: nowrap;
}

/* Zona central: espaco vazio */
.lp-footer-full__spacer {
  flex: 1 1 0;
  min-width: 0;
}

/* Zona direita: Google Reviews, nao encolhe */
.lp-footer-full__grev {
  flex: 0 0 auto;
}
.lp-footer-full__grev .grev-card {
  padding: var(--dt-space-4) var(--dt-space-5) !important;
}

/* Barra inferior: copyright (esq) | politica (dir) — linha unica compacta */
.lp-footer-full__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--dt-space-4);
  padding: var(--dt-space-3) 0 var(--dt-space-5);
  border-top: 1px solid var(--dt-border);
}
.lp-footer-full__copy {
  font-size: 0.65rem;
  color: var(--dt-text-dim);
  margin: 0;
  opacity: 0.55;
}
.lp-footer-full__policy {
  font-size: 0.65rem;
  color: var(--dt-text-dim);
  text-decoration: none;
  transition: color var(--dt-transition);
  white-space: nowrap;
  opacity: 0.7;
}
.lp-footer-full__policy:hover { color: var(--dt-orange); opacity: 1; }

@media (max-width: 768px) {
  .calc-hero { padding: var(--dt-space-8) var(--dt-space-4); }
  .lp-footer-full__main {
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--dt-space-5);
  }
  .lp-footer-full__brand { align-items: center; }
  .lp-footer-full__tagline { white-space: normal; text-align: center; }
  .lp-footer-full__spacer { display: none; }
  .lp-footer-full__bottom { flex-direction: column; gap: var(--dt-space-2); text-align: center; }
}

/* ============================================
   LP FORM — Light mode + card transparente
   Escopo: apenas LPs (via .lp-form-box)
   Ativa o data-theme="light" nativo do dtnf-forms.css.
   Aqui ficam apenas os overrides de layout do card.
   ============================================ */

/* Remove card: sem fundo, sem borda, sem padding lateral */
.lp-form-box {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  position: static;
  overflow: visible;
}
.lp-form-box::before { display: none; }
.lp-form-box > * { position: static; }

/* Trust row */
.lp-form-box .lp-trust-row { margin-top: 12px; }
.lp-form-box .lp-trust-item { color: #64748b; }

/* Título e subtítulo do form centralizados */
#formulario .dtnf-form-wrap .dtnf-form-title      { text-align: center !important; }
#formulario .dtnf-form-wrap .dtnf-form-subtitle,
#formulario .dtnf-form-wrap .dtnf-form-description { text-align: center !important; }

/* Mobile: margem mínima nas laterais */
@media (max-width: 768px) {
  .lp-form-box { padding: 0 4px; }
  #formulario .dtnf-form-wrap,
  #formulario .dtnf-form-wrap .dtnf-form-topo,
  #formulario .dtnf-form-wrap .dtnf-form-fundo { padding: 0.25rem !important; }
}

/* ============================================
   LP FORM LED BORDER — Efeito de borda animada
   Tecnica: pseudo-elemento girando com overflow:hidden
   (mesma tecnica do .cca__agent-led em home.css)
   ============================================ */
@keyframes lp-led-spin {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  100% { transform: translate(-50%, -50%) rotate(360deg); }
}
/* Override de position:static que vem de .lp-form-box > * */
.lp-form-box .lp-form-led {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  padding: 5px;
  background: transparent;
}
/* Faixa laranja girando — visivel apenas nas bordas (clipped pelo overflow:hidden do pai) */
/* Centering via top/left + translate evita bug de inset:-100% + width:300% em containers dinamicos */
.lp-form-led::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200%;
  height: 200%;
  transform: translate(-50%, -50%);
  transform-origin: center center;
  background: conic-gradient(transparent 265deg, #ffb347 292deg, #ff5c1a 310deg, #ed4700 322deg, #ff5c1a 338deg, transparent 358deg);
  animation: lp-led-spin 3.5s linear infinite;
  will-change: transform;
  z-index: 0;
}
/* Fundo branco interno — separa o conteudo do form da borda LED */
.lp-form-led::after {
  content: '';
  position: absolute;
  inset: 5px;
  border-radius: 13px;
  background: #ffffff;
  z-index: 1;
}
/* Conteudo do form acima dos pseudo-elementos */
/* overflow:hidden + border-radius contem box-shadows internos (ex: glow do botao)
   que vazariam para a zona do LED girante */
.lp-form-led > * {
  position: relative;
  z-index: 2;
  border-radius: 13px;
  overflow: hidden;
}
