:root{--puerto:#0D47A1;--espuma:#F7FBFF;--coral:#E5725A;--tinta:#10243A}
*{box-sizing:border-box}
body{margin:0;background:var(--espuma);color:var(--tinta);font-family:Figtree,sans-serif;font-size:1.05rem;line-height:1.5;padding-bottom:128px}
img{max-width:100%;height:auto}
h1,h2,.hoy b,.item b{font-family:"Bricolage Grotesque",sans-serif;font-weight:700;letter-spacing:-.03em}
h1{font-size:clamp(2.8rem,6vw,4.8rem);line-height:.95;margin:0 0 12px}
h2{font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 8px}
a{color:var(--puerto)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.contenedor{width:min(1120px,calc(100% - 40px));margin-inline:auto}
.pizarra{background:var(--puerto);color:var(--espuma);padding:36px 0 40px}
.pizarra h1,.pizarra a{color:var(--espuma)}
.pizarra p{margin:0}
.hoy{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;list-style:none;margin:28px 0 16px;padding:0}
.hoy li{border-top:4px solid var(--coral);padding-top:8px}
.hoy b{display:block;font-size:clamp(2rem,4vw,3.3rem);line-height:1;margin-top:4px}
.franja{margin:0;position:relative}
.franja img{width:100%;height:320px;object-fit:cover;display:block}
.franja figcaption{position:absolute;left:0;right:0;bottom:14px;margin:0}
.franja figcaption span{background:var(--espuma);color:var(--tinta);display:inline-block;padding:6px 10px}
.cobertura{background:var(--coral);color:var(--tinta);padding:14px 0}
.cobertura p{margin:0;font-weight:700}
.pasos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;list-style:none;margin:8px 0 0;padding:0;counter-reset:paso}
.pasos li{border-top:6px solid var(--coral);padding-top:10px}
.pasos li::before{counter-increment:paso;content:counter(paso);display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:2rem;color:var(--puerto);line-height:1}
.seccion{padding:28px 0}
.dueno img,.prosa img,.nota img{width:100%;display:block;margin-top:14px;max-height:360px;object-fit:cover}
.dudas{display:grid;grid-template-columns:1fr 1fr;gap:16px}
details{border-top:2px solid var(--puerto);padding:8px 0}
summary{cursor:pointer;font-weight:700}
.banda{background:var(--puerto);color:var(--espuma);padding:28px 0 22px}
.banda h1{color:var(--espuma);font-size:clamp(2.2rem,4vw,3.4rem)}
.prosa{max-width:42rem;padding-bottom:12px}
.lista{list-style:none;margin:0;padding:0}
.item{display:grid;grid-template-columns:88px 1fr auto;gap:14px;align-items:center;border-bottom:1px solid var(--puerto);padding:12px 0}
.item img{width:88px;height:88px;object-fit:cover}
.item b{font-size:1.8rem;color:var(--puerto)}
.nota{margin:0 0 28px}
.btn{display:inline-block;background:var(--puerto);color:var(--espuma);text-decoration:none;font-weight:700;padding:10px 14px;border:0;font:inherit;cursor:pointer}
.nota-pie{font-size:.95rem}
.filtros{display:flex;flex-wrap:wrap;gap:12px;margin:8px 0 12px}
.filtros label,.forma label{font-weight:700;flex:1;min-width:180px}
input,select,textarea{display:block;width:100%;margin-top:4px;font:inherit;padding:8px 10px;border:1px solid var(--puerto);background:#fff;color:var(--tinta)}
.forma{display:grid;gap:12px;max-width:34rem}
.galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.galeria figure{margin:0}
.galeria img{width:100%;height:200px;object-fit:cover;cursor:zoom-in}
figcaption{font-size:.9rem}
.pie{background:var(--espuma);border-top:6px solid var(--puerto);padding:22px 0 8px}
.pie-rejilla{display:grid;gap:12px}
.redes{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.redes a{display:inline-flex;align-items:center;gap:4px}
.link-cookies{justify-self:start;text-align:left;background:none;border:0;padding:0;color:var(--puerto);text-decoration:underline;font:inherit;cursor:pointer}
.muelle{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"marca links tel";align-items:center;gap:8px 16px;background:var(--puerto);color:var(--espuma);border-top:6px solid var(--coral);padding:10px 18px}
.marca{grid-area:marca;display:inline-flex;align-items:center;gap:8px;color:var(--espuma);text-decoration:none;font-family:"Bricolage Grotesque",sans-serif;font-weight:700}
.muelle-enlaces{grid-area:links;display:flex;flex-wrap:wrap;justify-content:center;gap:4px}
.muelle-enlaces a{color:var(--espuma);text-decoration:none;font-weight:600;padding:6px 8px}
.muelle-enlaces a[aria-current="page"]{background:var(--coral);color:var(--tinta)}
.muelle-tel{grid-area:tel;color:var(--espuma);text-decoration:none;font-weight:700}
.hamburguesa{display:none;grid-area:menu;font:inherit;font-weight:700;background:var(--coral);color:var(--tinta);border:0;padding:8px 12px;cursor:pointer}
.flotantes{position:fixed;right:16px;bottom:118px;z-index:35;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.flo{display:inline-flex;align-items:center;gap:6px;text-decoration:none;font-weight:700;padding:8px 10px;border:0;cursor:pointer;font:inherit}
.flo-tel{background:var(--puerto);color:var(--espuma)}
.flo-tel svg{width:18px;height:18px}
.flo-wa{background:#fff;border:2px solid #25D366;color:var(--tinta)}
.flo-chat{background:var(--coral);color:var(--tinta)}
.chat{position:fixed;right:16px;bottom:250px;z-index:36;width:min(320px,calc(100% - 32px));background:var(--espuma);border:2px solid var(--puerto);padding:12px}
.chat[hidden]{display:none !important}
.cookies{position:fixed;left:16px;bottom:118px;z-index:45;display:flex;flex-wrap:wrap;gap:10px;align-items:center;width:min(640px,calc(100% - 200px));background:var(--espuma);color:var(--tinta);border:2px solid var(--puerto);padding:12px 14px}
.cookies[hidden]{display:none !important}
.cookies p{margin:0;flex:1;min-width:180px}
.ck-si,.ck-no{font:inherit;font-weight:700;padding:8px 12px;cursor:pointer}
.ck-si{background:var(--puerto);color:var(--espuma);border:0}
.ck-no{background:#fff;color:var(--tinta);border:2px solid var(--puerto)}
dialog{border:0;padding:0;max-width:min(920px,94vw)}
dialog img{width:100%;height:auto;display:block}
dialog button{margin:8px;font:inherit}
@media (max-width:860px){
  .hoy,.pasos,.dudas,.galeria{grid-template-columns:1fr 1fr}
  .muelle{grid-template-columns:1fr auto auto;grid-template-areas:"marca tel menu" "links links links";padding:8px 12px}
  .hamburguesa{display:inline-flex}
  .muelle-enlaces{display:none;flex-direction:column;align-items:flex-start;padding:8px 0}
  .muelle.abierto .muelle-enlaces{display:flex}
  .cookies{width:calc(100% - 32px);bottom:168px}
  .flotantes{bottom:168px}
}
@media (max-width:560px){
  .hoy,.galeria{grid-template-columns:1fr 1fr}
  .pasos,.dudas{grid-template-columns:1fr}
  .item{grid-template-columns:64px 1fr}
  .item b{grid-column:2}
}
