/* Rediseño EncuentraTuFoto (2026-10) — navbar, footer y portada.
   Clases con prefijo etf- para no chocar con style.min.css del tema. */

:root {
  --etf-naranja: #F47B20;
  --etf-naranja-texto: #B54708;
  --etf-naranja-suave: #FFF3EA;
  --etf-tinta: #111418;
  --etf-tinta-2: #1F1208;
  --etf-gris: #4B5563;
  --etf-gris-claro: #C9CED6;
  --etf-borde: #F3E2D4;
}

.etf-wrap { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; box-sizing: border-box; width: 100%; }
.etf, .etf-nav, .etf-footer { font-family: 'Barlow', system-ui, sans-serif; color: var(--etf-tinta); }
.etf *, .etf-nav *, .etf-footer * { box-sizing: border-box; }
.etf-display { font-family: 'Barlow Condensed', 'Barlow', sans-serif; font-weight: 800; text-transform: uppercase; line-height: 0.95; letter-spacing: -0.01em; margin: 0; }
.etf-eyebrow { margin: 0; font-weight: 700; font-size: 14px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--etf-naranja-texto); }

/* Botones */
.etf-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 26px; border-radius: 999px; font-weight: 700; font-size: 16px; text-decoration: none; border: 2px solid transparent; cursor: pointer; transition: transform .15s ease, background-color .2s ease; }
.etf-btn:hover { transform: translateY(-1px); }
.etf-btn--naranja { background: var(--etf-naranja); color: var(--etf-tinta); }
.etf-btn--naranja:hover { background: #FF8A33; color: var(--etf-tinta); }
.etf-btn--negro { background: var(--etf-tinta); color: #FFFFFF; }
.etf-btn--negro:hover { background: #000000; color: #FFFFFF; }
.etf-btn--borde { border-color: var(--etf-tinta); color: var(--etf-tinta); background: transparent; }
.etf-btn--borde-claro { border-color: #4A525E; color: #FFFFFF; background: transparent; }
.etf-btn--borde-claro:hover { border-color: #FFFFFF; color: #FFFFFF; }
.etf-btn svg { flex-shrink: 0; }

/* Navbar */
.etf-nav { background: #FFFFFF; border-bottom: 1px solid var(--etf-borde); transition: box-shadow .3s ease; }
.etf-nav.is-sticky { box-shadow: 0 6px 24px rgba(17, 20, 24, 0.08); }
.etf-nav__inner { min-height: 76px; padding-top: 10px; padding-bottom: 10px; }
.etf-nav__brand img { height: 52px; width: auto; display: block; }
.etf-nav__toggle { width: 44px; height: 44px; border-radius: 10px; border: 0; background: var(--etf-naranja-suave); color: var(--etf-tinta); font-size: 24px; display: inline-flex; align-items: center; justify-content: center; }
.etf-nav__menu { list-style: none; margin: 0; padding: 12px 0 8px; display: flex; flex-direction: column; gap: 4px; }
.etf-nav__link { display: flex; align-items: center; min-height: 44px; padding: 0 12px; font-weight: 600; font-size: 16px; color: #374151; text-decoration: none; border-radius: 10px; }
.etf-nav__link:hover { color: var(--etf-tinta); background: var(--etf-naranja-suave); }
.etf-nav__link.active { color: var(--etf-tinta); font-weight: 700; }
.etf-nav__cta { margin-top: 8px; }
.etf-nav__cta .etf-btn { min-height: 44px; padding: 0 20px; font-size: 15px; width: 100%; }
@media (min-width: 1024px) {
  .etf-nav__menu { flex-direction: row; align-items: center; gap: 8px; padding: 0; }
  .etf-nav__cta { margin: 0 0 0 12px; }
  .etf-nav__cta .etf-btn { width: auto; }
}

/* Hero */
.etf-hero { background: var(--etf-naranja); color: var(--etf-tinta); padding: 136px 0 96px; }
.etf-hero__grid { display: flex; flex-wrap: wrap; align-items: center; gap: 56px; }
.etf-hero__texto { flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.etf-hero__texto .etf-eyebrow { color: var(--etf-tinta); }
.etf-hero h1 { font-size: clamp(48px, 6vw, 88px); }
.etf-hero__lead { margin: 0; font-size: 20px; line-height: 1.5; color: var(--etf-tinta-2); max-width: 540px; }
.etf-hero__foto { flex: 0 1 420px; min-width: 260px; margin: 0 auto; position: relative; aspect-ratio: 2 / 3; border-radius: 20px; overflow: hidden; background: #1B2027; box-shadow: 0 24px 60px rgba(17, 20, 24, 0.3); }
.etf-hero__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.etf-marca { position: absolute; border-radius: 10px; }
.etf-marca--rostro { left: 43.5%; top: 23%; width: 13%; height: 10%; border: 3px solid #FFFFFF; }
.etf-marca--dorsal { left: 44%; top: 50.5%; width: 13%; height: 9%; border: 3px solid var(--etf-naranja); }
.etf-chip { position: absolute; padding: 5px 10px; border-radius: 999px; font-size: 13px; font-weight: 700; white-space: nowrap; }
.etf-chip--rostro { left: 57.5%; top: 24%; background: #FFFFFF; color: var(--etf-tinta); }
.etf-chip--dorsal { left: 57.5%; top: 52%; background: var(--etf-naranja); color: var(--etf-tinta); }

/* Buscador */
.etf-buscador { background: #FFFFFF; border-radius: 20px; padding: 24px; display: flex; flex-direction: column; gap: 16px; max-width: 560px; box-shadow: 0 24px 60px rgba(17, 20, 24, 0.25); }
.etf-buscador__fila { display: flex; flex-wrap: wrap; gap: 14px; }
.etf-campo { display: flex; flex-direction: column; gap: 6px; flex: 1 1 160px; min-width: 0; }
.etf-campo--ancho { flex: 2 1 220px; }
.etf-campo label { font-size: 14px; font-weight: 600; color: #374151; margin: 0; }
.etf-campo select, .etf-campo input[type="text"], .etf-campo input[type="file"] { width: 100%; min-height: 52px; border: 1.5px solid #D1D5DB; border-radius: 12px; padding: 0 14px; font: 500 16px 'Barlow', sans-serif; color: var(--etf-tinta); background: #FFFFFF; }
.etf-campo input[type="file"] { padding: 12px 14px; font-size: 15px; }
.etf-campo select:focus, .etf-campo input:focus { outline: none; border-color: var(--etf-naranja); box-shadow: 0 0 0 3px rgba(244, 123, 32, 0.25); }
.etf-buscador .etf-btn { width: 100%; border-radius: 12px; min-height: 56px; font-size: 17px; }
.etf-buscador .etf-btn[disabled] { opacity: .7; cursor: wait; }
.etf-buscador__nota { margin: 0; font-size: 14px; color: var(--etf-gris); }
.etf-buscador__error { margin: 0; padding: 10px 14px; border-radius: 10px; background: #FEF2F2; color: #991B1B; font-size: 14px; font-weight: 600; }
.etf-oculto { display: none !important; }

/* Secciones */
.etf-seccion { padding: 96px 0; }
.etf-seccion--suave { background: var(--etf-naranja-suave); }
.etf-cabecera { display: flex; flex-direction: column; gap: 12px; max-width: 680px; margin-bottom: 44px; }
.etf-cabecera h2 { font-size: clamp(38px, 4.2vw, 52px); line-height: 1; }
.etf-cabecera--fila { max-width: none; flex-direction: row; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; }

.etf-pasos { display: flex; flex-wrap: wrap; gap: 24px; }
.etf-paso { flex: 1 1 300px; border: 1px solid #E5E7EB; border-radius: 20px; padding: 32px; display: flex; flex-direction: column; gap: 14px; background: #FFFFFF; }
.etf-paso__num { font-family: 'Barlow Condensed', sans-serif; font-weight: 800; font-size: 56px; line-height: 1; color: var(--etf-naranja); }
.etf-paso h3 { margin: 0; font-size: 22px; font-weight: 700; color: var(--etf-tinta); }
.etf-paso p { margin: 0; font-size: 17px; line-height: 1.55; color: var(--etf-gris); }

.etf-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-weight: 700; font-size: 16px; color: var(--etf-naranja-texto); text-decoration: none; }
.etf-link:hover { color: #8A3606; }

.etf-eventos { display: flex; flex-wrap: wrap; gap: 20px; }
.etf-evento { flex: 1 1 260px; position: relative; height: 480px; border-radius: 20px; overflow: hidden; display: block; color: #FFFFFF; text-decoration: none; background: #1B2027; }
.etf-evento--ancho { flex: 2 1 540px; }
.etf-evento img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.etf-evento:hover img { transform: scale(1.04); }
.etf-evento__pie { position: absolute; left: 0; right: 0; bottom: 0; padding: 72px 24px 24px; background: linear-gradient(to top, rgba(10, 12, 15, 0.92), rgba(10, 12, 15, 0)); display: flex; flex-direction: column; gap: 6px; }
.etf-evento__tag { font-size: 13px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--etf-naranja); }
.etf-evento__nombre { font-family: 'Barlow Condensed', sans-serif; font-size: 30px; font-weight: 700; line-height: 1.05; text-transform: uppercase; }

.etf-cifras { background: var(--etf-naranja); padding: 64px 0; }
.etf-cifras__grid { display: flex; flex-wrap: wrap; gap: 32px; }
.etf-cifra { flex: 1 1 240px; display: flex; flex-direction: column; gap: 6px; }
.etf-cifra__num { font-family: 'Barlow Condensed', sans-serif; font-weight: 800; font-size: 64px; line-height: 1; color: var(--etf-tinta); }
.etf-cifra__num--txt { font-size: clamp(36px, 4vw, 52px); padding-top: 8px; }
.etf-cifra__txt { font-size: 18px; font-weight: 600; color: var(--etf-tinta-2); }

.etf-equipo { display: flex; flex-wrap: wrap; align-items: center; gap: 56px; }
.etf-equipo img { flex: 1 1 420px; min-width: 0; max-width: 100%; aspect-ratio: 470 / 540; object-fit: cover; border-radius: 24px; display: block; }
.etf-equipo__texto { flex: 1 1 440px; min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.etf-equipo__texto h2 { font-size: clamp(38px, 4.2vw, 52px); line-height: 1; }
.etf-equipo__texto p { margin: 0; font-size: 18px; line-height: 1.6; color: #374151; }
.etf-checks { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 14px; }
.etf-checks li { display: flex; align-items: center; gap: 12px; font-size: 17px; font-weight: 600; color: var(--etf-tinta); }

.etf-organiza { background: var(--etf-tinta); color: #FFFFFF; padding: 88px 0; }
.etf-organiza__grid { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 40px; }
.etf-organiza__texto { flex: 1 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.etf-organiza .etf-eyebrow { color: var(--etf-naranja); }
.etf-organiza h2 { font-size: clamp(38px, 4.2vw, 52px); line-height: 1; color: #FFFFFF; }
.etf-organiza p { margin: 0; font-size: 18px; line-height: 1.6; color: var(--etf-gris-claro); max-width: 560px; }
.etf-botones { display: flex; flex-wrap: wrap; gap: 14px; }

.etf-final { display: flex; flex-wrap: wrap; align-items: stretch; border-radius: 28px; overflow: hidden; background: var(--etf-naranja); }
.etf-final__texto { flex: 1 1 480px; min-width: 0; padding: 56px; display: flex; flex-direction: column; justify-content: center; gap: 22px; }
.etf-final__texto h2 { font-size: clamp(42px, 4.6vw, 60px); color: var(--etf-tinta); }
.etf-final__texto p { margin: 0; font-size: 18px; line-height: 1.6; color: var(--etf-tinta-2); max-width: 460px; }
.etf-final__foto { flex: 1 1 380px; min-height: 460px; position: relative; }
.etf-final__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }

/* Footer */
.etf-footer { background: var(--etf-tinta); color: var(--etf-gris-claro); padding: 64px 0 32px; }
.etf-footer__grid { display: flex; flex-wrap: wrap; gap: 48px; justify-content: space-between; }
.etf-footer__col { display: flex; flex-direction: column; gap: 12px; flex: 0 1 260px; }
.etf-footer__col--marca { flex: 1 1 280px; max-width: 360px; gap: 16px; }
.etf-footer__col--marca img { height: 56px; width: auto; align-self: flex-start; }
.etf-footer__titulo { font-weight: 700; color: #FFFFFF; font-size: 15px; letter-spacing: 0.08em; text-transform: uppercase; }
.etf-footer p, .etf-footer span { margin: 0; font-size: 16px; line-height: 1.6; }
.etf-footer a { color: var(--etf-gris-claro); text-decoration: none; font-size: 16px; }
.etf-footer a:hover { color: var(--etf-naranja); }
.etf-footer__social { display: inline-flex; align-items: center; gap: 10px; }
.etf-footer__social i { font-size: 22px; }
.etf-footer__legal { border-top: 1px solid #262B33; margin-top: 48px; padding-top: 24px; font-size: 14px; color: #9AA3AE; }

@media (max-width: 640px) {
  .etf-hero { padding: 112px 0 64px; }
  .etf-seccion { padding: 64px 0; }
  .etf-evento { height: 380px; }
  .etf-final__texto { padding: 36px 24px; }
  .etf-final__foto { min-height: 340px; }
  .etf-buscador { padding: 18px; }
  .etf-wrap { padding-left: 16px; padding-right: 16px; }
}

/* ==========================================================
   Capa global para las demás páginas públicas (body.etf-public).
   Re-estiliza los patrones del tema (hero con bg-1.jpg, botones
   #4a4949, títulos subrayados, color primary rosa) sin tocar su HTML.
   ========================================================== */

/* Tipografía */
body.etf-public { font-family: 'Barlow', system-ui, sans-serif; color: var(--etf-tinta); }
.etf-public :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, p, .font-roboto) { font-family: 'Barlow', system-ui, sans-serif !important; }
.etf-public :is(.etf-display, .etf-paso__num, .etf-cifra__num, .etf-evento__nombre) { font-family: 'Barlow Condensed', 'Barlow', sans-serif !important; }
.etf-public main h1 { font-family: 'Barlow Condensed', 'Barlow', sans-serif !important; font-weight: 800 !important; text-transform: uppercase; letter-spacing: -0.01em !important; line-height: 1 !important; }

/* Color primary del tema (era rosa) → naranja */
.etf-public .text-primary { color: var(--etf-naranja-texto) !important; }
.etf-public .bg-primary { background-color: var(--etf-naranja) !important; }
.etf-public [class*="hover:text-primary"]:hover { color: var(--etf-naranja-texto) !important; }
.etf-public [class*="hover:bg-primary"]:hover { background-color: var(--etf-naranja) !important; }
.etf-public .text-indigo-600, .etf-public .text-blue-700 { color: var(--etf-naranja-texto) !important; }
.etf-public input[type="checkbox"], .etf-public input[type="radio"] { accent-color: var(--etf-naranja); }
.etf-public .form-checkbox.text-indigo-600 { color: var(--etf-naranja) !important; }

/* Hero de las páginas internas: foto oscura → bloque naranja */
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] {
  background-image: none !important;
  background-color: var(--etf-naranja) !important;
  padding-top: 150px !important;
  padding-bottom: 140px !important;
}
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] > .absolute[class*="bg-black/80"] { display: none !important; }
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] h1 {
  color: var(--etf-tinta) !important;
  font-size: clamp(40px, 5.5vw, 72px) !important;
  margin-bottom: 16px !important;
}
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] .text-white,
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] p { color: var(--etf-tinta-2) !important; }
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] ol a { font-weight: 700; letter-spacing: 0.1em !important; }
.etf-public section[class*="bg-[url(../images/bg-1.jpg)]"] ol a:hover { color: var(--etf-tinta) !important; text-decoration: underline; text-underline-offset: 4px; }

/* Tarjeta de contenido que se monta sobre el hero */
.etf-public section[class*="-translate-y-16"] > .container > .relative.bg-white {
  border-radius: 24px !important;
  box-shadow: 0 20px 50px rgba(17, 20, 24, 0.10) !important;
  border: 1px solid var(--etf-borde);
}

/* Títulos de sección del tema (text-[34px], subrayados border-dark) */
.etf-public main h2[class*="text-[34px]"],
.etf-public main h2[class*="border-b-2"],
.etf-public main h2.text-4xl {
  font-family: 'Barlow Condensed', 'Barlow', sans-serif !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
}
.etf-public main h2[class*="text-[34px]"] { font-size: clamp(32px, 3.6vw, 44px) !important; }
.etf-public main h2 span.font-normal { font-weight: 800 !important; }
.etf-public main .border-dark { border-color: var(--etf-naranja) !important; }
.etf-public main h2.border-b-2 { border-bottom-width: 0 !important; }
.etf-public main h2.border-b-2 > span { border-bottom: 3px solid var(--etf-naranja); }

/* Botones del tema (gris #4a4949) → naranja de marca */
.etf-public [class*="bg-[#4a4949]"] {
  background-color: var(--etf-naranja) !important;
  color: var(--etf-tinta) !important;
  font-family: 'Barlow', sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: 0.08em !important;
}
.etf-public [class*="bg-[#4a4949]"]:hover { background-color: #FF8A33 !important; color: var(--etf-tinta) !important; }
.etf-public [class*="bg-[#4a4949]"] * { color: inherit; }
.etf-public [class*="bg-[#4a4949]"][disabled] { opacity: .7; }

/* Formularios */
.etf-public main :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="file"], select, textarea) { border-radius: 12px !important; }
.etf-public main :is(input, select, textarea):focus {
  outline: none !important;
  border-color: var(--etf-naranja) !important;
  box-shadow: 0 0 0 3px rgba(244, 123, 32, 0.25) !important;
}

/* Fondos grises de páginas de resultado/pago → crema de marca */
.etf-public main section.bg-gray-100 { background-color: var(--etf-naranja-suave) !important; padding-top: 140px !important; }
.etf-public main section.bg-gray-100 > div.bg-white { border-radius: 24px !important; box-shadow: 0 20px 50px rgba(17, 20, 24, 0.10) !important; }
