/* ==========================================================================
   ELF — Landing legal en Avada Fusion Builder
   Clases .ll-* aplicadas a elementos de Fusion Builder.
   Fuentes: Fraunces (display) + Public Sans (body)
   Paleta: navy #0c1526 / #0f1c31 / #152540 / #1d3157, brass #b98b3f,
           brass-bright #d9a54f, terracotta #b4553a, paper #f6f2ea,
           paper-dim #ece5d7, ink #151310, ink-soft #4a4640
   ========================================================================== */

/* Secciones de fondo oscuro */
.ll-hero,.ll-pain,.ll-cta{color:#f6f2ea !important;}
.ll-hero{background:radial-gradient(ellipse 900px 500px at 82% -10%, rgba(185,139,63,.18), transparent 60%), linear-gradient(180deg,#0c1526,#0f1c31 60%,#152540) !important;}
.ll-pain{background:#0c1526 !important;}
.ll-cta{background:radial-gradient(ellipse 700px 400px at 20% 0%, rgba(185,139,63,.22), transparent 60%), linear-gradient(160deg,#0f1c31,#0c1526) !important; text-align:center !important;}

/* Secciones de fondo crema */
.ll-intro,.ll-benefits,.ll-faq{background:#f6f2ea !important;}
.ll-proof,.ll-countries{background:#ece5d7 !important;}

/* Anchura de contenido */
.ll-hero .fusion-builder-row,.ll-pain .fusion-builder-row,.ll-cta .fusion-builder-row,
.ll-intro .fusion-builder-row,.ll-benefits .fusion-builder-row,.ll-faq .fusion-builder-row,
.ll-countries .fusion-builder-row,.ll-proof .fusion-builder-row{max-width:1180px !important;margin:0 auto !important;}

/* Tipografía */
.ll-eyebrow{font-family:"Public Sans",sans-serif !important;font-weight:700 !important;font-size:12.5px !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:#b98b3f !important;margin:0 0 14px !important;}
.ll-h1,.ll-h2{font-family:"Fraunces",Georgia,serif !important;font-weight:600 !important;line-height:1.08 !important;letter-spacing:-0.01em !important;color:#151310 !important;}
.ll-hero .ll-h1,.ll-pain .ll-h2,.ll-cta .ll-h2{color:#f6f2ea !important;}
.ll-hero .ll-h1{font-size:clamp(2.3rem,4.4vw,3.6rem) !important;margin:18px 0 22px !important;}
.ll-hero .ll-h1 em,.ll-hero .ll-eyebrow,.ll-pain .ll-eyebrow,.ll-cta .ll-eyebrow{color:#d9a54f !important;}
.ll-h2{font-size:clamp(1.9rem,3.3vw,2.5rem) !important;margin:12px 0 16px !important;color:#0f1c31 !important;}
.ll-body-text{font-family:"Public Sans",sans-serif !important;font-size:17px !important;line-height:1.65 !important;color:#4a4640 !important;}

/* Hero */
.ll-hero-sub{font-family:"Public Sans",sans-serif !important;font-size:18px !important;line-height:1.6 !important;color:#cfd3dd !important;margin-bottom:30px !important;}
.ll-points{font-family:"Public Sans",sans-serif !important;}
.ll-points ul{list-style:none !important;margin:0 !important;padding:0 !important;display:flex !important;flex-wrap:wrap !important;gap:12px 22px !important;}
.ll-points li{font-size:14.5px !important;color:#dfe2ea !important;display:flex !important;align-items:center !important;gap:9px !important;}
.ll-points li::before{content:"" !important;width:17px !important;height:17px !important;flex:none !important;background:#d9a54f !important;border-radius:50% !important;}
.ll-hero-note{font-family:"Public Sans",sans-serif !important;font-size:13px !important;color:#9aa0b0 !important;}

/* Botón primario (terracota) */
.ll-btn-primary{display:inline-flex !important;align-items:center !important;gap:10px !important;background:#b4553a !important;color:#fff !important;font-family:"Public Sans",sans-serif !important;font-weight:700 !important;font-size:16px !important;padding:17px 30px !important;border-radius:2px !important;box-shadow:0 14px 30px -12px rgba(180,85,58,.55) !important;text-decoration:none !important;transition:background .18s ease !important;}
.ll-btn-primary:hover{background:#c66246 !important;color:#fff !important;}

/* Proof strip (fondo crema) */
.ll-proof .fusion-builder-column{text-align:center !important;}
.ll-proof-num{font-family:"Fraunces",serif !important;font-size:clamp(1.7rem,3vw,2.3rem) !important;font-weight:700 !important;color:#0f1c31 !important;margin:0 !important;}
.ll-proof-label{font-family:"Public Sans",sans-serif !important;font-size:13px !important;color:#4a4640 !important;margin:4px 0 0 !important;}

/* Pain cards (numeradas, sobre navy) */
.ll-pain .ll-body-text{color:#c3c8d4 !important;}
.ll-card{border-radius:4px !important;padding:28px 24px !important;height:100% !important;}
.ll-pain .ll-card{border:1px solid rgba(246,242,234,.14) !important;background:linear-gradient(180deg, rgba(255,255,255,.03), transparent) !important;}
.ll-pain .ll-card-num{display:block !important;font-family:"Fraunces",serif !important;font-size:15px !important;color:#d9a54f !important;margin-bottom:14px !important;}
.ll-pain .ll-card-title{font-family:"Public Sans",sans-serif !important;font-size:18px !important;font-weight:700 !important;color:#f6f2ea !important;margin:0 0 10px !important;}
.ll-pain .ll-card-text{font-family:"Public Sans",sans-serif !important;font-size:14.5px !important;line-height:1.6 !important;color:#b7bcc9 !important;}

/* Benefit cards (borde superior brass + icono circular) */
.ll-benefits .ll-card{border:none !important;border-top:3px solid #b98b3f !important;padding:20px 0 0 !important;background:transparent !important;border-radius:0 !important;}
.ll-benefit-icon{width:42px !important;height:42px !important;border-radius:50% !important;background:#0f1c31 !important;color:#d9a54f !important;display:flex !important;align-items:center !important;justify-content:center !important;margin-bottom:18px !important;}
.ll-benefit-icon svg{width:20px !important;height:20px !important;}
.ll-benefits .ll-card-title{font-family:"Fraunces",serif !important;font-size:19px !important;font-weight:600 !important;color:#0f1c31 !important;margin:0 0 9px !important;}
.ll-benefits .ll-card-text{font-family:"Public Sans",sans-serif !important;font-size:14.5px !important;line-height:1.6 !important;color:#4a4640 !important;}

/* Countries (fondo crema) */
.ll-countries .ll-h2{font-size:1.6rem !important;}
.ll-countries-list{font-family:"Public Sans",sans-serif !important;font-size:14.5px !important;color:#4a4640 !important;margin-top:22px !important;}
.ll-countries-list span{white-space:nowrap !important;display:inline-block !important;margin:0 14px 10px 0 !important;}
.ll-countries-list span::before{content:"\2014  " !important;}

/* FAQ (borde inferior, serif) */
.ll-faq details{border-bottom:1px solid rgba(21,19,16,.12) !important;padding:22px 0 !important;}
.ll-faq details summary{list-style:none !important;cursor:pointer !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:20px !important;font-family:"Fraunces",serif !important;font-weight:600 !important;font-size:18px !important;color:#0f1c31 !important;}
.ll-faq details summary::-webkit-details-marker{display:none !important;}
.ll-faq details summary::after{content:"+" !important;flex:none !important;font-size:22px !important;color:#b98b3f !important;font-family:"Public Sans",sans-serif !important;font-weight:400 !important;}
.ll-faq details[open] summary::after{content:"\2013" !important;}
.ll-faq details p{font-family:"Public Sans",sans-serif !important;font-size:15px !important;line-height:1.65 !important;color:#4a4640 !important;margin:14px 0 0 !important;}

/* Final CTA */
.ll-cta .ll-h2{font-size:clamp(2rem,4vw,2.9rem) !important;max-width:720px !important;margin:0 auto 18px !important;}
.ll-cta .ll-body-text{color:#c9cdd8 !important;max-width:560px !important;margin:0 auto 34px !important;font-size:17px !important;}

/* Formulario de leads (shortcode [elf_lead_form]) */
.lead-card{background:#f6f2ea !important;color:#151310 !important;border-radius:6px !important;padding:30px 28px 28px !important;box-shadow:0 30px 60px -20px rgba(0,0,0,.45) !important;position:relative !important;z-index:1 !important;}
.lead-card h3{font-family:"Fraunces",serif !important;font-size:21px !important;margin-bottom:6px !important;color:#0f1c31 !important;}
.lead-card p.sub{font-family:"Public Sans",sans-serif !important;font-size:14px !important;color:#4a4640 !important;margin-bottom:20px !important;}
.elf-lead-form .field{margin-bottom:14px !important;}
.elf-lead-form .field label{display:block !important;font-family:"Public Sans",sans-serif !important;font-size:12.5px !important;font-weight:700 !important;letter-spacing:.03em !important;text-transform:uppercase !important;color:#4a4640 !important;margin-bottom:6px !important;}
.elf-lead-form .field input,.elf-lead-form .field select,.elf-lead-form .field textarea{width:100% !important;border:1px solid rgba(21,19,16,.12) !important;border-radius:3px !important;padding:11px 12px !important;font-family:"Public Sans",sans-serif !important;font-size:15px !important;background:#fff !important;color:#151310 !important;}
.elf-lead-form .field textarea{resize:vertical !important;min-height:70px !important;}
.elf-lead-form .field input:focus,.elf-lead-form .field select:focus,.elf-lead-form .field textarea:focus{outline:2px solid #b98b3f !important;outline-offset:1px !important;}
.lead-submit{width:100% !important;background:#0f1c31 !important;color:#fff !important;border:none !important;border-radius:3px !important;padding:15px 18px !important;font-weight:700 !important;font-size:15.5px !important;cursor:pointer !important;margin-top:6px !important;transition:background .18s ease !important;font-family:"Public Sans",sans-serif !important;}
.lead-submit:hover{background:#1d3157 !important;}
.lead-submit:disabled{opacity:.6 !important;cursor:default !important;}
.lead-fine{font-family:"Public Sans",sans-serif !important;font-size:11.5px !important;color:#4a4640 !important;margin-top:12px !important;text-align:center !important;}
.form-msg{display:none !important;font-family:"Public Sans",sans-serif !important;font-size:13.5px !important;font-weight:600 !important;text-align:center !important;margin-top:12px !important;padding:10px 12px !important;border-radius:4px !important;}
.form-msg.success{display:block !important;background:#eef6ef !important;color:#1a7a45 !important;border:1px solid #c3e6d0 !important;}
.form-msg.error{display:block !important;background:#fdecea !important;color:#b32d2d !important;border:1px solid #f5c6c0 !important;}

/* ===== Category hub: topics grid ===== */
.ll-topics-grid .ll-topic-card {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 18px 20px !important;
  margin-bottom: 12px !important;
  background: #ffffff !important;
  border: 1px solid rgba(12,21,38,0.12) !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  transition: border-color .2s, transform .2s, box-shadow .2s !important;
  box-shadow: 0 1px 2px rgba(12,21,38,0.04) !important;
}
.ll-topics-grid .ll-topic-card:hover {
  border-color: #b4553a !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(12,21,38,0.08) !important;
}
.ll-topics-grid .ll-topic-title {
  color: #0c1526 !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
}
.ll-topics-grid .ll-topic-arrow {
  color: #b4553a !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  margin-left: 12px !important;
  flex: none !important;
}

/* Selector de idioma en landings limpias */
.ll-lang-switcher {
  position: fixed;
  top: 14px;
  right: 18px;
  z-index: 9999;
  background: rgba(12,21,38,0.55);
  padding: 6px 12px;
  border-radius: 20px;
  backdrop-filter: blur(4px);
}
.ll-lang-switcher ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  gap: 14px;
}
.ll-lang-switcher li { margin: 0 !important; padding: 0 !important; }
.ll-lang-switcher li::before { display: none !important; }
.ll-lang-switcher a {
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  text-decoration: none !important;
  opacity: 0.72;
  transition: opacity .2s;
}
.ll-lang-switcher a:hover { opacity: 1; }
.ll-lang-switcher .current-lang a { opacity: 1; border-bottom: 1px solid #ffffff; }
