/* ============================================================
   URANIA OVERRIDE - Aplica la est\u00e9tica Urania sobre el HTML
   nativo de Astra (header, menu, footer, contenido).

   Este archivo se carga DESPUES de Astra y de urania-main.css
   para ganar especificidad y reescribir los colores globales.
   ============================================================ */

/* ============================================================
   1. SOBRESCRIBIR VARIABLES GLOBALES DE ASTRA
   ============================================================ */
:root,
body.ast-desktop,
body.ast-header-break-point {
  /* Paleta Astra -> Paleta Urania */
  --ast-global-color-0: #d4af37 !important;  /* primary -> dorado */
  --ast-global-color-1: #f4d03f !important;  /* secondary/hover -> dorado claro */
  --ast-global-color-2: #e8dcc6 !important;  /* text -> crema */
  --ast-global-color-3: #b8a082 !important;  /* text-light -> crema dim */
  --ast-global-color-4: #0a0a2e !important;  /* bg -> azul noche */
  --ast-global-color-5: #16213e !important;  /* bg-light -> azul medio */
  --ast-global-color-6: #f5ecd7 !important;  /* link-color */
  --ast-global-color-7: #d4af37 !important;  /* link-hover */
  --ast-global-color-8: #b8a082 !important;
}

/* ============================================================
   2. BODY - fondo azul noche + tipograf\u00edas Urania
   ============================================================ */
body,
body.ast-desktop,
body.ast-header-break-point,
.ast-theme-transparent-header,
.site,
#page,
.site-content {
  background:
    radial-gradient(ellipse at top, #0f3460 0%, transparent 60%),
    radial-gradient(ellipse at bottom, #16213e 0%, transparent 70%),
    #0a0a2e !important;
  background-attachment: fixed !important;
  color: #e8dcc6 !important;
  font-family: Arial, 'Helvetica Neue', Helvetica, system-ui, -apple-system, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Texto corriente claro y legible */
p, li, dd, dt, blockquote, .entry-content p, .entry-content li,
.up-presentacion, .up-presentacion p,
.up-product-card__desc, .up-home-card__desc,
.widget, .widget p, .widget li,
.site-footer, .site-footer p, .site-footer li,
table, td, th {
  font-family: Arial, 'Helvetica Neue', Helvetica, system-ui, -apple-system, sans-serif !important;
}

/* Sutil patron de estrellas en el fondo */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  background-image:
    radial-gradient(1px 1px at 20% 30%, rgba(232,220,198,0.5), transparent),
    radial-gradient(1px 1px at 60% 70%, rgba(232,220,198,0.35), transparent),
    radial-gradient(1px 1px at 80% 20%, rgba(232,220,198,0.4), transparent),
    radial-gradient(1px 1px at 40% 80%, rgba(232,220,198,0.3), transparent),
    radial-gradient(1.5px 1.5px at 90% 50%, rgba(212,175,55,0.5), transparent);
  background-size: 100% 100%;
  pointer-events: none;
  z-index: 0;
  opacity: 0.6;
}

/* ============================================================
   3. OCULTAR HEADER NATIVO DE ASTRA
   Lo reemplazamos por urania-header-top + urania-menu-bar
   inyectado en wp_body_open via functions.php.
   ============================================================ */
#masthead,
.site-header,
.ast-primary-header-bar,
.main-header-bar,
.main-header-bar-wrap,
.ast-mobile-header-wrap,
#ast-desktop-header,
.ast-secondary-header-bar,
.ast-above-header-bar,
.ast-header-break-point #masthead,
.ast-builder-menu-1 {
  display: none !important;
}

/* ============================================================
   HEADER URANIA (replica de los programas ARGO/KAIROS/Oraculo)
   Estructura inyectada por urania_render_header() en functions.php
   ============================================================ */
.urania-header-top {
  position: sticky;
  top: 0;
  z-index: 1000;
  height: 100px;
  background: linear-gradient(135deg, rgba(10, 10, 46, 0.97), rgba(22, 33, 62, 0.97));
  border-bottom: 2px solid #d4af37;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
  padding: 0 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

/* Izquierda: logo + 3 lineas */
.urania-brand {
  display: flex !important;
  align-items: center;
  gap: 14px;
  text-decoration: none !important;
  flex: 0 1 auto;
  min-width: 0;
}
.urania-brand:hover { text-decoration: none !important; }

.urania-brand-logo {
  height: 78px;
  width: auto;
  max-width: none;
  display: block;
  filter: drop-shadow(0 0 8px rgba(212, 175, 55, 0.4));
  flex-shrink: 0;
}

.urania-brand-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 2px;
  white-space: nowrap;
}

.urania-brand-title {
  display: block;
  font-family: 'Cinzel', serif;
  font-size: 1.05rem;
  font-weight: 700;
  color: #d4af37;
  letter-spacing: 0.06em;
  white-space: nowrap;
  line-height: 1.1;
  text-shadow: 0 0 10px rgba(212, 175, 55, 0.25);
}

.urania-brand-sub {
  display: block;
  font-family: 'Cinzel', serif;
  font-size: 0.62rem;
  font-weight: 400;
  color: #b8a082;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  white-space: nowrap;
  line-height: 1.3;
}

/* Centro: titulo del sitio */
.urania-header-center {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  pointer-events: none;
  min-width: 0;
  overflow: hidden;
  text-align: center;
}
.urania-header-center__title {
  font-family: 'Cinzel', serif;
  font-size: clamp(1.1rem, 2.4vw, 2rem);
  font-weight: 700;
  color: #d4af37;
  letter-spacing: clamp(2px, 0.25vw, 5px);
  text-shadow: 0 0 24px rgba(212, 175, 55, 0.4);
  text-transform: uppercase;
  white-space: nowrap;
}
.urania-header-center__subtitle {
  font-family: 'Cinzel', serif;
  font-size: 0.7rem;
  color: #b8a082;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  white-space: nowrap;
}

/* Derecha: botones de acceso */
.urania-header-controls {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.urania-header-btn {
  padding: 8px 16px;
  border-radius: 8px;
  border: 1.5px solid rgba(212, 175, 55, 0.5);
  background: rgba(44, 24, 16, 0.8);
  color: #e8dcc6 !important;
  font-family: 'Cinzel', serif;
  font-size: 0.78rem;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.3s ease;
  white-space: nowrap;
  letter-spacing: 0.04em;
}
.urania-header-btn:hover {
  background: rgba(212, 175, 55, 0.2);
  border-color: #d4af37;
  color: #f4d03f !important;
  transform: translateY(-2px);
}
.urania-header-btn--access {
  background: rgba(74, 20, 140, 0.5);
  border-color: rgba(123, 31, 162, 0.6);
}
.urania-header-btn--access:hover {
  background: rgba(123, 31, 162, 0.4);
}

/* --- Carrito en el header --- */
.urania-header-btn--cart {
  position: relative;
  background: rgba(15, 52, 96, 0.6);
  border-color: rgba(212, 175, 55, 0.55);
}
.urania-header-btn--cart:hover {
  background: rgba(212, 175, 55, 0.22);
}
.urania-cart-ico { font-size: 1.05rem; line-height: 1; }
.urania-cart-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: #d4af37;
  color: #16213e;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
}
.urania-cart-count[data-count="0"] { display: none; }

/* Boton "Ver producto/taller" en los listados (reemplaza Añadir al carrito) */
.woocommerce ul.products li.product .urania-ver-btn { display: inline-block; }

@media (max-width: 1100px) {
  .urania-header-center { display: none; }
}
@media (max-width: 760px) {
  .urania-header-top { height: auto; padding: 12px 16px; flex-wrap: wrap; }
  .urania-brand-logo { height: 48px; }
  .urania-brand-title { font-size: 0.9rem; }
  .urania-brand-sub { font-size: 0.55rem; letter-spacing: 0.1em; }
  .urania-header-btn { padding: 6px 10px; font-size: 0.7rem; }
}

/* ============================================================
   BARRA DEL MENU URANIA (debajo del header)
   ============================================================ */
.urania-menu-bar {
  position: sticky;
  top: 100px;
  z-index: 999;
  height: 48px;
  min-height: 48px;
  background: linear-gradient(135deg, rgba(44, 24, 16, 0.97), rgba(74, 44, 32, 0.97));
  border-bottom: 1px solid #b8952a;
  display: flex;
  align-items: stretch;
  justify-content: center;
  overflow: hidden;
}

.urania-menu {
  display: flex !important;
  align-items: stretch;
  justify-content: center;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  flex-wrap: nowrap;
}
.urania-menu > li {
  list-style: none;
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
}
.urania-menu > li > a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 18px;
  font-family: 'Cinzel', serif;
  color: #e8dcc6 !important;
  font-size: 0.85rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
  border-right: 1px solid rgba(212, 175, 55, 0.2);
  white-space: nowrap;
  text-decoration: none !important;
  line-height: 1;
}
.urania-menu > li:last-child > a { border-right: none; }

.urania-menu > li > a:hover {
  background: linear-gradient(135deg, rgba(212, 175, 55, 0.18), rgba(244, 208, 63, 0.12));
  color: #f4d03f !important;
}

.urania-menu > li.current-menu-item > a,
.urania-menu > li.current_page_item > a {
  background: linear-gradient(135deg, rgba(212, 175, 55, 0.25), rgba(244, 208, 63, 0.18));
  color: #d4af37 !important;
  border-bottom: 3px solid #d4af37;
  margin-bottom: -1px;
}

@media (max-width: 1100px) {
  .urania-menu > li > a { padding: 0 12px; font-size: 0.72rem; }
}
@media (max-width: 760px) {
  .urania-menu-bar { height: auto; min-height: 40px; overflow-x: auto; top: auto; position: relative; }
  .urania-menu { flex-wrap: nowrap; justify-content: flex-start; }
  .urania-menu > li > a { padding: 8px 12px; font-size: 0.7rem; border-right: 1px solid rgba(212,175,55,0.15); }
}

/* Site title (logo de texto) - lo ocultamos porque se reemplaza por urania-brand */
.site-title,
.site-title a,
.ast-site-identity .site-title a {
  font-family: 'Cinzel', serif !important;
  color: #d4af37 !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-shadow: 0 0 12px rgba(212,175,55,0.3);
}
.site-description,
.ast-site-identity .site-description {
  font-family: 'Cinzel', serif !important;
  color: #b8a082 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  font-size: 0.75rem !important;
}

/* ============================================================
   LOGO COMPLETO URANIA (replica del header de los programas)
   Inyectado via filter astra_site_title_output en functions.php
   ============================================================ */
.urania-brand {
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0;
}
.urania-brand-link {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  text-decoration: none !important;
  color: inherit !important;
}
.urania-brand-link:hover { text-decoration: none !important; }

.urania-brand-logo {
  height: 78px !important;
  width: auto !important;
  max-width: none !important;
  display: block !important;
  filter: drop-shadow(0 0 8px rgba(212, 175, 55, 0.4));
  flex-shrink: 0;
}

.urania-brand-text {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 2px !important;
  white-space: nowrap !important;
}

.urania-brand-title {
  display: block !important;
  font-family: 'Cinzel', serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #d4af37 !important;
  letter-spacing: 0.06em !important;
  white-space: nowrap !important;
  line-height: 1.1 !important;
  text-shadow: 0 0 10px rgba(212, 175, 55, 0.25);
}

.urania-brand-sub {
  display: block !important;
  font-family: 'Cinzel', serif !important;
  font-size: 0.65rem !important;
  font-weight: 400 !important;
  color: #b8a082 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  line-height: 1.3 !important;
}

/* Asegurar que el contenedor de Astra le de espacio al brand */
.ast-site-identity,
.site-branding,
.ast-site-title-wrap {
  flex: 1 1 auto !important;
  max-width: none !important;
  width: auto !important;
}

/* Ocultar la descripcion del sitio que Astra a veces deja visible */
.ast-site-identity .site-description:empty { display: none !important; }

/* Responsive: en pantallas chicas reducir todo */
@media (max-width: 760px) {
  .urania-brand-logo { height: 60px !important; }
  .urania-brand-title { font-size: 0.95rem !important; }
  .urania-brand-sub   { font-size: 0.55rem !important; letter-spacing: 0.1em !important; }
}
@media (max-width: 480px) {
  .urania-brand-text { display: none !important; }  /* solo el logo en muy chico */
}

/* ============================================================
   4. MENU PRINCIPAL ASTRA -> Estilo barra marron c\u00e1lido ARGO
   Forzar 1 sola fila horizontal, items distribuidos
   ============================================================ */

/* El UL contenedor: forzar 1 sola fila, sin wrap, items distribuidos */
.main-header-menu,
.ast-builder-menu-1 > .menu,
.ast-builder-menu-1 ul.main-header-menu,
nav.site-navigation > ul,
.main-navigation > ul {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  background: transparent !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Items: que no se rompan en multiples lineas */
.main-header-menu > .menu-item,
.ast-builder-menu-1 > .menu > .menu-item,
.ast-builder-menu-1 .menu-item {
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Enlaces: padding compacto, sin border-radius, con separadores verticales */
.main-header-menu .menu-link,
.main-header-menu > .menu-item > a,
.ast-builder-menu-1 .menu-link,
.ast-builder-menu-1 li > a {
  display: flex !important;
  align-items: center !important;
  font-family: 'Cinzel', serif !important;
  color: #e8dcc6 !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  padding: 0 16px !important;
  height: 100% !important;
  min-height: 48px !important;
  border-right: 1px solid rgba(212,175,55,0.2) !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  transition: all 0.3s ease !important;
  white-space: nowrap !important;
  line-height: 1 !important;
}

/* Quitar el border-right del ultimo item */
.main-header-menu > .menu-item:last-child > a,
.ast-builder-menu-1 .menu-item:last-child > a {
  border-right: none !important;
}

/* Hover */
.main-header-menu .menu-link:hover,
.main-header-menu .menu-item:hover > a,
.main-header-menu > .menu-item > a:hover,
.ast-builder-menu-1 .menu-link:hover,
.ast-builder-menu-1 li > a:hover {
  background: linear-gradient(135deg, rgba(212,175,55,0.18), rgba(244,208,63,0.12)) !important;
  color: #f4d03f !important;
}

/* Item activo: solo el actual */
.main-header-menu .current-menu-item > a,
.main-header-menu .current_page_item > a,
.ast-builder-menu-1 .current-menu-item > a,
.ast-builder-menu-1 .current_page_item > a {
  background: linear-gradient(135deg, rgba(212,175,55,0.22), rgba(244,208,63,0.15)) !important;
  color: #d4af37 !important;
  border-bottom: 3px solid #d4af37 !important;
  margin-bottom: -2px !important;
}

/* Quitar marcadores "current" residuales en items que no son la pagina actual */
.main-header-menu .menu-item:not(.current-menu-item):not(.current_page_item) > a {
  border-bottom: none !important;
}

/* Barra del menu (debajo del header) - le damos el fondo marron c\u00e1lido */
.ast-primary-menu-disabled .ast-main-header-bar-alignment,
.ast-header-break-point .main-header-bar-navigation,
.main-header-bar-navigation,
.ast-main-header-bar-alignment .main-header-bar-navigation,
.ast-builder-menu-1 {
  background: linear-gradient(135deg, rgba(44,24,16,0.97), rgba(74,44,32,0.97)) !important;
  border-bottom: 1px solid rgba(212,175,55,0.4) !important;
  width: 100% !important;
}

/* Container del nav - que ocupe toda la barra */
.ast-builder-menu-1 .main-header-bar-navigation,
.ast-flex-1 > .main-header-bar-navigation {
  width: 100% !important;
  flex: 1 !important;
}

/* Si el sitio es responsive y necesita break, que no rompa antes de 1100px */
@media (min-width: 1100px) {
  .main-header-menu,
  .ast-builder-menu-1 > .menu {
    flex-wrap: nowrap !important;
  }
}

/* En pantallas chicas (mobile), si rompe, ocultamos border-right entre items */
@media (max-width: 921px) {
  .main-header-menu .menu-link,
  .ast-builder-menu-1 li > a {
    border-right: none !important;
  }
}

/* ============================================================
   5. CONTENIDO - asegurar que use Cinzel para titulos
   ============================================================ */
h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title,
.widget-title {
  font-family: 'Cinzel', serif !important;
  color: #d4af37 !important;
  letter-spacing: 0.05em !important;
}

.entry-content,
.entry-content p,
.entry-content li,
article p,
article li,
.site-content p,
.site-content li {
  color: #e8dcc6 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1.05rem !important;
}

.entry-content a,
.site-content a {
  color: #d4af37;
}
.entry-content a:hover {
  color: #f4d03f;
}

/* Container principal de Astra */
.site-content .ast-container,
.site-content > .ast-container,
#primary,
.content-area,
.entry-content {
  background: transparent !important;
}

/* ============================================================
   6. FOOTER - reestilizar
   ============================================================ */
#colophon,
.site-footer,
.site-below-footer-wrap,
.ast-footer-copyright,
[data-section="section-below-footer-builder"] {
  background: #0a0a2e !important;
  border-top: 1px solid rgba(212,175,55,0.4) !important;
  color: #b8a082 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}
.site-footer a,
.ast-footer-copyright a {
  color: #d4af37 !important;
}

/* ============================================================
   7. WIDGETS / SIDEBAR
   ============================================================ */
.widget,
.widget-area .widget,
#secondary .widget {
  background: rgba(22,33,62,0.4) !important;
  border: 1px solid rgba(212,175,55,0.25) !important;
  border-radius: 10px !important;
  padding: 20px !important;
  color: #e8dcc6 !important;
}
.widget a { color: #d4af37 !important; }
.widget h2.widget-title,
.widget .widget-title {
  color: #d4af37 !important;
  font-family: 'Cinzel', serif !important;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-size: 0.95rem !important;
}

/* ============================================================
   8. BOTONES gen\u00e9ricos de Astra
   ============================================================ */
.wp-block-button__link,
button:not(.up-vbtn):not(.aula-tab),
input[type="submit"],
.button,
.ast-button {
  background: linear-gradient(135deg, #d4af37, #f4d03f) !important;
  color: #0a0a2e !important;
  font-family: 'Cinzel', serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 25px !important;
  border: none !important;
  padding: 10px 24px !important;
}
.wp-block-button__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(212,175,55,0.4) !important;
}

/* Inputs y forms */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
textarea,
select {
  background: rgba(10,10,46,0.6) !important;
  color: #e8dcc6 !important;
  border: 1px solid rgba(212,175,55,0.4) !important;
  border-radius: 6px !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
}

/* ============================================================
   9. CONTENIDO DE PAGINAS (sobre nuestros bloques <!-- wp:html -->)
   ============================================================ */
/* Asegurar que el wrap del contenido no tenga el fondo blanco de Astra */
.ast-separate-container,
.ast-separate-container .ast-article-single,
.ast-separate-container .entry-content,
.ast-separate-container .ast-article-post,
.ast-separate-container #primary,
.ast-separate-container .ast-row,
.ast-no-sidebar.ast-separate-container #primary {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#content,
#primary,
.site #content,
.ast-container,
.site-content > .ast-container {
  background: transparent !important;
}

/* ============================================================
   10. UTILIDADES Y CUSTOM PROPS para que las paginas funcionen
   ============================================================ */
.entry-header { display: none !important; }  /* ocultar header dup. de p\u00e1gina */
.ast-archive-description { display: none !important; }
.page-template-default .entry-content { padding: 0 !important; }

/* Pantalla completa para el contenido del bloque HTML */
.entry-content .wp-block-html { width: 100%; }

/* ============================================================
   11. RESPONSIVE - asegurar que el menu mobile tambien luzca bien
   ============================================================ */
@media (max-width: 921px) {
  .ast-header-break-point .ast-mobile-header-wrap,
  .ast-mobile-header-content {
    background: linear-gradient(135deg, rgba(44,24,16,0.97), rgba(74,44,32,0.97)) !important;
  }
  .ast-builder-menu-mobile li a {
    color: #e8dcc6 !important;
    font-family: 'Cinzel', serif !important;
  }
}

/* ============================================================
   FIX REVISTA MODAL - ocultar header Urania cuando modal abre
   + adaptar visor a la ventana del navegador
   ============================================================ */
body.up-modal-open { overflow: hidden !important; }
body.up-modal-open .urania-header-top,
body.up-modal-open .urania-menu-bar { display: none !important; }
body.up-modal-open #masthead,
body.up-modal-open .site-header,
body.up-modal-open #colophon,
body.up-modal-open .site-footer { display: none !important; }

/* El modal cubre TODA la ventana, fijo */
.up-visor {
  position: fixed !important;
  top: 0 !important; left: 0 !important;
  right: 0 !important; bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100dvh !important;  /* dvh para mobiles que cuentan barras */
  z-index: 99999 !important;
  display: none;
  flex-direction: column;
  background: rgba(5, 5, 23, 0.97);
}
.up-visor.open { display: flex !important; }

/* La toolbar dorada arriba se mantiene en su altura natural */
.up-visor__bar { flex: 0 0 auto !important; }

/* El contenedor del iframe ocupa TODO el espacio restante con scroll si hace falta */
.up-visor__content,
.up-visor > div:not(.up-visor__bar) {
  flex: 1 1 auto !important;
  overflow: auto !important;
  min-height: 0 !important;
}

/* El iframe llena el contenedor */
.up-visor iframe {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border: 0 !important;
  background: #0a0a2e !important;
}

/* ============================================================
   LOOP DE ARTICULOS [urania_loop]
   ============================================================ */
.urania-empty {
  padding: 40px;
  background: rgba(22,33,62,0.4);
  border: 1px dashed rgba(212,175,55,0.4);
  border-radius: 12px;
  text-align: center;
  color: #b8a082;
}

.urania-loop {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.urania-loop--grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
}

.urania-loop__item {
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: 18px;
  padding: 16px;
  background: rgba(22,33,62,0.4);
  border: 1px solid rgba(212,175,55,0.2);
  border-radius: 10px;
  text-decoration: none !important;
  color: inherit !important;
  transition: all 0.25s ease;
}
.urania-loop--grid .urania-loop__item {
  grid-template-columns: 1fr;
  display: flex;
  flex-direction: column;
}
.urania-loop__item:hover {
  border-color: #d4af37;
  background: rgba(22,33,62,0.6);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.4);
}
@media (max-width: 660px) {
  .urania-loop__item { grid-template-columns: 1fr; }
}

.urania-loop__thumb {
  background: linear-gradient(135deg, #0f3460, #16213e);
  border-radius: 6px;
  min-height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.urania-loop__thumb img {
  width: 100%;
  height: 100%;
  min-height: 140px;
  object-fit: cover;
  display: block;
}
.urania-loop__thumb--empty {
  color: #d4af37;
  font-family: 'Cinzel', serif;
  font-size: 2.5rem;
}

.urania-loop__content { display: flex; flex-direction: column; gap: 6px; }
.urania-loop__cat {
  font-family: 'Cinzel', serif;
  font-size: 0.7rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #d4af37;
}
.urania-loop__title {
  font-family: 'Cinzel', serif;
  font-size: 1.1rem !important;
  color: #d4af37 !important;
  margin: 4px 0 6px !important;
  line-height: 1.3;
}
.urania-loop__excerpt {
  color: #e8dcc6;
  font-family: 'Cormorant Garamond', serif;
  font-size: 0.95rem;
  line-height: 1.5;
  margin: 0 0 8px;
}
.urania-loop__meta {
  font-family: 'Cinzel', serif;
  font-size: 0.7rem;
  color: #b8a082;
  letter-spacing: 0.06em;
  margin: 0;
}
.urania-loop__meta span + span { margin-left: 14px; }

/* Paginacion */
.urania-pagination {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-top: 30px;
}
.urania-pagination .page-numbers {
  padding: 8px 14px;
  border: 1px solid rgba(212,175,55,0.4);
  border-radius: 6px;
  color: #e8dcc6;
  font-family: 'Cinzel', serif;
  font-size: 0.85rem;
  text-decoration: none;
  background: rgba(10,10,46,0.4);
}
.urania-pagination .page-numbers.current,
.urania-pagination .page-numbers:hover {
  background: linear-gradient(135deg, #d4af37, #f4d03f);
  color: #0a0a2e !important;
  border-color: #d4af37;
}

/* Lista de categorias sidebar */
.urania-cat-list { list-style: none; margin: 0; padding: 0; }
.urania-cat-list li {
  padding: 6px 0;
  border-bottom: 1px solid rgba(212,175,55,0.1);
}
.urania-cat-list a {
  color: #e8dcc6;
  font-family: 'Cormorant Garamond', serif;
  text-decoration: none;
}
.urania-cat-list a:hover { color: #d4af37; }
.urania-cat-count {
  color: #b8a082;
  font-size: 0.85rem;
  font-family: 'Cinzel', serif;
}

/* ============================================================
   FIX cards de INICIO: que el click en la imagen NO abra el SVG
   sino que vaya al <a> padre.
   ============================================================ */
.up-card img,
.up-card__img,
.portal-card img,
.portal-card__img {
  pointer-events: none !important;
}

/* Las cards completas son link */
.up-card,
.portal-card {
  cursor: pointer;
}

/* ============================================================
   FIX FINAL: cards de Inicio sin <img> clickeable.
   El SVG se carga como background-image de un <div>.
   ============================================================ */
.up-card__img {
  /* Cuando es <div> (no <img>) con background-image */
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  max-height: 180px !important;
  margin: 0 auto 14px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(212,175,55,0.25) !important;
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-color: transparent !important;
  display: block !important;
  pointer-events: none !important;
}

/* ============================================================
   SINGLE POST LAYOUT - ancho completo, fondo claro, sidebar
   ============================================================ */
.single-post .ast-container,
.single-post #primary,
.single-post .site-content > .ast-container { max-width: 1240px !important; padding-left: 24px !important; padding-right: 24px !important; }

/* Layout 2 columnas: contenido + sidebar */
.single-post #primary { display: grid !important; grid-template-columns: minmax(0, 1fr) 280px !important; gap: 28px !important; }
@media (max-width: 1024px) { .single-post #primary { grid-template-columns: 1fr !important; } }

/* Article: fondo claro, texto oscuro */
.single-post .post,
.single-post article.post {
  background: #fdfaf2 !important;
  color: #2a2a2a !important;
  border: 1px solid rgba(212,175,55,0.5) !important;
  border-radius: 14px !important;
  padding: 36px 44px !important;
  box-shadow: 0 6px 22px rgba(0,0,0,0.4) !important;
}
@media (max-width: 768px) { .single-post .post { padding: 22px 18px !important; } }

/* Texto del post sobre fondo claro */
.single-post .entry-content,
.single-post .entry-content p,
.single-post .entry-content li,
.single-post .entry-content blockquote,
.single-post .entry-content td,
.single-post .entry-content th,
.single-post .entry-content span:not(.up-art-nav__label),
.single-post .entry-content div {
  color: #2a2a2a !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
.single-post .entry-content a { color: #1c5fa8 !important; text-decoration: underline !important; }
.single-post .entry-content a:hover { color: #0a3a78 !important; }

/* Titulo del post: cinzel dorado, mas chico que antes */
.single-post .entry-title {
  font-family: Cinzel, serif !important;
  color: #b8860b !important;
  font-size: 1.7rem !important;
  line-height: 1.25 !important;
  margin: 0 0 16px !important;
  letter-spacing: 0.04em !important;
}

/* Subtitulos H2/H3 dentro del contenido: cinzel dorado, mas chicos */
.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4 {
  font-family: Cinzel, serif !important;
  color: #b8860b !important;
  letter-spacing: 0.03em !important;
  margin-top: 1.4em !important;
  margin-bottom: 0.6em !important;
  line-height: 1.3 !important;
}
.single-post .entry-content h2 { font-size: 1.25rem !important; }
.single-post .entry-content h3 { font-size: 1.1rem !important; }
.single-post .entry-content h4 { font-size: 1rem !important; }

/* Imagenes con fondo transparente -> fondo blanco para no perderse */
.single-post .entry-content img {
  max-width: 100% !important;
  height: auto !important;
  background: #fff !important;
  padding: 6px !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}

/* Tablas */
.single-post .entry-content table {
  background: #fff !important;
  border-collapse: collapse !important;
  margin: 1em 0 !important;
  width: auto !important;
  max-width: 100% !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.08) !important;
}
.single-post .entry-content table td,
.single-post .entry-content table th {
  border: 1px solid #c9bfa7 !important;
  padding: 8px 12px !important;
  background: #fff !important;
}
.single-post .entry-content table th {
  background: #f3e8c8 !important;
  color: #5c4720 !important;
  font-family: Cinzel, serif !important;
}

/* Meta del post (fecha, autor) - mas discreto */
.single-post .entry-meta,
.single-post .ast-post-date,
.single-post .posted-on,
.single-post .ast-author-name {
  color: #6a6a6a !important;
  font-size: 0.82rem !important;
}

/* Sidebar columna lateral */
.urania-post-sidebar { display: flex; flex-direction: column; gap: 16px; }
.urania-post-sidebar .widget-box {
  background: rgba(22,33,62,0.45);
  border: 1px solid rgba(212,175,55,0.35);
  border-radius: 12px;
  padding: 18px;
  color: #e8dcc6;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.92rem;
}
.urania-post-sidebar .widget-box h4 {
  font-family: Cinzel, serif;
  color: #d4af37;
  margin: 0 0 12px;
  font-size: 0.85rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(212,175,55,0.3);
  padding-bottom: 8px;
}
.urania-post-sidebar a { color: #d4af37; text-decoration: none; }
.urania-post-sidebar a:hover { color: #f4d03f; }
.urania-post-sidebar .related-item {
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid rgba(212,175,55,0.15);
  color: #e8dcc6 !important;
  font-size: 0.85rem;
  line-height: 1.35;
}
.urania-post-sidebar .related-item:last-child { border-bottom: none; }
.urania-post-sidebar .related-item:hover { color: #d4af37 !important; }
.urania-post-sidebar .banner-cta {
  display: block;
  text-align: center;
  padding: 16px;
  background: linear-gradient(135deg, rgba(212,175,55,0.15), rgba(244,208,63,0.1));
  border: 1px dashed rgba(212,175,55,0.5);
  border-radius: 10px;
  color: #d4af37 !important;
  font-family: Cinzel, serif;
  font-size: 0.78rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

/* Navegacion arriba y abajo: botones grandes */
.urania-post-nav {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 12px;
  margin: 20px 0;
  align-items: center;
}
.urania-post-nav__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  background: linear-gradient(135deg, #d4af37, #f4d03f);
  color: #0a0a2e !important;
  font-family: Cinzel, serif;
  font-weight: 700;
  font-size: 0.74rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border-radius: 24px;
  text-decoration: none !important;
  transition: all 0.25s ease;
  max-width: 100%;
}
.urania-post-nav__btn:hover { transform: translateY(-2px); box-shadow: 0 4px 14px rgba(212,175,55,0.45); }
.urania-post-nav__btn--prev { justify-self: start; }
.urania-post-nav__btn--next { justify-self: end; }
.urania-post-nav__btn--back {
  background: rgba(22,33,62,0.55);
  color: #d4af37 !important;
  border: 1px solid rgba(212,175,55,0.5);
}
.urania-post-nav__btn--back:hover { background: rgba(22,33,62,0.85); }
.urania-post-nav__label { font-size: 0.7rem; opacity: 0.85; display: block; line-height: 1; margin-bottom: 3px; }
.urania-post-nav__title { font-family: Arial, sans-serif; font-weight: 500; font-size: 0.78rem; text-transform: none; letter-spacing: 0; }

/* Ocultar la navegacion default de Astra */
.single-post .post-navigation,
.single-post .nav-links,
.single-post .ast-pagination,
.single-post nav.navigation.post-navigation { display: none !important; }

/* ============================================================
   CURRENCY SWITCHER (FOX/WOOCS) en header
   ============================================================ */
.urania-currency-switcher { display: inline-flex; align-items: center; margin-right: 8px; }
.urania-currency-switcher select,
.urania-currency-switcher .woocs_flag_view_item_current,
.urania-currency-switcher .dd-select {
  background: rgba(15,52,96,0.55) !important;
  border: 1px solid rgba(212,175,55,0.45) !important;
  color: #f5ecd7 !important;
  border-radius: 18px !important;
  padding: 4px 10px !important;
  font-family: Arial, sans-serif !important;
  font-size: 0.78rem !important;
  min-height: 32px;
}
.urania-currency-switcher .dd-options { background: #0a0a2e !important; border: 1px solid #d4af37 !important; border-radius: 8px !important; }
.urania-currency-switcher .dd-option { background: transparent !important; color: #f5ecd7 !important; padding: 6px 10px !important; }
.urania-currency-switcher .dd-option:hover, .urania-currency-switcher .dd-option-selected { background: rgba(212,175,55,0.2) !important; }
.urania-currency-switcher .dd-option-text, .urania-currency-switcher .dd-selected-text { color: #f5ecd7 !important; font-size: 0.78rem !important; }
.urania-currency-switcher img.dd-selected-image, .urania-currency-switcher img.dd-option-image { max-width: 18px !important; max-height: 13px !important; }

/* ============================================================
   OCULTAR BOTONES DE PAYPAL EN PAGINA DEL PRODUCTO
   El plugin PayPal Payments inyecta smart buttons en single product
   ============================================================ */
.single-product .ppc-button-container,
.single-product #ppc-button,
.single-product #ppc-button-ppcp-gateway,
.single-product .ppcp-button-container,
.single-product .ppcp-buttons,
.single-product div[id^="ppc-button"],
.single-product div[class*="ppc-button"],
.single-product div[id*="paypal-button"],
.single-product div[class*="paypal-button"],
body.single-product .ppcp-button-apm,
body.single-product .ppcp-googlepay-button-container,
body.single-product .ppcp-applepay-button-container { display: none !important; }

/* ============================================================
   SINGLE PRODUCT LAYOUT (WooCommerce)
   - Imagen mas grande a la izquierda
   - Texto introductorio al lado, mismo bloque
   - Descripcion larga ABAJO ocupando todo el ancho
   ============================================================ */
.single-product .product .woocommerce-product-gallery {
  width: 45% !important;
  float: left !important;
  margin-right: 4% !important;
}
.single-product .product .summary {
  width: 51% !important;
  float: left !important;
  margin-bottom: 30px !important;
}
.single-product .product .woocommerce-product-gallery img {
  border-radius: 12px !important;
  box-shadow: 0 4px 14px rgba(0,0,0,0.45) !important;
  background: #fff !important;
  padding: 4px !important;
}
.single-product .product::after {
  content: "";
  display: table;
  clear: both;
}
/* Descripcion larga: ancho completo abajo */
.single-product .product .woocommerce-tabs,
.single-product .product .related,
.single-product .product .up-extra-info,
.single-product .product .woocommerce-product-details__short-description ~ * {
  clear: both !important;
  width: 100% !important;
  float: none !important;
}
.single-product .woocommerce-tabs {
  margin-top: 40px !important;
  background: #fdfaf2 !important;
  color: #2a2a2a !important;
  border: 1px solid rgba(212,175,55,0.45) !important;
  border-radius: 14px !important;
  padding: 30px 36px !important;
}
.single-product .woocommerce-tabs h2,
.single-product .woocommerce-tabs h3 {
  font-family: Cinzel, serif !important;
  color: #b8860b !important;
}
.single-product .woocommerce-tabs p,
.single-product .woocommerce-tabs li {
  color: #2a2a2a !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
.single-product .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid rgba(212,175,55,0.4) !important;
  padding: 0 !important;
  margin: 0 0 18px !important;
}
.single-product .woocommerce-tabs ul.tabs li {
  background: rgba(15,52,96,0.05) !important;
  border: 1px solid rgba(212,175,55,0.3) !important;
  border-bottom: none !important;
  border-radius: 6px 6px 0 0 !important;
  margin-right: 4px !important;
}
.single-product .woocommerce-tabs ul.tabs li.active {
  background: #fdfaf2 !important;
  border-color: #d4af37 !important;
}
.single-product .woocommerce-tabs ul.tabs li a {
  color: #b8860b !important;
  font-family: Cinzel, serif !important;
  font-size: 0.9rem !important;
  letter-spacing: 0.05em !important;
}

/* Titulo y precio en summary */
.single-product .product .summary .product_title {
  font-family: Cinzel, serif !important;
  color: #d4af37 !important;
  font-size: 1.6rem !important;
  line-height: 1.25 !important;
  margin: 0 0 14px !important;
}
.single-product .product .summary .price,
.single-product .product .summary .price .amount {
  font-family: Cinzel, serif !important;
  color: #d4af37 !important;
  font-size: 1.3rem !important;
}
.single-product .product .summary .woocommerce-product-details__short-description {
  font-family: Arial, sans-serif !important;
  color: #e8dcc6 !important;
  font-size: 0.97rem !important;
  line-height: 1.6 !important;
  margin: 12px 0 18px !important;
}

/* Boton add-to-cart */
.single-product .product .single_add_to_cart_button {
  background: linear-gradient(135deg, #d4af37, #f4d03f) !important;
  color: #0a0a2e !important;
  font-family: Cinzel, serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  border: none !important;
  padding: 13px 30px !important;
  border-radius: 26px !important;
  font-size: 0.85rem !important;
  margin-top: 8px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}
.single-product .product .single_add_to_cart_button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(212,175,55,0.45) !important;
}

/* Cuotas info */
.single-product .product .mp-checkout-pro-installments,
.single-product .product .ppcp-messages {
  margin: 12px 0 !important;
  padding: 10px 14px !important;
  background: rgba(15,52,96,0.25) !important;
  border: 1px solid rgba(212,175,55,0.3) !important;
  border-radius: 8px !important;
  color: #e8dcc6 !important;
  font-family: Arial, sans-serif !important;
  font-size: 0.88rem !important;
}

@media (max-width: 768px) {
  .single-product .product .woocommerce-product-gallery,
  .single-product .product .summary {
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
  }
  .single-product .product .summary {
    margin-top: 22px !important;
  }
}

/* ============================================================
   SINGLE PRODUCT — LAYOUT COMPACTO PRO
   Imagen izq grande, descripcion al lado SIN aire, long abajo full
   ============================================================ */
.single-product .product { display: grid; grid-template-columns: minmax(0, 45%) minmax(0, 55%); gap: 24px; align-items: start; }
@media (max-width: 768px) { .single-product .product { grid-template-columns: 1fr; } }
.single-product .product .woocommerce-product-gallery { width: 100% !important; float: none !important; margin: 0 !important; }
.single-product .product .summary { width: 100% !important; float: none !important; margin: 0 !important; padding: 0 !important; }

/* Espaciado interno tight */
.single-product .product .summary > * { margin-top: 8px !important; margin-bottom: 8px !important; }
.single-product .product .summary .product_title { margin-top: 0 !important; margin-bottom: 8px !important; }
.single-product .product .summary .woocommerce-product-details__short-description { margin: 8px 0 !important; }
.single-product .product .summary .woocommerce-product-details__short-description p { margin: 4px 0 !important; }
.single-product .product .summary .price { margin: 6px 0 !important; padding: 6px 0 !important; }
.single-product .product .summary form.cart { margin: 8px 0 !important; }
.single-product .product .summary .cart .quantity { margin-right: 8px !important; }

/* Descripcion larga: ancho completo abajo, separada */
.single-product .product .woocommerce-tabs { grid-column: 1 / -1 !important; margin-top: 18px !important; clear: both !important; }

/* ============================================================
   PRODUCT CATEGORY / SHOP - Limpiar UI
   ============================================================ */
/* Ocultar "Mostrando X-Y de Z" */
.woocommerce-result-count { display: none !important; }
/* Ocultar "Orden predeterminado" */
.woocommerce-ordering { display: none !important; }
/* Boton volver arriba del shop/categoria */
.urania-back-btn {
  display: inline-block;
  padding: 8px 18px;
  margin: 10px 0 20px;
  background: rgba(22,33,62,0.55);
  color: #d4af37 !important;
  border: 1px solid rgba(212,175,55,0.5);
  font-family: Cinzel, serif;
  font-size: 0.74rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  border-radius: 22px;
  text-decoration: none !important;
  transition: all 0.25s ease;
}
.urania-back-btn:hover {
  background: rgba(22,33,62,0.85);
  border-color: #d4af37;
  transform: translateX(-2px);
}

/* Botones "Añadir al carrito" en related products / cards: discreto */
.single-product .related .button,
.single-product .related .add_to_cart_button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
  font-size: 0.72rem !important;
  padding: 7px 14px !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  overflow: hidden !important;
  max-width: 100% !important;
  border-radius: 18px !important;
  font-weight: 600 !important;
  background: linear-gradient(135deg, #d4af37, #f4d03f) !important;
  color: #0a0a2e !important;
  border: none !important;
}

/* Navegacion entre productos: arriba */
.urania-product-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin: 0 0 20px;
  padding: 10px 14px;
  background: rgba(22,33,62,0.5);
  border: 1px solid rgba(212,175,55,0.3);
  border-radius: 10px;
  flex-wrap: wrap;
}
.urania-product-nav__btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: rgba(15,52,96,0.55);
  color: #d4af37 !important;
  border: 1px solid rgba(212,175,55,0.4);
  font-family: Cinzel, serif;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border-radius: 18px;
  text-decoration: none !important;
  transition: all 0.25s ease;
}
.urania-product-nav__btn:hover {
  background: rgba(15,52,96,0.85);
  border-color: #d4af37;
}
.urania-product-nav__btn.is-back {
  background: linear-gradient(135deg, #d4af37, #f4d03f);
  color: #0a0a2e !important;
  border: none;
}
.urania-product-nav__title {
  flex: 1;
  text-align: center;
  font-family: Arial, sans-serif;
  font-size: 0.82rem;
  color: #e8dcc6;
  max-width: 50%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ============================================================
   FIX: Volver button bien posicionado (dentro del flow del contenido)
   ============================================================ */
.urania-back-wrap {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto 14px;
  padding: 0;
  text-align: left;
}

.single-product .urania-product-nav {
  margin: 0 0 16px;
  max-width: 100%;
}

/* Imagen del producto un poco mas chica (40% en lugar de 45%) y resumen mas ancho */
.single-product .product { grid-template-columns: minmax(0, 38%) minmax(0, 62%) !important; }
@media (max-width: 768px) { .single-product .product { grid-template-columns: 1fr !important; } }

/* Si hay varias imagenes WC genera un slider, reducir flechas */
.single-product .woocommerce-product-gallery img {
  max-height: 380px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  display: block !important;
}

/* Quitar el shadow gigante en imagen */
.single-product .woocommerce-product-gallery {
  padding: 8px !important;
  background: rgba(15,52,96,0.25) !important;
  border-radius: 12px !important;
  border: 1px solid rgba(212,175,55,0.25) !important;
}

/* Title compacto */
.single-product .product .summary .product_title { font-size: 1.35rem !important; margin: 0 0 6px !important; }

/* PRICE bloque mas compacto */
.single-product .product .summary .price { font-size: 1.15rem !important; }

/* Tabs (descripcion larga) ocupan mas espacio visual */
.single-product .woocommerce-tabs .panel { padding: 18px 0 0 !important; }
.single-product .woocommerce-tabs .panel p,
.single-product .woocommerce-tabs .panel li { font-size: 0.95rem !important; line-height: 1.65 !important; }
.single-product .woocommerce-tabs .panel ul { padding-left: 22px !important; }

/* Asegurar que las tabs de WC se muestren siempre */
.single-product .woocommerce-tabs,
.single-product .wc-tabs-wrapper,
.single-product .woocommerce-tabs ul.tabs.wc-tabs,
.single-product .woocommerce-tabs .wc-tab {
  display: block !important;
  visibility: visible !important;
}
.single-product .woocommerce-tabs .panel {
  display: block !important;
}

/* ============================================================
   SINGLE PRODUCT - FIX urgente: el grid se rompia
   La gallery y summary deben estar FORZADAS en columnas
   ============================================================ */
.single-product div.product.product {
  display: grid !important;
  grid-template-columns: 380px 1fr !important;
  gap: 28px !important;
  align-items: start !important;
  margin: 0 auto !important;
  max-width: 1180px !important;
}
@media (max-width: 768px) {
  .single-product div.product.product {
    grid-template-columns: 1fr !important;
  }
}

.single-product div.product .woocommerce-product-gallery {
  width: 380px !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 10px !important;
  background: rgba(15,52,96,0.25) !important;
  border-radius: 12px !important;
  border: 1px solid rgba(212,175,55,0.25) !important;
  box-sizing: border-box !important;
}
@media (max-width: 768px) {
  .single-product div.product .woocommerce-product-gallery { width: 100% !important; }
}

.single-product div.product .woocommerce-product-gallery img {
  width: 100% !important;
  max-width: 360px !important;
  max-height: 360px !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  display: block !important;
  border-radius: 8px !important;
}

.single-product div.product .summary,
.single-product div.product .summary.entry-summary {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Navegacion arriba ocupa todo el ancho */
.single-product .urania-product-nav {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto 14px !important;
}

/* Tabs (descripcion larga) ocupan todo abajo */
.single-product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 18px auto 0 !important;
}

/* ============================================================
   PALETA DE BOTONES MAS DISCRETA
   Reemplazo del gradiente amarillo "furioso" por dorado/cobrizo sobrio
   ============================================================ */
.up-home-card__btn,
.up-fc-block__btn,
.up-fc-col__btn,
.up-art-card__btn,
.up-sw-prod__cta,
.up-cons-card__cta,
.up-fc-revista__btn,
.up-revesc-btn,
.urania-back-btn,
.urania-product-nav__btn.is-back,
.urania-post-nav__btn,
.single-product .product .single_add_to_cart_button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce .button.alt,
.woocommerce-page .button.alt,
.woocommerce-page button.button,
.woocommerce button.button,
.urania-header-btn--access {
  background: linear-gradient(135deg, #8b6f1a, #b89530) !important;
  color: #f5ecd7 !important;
  border: 1px solid rgba(212,175,55,0.45) !important;
}
.up-home-card:hover .up-home-card__btn,
.up-fc-block__btn:hover,
.up-fc-col__btn:hover,
.up-sw-prod:hover .up-sw-prod__cta,
.up-cons-card__cta:hover,
.up-fc-revista__btn:hover,
.up-revesc-btn:hover,
.urania-back-btn:hover,
.urania-product-nav__btn.is-back:hover,
.urania-post-nav__btn:hover,
.single-product .product .single_add_to_cart_button:hover,
.woocommerce ul.products li.product .button:hover {
  background: linear-gradient(135deg, #a07e22, #d4af37) !important;
  color: #fff !important;
}

/* Botones secundarios (anterior/siguiente single product nav) MAS chicos y sobrios */
.urania-product-nav__btn:not(.is-back) {
  background: transparent !important;
  border: 1px solid rgba(212,175,55,0.4) !important;
  color: #b89530 !important;
}
.urania-product-nav__btn:not(.is-back):hover {
  background: rgba(212,175,55,0.1) !important;
  color: #d4af37 !important;
}

/* Mensaje rojo de password (problema reCAPTCHA): mas contrastado */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
  color: #2a2a2a !important;
  background: #fdfaf2 !important;
  border-color: #b89530 !important;
}
.woocommerce-error a,
.woocommerce-message a {
  color: #5c4720 !important;
  font-weight: 600 !important;
}

/* ============================================================
   FORMULARIO DE VALORACION (Review) - CONTRASTE
   El texto de "Tu valoracion", "Tu comentario" etc estaba muy tenue
   ============================================================ */
.single-product #review_form,
.single-product #review_form_wrapper,
.single-product .comment-form,
.single-product .commentlist {
  background: #fdfaf2 !important;
  color: #2a2a2a !important;
  padding: 22px 26px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(212,175,55,0.5) !important;
  margin-top: 22px !important;
}
.single-product #review_form label,
.single-product #review_form p,
.single-product #review_form .comment-notes,
.single-product .comment-form label,
.single-product .comment-form p,
.single-product .stars-rating-text,
.single-product #reply-title,
.single-product .comment-reply-title {
  color: #2a2a2a !important;
  font-family: Arial, sans-serif !important;
}
.single-product #review_form input[type="text"],
.single-product #review_form input[type="email"],
.single-product #review_form textarea,
.single-product .comment-form input[type="text"],
.single-product .comment-form input[type="email"],
.single-product .comment-form textarea {
  background: #fff !important;
  color: #2a2a2a !important;
  border: 1px solid #c9bfa7 !important;
  padding: 8px 12px !important;
  border-radius: 6px !important;
  font-family: Arial, sans-serif !important;
}
.single-product #review_form .stars a {
  color: #b89530 !important;
}
.single-product .commentlist .comment_container {
  background: #fff !important;
  color: #2a2a2a !important;
}
