/* Pie de todo el sitio. Claro, sobre el fondo de marca: una isla blanca como la del menú, con el logo a color y un módulo real, y debajo el mapa de enlaces. */
.ps{position:relative;background:var(--niebla);color:var(--gris);padding-block:clamp(40px,5vw,72px) 22px;font-size:15.5px;line-height:1.42;overflow:hidden}
.ps .caja{position:relative}
.ps-senal{position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--azul-tinta),var(--azul));overflow:hidden}
.ps-senal::after{content:"";position:absolute;top:0;left:0;width:18%;height:3px;background:linear-gradient(90deg,transparent,var(--naranja),transparent);animation:ps-corre 8s cubic-bezier(.45,.05,.55,.95) infinite}
@keyframes ps-corre{from{transform:translateX(-100%)}to{transform:translateX(660%)}}

.ps-isla{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,230px);align-items:center;gap:clamp(20px,3.4vw,52px);padding:clamp(20px,2.4vw,30px) clamp(20px,2.8vw,36px);border-radius:clamp(24px,2.4vw,32px);background:var(--blanco);box-shadow:0 0 0 1px rgba(5,101,176,.08),0 30px 60px -44px rgba(5,101,176,.5)}
.ps-marca img{height:58px;width:auto}
.ps-marca p{margin:12px 0 0;max-width:44ch;font-size:16px;line-height:1.45}
.ps-cta{display:grid;justify-items:start;gap:10px}
.ps-cta b{font-family:var(--titulo);font-weight:700;font-size:16.5px;letter-spacing:-.01em;color:var(--negro)}
.ps-pieza{width:100%;height:auto;margin-block:-8px;filter:drop-shadow(0 18px 16px rgba(5,60,110,.28));transition:transform .9s var(--resorte)}
.ps-isla:hover .ps-pieza{transform:translateY(-4px) rotate(-1deg)}

.ps-cols{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr) minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,3.4vw,52px);padding-block:clamp(32px,4vw,52px) clamp(28px,3.4vw,44px)}
.ps h2{font-family:var(--titulo);font-size:15.5px;font-weight:800;letter-spacing:-.005em;line-height:1.25;color:var(--azul-tinta);margin:0 0 12px}
.ps .ps-h2-b{margin-top:24px}
.ps-cols ul{display:grid;gap:7px}
.ps-marcas ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
.ps a{color:inherit;text-decoration:none}
.ps-cols nav a{display:inline-block;color:var(--negro);transition:color .3s var(--resorte),transform .5s var(--resorte)}
.ps-cols nav a:hover{color:var(--azul-tinta);transform:translateX(3px)}
.ps-contacto>ul{gap:9px}
.ps-contacto li{display:grid;gap:0}
.ps-contacto small{font-size:13.5px;color:var(--gris)}
.ps-contacto>ul a{color:var(--negro);font-weight:700;overflow-wrap:anywhere;transition:color .3s var(--resorte)}
.ps-contacto>ul a:hover{color:var(--azul-tinta)}
.ps-contacto nav{margin-top:16px;padding-top:14px;border-top:1px solid var(--linea)}

.ps-base{display:flex;flex-wrap:wrap;align-items:center;gap:6px 26px;padding-top:18px;border-top:1px solid var(--linea);font-size:14px;color:var(--gris)}
.ps-base p{margin:0}
.ps-base nav{display:flex;flex-wrap:wrap;gap:4px 22px}
.ps-base a{transition:color .3s var(--resorte)}
.ps-base a:hover{color:var(--azul-tinta)}
.ps-credito{margin-left:auto!important;padding-right:84px}
.ps-credito a{color:var(--negro);font-weight:500}

@media (max-width:1120px){
  .ps-isla{grid-template-columns:minmax(0,1fr) auto}
  .ps-pieza{display:none}
  .ps-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .ps-isla{grid-template-columns:minmax(0,1fr)}
  .ps-cta{width:100%}
  .ps-credito{margin-left:0!important;padding-right:0}
  .ps-base{padding-bottom:64px}
}
@media (max-width:560px){
  .ps-cta .btn{width:100%}
  .ps-marcas,.ps-contacto{grid-column:1/-1}
  .ps-marcas ul{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:10px}
}
@media (pointer:coarse),(max-width:1120px){
  .ps-cols ul{gap:0}
  .ps-cols nav a,.ps-base a,.ps-contacto>ul a{display:inline-flex;align-items:center;min-height:44px}
  .ps-contacto>ul{gap:6px}
}
@media (prefers-reduced-motion:reduce){
  .ps-senal::after{animation:none;opacity:0}
}

/* El botón del pie conserva su letra blanca aunque los enlaces del pie vayan en gris. */
.pie .btn-wa,.pie .btn-wa:hover,footer .btn-wa,footer .btn-wa:hover{color:#fff}
