/*
 Theme Name:   Astra Child - FTPRA Oficial
 Theme URI:    https://ipsc.org.ar
 Description:  Tema child de Astra para la Federación de Tiro Práctico de la República Argentina (FTPRA / IPSC Argentina). Portada dinámica integrada con el plugin "FTPRA Integration" (calendario, clubes y acceso de federados), paleta celeste / azul noche / dorado Sol de Mayo.
 Author:       Santiago Lobos
 Author URI:   https://ipsc.org.ar
 Template:     astra
 Version:      0.3.0
 Requires PHP: 8.1
 Text Domain:  astra-child-ftpra
*/

/* ==========================================================================
   1. TOKENS DE DISEÑO
   Los colores replican tailwind.config.js para el CSS escrito a mano.
   ========================================================================== */
:root {
  /* Paleta en RGB para Tailwind (tailwind.config.js): celeste de la bandera, azul profundo y oro del Sol de Mayo.
     La paleta anterior (azul noche) quedó en la etiqueta git v0.3.0-estable. */
  --c-noche: 11 50 102;
  --c-noche-900: 7 36 80;
  --c-noche-800: 15 63 124;
  --c-noche-700: 26 82 150;
  --c-azul: 30 98 176;
  --c-azul-600: 42 116 198;
  --c-celeste: 116 172 223;
  --c-celeste-300: 168 205 238;
  --c-celeste-100: 220 236 249;
  --c-celeste-50: 239 246 252;
  --c-sol: 246 180 14;
  --c-sol-600: 222 158 0;
  --c-sol-100: 255 242 201;
}

:root {
  --ftpra-noche-900: #072450;
  --ftpra-noche:     #0b3266;
  --ftpra-noche-800: #0f3f7c;
  --ftpra-azul:      #1e62b0;
  --ftpra-celeste:   #74acdf;
  --ftpra-celeste-100: #dcecf9;
  --ftpra-celeste-50:  #eff6fc;
  --ftpra-sol:       #f6b40e;
  --ftpra-sol-600:   #de9e00;
  --ftpra-tinta:     #14202e;
  --ftpra-piedra-600: #4b5a6b;
  --ftpra-piedra-200: #dbe2ea;
  --ftpra-piedra-100: #edf1f5;
  --ftpra-piedra-700: #334155;
  --ftpra-piedra-50:  #f7f9fb;
  --ftpra-ok:        #0f8a5f;
  --ftpra-ok-50:     #e8f6ef;

  --ftpra-font-display: "Archivo", system-ui, sans-serif;
  --ftpra-font-body:    "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --ftpra-radius:    12px;
}

/* ==========================================================================
   2. BASE GLOBAL (sobre Astra)
   ========================================================================== */
html { scroll-behavior: smooth; }
#ftpra {
  font-family: var(--ftpra-font-body);
  color: var(--ftpra-tinta);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
/* Títulos: sentence case, peso alto, tracking apenas negativo. */
#ftpra .ftpra-ui h1, #ftpra .ftpra-ui h2, #ftpra .ftpra-ui h3 {
  font-family: var(--ftpra-font-display); letter-spacing: -0.015em; text-transform: none; margin: 0;
}
/* Cifras y fechas en ancho condensado (eje wdth de Archivo). */
#ftpra .ftpra-cond { font-family: var(--ftpra-font-display); font-stretch: 72%; font-variant-numeric: tabular-nums; letter-spacing: 0; }
/* Etiquetas pequeñas: la única mayúscula del sistema. */
#ftpra .ftpra-eyebrow { font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
#ftpra .material-symbols-outlined {
  font-family: "Material Symbols Outlined";
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  direction: ltr;
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
  -webkit-font-feature-settings: "liga";
  font-feature-settings: "liga";
}
/* Sin preflight, las utilidades border-* de Tailwind solo fijan el ancho.
   Este reset da estilo sólido y ancho 0 por defecto a los elementos de los componentes
   propios que usan clases de borde (no al contenido editorial).
   Especificidad (1,0,0): le gana a Astra (p. ej. "ol, li { border: 0 }") y pierde contra
   las utilidades de Tailwind (#ftpra .border = 1,1,0). */
#ftpra :where(.ftpra-ui[class*="border"]),
#ftpra :where(.ftpra-ui [class*="border"]:not(.ftpra-prose *)),
#ftpra :where(.ftpra-ui [class*="divide-"]:not(.ftpra-prose *) > *),
#ftpra :where(.not-prose[class*="border"], .not-prose [class*="border"]),
#ftpra :where(.not-prose [class*="divide-"] > *) {
  border-width: 0;
  border-style: solid;
  border-color: var(--ftpra-piedra-200);
}

/* Neutraliza estilos de formulario de Astra dentro de los componentes propios */
#ftpra .ftpra-ui button,
#ftpra .ftpra-ui input,
#ftpra .ftpra-ui select {
  font-family: inherit;
  box-shadow: none;
  text-shadow: none;
  line-height: inherit;
}
#ftpra .ftpra-ui a { text-decoration: none; }
#ftpra .ftpra-ui a:focus-visible,
#ftpra .ftpra-ui button:focus-visible { outline: 2px solid var(--ftpra-sol); outline-offset: 2px; }
.ftpra-skip-link { position: absolute; left: -9999px; top: 0; z-index: 100; }
.ftpra-skip-link:focus { left: 1rem; top: 1rem; background: #fff; padding: .5rem 1rem; }

/* Franja patria y patrones */
.ftpra-franja { background: linear-gradient(90deg, var(--ftpra-celeste) 0 33.33%, #fff 33.33% 66.66%, var(--ftpra-celeste) 66.66%); }
.ftpra-stripes { background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,.035) 0 14px, transparent 14px 28px); }
.ftpra-hero-shade { background: linear-gradient(90deg, rgba(6,20,42,.96) 0%, rgba(6,20,42,.82) 38%, rgba(6,20,42,.25) 70%, rgba(6,20,42,.55) 100%); }
.ftpra-corner { position: relative; }
.ftpra-corner::before, .ftpra-corner::after { content: ""; position: absolute; width: 18px; height: 18px; border-color: var(--ftpra-sol); z-index: 1; }
.ftpra-corner::before { top: -1px; left: -1px; border-top: 3px solid; border-left: 3px solid; }
.ftpra-corner::after { bottom: -1px; right: -1px; border-bottom: 3px solid; border-right: 3px solid; }
.ftpra-scroll-x { scrollbar-width: none; }
.ftpra-scroll-x::-webkit-scrollbar { display: none; }

/* ==========================================================================
   3. NAVEGACIÓN (markup estándar de wp_nav_menu)
   ========================================================================== */
#ftpra .ftpra-nav,
#ftpra .ftpra-nav ul { list-style: none; margin: 0; padding: 0; }
#ftpra .ftpra-nav > li { position: relative; display: flex; align-items: center; height: 100%; }
#ftpra .ftpra-nav > li > a {
  display: flex; align-items: center; gap: .2rem; height: 100%; padding: 0 .9rem;
  font-family: var(--ftpra-font-body); font-weight: 500; font-size: 15px;
  color: var(--ftpra-piedra-700);
  border-bottom: 2px solid transparent;
}
#ftpra .ftpra-nav > li > a:hover { color: var(--ftpra-noche); }
#ftpra .ftpra-nav > li.current-menu-item > a,
#ftpra .ftpra-nav > li.current-menu-ancestor > a { color: var(--ftpra-noche); border-bottom-color: var(--ftpra-noche); }
#ftpra .ftpra-nav > li.menu-item-has-children > a::after {
  content: "expand_more"; font-family: "Material Symbols Outlined"; font-size: 18px; font-weight: 400;
  text-transform: none; letter-spacing: 0; color: var(--ftpra-piedra-400, #8795a5);
}
#ftpra .ftpra-nav .sub-menu {
  position: absolute; top: 100%; left: 0; min-width: 260px; padding: .75rem;
  background: #fff; border: 1px solid var(--ftpra-piedra-200);
  border-radius: 12px; box-shadow: 0 24px 48px -16px rgba(10,31,58,.3); margin-top: -6px;
  opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(6px); z-index: 60;
  /* Al cerrar: se desvanece y recién después deja de ser interactivo (sin parpadeo). */
  transition: opacity .15s ease, transform .15s ease, visibility 0s linear .15s;
}
/* Al abrir: pequeña demora para que no se despliegue con solo cruzar el puntero por el menú. */
#ftpra .ftpra-nav > li:hover > .sub-menu,
#ftpra .ftpra-nav > li:focus-within > .sub-menu {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0);
  transition: opacity .15s ease .08s, transform .15s ease .08s, visibility 0s linear .08s;
}
#ftpra .ftpra-nav > li:focus-within > .sub-menu { transition-delay: 0s; }
#ftpra .ftpra-nav .sub-menu a {
  display: block; padding: .6rem .75rem; border-radius: 6px;
  font-size: 14px; font-weight: 500; color: var(--ftpra-tinta);
}
#ftpra .ftpra-nav .sub-menu a:hover { background: var(--ftpra-celeste-50); color: var(--ftpra-azul); }
/* Tercer nivel: se muestra agrupado bajo su ítem padre */
#ftpra .ftpra-nav .sub-menu .sub-menu {
  position: static; opacity: 1; visibility: inherit; pointer-events: inherit; transform: none; transition: none; min-width: 0;
  padding: 0 0 0 .75rem; margin: 0 0 .25rem .75rem; border: 0; border-left: 2px solid var(--ftpra-celeste-100);
  border-radius: 0; box-shadow: none;
}
#ftpra .ftpra-nav .sub-menu .menu-item-has-children > a {
  font-size: 12px; font-weight: 600; letter-spacing: .08em;
  text-transform: uppercase; color: var(--ftpra-piedra-600); pointer-events: none; padding-top: .9rem;
}
/* El ítem "Federados" del menú lo resuelve el botón del header */
#ftpra .ftpra-nav .ftpra-hide-desktop { display: none; }

/* Menú móvil (acordeón) */
#ftpra .ftpra-nav-mobile,
#ftpra .ftpra-nav-mobile ul { list-style: none; margin: 0; padding: 0; }
#ftpra .ftpra-nav-mobile li { border-bottom: 1px solid var(--ftpra-piedra-100); position: relative; }
#ftpra .ftpra-nav-mobile li:last-child { border-bottom: 0; }
#ftpra .ftpra-nav-mobile a {
  display: block; padding: .9rem 3rem .9rem 0;
  font-family: var(--ftpra-font-body); font-weight: 600; font-size: 17px; color: var(--ftpra-noche);
}
#ftpra .ftpra-nav-mobile .sub-menu { display: none; padding-left: 1rem; border-left: 2px solid var(--ftpra-celeste-100); margin-bottom: .5rem; }
#ftpra .ftpra-nav-mobile .is-open > .sub-menu { display: block; }
#ftpra .ftpra-nav-mobile .sub-menu a { font-size: 15px; font-weight: 500; color: var(--ftpra-piedra-700); padding: .6rem 3rem .6rem 0; }
#ftpra .ftpra-nav-mobile .sub-menu li { border: 0; }
#ftpra .ftpra-submenu-toggle {
  position: absolute; right: 0; top: .35rem; width: 2.5rem; height: 2.5rem; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  background: var(--ftpra-celeste-50); color: var(--ftpra-noche); border: 0; cursor: pointer; padding: 0;
}
#ftpra .ftpra-nav-mobile .sub-menu .ftpra-submenu-toggle { top: .1rem; }
#ftpra .ftpra-submenu-toggle .material-symbols-outlined { transition: transform .2s ease; }
#ftpra .is-open > .ftpra-submenu-toggle .material-symbols-outlined { transform: rotate(180deg); }

/* ==========================================================================
   4. CONTENIDO EDITORIAL (páginas y entradas)
   ========================================================================== */
#ftpra .ftpra-prose { font-size: 17px; line-height: 1.7; color: var(--ftpra-piedra-700); }
#ftpra .ftpra-prose > * + * { margin-top: 1.15em; }
#ftpra .ftpra-prose h1:not(.not-prose *), #ftpra .ftpra-prose h2:not(.not-prose *), #ftpra .ftpra-prose h3:not(.not-prose *),
#ftpra .ftpra-prose h4:not(.not-prose *), #ftpra .ftpra-prose h5:not(.not-prose *), #ftpra .ftpra-prose h6:not(.not-prose *) {
  font-family: var(--ftpra-font-display); font-weight: 700; text-transform: none;
  color: var(--ftpra-noche); line-height: 1.2; letter-spacing: -0.01em; margin-top: 1.8em; margin-bottom: .5em;
}
#ftpra .ftpra-prose h2:not(.not-prose *) { font-size: 32px; }
#ftpra .ftpra-prose h3:not(.not-prose *) { font-size: 24px; }
#ftpra .ftpra-prose h4:not(.not-prose *) { font-size: 20px; }
#ftpra .ftpra-prose a:not(.not-prose *) { color: var(--ftpra-azul); font-weight: 600; text-decoration: underline; text-decoration-color: rgba(29,79,145,.3); text-underline-offset: 3px; }
#ftpra .ftpra-prose a:hover:not(.not-prose *) { color: var(--ftpra-noche); text-decoration-color: var(--ftpra-sol); }
#ftpra .ftpra-prose ul:not(.not-prose *), #ftpra .ftpra-prose ol:not(.not-prose *) { padding-left: 1.4em; margin-left: 0; }
#ftpra .ftpra-prose li + li:not(.not-prose *) { margin-top: .35em; }
#ftpra .ftpra-prose ul li:not(.not-prose *)::marker { color: var(--ftpra-sol); }
#ftpra .ftpra-prose img:not(.not-prose *) { border-radius: 10px; height: auto; max-width: 100%; }
#ftpra .ftpra-prose blockquote:not(.not-prose *) { border-left: 4px solid var(--ftpra-sol); background: var(--ftpra-celeste-50); padding: 1rem 1.25rem; border-radius: 0 10px 10px 0; font-style: normal; }
#ftpra .ftpra-prose table:not(.ftpra-table):not(.not-prose *) { width: 100%; border-collapse: collapse; font-size: 15px; }
#ftpra .ftpra-prose table:not(.ftpra-table) th:not(.not-prose *) { background: var(--ftpra-piedra-50); color: var(--ftpra-noche); font-weight: 600; text-align: left; }
#ftpra .ftpra-prose table:not(.ftpra-table) th:not(.not-prose *),
#ftpra .ftpra-prose table:not(.ftpra-table) td:not(.not-prose *) { padding: .6rem .8rem; border-bottom: 1px solid var(--ftpra-piedra-200); }
#ftpra .ftpra-prose .wp-block-button__link:not(.not-prose *),
#ftpra .ftpra-prose .wp-element-button:not(.not-prose *) {
  background: var(--ftpra-noche); color: #fff; border-radius: 10px; text-decoration: none;
  font-weight: 600; font-size: 15px; padding: .8rem 1.25rem;
}
#ftpra .ftpra-prose .wp-block-button__link:hover:not(.not-prose *) { background: var(--ftpra-azul); }
#ftpra .ftpra-prose .alignwide:not(.not-prose *) { max-width: none; }
#ftpra .ftpra-prose iframe:not(.not-prose *) { max-width: 100%; border-radius: 10px; }
#ftpra .ftpra-prose .wp-block-image figcaption:not(.not-prose *) { font-size: 13px; color: var(--ftpra-piedra-600); }

/* Paginación de archivos */
#ftpra .ftpra-pagination-wrap .nav-links { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
#ftpra .ftpra-pagination-wrap .page-numbers {
  min-width: 2.75rem; height: 2.75rem; padding: 0 .9rem; display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--ftpra-piedra-200); border-radius: 8px; font-weight: 600; color: var(--ftpra-noche); text-decoration: none;
}
#ftpra .ftpra-pagination-wrap .page-numbers.current,
#ftpra .ftpra-pagination-wrap .page-numbers:hover { background: var(--ftpra-noche); border-color: var(--ftpra-noche); color: #fff; }

/* Leaflet */
#ftpra .leaflet-container { font-family: var(--ftpra-font-body); background: var(--ftpra-celeste-100); }
#ftpra .ftpra-pin { width: 14px; height: 14px; border-radius: 9999px; background: var(--ftpra-sol); border: 3px solid var(--ftpra-noche); box-shadow: 0 0 0 3px rgba(242,169,0,.35); }
#ftpra .ftpra-pin-logo { width: 34px; height: 34px; border-radius: 9999px; border: 2px solid #fff; background: #fff; object-fit: contain; box-shadow: 0 0 0 2px var(--ftpra-sol), 0 4px 10px rgba(0,0,0,.25); }
#ftpra .leaflet-popup-content { margin: 12px 14px; font-size: 13px; line-height: 1.45; }
#ftpra .leaflet-popup-content a { color: var(--ftpra-azul); }

/* ==========================================================================
   5. BLOQUES DEL CONTENIDO MIGRADO (antes SiteOrigin)
   ========================================================================== */
/* Columnas: aire y apilado en móvil */
#ftpra .ftpra-prose .wp-block-columns { gap: 2rem; margin-top: 2rem; margin-bottom: 2rem; }
#ftpra .ftpra-prose .wp-block-column > * + * { margin-top: 1rem; }
#ftpra .ftpra-prose .wp-block-column > :first-child { margin-top: 0; }
#ftpra .ftpra-prose .wp-block-image { margin-top: 0; }
#ftpra .ftpra-prose .wp-block-image img { box-shadow: 0 10px 30px -18px rgba(10,31,58,.45); }
#ftpra .ftpra-prose .wp-block-column > .wp-block-heading:first-child { margin-top: 0; }

/* Llamados a la acción (ex widget CTA) */
#ftpra .ftpra-prose .ftpra-cta {
  background: var(--ftpra-celeste-50); border: 1px solid var(--ftpra-celeste-100); border-left: 4px solid var(--ftpra-sol);
  border-radius: var(--ftpra-radius); padding: 1.25rem 1.5rem;
}
#ftpra .ftpra-prose .ftpra-cta > * { margin-top: 0; margin-bottom: 0; }
#ftpra .ftpra-prose .ftpra-cta > * + * { margin-top: .6rem; }
#ftpra .ftpra-prose .ftpra-cta .wp-block-heading { font-size: 20px; }
#ftpra .ftpra-prose .ftpra-cta p { color: var(--ftpra-piedra-600); font-size: 15px; }

/* Últimas entradas (ex carrusel / loop de SiteOrigin) */
#ftpra .ftpra-prose .ftpra-latest-posts { padding: 0; margin-left: 0; list-style: none; }
#ftpra .ftpra-prose .ftpra-latest-posts li { margin: 0; }
#ftpra .ftpra-prose .ftpra-latest-posts.is-grid { gap: 1.25rem; }
#ftpra .ftpra-prose .ftpra-latest-posts.is-grid li {
  background: #fff; border: 1px solid var(--ftpra-piedra-200); border-radius: var(--ftpra-radius); overflow: hidden; padding: 0 0 1rem;
}
#ftpra .ftpra-prose .ftpra-latest-posts .wp-block-latest-posts__featured-image { margin: 0 0 .75rem; }
#ftpra .ftpra-prose .ftpra-latest-posts .wp-block-latest-posts__featured-image img { border-radius: 0; width: 100%; aspect-ratio: 16/10; object-fit: cover; box-shadow: none; }
#ftpra .ftpra-prose .ftpra-latest-posts .wp-block-latest-posts__post-title {
  display: block; padding: 0 1rem; font-family: var(--ftpra-font-display); font-weight: 700;
  font-size: 17px; line-height: 1.3; color: var(--ftpra-noche); text-decoration: none;
}
#ftpra .ftpra-prose .ftpra-latest-posts .wp-block-latest-posts__post-title:hover { color: var(--ftpra-azul); }
#ftpra .ftpra-prose .ftpra-latest-posts .wp-block-latest-posts__post-date { display: block; padding: .35rem 1rem 0; font-size: 13px; color: var(--ftpra-piedra-600); }
#ftpra .ftpra-prose .ftpra-latest-posts:not(.is-grid) li { padding: .75rem 0; border-bottom: 1px solid var(--ftpra-piedra-100); }
#ftpra .ftpra-prose .ftpra-latest-posts:not(.is-grid) .wp-block-latest-posts__post-title,
#ftpra .ftpra-prose .ftpra-latest-posts:not(.is-grid) .wp-block-latest-posts__post-date { padding-left: 0; }

/* Galerías y embeds */
#ftpra .ftpra-prose .wp-block-gallery { gap: .75rem; }
#ftpra .ftpra-prose .wp-block-embed__wrapper iframe,
#ftpra .ftpra-prose .wp-block-html iframe { width: 100%; border: 0; border-radius: 10px; }

/* Contenido que estaba oculto en SiteOrigin (display:none). Se conserva para el editor:
   para mostrarlo, quitá la clase "ftpra-oculto" del grupo en Avanzado > Clases CSS. */
#ftpra .ftpra-oculto { display: none !important; }

/* ==========================================================================
   6. COMPONENTES v0.2
   ========================================================================== */
/* Pestañas segmentadas (filtros) */
#ftpra .ftpra-tabs { display: inline-flex; gap: .25rem; padding: .25rem; background: var(--ftpra-piedra-100); border-radius: 12px; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
#ftpra .ftpra-tabs::-webkit-scrollbar { display: none; }
#ftpra .ftpra-tab { flex: none; border: 0; background: transparent; cursor: pointer; padding: .5rem .9rem; border-radius: 9px; font-size: 14px; font-weight: 500; color: var(--ftpra-piedra-600); white-space: nowrap; }
#ftpra .ftpra-tab:hover { color: var(--ftpra-noche); }
#ftpra .ftpra-tab[aria-pressed="true"] { background: #fff; color: var(--ftpra-noche); font-weight: 600; box-shadow: 0 1px 2px rgba(10,31,58,.12); }
#ftpra .ftpra-tab .ftpra-tab-count { margin-left: .35rem; font-size: 12px; color: var(--ftpra-ok); font-weight: 700; }
/* Fondos del hero (Smart Slider): fundido entre fotos. La primera es visible sin JavaScript. */
#ftpra .ftpra-hero-slide { opacity: 0; transition: opacity 1.2s ease; }
#ftpra .ftpra-hero-slide.is-active { opacity: 1; }

/* Variante que pasa a otra línea en vez de desplazarse: todas las opciones quedan a la vista. */
#ftpra .ftpra-tabs--wrap { display: flex; flex-wrap: wrap; overflow: visible; }
#ftpra .ftpra-tabs--wrap .ftpra-tab { flex: 0 1 auto; }

/* Enlace con flecha que se desplaza al hover */
#ftpra .ftpra-link { display: inline-flex; align-items: center; gap: .35rem; font-weight: 600; color: var(--ftpra-azul); }
#ftpra .ftpra-link .material-symbols-outlined { font-size: 18px; transition: transform .2s ease; }
#ftpra .ftpra-link:hover { color: var(--ftpra-noche); }
#ftpra .ftpra-link:hover .material-symbols-outlined { transform: translateX(3px); }

/* Fila de competencia */
#ftpra .ftpra-event-row { transition: background-color .15s ease; }
#ftpra .ftpra-event-row:hover { background: var(--ftpra-piedra-50); }

@media (prefers-reduced-motion: reduce) {
  #ftpra *, #ftpra *::before, #ftpra *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* Los enlaces dentro de títulos heredan el color del título (Astra fuerza su azul de enlace). */
#ftpra .ftpra-ui :is(h1, h2, h3, h4) a { color: inherit; text-decoration: none; }

/* Barra móvil de "últimos días": deja lugar al final de la página para que no tape el footer. */
@media (max-width: 767px) {
	#ftpra.has-promo-bar { padding-bottom: 88px; }
	/* "Volver arriba" de Astra y el sello de reCAPTCHA suben por encima de la barra. */
	#ftpra.has-promo-bar #ast-scroll-top,
	#ftpra.has-promo-bar .grecaptcha-badge { bottom: 96px !important; }
}

/* ==========================================================================
 * Identidad argentina: franjas de la bandera, Sol de Mayo y acentos celeste · sol.
 * ======================================================================== */
/* Bandera: celeste, blanco, celeste (en franjas finas). */
.ftpra-bandera { background: linear-gradient(180deg, #74acdf 0 33.34%, #fff 33.34% 66.67%, #74acdf 66.67%); }

/* Fila superior celeste + header blanco: arriba del sitio se lee la bandera. */
#ftpra .ftpra-toprow { background: var(--ftpra-celeste); }
#ftpra .ftpra-toprow a,
#ftpra .ftpra-toprow span { color: var(--ftpra-noche-900); }
#ftpra .ftpra-toprow .text-sol { color: #fff; }
#ftpra .ftpra-toprow a:hover { color: #fff; }
#ftpra .ftpra-toprow a[class*="rounded-full"]:hover { background: rgba(255,255,255,.25); }
#ftpra #ftpra-header { border-bottom: 3px solid var(--ftpra-celeste); }

/* Hero: Precisión (blanco) · Potencia (celeste) · Velocidad (sol). */
#ftpra .ftpra-hero-line-2 { color: var(--ftpra-celeste); }

/* Sol de Mayo de la bandera (assets/img/sol-de-mayo-bandera.svg, Wikimedia Commons, dominio público). */
.ftpra-sol-deco { pointer-events: none; user-select: none; }

/* Títulos de sección con un acento celeste · sol · celeste. */
#ftpra .ftpra-h2::after {
  content: ""; display: block; width: 72px; height: 6px; margin-top: 14px; border-radius: 3px;
  background: linear-gradient(90deg, var(--ftpra-celeste) 0 38%, var(--ftpra-sol) 38% 62%, var(--ftpra-celeste) 62%);
}
/* Antetítulos con un pequeño sol. */
#ftpra .ftpra-kicker::before {
  content: ""; display: inline-block; width: 15px; height: 15px; margin-right: 7px; vertical-align: -3px;
  background: url(assets/img/sol-de-mayo-bandera.svg) center / contain no-repeat;
}

/* Bandas claras en celeste muy suave en lugar de gris. */
#ftpra #noticias,
#ftpra #coberturas { background: var(--ftpra-celeste-50); }

/* "Empezá a competir": azul profundo con un degradé hacia el celeste. */
#ftpra .ftpra-federarse { background: linear-gradient(135deg, var(--ftpra-noche-900) 0%, var(--ftpra-noche) 55%, #1a5aa0 100%); }

/* Párrafo de entrada destacado (p. ej. Contacto). */
#ftpra .ftpra-prose p.ftpra-lead { font-size: 20px; line-height: 1.55; color: var(--ftpra-piedra-700); max-width: 820px; }

/* Tailwind usa content: var(--tw-content) en las utilidades after:/before: y define la variable en su
   preflight, que acá está apagado. Sin esto no se dibuja la capa que hace clicable toda la tarjeta. */
#ftpra *::before, #ftpra *::after { --tw-content: ''; }

/* Texto de "Sobre la competencia" (descripción propia con formato del editor). */
#ftpra .ftpra-comp-texto p { margin: 0; }
#ftpra .ftpra-comp-texto a { color: var(--ftpra-azul); text-decoration: underline; text-underline-offset: 2px; }
#ftpra .ftpra-comp-texto ul, #ftpra .ftpra-comp-texto ol { margin: 0; padding-left: 1.25em; }
