/* Reglas propias del tema (lo que no cubren las utilidades del diseño compilado). */

body { background:#111111; color:#fff; overflow-x:hidden; }
body.admin-bar .site-nav { top:32px; }
@media (max-width:782px){ body.admin-bar .site-nav { top:46px; } }

/* Navegación fija (estado normal / con scroll), fiel al original */
.site-nav{
    background:rgba(26,26,26,0.6);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    border-bottom:1px solid transparent;
}
.site-nav.is-scrolled{
    background:rgba(26,26,26,0.97);
    border-bottom:1px solid rgba(212,175,55,0.18);
}
.c73-navlink{ color:rgba(255,255,255,0.65); border-bottom:1px solid transparent; }
.c73-navlink:hover{ color:#fff; }
.c73-navlink.is-active{ color:#D4AF37; border-bottom-color:#D4AF37; }

.c73-mobile{ display:none; border-top:1px solid rgba(255,255,255,0.07); background:rgba(26,26,26,0.97); }
.c73-mobile.is-open{ display:flex; }
.c73-navlink-m{ color:rgba(255,255,255,0.7); }
.c73-navlink-m.is-active{ color:#D4AF37; }

/* Banner de cookies (por encima de las burbujas flotantes mientras se muestra) */
.c73-cookies{ position:fixed; left:0; right:0; bottom:0; z-index:10000; background:#1A1A1A; border-top:1px solid rgba(212,175,55,0.3); box-shadow:0 -8px 30px rgba(0,0,0,0.5); padding:16px; }
.c73-cookies-inner{ max-width:1100px; margin:0 auto; display:flex; flex-direction:column; gap:12px; align-items:flex-start; }
.c73-cookies p{ color:#C8C8C8; font-size:14px; margin:0; }
.c73-cookies a{ color:#D4AF37; text-decoration:underline; }
.c73-cookies-btns{ display:flex; gap:8px; }
.c73-btn-ghost{ background:rgba(255,255,255,0.08); color:#E8E8E8; border:1px solid rgba(255,255,255,0.15); padding:8px 16px; border-radius:2px; font-size:14px; font-weight:600; cursor:pointer; }
.c73-btn-gold{ background:#D4AF37; color:#1A1A1A; border:0; padding:8px 20px; border-radius:2px; font-size:14px; font-weight:600; cursor:pointer; }
@media(min-width:640px){ .c73-cookies-inner{ flex-direction:row; align-items:center; } .c73-cookies p{ flex:1; } }

/* Chatbot flotante */
.c73-chat-btn{ position:fixed; bottom:24px; right:24px; z-index:9998; width:56px; height:56px; border-radius:9999px; border:0; cursor:pointer; background:#D4AF37; color:#1A1A1A; box-shadow:0 4px 24px rgba(212,175,55,0.55),0 2px 8px rgba(0,0,0,0.3); display:flex; align-items:center; justify-content:center; }
.c73-chat-panel{ position:fixed; bottom:92px; right:24px; z-index:9998; width:calc(100vw - 48px); max-width:340px; max-height:70vh; background:#1A1A1A; border:1px solid rgba(212,175,55,0.3); box-shadow:0 20px 60px rgba(0,0,0,0.6); border-radius:2px; display:none; flex-direction:column; overflow:hidden; }
.c73-chat-panel.is-open{ display:flex; }
.c73-chat-head{ padding:14px 18px; display:flex; align-items:center; gap:12px; background:linear-gradient(135deg,#2a2318,#1A1A1A); border-bottom:1px solid rgba(212,175,55,0.2); }
.c73-chat-head b{ color:#fff; font-size:14px; font-weight:600; }
.c73-chat-head span{ color:rgba(255,255,255,0.4); font-size:12px; }
.c73-chat-body{ flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:12px; min-height:220px; }
.c73-msg{ max-width:85%; padding:10px 14px; border-radius:2px; font-size:14px; line-height:1.5; white-space:pre-wrap; }
.c73-msg.user{ align-self:flex-end; background:#D4AF37; color:#1A1A1A; }
.c73-msg.bot{ align-self:flex-start; background:rgba(255,255,255,0.06); color:rgba(255,255,255,0.9); border:1px solid rgba(255,255,255,0.08); }
.c73-chat-cta{ margin-top:8px; width:100%; padding:10px; border-radius:2px; border:0; background:#D4AF37; color:#1A1A1A; font-weight:600; font-size:14px; cursor:pointer; }
.c73-chat-foot{ padding:12px; border-top:1px solid rgba(255,255,255,0.08); display:flex; gap:8px; }
.c73-chat-foot input{ flex:1; padding:10px 12px; border-radius:2px; font-size:14px; color:#fff; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); outline:none; }
.c73-chat-send{ width:40px; height:40px; border-radius:2px; border:0; background:#D4AF37; color:#1A1A1A; cursor:pointer; flex-shrink:0; }

/* Prosa de artículos y páginas (contenido editable) */
.c73-prose{ color:#C8C8C8; line-height:1.8; font-size:15px; }
.c73-prose > *{ margin-bottom:1.1em; }
.c73-prose h1,.c73-prose h2,.c73-prose h3,.c73-prose h4{ color:#fff; font-weight:700; line-height:1.25; margin:1.6em 0 .6em; }
.c73-prose h2{ font-size:1.5rem; } .c73-prose h3{ font-size:1.25rem; }
.c73-prose a{ color:#D4AF37; text-decoration:underline; }
.c73-prose strong{ color:#fff; }
.c73-prose ul,.c73-prose ol{ padding-left:1.3em; } .c73-prose li{ margin-bottom:.4em; }
.c73-prose ul li{ list-style:disc; } .c73-prose ol li{ list-style:decimal; }
.c73-prose img{ max-width:100%; height:auto; border-radius:2px; }
.c73-prose blockquote{ border-left:3px solid #D4AF37; padding-left:1em; color:#A8A8A8; font-style:italic; }

/* Firma "Web by VortekAI" en el pie */
.c73-webby{ display:inline-flex; align-items:center; gap:7px; font-size:12px; color:rgba(255,255,255,0.32); text-decoration:none; transition:color .15s ease; }
.c73-webby img{ display:block; opacity:0.72; transition:opacity .15s ease; }
.c73-webby-name{ font-weight:600; letter-spacing:0.02em; }
.c73-webby:hover{ color:rgba(255,255,255,0.72); }
.c73-webby:hover img{ opacity:1; }

/* El mapa (Leaflet usa z-index hasta 1000) no debe tapar el chatbot ni el CTA flotante */
#c73-map{ isolation:isolate; }

/* Comparador antes/después: en móvil el arrastre horizontal mueve el deslizador y el
   vertical sigue haciendo scroll de la página (evita que el navegador cancele el puntero). */
.c73-comparador{ touch-action:pan-y; }

/* El CTA flotante "Consulta gratis" es solo móvil */
@media (min-width:768px){ #c73-sticky-cta{ display:none !important; } }

/* Burbuja de WhatsApp flotante — justo encima del botón del chatbot */
.c73-wa-btn{ position:fixed; right:24px; bottom:92px; z-index:9998; width:56px; height:56px; border-radius:9999px; background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 24px rgba(37,211,102,0.5),0 2px 8px rgba(0,0,0,0.3); transition:transform .15s ease; }
.c73-wa-btn:hover{ transform:scale(1.06); }

/* Botón de accesibilidad (esquina inferior izquierda) */
.c73-a11y-btn{ position:fixed; left:16px; bottom:20px; z-index:9997; width:48px; height:48px; border-radius:9999px; border:2px solid #1A1A1A; background:#D4AF37; color:#1A1A1A; display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 4px 16px rgba(0,0,0,0.45); }
.c73-a11y-btn.is-on{ background:#111; color:#FFD54A; border-color:#FFD54A; }

/* Sección de equipo (Quiénes somos): el velo es mínimo (solo un toque en el pie) para que
   se vea casi toda la foto; el texto, pequeño, se lee gracias a su sombra. */
.c73-team-overlay{ background:linear-gradient(to top, rgba(26,26,26,0.82) 0%, rgba(26,26,26,0.45) 14%, rgba(26,26,26,0.05) 30%, rgba(26,26,26,0) 42%); }
/* Sombra fuerte en el texto del equipo para que se lea sobre la foto sin apenas velo */
.c73-team-copy h2, .c73-team-copy p, .c73-team-copy span{ text-shadow:0 2px 16px rgba(0,0,0,0.9), 0 1px 4px rgba(0,0,0,0.95); }

/* ===== Vista accesible / daltónicos (alto contraste) ===== */
/* Texto tenue sobre fondo oscuro → más claro (mejor contraste) */
html.c73-a11y .text-white\/40,
html.c73-a11y .text-white\/50,
html.c73-a11y .text-white\/60,
html.c73-a11y [style*="#A8A8A8"],
html.c73-a11y [style*="rgba(255,255,255,0.3)"],
html.c73-a11y [style*="rgba(255,255,255,0.4)"],
html.c73-a11y [style*="rgba(255,255,255,0.5)"]{ color:#eaeaea !important; }
html.c73-a11y .text-white\/70,
html.c73-a11y .text-white\/80,
html.c73-a11y .text-white\/90,
html.c73-a11y [style*="#C8C8C8"]{ color:#ffffff !important; }
/* Texto gris del diseño claro (#F5F5F7) → más oscuro (mejor contraste) */
html.c73-a11y .text-\[\#A8A8A8\]{ color:#4a4a4a !important; }
/* Enlaces de contenido subrayados (no depender solo del color) */
html.c73-a11y .c73-prose a,
html.c73-a11y footer a,
html.c73-a11y .c73-cookies a{ text-decoration:underline !important; text-underline-offset:2px; }
/* Foco visible reforzado para teclado */
html.c73-a11y a:focus,
html.c73-a11y button:focus,
html.c73-a11y input:focus,
html.c73-a11y textarea:focus{ outline:3px solid #FFD54A !important; outline-offset:2px !important; }
