/* AC TaxPros 2026 · Hoja visual de ensayo, sin cambios a producción */
:root{--brand-navy:#0c274d;--brand-navy-soft:#1b395e;--brand-silver:#a5a4a4;--brand-fog:#edf0f4;--brand-white:#fff;--brand-text:#142d4f;--navy:#0c274d;--navy-mid:#1b395e;--gold:#a5a4a4;--gold-light:#dce1e8;--cream:#f6f7fa;--gray:#596475;--accent:#73849a}
html{scroll-behavior:smooth}
body{background:#f6f7fa;color:#142d4f}
.announce-bar{background:#0c274d!important;color:#fff!important}
nav,.navbar,.site-header,.header-nav{background:#0c274d!important;border-bottom-color:rgba(165,164,164,.4)!important}
nav a:not(.nav-logo),.nav-links a,.nav-menu a{color:#f1f4f7!important}
nav a:hover,.nav-links a:hover{color:#d6dce5!important}
nav .nav-logo img[src*="logo-actaxpros-transparente"],footer .nav-logo img[src*="logo-actaxpros-transparente"]{background:transparent!important;padding:0!important;border:none!important;border-radius:0!important;object-fit:contain!important;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)!important}
nav .nav-logo img[src*="logo-actaxpros-transparente"]{width:200px!important;height:120px!important;max-width:none!important}
footer .nav-logo img[src*="logo-actaxpros-transparente"]{width:160px!important;height:auto!important}
nav .nav-logo span{display:none!important}
.hero,.hero-section,.hero-banner,#hero{background:linear-gradient(125deg,#0c274d,#203e64)!important;--hero-color:#0c274d!important}
.hero h1,.hero h2,.hero p,.hero a{color:#fff!important}
.btn-primary,.button-primary,.cta-button,.form-submit,.submit-btn,button[type=submit],input[type=submit]{background:#0c274d!important;border-color:#0c274d!important;color:#fff!important}
.btn-secondary,a.btn-secondary,.hero .btn-outline{border:1px solid #cbd4e0!important;color:#f8fbff!important;background:rgba(255,255,255,.13)!important}
.btn-secondary:hover,.hero .btn-outline:hover{background:rgba(255,255,255,.2)!important}
.service-card,.feature-card,.form-card,.form-section,.intake-card{border-color:#d6dce5!important}
input:focus,select:focus,textarea:focus{border-color:#0c274d!important;outline-color:#0c274d!important;box-shadow:0 0 0 2px rgba(12,39,77,.15)!important}
header{background:#0c274d!important;color:#fff!important}
.form-section-title,.form-section-title[style],.progress-current,.progress-total{color:#0c274d!important}
.progress-bar-track{background:#dce4ef!important}
.progress-bar-fill{background:linear-gradient(90deg,#0c274d,#6e819a)!important}
.progress-bar-container{border:1px solid #d5dce8!important}
.req{color:#8a3d49!important}
footer,.site-footer{background:#0c274d!important;color:#e6ebf1!important}
footer p,footer small,footer a:not(.wa-btn),.site-footer p,.site-footer a{color:#e6ebf1!important}
nav .logo-icon{width:145px!important;height:86px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;border:none!important;box-shadow:none!important}
nav .logo-icon img{width:145px!important;height:86px!important;object-fit:contain!important;background:transparent!important;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)!important}
@media(max-width:700px){nav .nav-logo img[src*="logo-actaxpros-transparente"]{width:145px!important;height:90px!important}nav .logo-icon,nav .logo-icon img{width:105px!important;height:64px!important}nav{padding:.65rem 3vw!important}.hero h1{line-height:1.12!important}}

header .header-logo img[src*="logo-actaxpros-transparente"]{background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important;border-radius:0!important;object-fit:contain!important;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)!important}

/* Ajuste solicitado: encabezado que no cubre el contenido al desplazarse */
nav,.navbar,.site-header,.header-nav{position:static!important;top:auto!important}
/* En la portada, reubicar el lema existente como cierre real del pie sin duplicarlo */
footer:has(>.footer-top){display:flex!important;flex-direction:column!important}
footer:has(>.footer-top)>div:nth-child(2){order:10!important;margin-top:1.5rem!important;padding:1.25rem 1rem!important;border-top:1px solid rgba(255,255,255,.22)!important}
footer:has(>.footer-top)>div:nth-child(2) p{color:#fff!important;font-size:1.28rem!important;opacity:1!important}

/* Logo suficiente: quitar el nombre duplicado solo a su derecha en el footer */
footer .footer-brand > a.nav-logo > span{display:none!important}
footer .footer-brand > a.nav-logo{gap:0!important}

/* El logotipo completo sustituye el nombre repetido en formularios y subpáginas */
header a.header-logo > span,nav a.nav-logo > span,footer .footer-brand > a.nav-logo > span{display:none!important}

/* Unificacion de franjas CTA: azul marino oficial en servicios y subpaginas */
.lp-cta-box{background:#0c274d!important;color:#fff!important}
.lp-cta-box h2,.lp-cta-box p{color:#fff!important}
.lp-cta-box p:last-child{color:#d1d8e4!important}

/* Remates navy en inicio, CTA, navegación y formularios */
.announce-bar,.trust-bar,#por-que,.mobile-menu{background:#0c274d!important}
a[href="/intakes/"][style*="background:#4a6fd4"],div[style*="background:#003087"]{background:#0c274d!important}
form button.submit-btn,button.btn-submit,.cta-nav{background:#0c274d!important;border-color:#0c274d!important;color:#fff!important}
.logo-icon{background:transparent!important}
/* Evita desbordamiento del consentimiento en pantallas pequeñas */
.cb-item>span{min-width:0!important;overflow-wrap:anywhere!important}

/* Landing: fondo oscuro legible, logotipo horizontal completo sin cuadro ni repeticion */
body:has(.profile-logo){background:#0c274d!important;color:#f4f7fc!important}
body:has(.profile-logo) .profile-logo{width:min(260px,76vw)!important;height:auto!important;max-height:none!important;object-fit:contain!important;border:0!important;border-radius:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)!important}
body:has(.profile-logo) .profile-name{display:none!important}
/* Enlaces: reemplazar degradado azul anterior en la franja de contacto */
.contact-section{background:#0c274d!important}
/* Legibilidad de botones blancos en el encabezado */
nav a.nav-cta,header a.nav-cta,a.nav-cta{color:#0c274d!important}

/* Lema de marca: una unica aparicion al final de cada pagina (24 vistas) */
.hero-content > div[style*="border-left:3px"]:has(> span[style*="Playfair Display"]),
.why-cta-box > p[style*="Playfair Display"],
.lp-cta-box > p[style*="Playfair Display"]{display:none!important}
footer:not(:has(.footer-quote)):not(:has(p[style*="Playfair Display"]))::after{content:"Tu futuro empieza aquí";display:block;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:1.12rem;letter-spacing:.025em;color:#f4f7fc;background:#0c274d;padding:1.1rem 1rem 1.25rem;margin-top:1rem;border-top:1px solid rgba(205,215,229,.3)}
body:not(:has(footer))::after{content:"Tu futuro empieza aquí";display:block;position:relative;clear:both;text-align:center;font-family:Georgia,serif;font-style:italic;font-size:1.12rem;letter-spacing:.025em;color:#f4f7fc;background:#0c274d;padding:1.25rem 1rem;margin-top:2rem;border-top:1px solid rgba(205,215,229,.35)}

/* Ajustes moviles de revision: anuncio compacto y logo de citas contenido */
@media(max-width:700px){
.announce-bar{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:.2rem .65rem!important;padding:.45rem .65rem!important;min-height:0!important;height:auto!important;line-height:1.25!important}
.announce-bar > span:not(:first-child):not(:last-child){display:none!important}
.announce-bar > span:first-child,.announce-bar > span:last-child{display:inline-block!important;font-size:.72rem!important;text-align:center!important}
nav .nav-logo:has(.logo-icon) img[src*="logo-actaxpros-transparente"]{width:100px!important;height:60px!important;max-width:100px!important}
}


/* AC TAXPROS | Propuesta privada 2026-10-20. NO PUBLICADA.
   Añadir DESPUES de tema-2026.css una vez aprobada y verificada. */

/* Encabezado de plata clara y logo original sin bandas decorativas. */
nav, .navbar, .site-header, .header-nav {
  background: #F2F4F7 !important;
  border: 0 !important;
  box-shadow: 0 2px 12px rgba(0, 32, 96, .08) !important;
  background-image: none !important;
}
nav::before, nav::after, .navbar::before, .navbar::after {
  background-image: none !important;
}
nav a:not(.nav-cta), .nav-links a:not(.nav-cta),
.nav-menu a:not(.nav-cta) { color: #002060 !important; }
nav a:not(.nav-cta):hover, .nav-links a:not(.nav-cta):hover {
  color: #0055A5 !important;
}
nav .nav-cta, nav a.nav-cta, header a.nav-cta {
  background: #002060 !important;
  color: #fff !important;
  border-color: #002060 !important;
}
nav .nav-logo, nav .logo-icon, header .header-logo {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
}
nav .nav-logo img[src*="logo-actaxpros-transparente"],
nav .logo-icon img,
header .header-logo img[src*="logo-actaxpros-transparente"] {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  object-fit: contain !important;
  /* Contorno sutil navy: mejora la lectura del logo plateado. */
  filter: drop-shadow(0 0 1px rgba(0,32,96,.95))
          drop-shadow(0 1px 1px rgba(0,32,96,.55)) !important;
}
nav .hamburger span { background: #002060 !important; }

/* Chat móvil: cabecera y cierre siempre disponibles. */
#actx-head { flex-shrink: 0 !important; }
#actx-x {
  min-width: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 10px !important;
  opacity: 1 !important;
  touch-action: manipulation;
}
#actx-x:focus-visible { outline: 3px solid #fff !important; outline-offset: -3px; }
#actx-msgs { min-height: 0 !important; overflow-y: auto !important; overscroll-behavior: contain; }
@media (max-width: 700px) {
  #actx-panel {
    top: max(8px, env(safe-area-inset-top)) !important;
    right: 8px !important;
    bottom: max(8px, env(safe-area-inset-bottom)) !important;
    left: 8px !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    border-radius: 14px !important;
  }
  #actx-head { padding: 10px 12px !important; }
  #actx-btn { bottom: max(16px, env(safe-area-inset-bottom)) !important; }
}
/* Pendiente: verificar Safari/Android con teclado virtual y 320px. */


/* AC TAXPROS | Footer unificado navy/plata | 2026-10-20 */
footer, .site-footer {
  background: #002060 !important;
  color: #e9eef7 !important;
  border-top: 3px solid #bbc5d2 !important;
}
footer .footer-top {
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 58px 32px 42px !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 1.15fr) minmax(190px, .85fr) minmax(250px, 1fr) !important;
  gap: clamp(28px, 5vw, 74px) !important;
  align-items: start !important;
}
footer .footer-brand .nav-logo {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
footer .footer-brand .nav-logo > span { display: none !important; }
footer .footer-brand .nav-logo img,
footer .footer-brand .nav-logo img[src*="logo-actaxpros-transparente"] {
  width: 205px !important;
  max-width: 100% !important;
  height: auto !important;
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  filter: drop-shadow(0 1px 1px rgba(255,255,255,.25)) !important;
}
footer .footer-brand > p {
  max-width: 360px !important;
  margin: 0 !important;
  color: #d9e1ed !important;
  font-size: .96rem !important;
  line-height: 1.75 !important;
}
footer .footer-col h4 {
  margin: 8px 0 20px !important;
  padding: 0 0 12px !important;
  color: #f2f4f7 !important;
  border-bottom: 1px solid rgba(210,221,236,.28) !important;
  font-size: .88rem !important;
  font-weight: 750 !important;
  letter-spacing: .13em !important;
  text-transform: uppercase !important;
}
footer .footer-col ul { padding: 0 !important; margin: 0 !important; list-style: none !important; }
footer .footer-col li { margin: 0 0 13px !important; line-height: 1.6 !important; overflow-wrap: anywhere !important; }
footer .footer-col a, footer .footer-col span { color: #dfe6f0 !important; text-decoration: none !important; }
footer .footer-col a:hover, footer .footer-col a:focus-visible { color: #fff !important; text-decoration: underline !important; text-underline-offset: 4px; }
footer .footer-col li:has(a[href="mailto:info@actaxpros.com"]) { display: none !important; }
footer .footer-col li[style*="font-size"] { margin-top: 18px !important; padding-top: 12px !important; border-top: 1px solid rgba(220,230,245,.17) !important; font-size: .78rem !important; }
footer .footer-social { gap: 12px !important; margin-top: 24px !important; }
footer .footer-social a { width: 42px !important; height: 42px !important; background: rgba(242,244,247,.13) !important; border: 1px solid rgba(242,244,247,.2) !important; transition: background .2s ease, transform .2s ease; }
footer .footer-social a:hover { background: rgba(242,244,247,.26) !important; transform: translateY(-2px); }
footer > div[style*="text-align:center"][style*="padding:1.5rem"] { display: none !important; }
footer > div[style*="background:rgba(0,0,0,0.2)"] { background: rgba(0,11,33,.25) !important; padding: 17px 5vw !important; }
footer > div[style*="background:rgba(0,0,0,0.2)"] p { max-width: 980px !important; line-height: 1.65 !important; font-size: .74rem !important; color: #c8d2df !important; }
footer .footer-bottom { border-top: 1px solid rgba(220,230,245,.16) !important; padding: 18px 5vw !important; max-width: 1240px !important; margin: 0 auto !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 16px !important; }
footer .footer-bottom p { margin: 0 !important; font-size: .78rem !important; color: #cbd5e1 !important; }
footer > p[style*="margin-top"] { margin: 0 !important; padding: 15px 5vw 24px !important; text-align: center !important; background: #001a4d !important; font-size: .79rem !important; }
footer > p[style*="margin-top"] a { color: #e9eef7 !important; text-decoration: underline !important; text-underline-offset: 3px; }
@media (max-width: 900px) {
  footer .footer-top { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 34px !important; }
  footer .footer-brand { grid-column: 1 / -1 !important; }
  footer .footer-brand > p { max-width: 590px !important; }
}
@media (max-width: 560px) {
  footer .footer-top { grid-template-columns: minmax(0, 1fr) !important; gap: 25px !important; padding: 38px 24px 26px !important; }
  footer .footer-brand { grid-column: auto !important; }
  footer .footer-brand .nav-logo img { width: 190px !important; }
  footer .footer-col h4 { margin-bottom: 15px !important; }
  footer .footer-bottom { display: block !important; text-align: center !important; }
  footer .footer-bottom p + p { margin-top: 8px !important; }
}

/* Footer: base plata para preservar contraste del logo original. */
footer .footer-brand .nav-logo {
  background: #F2F4F7 !important;
  padding: 14px 24px !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.14) !important;
}
footer .footer-brand .nav-logo img,
footer .footer-brand .nav-logo img[src*="logo-actaxpros-transparente"] {
  filter: drop-shadow(0 1px 1px rgba(0,32,96,.18)) !important;
}
