.guia-costera {max-width:1380px;padding:clamp(12px,2vw,28px) clamp(18px,5vw,76px) 54px}
.entorno-portada {position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;min-height:clamp(365px,49vw,530px);border-radius:24px;background:#253b46}
.entorno-portada::after {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0e1b25bf 0%,#10212a4d 48%,transparent 85%),linear-gradient(0deg,#101d28b8,transparent 69%)}
.entorno-ocaso {position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center 53%}
.relato-portada {padding:clamp(25px,4.5vw,66px);max-width:690px;color:white}
.relato-portada .lugar-destino {color:#ffe6c7;margin-bottom:16px}
.guia-costera .lugar-destino::after {display:none}
.guia-costera .relato-portada h1 {font:500 clamp(56px,6.8vw,100px)/.94 Georgia,serif;letter-spacing:-.052em;color:white;margin-bottom:20px}
.guia-costera .relato-portada p:not(.lugar-destino) {color:white;max-width:47ch;font-size:clamp(16px,1.45vw,20px);line-height:1.45;text-wrap:pretty}
.saltos-entorno {display:flex;gap:clamp(12px,2vw,32px);border-bottom:1px solid #d2dcd9;align-items:center;padding:6px 0}
.saltos-entorno a {display:inline-flex;align-items:center;min-height:44px;color:#124958;font-size:.95rem;font-weight:620}
.saltos-entorno a:last-child {margin-left:auto}
.bloque-paseos,.ruta-ampliada,.guia-costera .entorno-gastro,.guia-costera .entorno-mapa {margin-block:clamp(36px,5vw,76px);scroll-margin-top:16px}
.guia-costera h2 {font-size:clamp(29px,3.6vw,49px);line-height:1.05}
.guia-costera .bajada-costa {max-width:75ch;margin:14px 0 24px;text-wrap:pretty}
.paseos-costa {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2.3vw,32px)}
.paseo {background:white;border:1px solid #d4ded8;border-radius:20px;overflow:hidden}
.guia .paseo figure img {width:100%;height:auto;aspect-ratio:2.15;object-fit:cover;border-radius:0}
.guia .paseo figcaption {font-size:11px;margin:6px 16px 0}
.paseo-texto {padding:clamp(16px,2vw,28px)}
.guia-costera .tiempo-paseo {display:inline-block;margin-bottom:.55rem;background:#e0f0e8;color:#215342;border-radius:30px;padding:4px 12px;font-size:.82rem;font-weight:650}
.guia-costera h3 {font-size:clamp(21px,2.2vw,31px);line-height:1.1;letter-spacing:-.035em}
.paseo h3,.ruta-ampliada h3,.parada-cafe h3 {margin:3px 0 12px}
.guia-costera .nota-santuario {font-size:.85rem;margin:12px 0;color:#4d6267}
.nota-santuario a {text-decoration:underline;text-underline-offset:3px}
.ruta-ampliada,.parada-cafe {padding:clamp(20px,3.5vw,48px);border-radius:22px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:clamp(18px,4vw,62px)}
.ruta-ampliada {background:#e6efeb}
.ruta-ampliada article+article {margin-top:18px;border-top:1px solid #b8c8c1;padding-top:20px}
.ruta-ampliada small,.parada-cafe small {display:block;color:#415d59;font-weight:600;margin-bottom:7px}
.parada-cafe {margin:20px 0 26px;background:#f3e8d8;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.parada-cafe ul {list-style:none;padding:0;margin:0}
.parada-cafe li+li {border-top:1px solid #cebc9f;margin-top:8px;padding-top:14px}
.parada-cafe li strong {display:block;font-size:1.2rem}
.guia-costera .locales article {background:#fff}
.guia-costera .locales article p {margin-top:.55rem}
.guia-costera .lista-mapa {max-height:485px;overflow-y:auto;scrollbar-width:thin}
.lista-mapa small {margin-top:3px}
.lista-mapa li[data-grupo="alojamiento"] {background:#f6e8ce;border-radius:12px;padding:5px 9px}
.guia-costera .lecturas h2 {font-size:clamp(23px,2vw,30px)}
.marca-entorno.pueblo {background:#594f7c}.marca-entorno.cafe {background:#77482d}.marca-entorno.alojamiento {background:#4d3719}
@media(max-width:700px){
  .guia-costera {padding-inline:16px}
  .entorno-portada {min-height:400px;border-radius:18px}
  .relato-portada {padding:24px 19px}
  .entorno-portada::after {background:linear-gradient(0deg,#0b1927e0,#182a366b 64%,transparent)}
  .paseos-costa,.ruta-ampliada,.parada-cafe {grid-template-columns:1fr}
  .guia-costera .lista-mapa {max-height:none;overflow:visible}
}

.fotos-entorno {position:absolute;inset:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.fotos-entorno::-webkit-scrollbar {display:none}
.fotos-entorno img {width:100%;height:100%;flex:0 0 100%;min-width:0;object-fit:cover;object-position:center 53%;scroll-snap-align:start}
.entorno-portada::after {z-index:1;pointer-events:none}
.entorno-portada .relato-portada {position:relative;z-index:2;pointer-events:none;margin-bottom:58px}
.pie-galeria {position:absolute;z-index:3;left:clamp(25px,4.5vw,66px);right:clamp(25px,4.5vw,66px);bottom:17px;color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;font-size:.86rem}
.pie-galeria>div:first-child {background:#102a35d9;border-radius:12px;padding:6px 12px;line-height:1.4}
#credito-galeria:not([hidden]) {display:block;font-size:.73rem}
#credito-galeria a {color:#fff;text-decoration:underline}
.flechas-galeria:not([hidden]) {display:flex;gap:7px}
.flechas-galeria button {display:grid;place-items:center;background:#12313ed9;border:1px solid #ffffffa8;color:#fff;border-radius:50%;width:44px;height:44px;padding:0;font:28px/1 system-ui}
.fotos-entorno:focus-visible {outline:3px solid white;outline-offset:-5px}
@media(max-width:700px){.pie-galeria{left:18px;right:18px;bottom:12px}.entorno-portada .relato-portada{margin-bottom:65px}}
