/* V5 — correcciones de layout y consistencia visual */
:root{--sp-navy:#071626;--sp-navy-2:#10263d;--sp-yellow:#ffc529;--sp-paper:#f3f6f8;--sp-line:#dce4ea}

/* Evita que el navegador deforme o junte elementos en la portada */
.home-hero .hero-copy{z-index:2}
.hero-buttons{display:flex!important;flex-wrap:wrap;align-items:center}
.hero-trust{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:760px!important;width:100%!important;margin-top:34px!important;border-top:1px solid #ffffff35!important;border-bottom:1px solid #ffffff24!important}
.hero-trust span{display:flex!important;align-items:center!important;gap:9px!important;padding:14px 12px!important;border-right:1px solid #ffffff20!important;white-space:nowrap}
.hero-trust span:last-child{border-right:0!important}
.hero-trust b{display:inline-block;color:var(--sp-yellow)!important;font-size:.64rem!important;line-height:1!important}
.hero-trust i{display:inline-block!important;color:#edf3f7!important;font-style:normal!important;font-size:.72rem!important;font-weight:700!important;line-height:1.2!important}

/* Servicios: 4 tarjetas SIEMPRE en una fila en escritorio */
.dark-services{background:linear-gradient(135deg,#061422 0%,#0a1a2c 56%,#102842 100%)!important}
.dark-services .section-head{max-width:1320px!important}
.service-list.compact{max-width:1320px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;border:0!important}
.service-list.compact article{min-width:0!important;min-height:300px!important;border:1px solid #ffffff18!important;background:linear-gradient(145deg,#213a52,#172c42)!important;display:flex!important;flex-direction:column!important;padding:28px 24px!important}
.service-list.compact article:hover{background:linear-gradient(145deg,#294963,#1a344d)!important}
.service-list.compact .service-top{display:flex!important;align-items:flex-start!important;justify-content:space-between!important}
.service-list.compact .service-symbol{display:grid!important;place-items:center!important;width:52px!important;height:52px!important;background:#ffffff0d!important;border:1px solid #ffffff1c!important;color:var(--sp-yellow)!important}
.service-list.compact .service-symbol svg{display:block!important;width:28px!important;height:28px!important;fill:none!important;stroke:var(--sp-yellow)!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.service-list.compact h3{margin:24px 0 10px!important;line-height:1.25!important}
.service-list.compact p{min-height:0!important;margin-bottom:24px!important;line-height:1.55!important}
.service-list.compact .service-wa-link,.service-list.compact article>a{margin-top:auto!important;border-top:1px solid #ffffff18!important;padding-top:16px!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important}

/* Secciones separadas visualmente */
.why{background:#fff!important;border-top:1px solid #edf1f4}
.concept-projects{background:#eef3f6!important;border-top:1px solid #e4eaf0}
.completed-projects{background:#fff!important;border-top:1px solid #e6ebef}
.professionals{background:#eef2f5!important;border-top:1px solid #e0e6eb}
.about-section{background:#fff!important;border-top:1px solid #e7ecef}
.public-section{padding-top:88px!important;padding-bottom:88px!important}
.section-head{max-width:1320px!important;margin-bottom:38px!important}

/* Imagen "por qué elegirnos" */
.why-layout{max-width:1320px!important;grid-template-columns:1.08fr .92fr!important;gap:18px!important}
.why-image{min-height:410px!important;height:100%!important}
.why-image>div{background:linear-gradient(90deg,#071626e8,#07162666,transparent)!important;left:0!important;right:0!important;bottom:0!important;padding:24px 26px!important}

/* Capacidades */
.project-cards{max-width:1320px!important}
.concept-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.concept-grid article{min-width:0!important}
.concept-grid .project-image-wrap img{height:215px!important}
.project-image-wrap span{opacity:1!important;transform:none!important;background:rgba(7,22,38,.88)!important;color:#fff!important;border-left:3px solid var(--sp-yellow)!important}

/* Proyectos reales */
.real-projects{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:1320px!important}
.completed-empty{max-width:1320px!important}

/* Equipo: tres profesionales en una sola fila */
.professional-grid{max-width:1320px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.professional-grid article{min-width:0!important;min-height:270px!important;grid-template-columns:112px minmax(0,1fr)!important;box-shadow:0 10px 26px #0716260b!important}
.professional-photo{min-width:0!important}
.professional-photo b{width:66px!important;height:66px!important;font-size:1.25rem!important}
.professional-grid article>div:last-child{min-width:0!important;padding:22px 20px!important}
.professional-grid p{font-size:.57rem!important;line-height:1.35!important;overflow-wrap:anywhere}
.professional-grid h3{font-size:1.08rem!important;line-height:1.15!important;margin:7px 0!important}
.professional-grid strong{font-size:.67rem!important;line-height:1.35!important}
.professional-grid .specialty{font-size:.62rem!important;line-height:1.4!important;margin-top:7px!important;color:#17618d!important}
.professional-grid span{font-size:.67rem!important;line-height:1.48!important;margin-top:11px!important;overflow-wrap:anywhere}

/* Sobre nosotros: evita que logo/textos queden pegados */
.about{max-width:1320px!important;grid-template-columns:.85fr 1.15fr!important;gap:90px!important}
.about-brand{min-height:360px!important;padding:34px!important;text-align:center!important}
.about-brand>strong,.about-brand>small{display:block!important}
.about-tags{gap:9px!important}

/* Footer: columnas limpias y sin textos montados */
.site-footer{padding:52px max(5vw,32px)!important;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.3fr) minmax(240px,.8fr)!important;gap:54px!important;align-items:start!important}
.footer-brand{min-width:0!important;align-items:flex-start!important}
.footer-brand>div{gap:3px!important}
.footer-brand strong,.footer-brand small,.footer-copy p,.footer-contact span,.footer-contact a{line-height:1.5!important;overflow-wrap:anywhere!important}
.footer-copy nav{display:flex!important;flex-wrap:wrap!important;gap:10px 18px!important}
.footer-copy nav a{display:inline-block!important}
.footer-contact{text-align:left!important;align-items:flex-start!important}

@media(max-width:1150px){
  .service-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .professional-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .real-projects{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .site-footer{grid-template-columns:1fr 1fr!important}
}
@media(max-width:900px){
  .hero-trust{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hero-trust span:nth-child(2){border-right:0!important}
  .why-layout{grid-template-columns:1fr!important}
  .concept-grid{grid-template-columns:1fr 1fr!important}
  .professional-grid{grid-template-columns:1fr!important}
  .site-footer{grid-template-columns:1fr!important;gap:28px!important}
}
@media(max-width:600px){
  .hero-buttons{display:grid!important;grid-template-columns:1fr!important}
  .hero-trust{grid-template-columns:1fr 1fr!important}
  .hero-trust span{white-space:normal!important}
  .service-list.compact{grid-template-columns:1fr!important}
  .concept-grid,.real-projects{grid-template-columns:1fr!important}
  .professional-grid article{grid-template-columns:100px minmax(0,1fr)!important}
  .public-section{padding-top:68px!important;padding-bottom:68px!important}
}
