/* ServiHogar V13: reticula editorial, jerarquia tipografica y contraste cerrado. */
:root{
  --v13-reading:#51677e;
  --v13-footer-copy:#dce9f7;
  --v13-footer-soft:#e6f0fb;
}

/* Ritmo: un eje comun y espacios basados en multiplos de 8. */
body.servihogar-app:not(.is-admin-route) h1,
body.servihogar-app:not(.is-admin-route) h2,
body.servihogar-app:not(.is-admin-route) h3{letter-spacing:-.025em}
body.servihogar-app:not(.is-admin-route) h1{line-height:1.02}
body.servihogar-app:not(.is-admin-route) h2{line-height:1.1}
body.servihogar-app:not(.is-admin-route) p{line-height:1.55}
body.servihogar-app .shell{padding-inline:clamp(20px,4vw,32px)}
body.is-home-page .section{padding-block:clamp(56px,8vw,80px)}

/* Portada y secciones: todos los elementos comienzan en el mismo eje izquierdo. */
body.is-home-page .home-search-heading{max-width:840px;margin-inline:0;text-align:left}
body.is-home-page .home-welcome h1,
body.is-home-page .home-welcome p{margin-inline:0}
body.is-home-page .home-search-primary{margin-inline:0;text-align:left}
body.is-home-page .home-search-trust{justify-content:flex-start}
body.is-home-page .section-heading,
body.is-home-page .steps-section .section-heading.centered{
  position:static;display:flex;align-items:flex-end;justify-content:space-between;text-align:left
}
body.is-home-page .section-heading>div{min-width:0}
body.is-home-page .section-heading .eyebrow{margin-inline:0}
body.is-home-page .section-heading .text-link{position:static;margin-left:auto}
body.is-home-page .section-heading h2{max-width:24ch;font-size:clamp(1.75rem,6.8vw,2.35rem)}
body.is-home-page .professional-grid,
body.is-home-page .category-grid,
body.is-home-page .steps{align-items:stretch}

/* Perfil: identidad a la izquierda; solo las cifras breves se centran. */
@media (max-width:859px){
  body.servihogar-app:not(.is-admin-route) .profile-hero{text-align:left}
  body.servihogar-app:not(.is-admin-route) .profile-intro{flex-direction:row;align-items:center;text-align:left}
  body.servihogar-app:not(.is-admin-route) .profile-intro>div{display:block;width:auto;min-width:0}
  body.servihogar-app:not(.is-admin-route) .profile-location{display:flex;align-items:center;justify-content:flex-start;gap:4px}
  body.servihogar-app:not(.is-admin-route) .identity-disclaimer{
    width:auto;max-width:none;padding:5px 0 5px 10px;border-left:3px solid var(--v11-orange);
    border-radius:0;background:transparent;text-align:left
  }
  body.servihogar-app:not(.is-admin-route) .profile-badges{justify-content:flex-start}
  body.servihogar-app:not(.is-admin-route) .profile-bio{text-align:left}

  body.servihogar-app:not(.is-admin-route) .auth-aside{align-items:flex-start;text-align:left}
  body.servihogar-app:not(.is-admin-route) .auth-aside .brand{align-self:flex-start}
  body.servihogar-app:not(.is-admin-route) .auth-aside-copy{display:block}
  body.servihogar-app:not(.is-admin-route) .auth-aside p{margin-inline:0}

  body.is-home-page .section-heading,
  body.is-home-page .steps-section .section-heading.centered{display:block;text-align:left}
  body.is-home-page .section-heading .text-link{margin-top:8px}
}

/* La navegacion muestra continuidad sin cortar visualmente el contenido. */
@media (max-width:859px){
  .servihogar-app .top-scroll-track{gap:8px;padding-inline:20px;scroll-padding-inline:20px}
  .servihogar-app .top-scroll-nav::before,
  .servihogar-app .top-scroll-nav::after{width:34px}
  .servihogar-app .top-scroll-nav.has-scroll-right::after{opacity:1;background:linear-gradient(270deg,#fffefa 18%,rgba(255,254,250,0))}
  .servihogar-app .top-scroll-nav.has-scroll-left::before{opacity:1;background:linear-gradient(90deg,#fffefa 18%,rgba(255,254,250,0))}
}

/* Contraste cerrado para cada superficie oscura; no depende de la herencia global. */
body.servihogar-app:not(.is-admin-route) .site-footer{color:#fff}
body.servihogar-app:not(.is-admin-route) .site-footer h2,
body.servihogar-app:not(.is-admin-route) .site-footer h3,
body.servihogar-app:not(.is-admin-route) .site-footer strong{color:#fff}
body.servihogar-app:not(.is-admin-route) .site-footer p,
body.servihogar-app:not(.is-admin-route) .site-footer small{color:var(--v13-footer-copy)}
body.servihogar-app:not(.is-admin-route) .site-footer a,
body.servihogar-app:not(.is-admin-route) .site-footer .footer-install{color:#eef6ff}
body.servihogar-app:not(.is-admin-route) .site-footer a:hover,
body.servihogar-app:not(.is-admin-route) .site-footer .footer-install:hover{color:#fff}
body.servihogar-app:not(.is-admin-route) .site-footer .footer-note,
body.servihogar-app:not(.is-admin-route) .site-footer .footer-bottom p{color:var(--v13-footer-soft)}
body.servihogar-app:not(.is-admin-route) .site-footer .brand-footer{
  width:max-content;padding:6px 9px;border-radius:16px;background:#fffefa;box-shadow:0 10px 24px rgba(0,20,49,.18)
}
body.servihogar-app:not(.is-admin-route) .site-footer .brand-logo-footer{width:116px;height:auto}
body.servihogar-app:not(.is-admin-route) .footer-brand>p{max-width:42ch;margin-top:14px}

body.servihogar-app:not(.is-admin-route) .cta-band{color:#fff}
body.servihogar-app:not(.is-admin-route) .cta-band h2{color:#fff}
body.servihogar-app:not(.is-admin-route) .cta-band p{color:#e2edf9}
body.servihogar-app:not(.is-admin-route) .cta-band .eyebrow{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.12);color:#fff}
body.servihogar-app:not(.is-admin-route) .cta-band .button-light{
  border-color:#fff;background:#fff;color:#073b7c;box-shadow:0 12px 28px rgba(1,26,61,.2)
}
body.servihogar-app:not(.is-admin-route) .cta-band .button-light:hover{background:#fff4ec;color:#84350f}

body.servihogar-app:not(.is-admin-route) .account-professional-cta{color:#fff}
body.servihogar-app:not(.is-admin-route) .account-professional-cta h2,
body.servihogar-app:not(.is-admin-route) .account-professional-cta p{color:#fff}
body.servihogar-app:not(.is-admin-route) .account-professional-cta .eyebrow{color:#d9eaff}
body.servihogar-app:not(.is-admin-route) .account-professional-cta .button{border-color:#fff;background:#fff;color:#074a9e}

/* Textos secundarios sobre claro: legibles pero sin competir con el titulo. */
body.servihogar-app:not(.is-admin-route) .professional-card-copy span,
body.servihogar-app:not(.is-admin-route) .professional-card-copy small,
body.servihogar-app:not(.is-admin-route) .card-meta small,
body.servihogar-app:not(.is-admin-route) .request-data-primary dt,
body.servihogar-app:not(.is-admin-route) .section-heading p,
body.servihogar-app:not(.is-admin-route) .page-heading p,
body.servihogar-app:not(.is-admin-route) .dashboard-header p,
body.servihogar-app:not(.is-admin-route) .app-install-dock small,
body.servihogar-app:not(.is-admin-route) .app-install-panel>small{color:var(--v13-reading)}
body.servihogar-app:not(.is-admin-route) .field input::placeholder,
body.servihogar-app:not(.is-admin-route) .field textarea::placeholder{color:#5b6f84;opacity:1}

/* Evita bloques demasiado anchos y mantiene una lectura editorial. */
body.servihogar-app:not(.is-admin-route) .profile-bio,
body.servihogar-app:not(.is-admin-route) .auth-aside-copy p,
body.servihogar-app:not(.is-admin-route) .section-heading p{max-width:62ch}

@media (max-width:479px){
  body.servihogar-app .shell{padding-inline:18px}
  body.servihogar-app:not(.is-admin-route) .profile-intro{gap:12px}
  body.servihogar-app:not(.is-admin-route) .avatar-xlarge{width:84px;height:84px}
  body.is-home-page .section-heading h2{font-size:clamp(1.7rem,8vw,2rem)}
}

@media (prefers-reduced-motion:reduce){
  .servihogar-app .top-scroll-nav::before,
  .servihogar-app .top-scroll-nav::after{transition:none}
}
