/* Hausum - mejoras UX/UI (auditoría nov. 2026). Cargado después de brand-fixes*.css y brand-ux-auto.css.
   Códigos (C1, T1...) = hallazgos del informe "Auditoría UX/UI de hausum.com". Solo colores del Brand Manual. */

/* ---------- T1 · Titulares: Poppins 600 ajustada (Bochan Serif descartada: no transmitía confianza).
   Tipografía objetivo según el muestrario del manual: Graphit (pendiente de licencia). ---------- */
html body :is(h1,h2,.headline,.hm-h1,.hm-h2,.hm-cta-h,.cb-title):not(#_hx){
  font-family:'Poppins',sans-serif !important; font-weight:600 !important;
  letter-spacing:-.02em !important; line-height:1.1 !important}
html body :is(h1,h2,.headline,.hm-h1,.hm-h2,.hm-cta-h,.cb-title):not(#_hx) *{font-family:inherit !important;font-weight:inherit !important}
@media (max-width:600px){html body :is(h1,h2,.headline,.hm-h1,.hm-h2,.hm-cta-h,.cb-title):not(#_hx){letter-spacing:-.015em !important;line-height:1.12 !important}}
/* el eyebrow del hero de /inspeccion/ es un h1 pequeño: se queda en Poppins (ver auto) */

/* ---------- T2 · cuerpo de texto ---------- */
html body{font-size:16px}
html body .entry-content p, html body .entry-content li, html body .single-post-content p, html body article.post p, html body .legal-body p{font-size:17px !important;line-height:1.65 !important}
@media (max-width:600px){html body .entry-content p, html body .entry-content li, html body article.post p{font-size:16px !important}}
/* reseñas de páginas locales en peso 300 (contenido con estilo inline) */
html body .hm-reviews [style*="font-weight:300"], html body .hm-reviews [style*="font-weight: 300"]{font-weight:400 !important}

/* ---------- T3 · suelo de 12 px (refuerzo de lo generado) ---------- */
html body .promo a{font-size:inherit !important}
html body .hm-corona-tag, html body .tf-addon-desc, html body .who .src{font-size:12.5px !important}

/* ---------- T5 · ancho de lectura ---------- */
html body .faq-item .ans, html body .hm-faq-a, html body .body-text p, html body .faq-list .ans, html body .legal-body{max-width:68ch}

/* ---------- T6 · Poppins en el buscador catastral (WPCadastre, parte web) ---------- */
html body .wp-cadastre-container, html body .wp-cadastre-container :where(button, input, select, textarea, p, span, div, label, h2, h3, h4):not([class*="icon"]):not([class*="dashicons"]){font-family:'Poppins',sans-serif !important}

/* ---------- C1 · campos de formulario con borde perceptible (WCAG 1.4.11) ---------- */
html body :is(input[type="text"],input[type="email"],input[type="tel"],input[type="number"],input[type="search"],input[type="url"],input[type="password"],input[type="date"],input:not([type]),select,textarea):not(.faq-search-input):not(.tf-m2-number):not(.wp-cadastre-input-wrapper input){
  background-color:#FFFFFF !important; border:1.5px solid #386892 !important; color:#003E73 !important}
html body :is(input,select,textarea):not([type="range"]):not([type="checkbox"]):not([type="radio"]):hover{border-color:#1E6E9B !important}
html body :is(input,select,textarea):not([type="range"]):not([type="checkbox"]):not([type="radio"]):focus{border-color:#003E73 !important;box-shadow:0 0 0 3px rgba(0,170,255,.45) !important;outline:none}
html body ::placeholder{color:#386892 !important;opacity:1 !important}
/* campos con contenedor propio: el borde va en el contenedor */
html body .faq-search-input-wrap, html body .tf-m2-input-wrap, html body .wp-cadastre-input-wrapper{background:#FFFFFF !important;border:1.5px solid #386892 !important;color:#386892 !important}
html body .faq-search-input-wrap input, html body .tf-m2-input-wrap input, html body .wp-cadastre-input-wrapper input{background:transparent !important;color:#003E73 !important;border:0 !important}
html body .faq-search-input-wrap:focus-within, html body .tf-m2-input-wrap:focus-within, html body .wp-cadastre-input-wrapper:focus-within{border-color:#003E73 !important;box-shadow:0 0 0 3px rgba(0,170,255,.45) !important}
html body input[type="checkbox"], html body input[type="radio"]{accent-color:#1E6E9B;width:18px;height:18px}
html body input[type="range"]{accent-color:#00AAFF}

/* ---------- C2 · insignias y pastillas: fondo sólido de marca ---------- */
html body :is(.tf-card-badge,.tf-no-insp-tag,.ihc-badge,.lsc-badge,.ct-eyebrow-pill,.faq-hero .eyebrow,.hi-req-num,.blog-card .tag){
  background:#1E6E9B !important;color:#FFFFFF !important;border-color:transparent !important;font-size:12px !important;font-weight:600 !important;letter-spacing:.04em !important;backdrop-filter:none !important}
html body :is(.ihc-pill.warn,.lsc-pill.warn){background:#FFF4D6 !important;color:#8A5A00 !important;border-color:transparent !important;font-size:12px !important;font-weight:600 !important}
/* textos claros sobre tarjetas translúcidas en navy */
html body .ct-channel-card :is(.ct-ch-val,.ct-ch-office-lines strong), html body .faq-cat-pill:not(.is-active), html body .faq-cat-pill:not(.is-active) > span{color:#FFFFFF !important}
html body .ct-channel-card.ct-wa-card .ct-ch-val{color:#FFFFFF !important}

/* ---------- C3 · texto navy sobre #00AAFF / #62B3E6 ---------- */
html body .gform_wrapper :is(.gform_button,button[type="submit"],input[type="submit"]){color:#002C51 !important;text-transform:none !important;letter-spacing:0 !important}
html body .tf-mob-tab.active, html body .tf-mob-tab.active *{color:#002C51 !important}
html body .hpi-eyebrow{color:#E6F8F9 !important}

/* ---------- I1 · objetivos táctiles ---------- */
html body .foot-col a{display:inline-block;padding:10px 0;min-height:44px}
html body :is(.foot-col h2,.foot-col .foot-h):not(#_hx){color:#fff;font:700 14px/1.4 'Poppins',sans-serif !important;letter-spacing:.04em !important;margin:0 0 14px;text-transform:uppercase}
html body .foot-bottom a, html body .foot-legal-links a{display:inline-block;padding:10px 4px;min-height:44px}
html body .foot-provinces a{display:inline-flex;align-items:center;min-height:36px;padding:6px 10px;margin:2px}
html body :is(.hsm-local-hub__pill,.hm-agent-summary__pill){min-height:40px;display:inline-flex;align-items:center}
@media (max-width:600px){html body .hsm-carousel-item{min-height:44px}}

/* ---------- I2 · foco visible y "Saltar al contenido" ---------- */
html body :focus-visible{outline:3px solid #00AAFF !important;outline-offset:2px !important}
html body :is(.light,.sec.light,.bg-gris,.hm-sec:not(.bg-azul),.gform_wrapper,.tile,.why-card,.reserva-form-wrap,.ct-form-card) :focus-visible{outline-color:#003E73 !important}
html body .hm-tab-btn:focus-visible, html body .mrb-select:focus-visible, html body .tf-m2-range:focus-visible{outline:3px solid #00AAFF !important;outline-offset:3px !important}
.hausum-skip{position:absolute;left:12px;top:-60px;z-index:1000000;background:#FFFFFF;color:#003E73;font:600 15px/1 'Poppins',sans-serif;padding:14px 18px;border-radius:10px;text-decoration:none;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.hausum-skip:focus{top:12px}
.hausum-sr{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- I3 · campos a 16 px en móvil (evita el zoom de iOS) ---------- */
@media (max-width:768px){html body :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]):not([type="range"]){font-size:16px !important}}

/* ---------- M1 · sin desbordamiento horizontal ---------- */
html body .foot-bottom, html body .foot-legal-links{flex-wrap:wrap !important;row-gap:0 !important}
html body .foot-legal-links{display:flex !important}
html, body{overflow-x:clip}
@media (max-width:420px){
  html body .nav-wrap{gap:8px !important}
  html body .nav-right{gap:6px !important}
  html body .logo-img{height:20px !important}
  html body .lang-btn .chev{display:none}
  html body .lang-btn{padding-left:8px !important;padding-right:8px !important}
}

/* ---------- M2 · barra promocional de una línea en móvil ---------- */
@media (max-width:600px){html body .promo .promo-team{display:none}html body .promo{padding-top:8px !important;padding-bottom:8px !important}}

/* ---------- M3 · el botón del hero entra en la primera pantalla en móvil ---------- */
@media (max-width:600px){
  html body .hero-content{display:flex !important;flex-direction:column}
  html body .hero-content > *{order:5}
  html body .hero-content > .eyebrow{order:0}
  html body .hero-content > :is(h1,.headline){order:1}
  html body .hero-content > :is(.lede,.sub){order:2}
  html body .hero-content > .hero-actions{order:3;margin-top:4px}
  html body .hero-content > .rating{order:4}
  html body .hero-content > .lede{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
}

/* ---------- Ajustes tras la simulación ---------- */
/* C3 · botón de envío de formularios: primario sólido (#00AAFF + navy oscuro, 5,5:1) */
html body :is(#hausum-ux,.gform_wrapper) :is(.gform_footer,.gform_page_footer) :is(button,input[type="submit"]).gform_button,
html body :is(#hausum-ux,.gform_wrapper) :is(.gform_footer,.gform_page_footer) :is(button[type="submit"],input[type="submit"]){background:#00AAFF !important;background-image:none !important;color:#002C51 !important;text-transform:none !important;letter-spacing:0 !important}
html body :is(#hausum-ux,.gform_wrapper) .gform_footer :is(button,input[type="submit"]):hover{background:#62B3E6 !important}
/* C1/I3 · reserva: reglas propias más específicas */
html body :is(#hausum-ux,.gform_wrapper):not(#_hx1):not(#_hx2) :is(input.large,input.iti__tel-input,input[type="email"],input[type="tel"],input[type="text"],input[type="url"],input[type="number"],select,textarea){background-color:#FFFFFF !important;border:1.5px solid #386892 !important;color:#003E73 !important}
@media (max-width:768px){html body :is(#hausum-ux,.gform_wrapper):not(#_hx1):not(#_hx2) :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]){font-size:16px !important}
  html body .hm-calc input, html body .tf-slider-container input{font-size:16px !important}}
html body .tf-m2-unit{color:#386892 !important}
/* C2 · restos translúcidos */
html body .ct-channel-card .ct-ch-meta span{color:#E6F8F9 !important}
html body :is(#hausum-ux,nav.faq-cat-nav) button.faq-cat-pill:not(.is-active), html body :is(#hausum-ux,nav.faq-cat-nav) button.faq-cat-pill:not(.is-active) span{color:#FFFFFF !important;background-color:rgba(255,255,255,.08) !important}
html body .hi-buyer-pill a{color:#FFFFFF !important}
html body .ihc-pill.ok, html body .lsc-pill.ok{background:#E6F4EA !important;color:#1E6E3C !important;border-color:transparent !important;font-weight:600 !important}
/* T2 · interlineado de párrafos de tarjeta */
html body :is(.cert-card,.svc-card,.benefit-grid .card,.hi-req-card,.hi-tool-card) > p{line-height:1.55 !important}
html body .sec-head .sub, html body .center-sub{line-height:1.55 !important}
/* T2/T3 · contenido de páginas locales con estilos inline */
html body .hm-sec [style*="font-weight:300"], html body .hm-sec [style*="font-weight: 300"]{font-weight:400 !important}
html body .hm-sec :is([style*="font-size:12px"],[style*="font-size: 12px"],[style*="font-size:11px"],[style*="font-size: 11px"]){font-size:13px !important}
html body .hm-sec :is([style*="font-size:15px"],[style*="font-size: 15px"]){font-size:16px !important;line-height:1.6 !important}
/* I1 · objetivos táctiles restantes */
html body .nav .logo{display:inline-flex;align-items:center;min-height:44px}
html body .promo a{display:inline-block;padding:3px 2px}
html body :is(.blog-card-link,.blog-cta-sublink){display:inline-block;padding:6px 0}
/* Retoques finales */
html body .hero-content h1.eyebrow:not(#_hx){font-size:13px !important;font-family:'Poppins',sans-serif !important;font-weight:600 !important;line-height:1.4 !important}
html body div.who div.src{font-size:12.5px !important}
html body .foot-brand .logo, html body .ct-cta-secondary{display:inline-flex;align-items:center;min-height:44px}
html body .faq-item .ans a{display:inline-block;padding:4px 0}
/* T6 · WPCadastre: todas las piezas del buscador en Poppins (excepto iconos) */
html body :is([class*="wp-cadastre"],[class*="wpc-"]):not([class*="icon"]):not(#_hx),
html body :is([class*="wp-cadastre"],[class*="wpc-"]) :is(span,div,p,button,label,strong,small,input,select,a):not([class*="icon"]):not(#_hx){font-family:'Poppins',sans-serif !important}
