/* ============================================================
   CDM Alquileres — hoja de estilos v2
   Basada en el diseño de Figma (sep 2026)
   Canela Deck (títulos) · Canela Light Italic (citas) · Inter (textos)
   ============================================================ */

@font-face{font-family:'Canela Deck';src:url('../fonts/CanelaDeck-Regular.otf') format('opentype');font-weight:300 500;font-style:normal;font-display:swap}
@font-face{font-family:'Canela';src:url('../fonts/Canela-LightItalic.ttf') format('truetype');font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:'Canela';src:url('../fonts/Canela-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url('../fonts/inter-var.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --bg:#F6F2EA;        /* crema general (más cálida: antes #F6F2EA tiraba a verdoso en pantallas no-Mac) */
  --beige:#EAE4D8;     /* bloques Pinamar y Reservá */
  --white:#FFFCF6;     /* bloques Complejos y Quiénes somos */
  --ink:#2B2926;       /* texto fuerte (labels hero, nav sobre claro) */
  --body:#55504A;      /* texto corrido */
  --title:#6F675E;     /* títulos Canela y eyebrows */
  --loc:#8E877D;       /* ubicaciones, citas de reseñas */
  --green:#3D4A3E;     /* bloque Experiencias */
  --taupe:#6F665D;     /* botón pill */
  --line:#D9D1C3;

  --pad:clamp(1.25rem,4.7vw,4.25rem);
  --sec:clamp(4.375rem,10vw,9.375rem);
  --max:90rem;

  --serif:'Canela Deck',Georgia,serif;
  --sans:'Inter',system-ui,sans-serif;
}

/* pantallas más anchas que el diseño base: el contenido ocupa todo el ancho, con el mismo margen proporcional que en notebook */
@media (min-width:1441px){:root{--max:100vw;--pad:4.7vw}}

*,*::before,*::after{box-sizing:border-box}
/* Base de todo el sitio: 16px hasta 1440px de ancho; de ahí crece suave hasta 21px a 2560 (iMac 27").
   El ANCHO, en cambio, se usa completo en pantallas grandes (ver --max/--pad más abajo): margen lateral proporcional (4.7%), sin columna central. */
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px;font-size:clamp(16px, calc(16px + (100vw - 1440px) * .0045), 21px)}
body{
  margin:0;background:var(--bg);color:var(--body);
  font-family:var(--sans);font-weight:400;
  font-size:clamp(.9062rem,1.05vw,.9688rem);line-height:1.75;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
/* sin el destello azul del navegador al tocar un link o botón en celular */
a,button,[data-gal]{-webkit-tap-highlight-color:transparent}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:.002em}
p{margin:0 0 1.2em}
p:last-child{margin-bottom:0}
b,strong{font-weight:600}

.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--pad)}
.sec{padding-block:var(--sec)}

/* ---------- tipografía ---------- */
.t-hero{font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.65rem);line-height:1.14;color:#fff}
.t-big{font-family:var(--serif);font-size:clamp(1.85rem,3.05vw,2.75rem);line-height:1.28;color:var(--title)}
.t-card{font-family:var(--serif);font-size:clamp(1.5rem,2.1vw,1.95rem);line-height:1.2;color:var(--title)}
.lead{font-size:clamp(.98rem,1.15vw,1.08rem);line-height:1.7;color:var(--body)}
.eyebrow{
  font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--title);font-weight:500;display:block;line-height:1.5;
}
em{font-style:italic}

/* ---------- links y botones ---------- */
/* Los botones van "encerrados": borde o fondo propio, sombra suave y cambio de color al pasar el mouse */
.link-arrow{
  display:inline-flex;align-items:center;gap:.6em;
  font-family:var(--sans);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;
  font-weight:500;color:var(--ink);line-height:1;
  padding:.6875rem 1.25rem;border-radius:62.4375rem;border:1px solid rgba(43,41,38,.32);background:transparent;
  transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease,box-shadow .35s ease;
}
.link-arrow:hover,.card:hover .link-arrow{
  background:var(--ink);border-color:var(--ink);color:var(--white);
  transform:translateY(-2px);box-shadow:0 .5rem 1.25rem rgba(43,41,38,.16);
}

/* hero: una sola píldora clara con texto y flecha */
.link-circ{
  display:inline-flex;align-items:center;gap:.8em;
  font-family:var(--sans);font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;
  font-weight:500;color:var(--ink);line-height:1;
  padding:.875rem 1.375rem;border-radius:62.4375rem;background:rgba(251,248,242,.94);
  box-shadow:0 .375rem 1.375rem rgba(43,41,38,.14);
  transition:background .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease;
}
.link-circ .circ{font-size:.9rem;letter-spacing:0;line-height:1;transition:transform .35s ease}
.link-circ:hover{background:var(--ink);color:var(--white);transform:translateY(-2px);box-shadow:0 .75rem 1.875rem rgba(43,41,38,.24)}
.link-circ:hover .circ{transform:translateX(.25rem)}

/* llamado principal: píldora blanca con flecha y sombra (igual a los botones del hero) */
.btn-pill{
  display:inline-flex;align-items:center;gap:.8em;font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;
  text-transform:uppercase;font-weight:500;color:var(--ink);background:var(--white);
  padding:1rem 1.875rem;border-radius:62.4375rem;border:0;cursor:pointer;line-height:1;
  box-shadow:0 .5rem 1.5rem rgba(43,41,38,.13);
  transition:background .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease;
}
.btn-pill::after{content:'→';font-size:.9rem;letter-spacing:0;transition:transform .35s ease}
.btn-pill:hover{background:var(--ink);color:var(--white);transform:translateY(-2px);box-shadow:0 .875rem 1.875rem rgba(43,41,38,.24)}
.btn-pill:hover::after{transform:translateX(.25rem)}

/* compat páginas internas */
.btn{display:inline-block;font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;
  padding:.9375rem 2rem;border-radius:62.4375rem;border:1px solid transparent;cursor:pointer;transition:background .35s,color .35s,border-color .35s}
.btn-solid{background:var(--taupe);color:var(--white)}
.btn-solid:hover{background:var(--ink)}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--bg)}
.btn-light{border-color:rgba(255,255,255,.75);color:#fff}
.btn-light:hover{background:#fff;color:var(--ink)}

/* ---------- nav ---------- */
.nav{
  position:fixed;inset:0 0 auto 0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  /* comparte el eje del contenido centrado: en pantallas anchas suma el gutter
     (100% y no 100vw, para que no lo desfasee la barra de scroll) */
  padding:1.625rem calc(var(--pad) + max(0px,(100% - var(--max)) / 2));
  transition:background .45s ease,padding .45s ease,box-shadow .45s;
}
.nav.solid{background:var(--bg);box-shadow:0 1px 0 var(--line);padding-block:.875rem}
.nav a{font-family:var(--sans);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
.nav-logo{display:flex;align-items:center;gap:1.375rem}
.nav-logo img{width:5.25rem;height:5.25rem;transition:filter .45s,width .45s,height .45s}
.nav.solid .nav-logo img{width:2.75rem;height:2.75rem}
.nav-logo span{font-family:var(--serif);font-size:1.22rem;letter-spacing:.02em;text-transform:none;font-weight:400}
.nav-links{display:flex;align-items:center;gap:clamp(1.25rem,3vw,3.25rem)}
.nav-links a{position:relative;padding-bottom:.1875rem}
.nav-links a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:currentColor;transition:width .35s ease}
.nav-links a:hover::after{width:100%}
.nav.over{color:#fff}
.nav.over .nav-logo img{filter:brightness(0) invert(1)}
.nav-toggle{display:none;background:none;border:0;color:inherit;font-size:.72rem;
  letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:.375rem 0;font-family:var(--sans);font-weight:500}

/* ---------- hero ---------- */
.hero{position:relative;height:100vh;height:100svh;min-height:38.75rem;overflow:hidden} /* vh primero: navegadores que no conocen svh */
.hero-media{position:absolute;inset:0}
.hero-media picture{display:contents}
.hero-card{display:contents} /* en desktop no existe: título y bajada van sueltos sobre la foto */
.m-only{display:none}
.card:active .card-frame{border-color:#B9AF9F}
/* entrada con impacto (zoom out) y después respiración continua, sin corte */
.hero-media img{width:100%;height:100%;object-fit:cover;
  animation:heroIn 7s cubic-bezier(.2,.6,.2,1) both,
            heroBreathe 16s ease-in-out 7s infinite alternate}
@keyframes heroIn{from{transform:scale(1.07)}to{transform:scale(1)}}
@keyframes heroBreathe{from{transform:scale(1)}to{transform:scale(1.06)}}
.hero::after{content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(70,75,70,.28) 0%,rgba(70,75,70,0) 40%)}
.hero-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;
  justify-content:flex-end;padding-bottom:clamp(6.875rem,24vh,13.25rem);
  /* alineado con el wordmark "Alquileres temporarios" del nav (pad + logo 84 + gap 22) */
  padding-left:calc(var(--pad) + 6.625rem)}
.hero h1{font-size:clamp(2.1rem,3.34vw,3rem);line-height:1.18;color:#fff;max-width:16ch;
  text-shadow:0 1px 1.375rem rgba(60,64,60,.22)}
.hero .sub{margin-top:1.3rem;font-family:var(--serif);font-size:clamp(1.05rem,1.65vw,1.5rem);
  color:#fff;text-shadow:0 1px .875rem rgba(60,64,60,.25)}
.hero-cta{margin-top:1.4rem;display:flex;gap:clamp(1.25rem,3vw,2.75rem);flex-wrap:wrap}

/* ---------- intro (scroll 1) ---------- */
.intro{background:var(--bg);text-align:center;padding:clamp(6.875rem,12vw,10.625rem) 0 clamp(5rem,9vw,8.125rem)}
.intro .t-big{margin:0 auto;line-height:1.2}
.intro .small{font-family:var(--sans);font-size:.95rem;color:var(--body);margin:1.8rem auto 0;max-width:52ch}
.intro-img{width:100%}
.intro-img img{width:100%;aspect-ratio:1440/990;object-fit:cover}

/* ---------- pinamar (editorial) ---------- */
.pinamar{background:var(--beige);padding-block:var(--sec)}
/* columnas: las IMÁGENES quedan separadas por 2.1875rem; los textos, más angostos
   que su columna (530/456), respiran más. La columna derecha arranca igual. */
.pin-row{display:grid;grid-template-columns:minmax(0,590fr) minmax(0,679fr);gap:clamp(1rem,2.4vw,2.1875rem);align-items:start}
.pin-row + .pin-row{margin-top:clamp(3rem,6vw,6rem)}
.pin-copy{max-width:33.125rem;font-size:.92rem;line-height:1.85}
.pin-copy p{margin-bottom:1.4em}
.pin-copy--narrow{max-width:28.5rem}
/* párrafo + foto pareja a la izquierda, aérea a la derecha (arranca a la misma altura) */
.pin-media{display:grid;grid-template-columns:minmax(0,590fr) minmax(0,679fr);gap:clamp(1rem,2.4vw,2.1875rem);
  align-items:start;margin-top:clamp(4.5rem,9vw,8.75rem)}
.pin-media .pin-left p{max-width:33.125rem;font-size:.92rem;line-height:1.85;margin:0}
.pin-media .pin-left img{margin-top:clamp(5rem,11vw,10rem);aspect-ratio:590/662;object-fit:cover;width:100%}
.pin-media .pin-aerea{aspect-ratio:748/840;object-fit:cover;max-width:none;
  width:calc(100% + var(--pad) + max(0px,(100vw - var(--max)) / 2));
  margin-right:calc(-1 * (var(--pad) + max(0px,(100vw - var(--max)) / 2)))}
.pin-wide{margin-top:clamp(6.25rem,12vw,11.25rem);max-width:69.5625rem}
/* los caballos se solapan con el final del golf y apoyan en el borde izquierdo real */
.pin-horses{margin-top:calc(-1 * clamp(5rem,14vw,12.5rem))}
.pin-horses img{aspect-ratio:3/2;object-fit:cover;
  width:calc(min(41rem,58%) + max(0px,(100vw - var(--max)) / 2));max-width:none;
  margin-left:calc(-1 * (var(--pad) + max(0px,(100vw - var(--max)) / 2)))}

/* ---------- complejos ---------- */
.complejos{background:var(--white)}
.complejos .t-big{max-width:30ch;margin-top:1.6rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,1.5vw,1.3125rem);margin-top:clamp(3.5rem,6.3vw,5.625rem)}
.card{display:flex;flex-direction:column}
.card-img{overflow:hidden;aspect-ratio:6/7;background:var(--beige)}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.card:hover .card-img img{transform:scale(1.04)}
/* marco lineal redondeado que agrupa foto y nombre; ubicación, texto y botón quedan por fuera, alineados con el nombre */
.card-frame{border:1px solid var(--line);border-radius:.625rem;overflow:hidden;background:var(--white);transition:border-color .35s ease,box-shadow .35s ease}
.card-frame h3{padding:1.125rem 1.25rem 1.25rem}
.card:hover .card-frame{border-color:#B9AF9F;box-shadow:0 .625rem 1.75rem rgba(43,41,38,.08)}
.card-body{padding:1.3rem 1.25rem 0;display:flex;flex-direction:column;flex:1}
.card-body p.card-loc{font-family:var(--sans);font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;
  color:var(--title);font-weight:600;margin-bottom:1.3rem}
.card-body p{font-size:.85rem;line-height:1.8;margin-bottom:1.1em;padding-right:clamp(.75rem,2.4vw,2.1875rem)}
.card-body p.card-amen{color:var(--loc)}
.card-foot{margin-top:auto;padding-top:1.4rem}
.soon{font-family:var(--sans);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--loc);font-weight:500}

/* ---------- experiencias ---------- */
.reviews{background:var(--green);color:var(--bg);padding-block:var(--sec)}
.rev-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(1.75rem,5vw,5.625rem)}
.rev-left .eyebrow{color:rgba(246,242,234,.75)}
/* llega al borde real del viewport aunque la pantalla sea más ancha que el contenedor */
.rev-left img{aspect-ratio:625/920;object-fit:cover;margin-top:clamp(5.625rem,17vw,15.625rem);
  margin-left:calc(-1 * (var(--pad) + max(0px,(100vw - var(--max)) / 2)));
  width:calc(100% + var(--pad) + max(0px,(100vw - var(--max)) / 2));max-width:none}
/* la foto "flota" con el scroll (parallax suave, ver JS) */

/* imagen de golf junto al segundo bloque de texto de Pinamar (a sangre derecha, como la aérea) */
.pin-golf{aspect-ratio:3/4;object-fit:cover;max-width:none;
  width:calc(100% + var(--pad) + max(0px,(100vw - var(--max)) / 2));
  margin-right:calc(-1 * (var(--pad) + max(0px,(100vw - var(--max)) / 2)))}
.rev-right .t-big{color:var(--bg);max-width:18ch}
.rev-list{margin-top:clamp(3rem,6vw,5.5rem);display:flex;flex-direction:column;gap:clamp(2.25rem,4.5vw,4rem)}
.rev blockquote{margin:0;font-family:'Canela',Georgia,serif;font-style:italic;font-weight:300;
  font-size:clamp(1.3rem,1.95vw,1.8rem);line-height:1.35;max-width:22ch}
.rev cite{display:block;margin-top:1.2rem;font-family:var(--sans);font-style:normal;
  font-size:.82rem;letter-spacing:.02em;color:rgba(246,242,234,.68)}

/* ---------- quiénes somos ---------- */
.about{background:var(--white);padding-top:var(--sec)}
.about-eyebrows{display:flex;justify-content:space-between;gap:1.25rem;margin-bottom:clamp(2.75rem,6vw,5.625rem)}
.about .t-big{max-width:70.625rem}
.about .t-big p{margin-bottom:1.1em}
.about-link{margin-top:clamp(2rem,4vw,3.5rem);margin-bottom:clamp(3rem,6vw,5.625rem)}
.about-img{width:100%}
.about-img img{width:100%;aspect-ratio:2/1;object-fit:cover}

/* ---------- reservá ---------- */
.reservar{background:var(--beige);text-align:center;padding-block:clamp(4.375rem,9vw,7.5rem)}
.reservar::before{content:'';display:block;width:1px;height:clamp(4.375rem,9vw,7.375rem);
  background:#B9AF9F;margin:0 auto clamp(2.5rem,5vw,4.375rem)}
.reservar h2{font-size:clamp(2.2rem,3.6vw,3.3rem);color:var(--title);line-height:1.15}
.reservar p{font-size:.98rem;color:var(--body);max-width:52ch;margin:1.6rem auto 2.6rem}

/* ---------- footer ---------- */
.footer{background:var(--ink);color:rgba(246,242,234,.78);padding-block:clamp(3.25rem,7vw,5.25rem)}
.footer a{font-family:var(--sans)}
.footer a:hover{color:#fff}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:clamp(1.75rem,4vw,3.75rem)}
.footer img{width:5.5rem;margin-bottom:1.6rem;filter:brightness(0) invert(1);opacity:.9}
.footer h4{font-family:var(--sans);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(246,242,234,.45);margin-bottom:1.1rem;font-weight:500}
.footer ul{list-style:none;margin:0;padding:0}
.footer li{margin-bottom:.6rem;font-size:.9rem}
.f-bottom{margin-top:clamp(2.375rem,5vw,4rem);padding-top:1.5rem;border-top:1px solid rgba(246,242,234,.14);
  font-size:.78rem;color:rgba(246,242,234,.42);display:flex;justify-content:space-between;gap:1.125rem;flex-wrap:wrap}
.f-credit a{border-bottom:1px solid rgba(246,242,234,.3);padding-bottom:1px;transition:color .3s,border-color .3s}
.f-credit a:hover{color:#fff;border-color:#fff}

/* ---------- whatsapp flotante ---------- */
.wa-float{position:fixed;right:1.375rem;bottom:1.375rem;z-index:90;width:3.375rem;height:3.375rem;border-radius:50%;
  background:var(--green);display:grid;place-items:center;box-shadow:0 .375rem 1.625rem rgba(43,41,38,.24);
  transition:transform .3s ease,background .3s}
.wa-float:hover{transform:scale(1.07);background:var(--ink)}
.wa-float svg{width:1.625rem;height:1.625rem;fill:var(--bg)}

/* ============ ficha de edificio (diseño Figma "Los Pinos North - ficha") ============ */
.ficha-head{padding-top:clamp(7.5rem,13.6vw,12.375rem)}
/* link de regreso sobre el título */
.back-link{display:inline-flex;align-items:center;font-family:var(--sans);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;font-weight:500;
  color:var(--ink);line-height:1;padding:.625rem 1.125rem;border-radius:62.4375rem;border:1px solid rgba(43,41,38,.32);margin-bottom:clamp(1.375rem,2.2vw,2rem);
  transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease,box-shadow .35s ease}
.back-link .arr{flex:none;width:1.0625rem;height:1.0625rem;margin-right:.7em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.back-link:hover{background:var(--ink);border-color:var(--ink);color:var(--white);transform:translateY(-2px);box-shadow:0 .5rem 1.25rem rgba(43,41,38,.16)}
.ficha-head,.ficha-amen,.ficha-tipos,.ficha-final{--lbl:clamp(.8rem,1.04vw,.9375rem);--txt:clamp(.875rem,1.04vw,.9375rem)} /* etiquetas .9375rem · texto corrido .9375rem */
.ficha-head h1{font-size:clamp(1.75rem,2.43vw,2.1875rem);line-height:1.06;color:var(--title)}
/* etiquetas en mayúscula de la ficha: .9375rem (ubicación, amenities, tipologías, specs) */
/* la dirección es un botón: pin + dirección + flecha de enlace externo, abre Google Maps */
.ficha-loc{display:inline-flex;align-items:center;gap:.7em;margin-top:clamp(1rem,1.5vw,1.375rem);
  font-family:var(--sans);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;line-height:1.3;
  font-weight:500;color:var(--green);padding:.625rem 1.125rem .625rem .875rem;border-radius:62.4375rem;border:1px solid rgba(61,74,62,.45);
  transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease,box-shadow .35s ease}
.ficha-loc svg{flex:none;width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ficha-loc svg:first-of-type{order:-1}
.ficha-loc .ext{width:1.0625rem;height:1.0625rem;transition:transform .35s ease}
.ficha-loc:hover{background:var(--green);border-color:var(--green);color:var(--white);transform:translateY(-2px);box-shadow:0 .5rem 1.25rem rgba(61,74,62,.2)}
.ficha-loc:hover .ext{transform:translate(2px,-2px)}
.ficha-bajada{font-family:var(--serif);font-size:clamp(1.7rem,3.34vw,3rem);line-height:1.06;color:var(--title);
  margin-top:clamp(3rem,5.6vw,5.0625rem);max-width:none}
.ficha-intro{margin-top:clamp(2rem,3.5vw,3.125rem);max-width:33.125rem;font-size:var(--txt);line-height:1.76;
  letter-spacing:.01em;color:var(--ink)}
.ficha-intro b{font-weight:600}
.ficha-photo{margin-top:clamp(4.5rem,7vw,6.25rem)}
.ficha-photo img{width:100%;aspect-ratio:1459/843;object-fit:cover}

/* amenities + foto vertical */
.ficha-amen{display:grid;grid-template-columns:minmax(0,629fr) minmax(0,675fr);gap:0;
  padding-top:clamp(5.625rem,10.6vw,9.5625rem);align-items:start}
.amen-list{list-style:none;margin:0;padding:clamp(2.5rem,5.8vw,5.1875rem) 0 0 clamp(0px,7.5vw,6.75rem)}
.amen-list li{display:grid;grid-template-columns:1.125rem 1fr;gap:.4375rem .4375rem;align-items:start;margin-bottom:clamp(1.375rem,2.4vw,2.125rem)}
.amen-list li:last-child{margin-bottom:0}
.amen-list svg{width:1.125rem;height:1.125rem;margin-top:-1px;fill:none;stroke:var(--title);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.amen-list h3{font-family:var(--sans);font-size:var(--lbl);letter-spacing:.03em;text-transform:uppercase;
  font-weight:500;color:var(--title);line-height:1.06;margin:0}
.amen-list p{grid-column:2;margin:.35rem 0 0;font-size:var(--txt);line-height:1.76;color:var(--ink);letter-spacing:.01em}
.amen-photo{position:relative;max-width:34.625rem;overflow:hidden;cursor:pointer}
.amen-photo img{width:100%;aspect-ratio:554/687;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.amen-photo:hover img{transform:scale(1.04)}

/* botón pill que abre una galería (sobre una foto) */
/* las fotos también abren la galería */
img[data-gal]{cursor:pointer}
/* mismo óvalo que los botones del hero (.link-circ .circ) */
.gal-btn{position:absolute;right:clamp(.875rem,2vw,1.75rem);bottom:clamp(.875rem,1.8vw,1.625rem);height:2.125rem;border-radius:62.4375rem;
  background:rgba(251,248,242,.95);color:var(--ink);border:0;cursor:pointer;display:inline-flex;align-items:center;gap:.6em;padding:0 1rem 0 1.125rem;
  font-family:var(--sans);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500;line-height:1;white-space:nowrap;
  box-shadow:0 .375rem 1.25rem rgba(43,41,38,.22);transition:background .35s ease,color .35s ease,transform .35s ease,box-shadow .35s ease}
.gal-btn .arr{font-size:.82rem;letter-spacing:0;transition:transform .3s ease}
.gal-btn:hover,.amen-photo:hover .gal-btn,.pic:hover .gal-btn{background:var(--ink);color:var(--white);box-shadow:0 .625rem 1.625rem rgba(43,41,38,.3)}
.gal-btn:hover .arr,.amen-photo:hover .gal-btn .arr,.pic:hover .gal-btn .arr{transform:translateX(.1875rem)}
/* pasaje automático de la foto del edificio: la nueva entra desde la derecha y la anterior se corre a la izquierda */
/* (selector con la misma especificidad que .amen-photo img, si no la transición de transform la pisa y la foto entra de golpe) */
.amen-photo img.amen-fade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;aspect-ratio:auto;translate:calc(100% + 2px) 0;pointer-events:none;
  transition:translate 1.8s cubic-bezier(.45,.05,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}
.amen-photo img.amen-fade.on{translate:0 0}
.amen-photo img.amen-fade:not([src]){visibility:hidden}
.amen-photo img.out{translate:calc(-100% - 2px) 0;transition:translate 1.8s cubic-bezier(.45,.05,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}

/* tipologías */
.ficha-tipos{padding-top:clamp(6.25rem,12vw,10.75rem)}
.ficha-tipos .eyebrow{font-size:var(--lbl);letter-spacing:.03em}
.tipo-f{display:grid;grid-template-columns:minmax(0,572fr) minmax(0,646fr);gap:clamp(1.75rem,4vw,3.5625rem);
  padding-block:clamp(3.5rem,7.7vw,7rem) clamp(4rem,7vw,6.25rem);align-items:start}
.tipo-f + .tipo-f{border-top:.5px solid var(--line);padding-top:clamp(4rem,7vw,6.25rem)}
.tipo-f:first-of-type{padding-top:clamp(3.5rem,7.7vw,7rem)}
.tipo-pics{display:grid;grid-template-columns:1fr 1fr;gap:.75rem .8125rem;
  margin-left:calc(-1 * (var(--pad) + max(0px,(100vw - var(--max)) / 2)))}
.tipo-pics .big{grid-column:1/-1}
.tipo-pics .pic{position:relative;overflow:hidden}
.tipo-pics img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.tipo-pics .pic:hover img{transform:scale(1.04)}
.tipo-txt{padding-top:0}
.tipo-txt h2{font-family:var(--serif);font-size:clamp(1.8rem,2.78vw,2.5rem);line-height:1.06;color:var(--title)}
.tipo-txt .specs{margin:clamp(1.125rem,1.5vw,1.3125rem) 0 0;font-family:var(--sans);font-size:var(--lbl);
  letter-spacing:.03em;text-transform:uppercase;font-weight:500;color:var(--ink);line-height:1.06}
.tipo-txt .desc{margin:clamp(2.25rem,4.2vw,3.75rem) 0 0;max-width:31.875rem;font-size:var(--txt);line-height:1.76;
  color:var(--ink);letter-spacing:.01em}
.tipo-txt .ext{margin:1.5rem 0 0;max-width:31.875rem;font-size:var(--txt);line-height:1.76;
  color:var(--ink);font-weight:500}
.tipo-txt .ext.ext-2{margin-top:.5rem;font-weight:400}
/* aclaración de renders (fichas de edificios en obra) */
.nota-render{margin:1.6rem 0 0;max-width:31.875rem;font-family:var(--sans);font-size:.75rem;line-height:1.6;letter-spacing:.02em;color:var(--loc)}

/* cierre: incluye + reservá */
.ficha-final{background:var(--beige);text-align:center;padding-block:clamp(3.125rem,4.3vw,3.875rem) clamp(4rem,6vw,5.4375rem);margin-top:clamp(5rem,9.5vw,8.5625rem)}
.ficha-final::before{content:'';display:block;width:1px;height:clamp(4.375rem,8.3vw,7.5rem);background:#B9AF9F;margin:0 auto clamp(1.25rem,1.9vw,1.6875rem)}
.ficha-final .t-incl{font-family:var(--serif);font-size:clamp(1.5rem,2.78vw,2.5rem);line-height:1.12;color:var(--title);max-width:60rem;margin:0 auto}
.ficha-final .sub{font-family:var(--sans);font-size:var(--txt);color:var(--title);margin:clamp(1.625rem,3.2vw,2.875rem) auto 0;max-width:40rem;letter-spacing:.01em}
.ficha-final .btn-pill{margin-top:clamp(1.75rem,2.7vw,2.4375rem)}

/* otros complejos: al final de cada ficha, mismas tarjetas del home */
.otros{background:var(--white);padding-block:clamp(3.5rem,7vw,6.25rem);margin-top:0}
.otros .cards{margin-top:0;grid-template-columns:repeat(4,1fr)}
.otros .card-frame h3{font-size:clamp(1.25rem,1.6vw,1.5rem);padding:.875rem 1rem 1rem}
.otros .card-body{padding-inline:1rem}
.otros .card-body p{font-size:.8rem}
.otros-head{display:flex;flex-direction:column;padding-right:clamp(.75rem,3vw,3rem)}
.otros-head .t-card{margin-top:1.2rem;max-width:14ch;margin-bottom:0}
.otros-head .link-arrow{margin-top:auto;align-self:flex-start}
@media (max-width:960px){
  .otros .cards{grid-template-columns:1fr 1fr;gap:2.5rem 1rem}
  .otros-head{grid-column:1/-1;padding-right:0}
  .otros-head .t-card{max-width:22ch}
  .otros-head .link-arrow{margin-top:1.4rem;margin-bottom:.4rem}
}
@media (max-width:560px){.otros .cards{grid-template-columns:1fr;gap:2.75rem}}

/* galería (lightbox con navegación) */
.gl{position:fixed;inset:0;z-index:300;background:rgba(36,34,31,.96);display:none;flex-direction:column;
  align-items:center;justify-content:center;padding:clamp(1rem,4vw,3rem)}
.gl.on{display:flex}
.gl img{max-width:min(92vw,87.5rem);max-height:82vh;object-fit:contain;box-shadow:0 1.25rem 3.75rem rgba(0,0,0,.35);
  transition:opacity .25s}
/* flechas del visor: el mismo óvalo del hero */
.gl-nav{position:absolute;top:50%;transform:translateY(-50%);width:2.375rem;height:1.4375rem;border-radius:62.4375rem;
  background:rgba(251,248,242,.92);color:var(--ink);border:0;cursor:pointer;padding:0;
  display:grid;place-items:center;font-family:var(--sans);font-size:.82rem;line-height:1;transition:transform .3s ease}
.gl-prev:hover{transform:translate(-4px,-50%)}.gl-next:hover{transform:translate(.25rem,-50%)}
.gl-prev{left:clamp(.625rem,2.5vw,2.25rem)}.gl-next{right:clamp(.625rem,2.5vw,2.25rem)}
.gl-close{position:absolute;top:1.125rem;right:1.375rem;background:none;border:0;color:#F6F2EA;font-size:1.9rem;cursor:pointer;line-height:1;opacity:.85}
.gl-close:hover{opacity:1}
.gl-meta{margin-top:1.125rem;font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,242,234,.7);display:flex;gap:1.6em}
@media (max-width:960px){
  .ficha-amen,.tipo-f{grid-template-columns:1fr}
  .amen-list{padding-left:0;padding-top:1.5rem;margin-bottom:2.5rem}
  .tipo-pics{margin-left:0}
  .tipo-txt{padding-top:.5rem}
}
@media (max-width:680px){.gl-prev{left:.5rem}.gl-next{right:.5rem}}

/* ============ página de complejo (compatibilidad) ============ */
.sub-hero{position:relative;height:78vh;height:78svh;min-height:30rem;display:flex;align-items:flex-end;overflow:hidden}
.sub-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sub-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(40,42,38,.4),rgba(40,42,38,.05) 40%,rgba(40,42,38,.55))}
.sub-hero .wrap{position:relative;z-index:2;color:#fff;padding-bottom:clamp(2.75rem,6vh,5rem);width:100%}
.sub-hero h1{font-size:clamp(2.2rem,4.6vw,3.8rem);line-height:1.08}
.sub-hero .loc{font-family:var(--sans);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.85);margin-bottom:1rem;display:block;font-weight:500}
.h2{font-size:clamp(1.85rem,3vw,2.6rem);line-height:1.2;color:var(--title)}
.h3{font-size:clamp(1.3rem,1.9vw,1.6rem);line-height:1.25;color:var(--title)}
.detail-top{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5.5rem)}
.amen{list-style:none;margin:0;padding:0;columns:2;column-gap:2rem}
.amen li{padding:.52rem 0;border-bottom:1px solid var(--line);font-size:.9rem;break-inside:avoid}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.625rem,1.4vw,1.125rem)}
.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4;cursor:zoom-in;transition:opacity .4s}
.gallery img:hover{opacity:.88}
.gallery .g-wide{grid-column:span 2;aspect-ratio:8/5}
.tipo{padding-block:clamp(2.875rem,6vw,4.875rem);border-top:1px solid var(--line)}
.tipo-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(1.75rem,4vw,4rem);align-items:start}
.tipo-imgs{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.tipo-imgs .big{grid-column:1/-1;aspect-ratio:4/3}
.tipo-imgs img{width:100%;height:100%;object-fit:cover;aspect-ratio:1/1}
.tipo-specs{font-family:var(--sans);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--loc);margin:.9rem 0 1.4rem;font-weight:500}
.variant{font-size:.88rem;color:var(--loc);font-style:italic}
.incluye{background:var(--beige)}
.incluye .cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.75rem,4vw,4.5rem)}
.note{font-size:.88rem;color:var(--loc);border-left:1px solid var(--line);padding-left:1.25rem}
.back{display:inline-flex;gap:.6em;font-family:var(--sans);font-size:.75rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--loc);font-weight:500}
.back:hover{color:var(--ink)}
.ph{position:relative}
.ph::after{content:'FOTO PENDIENTE';position:absolute;top:.75rem;left:.75rem;z-index:2;
  background:rgba(43,41,38,.78);color:#fff;font-size:.6rem;letter-spacing:.16em;padding:.3125rem .5625rem}

/* lightbox */
.lb{position:fixed;inset:0;z-index:200;background:rgba(24,23,20,.94);display:none;place-items:center;padding:2.25rem}
.lb.on{display:grid}
.lb img{max-width:94vw;max-height:88vh;object-fit:contain}
.lb-close{position:absolute;top:1.25rem;right:1.625rem;color:#fff;font-size:1.6rem;background:none;border:0;cursor:pointer;line-height:1}

/* ---------- títulos animados por caracteres (ref: era-residence) ---------- */
.split .sw{display:inline-block}
.js .split .sc{display:inline-block;transform:translateY(1.15em);opacity:0;
  transition:transform 1.25s cubic-bezier(.22,.7,.2,1),opacity .8s ease;
  transition-delay:var(--d,0ms)}
.js .split.in .sc{transform:none;opacity:1}

/* fundido gradual de opacidad (subtítulos y textos) */
.js .fd{opacity:0;transition:opacity 1.7s ease}
.js .fd.in{opacity:1}
.float{backface-visibility:hidden}

/* las imágenes aparecen creciendo hasta su tamaño */
.grow{display:block}
.js .grow{transform:scale(.9);opacity:0;transform-origin:50% 82%;
  transition:transform 1.5s cubic-bezier(.22,.7,.2,1),opacity .9s ease}
.js .grow.in{transform:scale(1);opacity:1}

/* ---------- reveal ---------- */
.js .rv{opacity:0;transform:translateY(1.5rem);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:none}

/* ---------- responsive ---------- */
@media (max-width:960px){
  .pin-row,.pin-figs,.rev-grid,.detail-top,.tipo-grid,.incluye .cols{grid-template-columns:1fr}
  .pin-copy{max-width:100%}
  .pin-wide{max-width:100%}
  .pin-horses img{width:100%;margin-left:0}
  .pin-media .pin-aerea,.pin-golf{width:100%;margin-right:0}
  .pin-media .pin-left img{margin-top:2rem}
  .rev-left img{width:100%;margin-left:0;margin-top:2rem}
  .pin-horses{margin-top:2.5rem}
  .rev-list{margin-top:2.5rem}
  .cards{grid-template-columns:1fr;gap:3rem}
  .f-grid{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .gallery .g-wide{grid-column:span 2}
  .about-eyebrows{flex-direction:column;gap:.375rem}
}
@media (max-width:680px){
  .nav-links{position:fixed;inset:0;background:var(--bg);color:var(--ink);flex-direction:column;
    justify-content:center;gap:1.75rem;transform:translateY(-101%);transition:transform .5s cubic-bezier(.4,0,.1,1);text-shadow:none}
  .nav-links.open{transform:none}
  .nav-links a{font-size:.95rem}
  /* menú en dos barritas; al abrir forman una cruz */
  .nav-toggle{display:block;z-index:2;position:relative;width:1.875rem;height:1.875rem;padding:0;font-size:0}
  .nav-toggle span{position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .4s cubic-bezier(.4,0,.1,1),top .4s cubic-bezier(.4,0,.1,1)}
  .nav-toggle span:first-child{top:.625rem}
  .nav-toggle span:last-child{top:1.1875rem}
  .nav-toggle.open{color:var(--ink)}
  .nav-toggle.open span:first-child{top:.9062rem;transform:rotate(45deg)}
  .nav-toggle.open span:last-child{top:.9062rem;transform:rotate(-45deg)}
  .nav{padding-block:1.375rem}
  .nav-logo{gap:1rem}
  .nav-logo span{font-size:1.05rem;white-space:nowrap}
  .nav-logo img{width:2.875rem;height:2.875rem}
  .f-grid{grid-template-columns:1fr}
  .amen{columns:1}
  /* hero mobile: foto vertical propia, título dentro de una tarjeta clara y botones debajo */
  .hero{height:100vh;height:100svh;min-height:37.5rem}
  .hero::after{background:linear-gradient(180deg,rgba(70,75,70,.2) 0%,rgba(70,75,70,0) 30%)}
  .hero-inner{padding-left:var(--pad);padding-bottom:max(13vh,5.25rem);padding-bottom:max(13svh,5.25rem)}
  .m-only{display:inline}
  .hero-card{display:block;background:var(--bg);border-radius:1.125rem;padding:1.875rem 1.375rem 2.125rem;
    box-shadow:0 .875rem 2.5rem rgba(43,41,38,.12);animation:cardIn 1.1s cubic-bezier(.2,.7,.2,1) .25s both}
  .hero .hero-card h1{font-size:1.56rem;line-height:1.1;color:var(--title);text-shadow:none;max-width:none}
  .hero .hero-card .sub{margin-top:1.15rem;font-size:.95rem;line-height:1.15;color:var(--title);text-shadow:none}
  .js .hero-card .split .sc{transition-delay:calc(var(--d,0ms) + 550ms)}
  .hero-cta{flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:1.375rem}
  .hero-cta .link-circ{animation:cardIn .9s cubic-bezier(.2,.7,.2,1) 1.15s both}
  .hero-cta .link-circ + .link-circ{animation-delay:1.3s}
  .d-only{display:none}
  .intro{padding:5.25rem 0 4.5rem}
  .intro .t-big{max-width:none;font-size:1.72rem}
  .intro .small{font-size:.92rem;max-width:none}
  /* Pinamar en una columna: título → aérea → texto → pareja → título → texto → golf → caballos; fotos de borde a borde */
  .pinamar{padding-top:6.5rem}
  .pin-row{gap:1.875rem}
  .pin-media{display:flex;flex-direction:column;gap:2.75rem;margin-top:3.25rem}
  .pin-media .pin-left{display:contents}
  .pin-media > .grow,.pin-media > .pin-aerea{order:-1}
  .pin-media .pin-left p{max-width:none}
  .pin-media .pin-left img{margin-top:0}
  .pin-wide{margin-top:5.5rem}
  .pin-row + .pin-row,.pinamar .pin-row[style]{margin-top:2.5rem !important;gap:2.75rem}
  .pin-horses{margin-top:3.75rem}
  .pin-media .pin-aerea,.pin-media .pin-left img,.pin-golf,.pin-horses img,.rev-left img{
    width:calc(100% + 2 * var(--pad));max-width:none;margin-left:calc(-1 * var(--pad));margin-right:calc(-1 * var(--pad))}
  .rev-grid{gap:3.5rem}
  .rev-left img{margin-top:2rem}
  .rev-list{margin-top:3.25rem;gap:3.5rem}
  .rev blockquote{max-width:none}
  /* cierre del home a pantalla completa, como el hero */
  .reservar{min-height:100vh;min-height:100svh;padding-block:6rem;display:flex;flex-direction:column;justify-content:center}
  .about-img img{aspect-ratio:1/1}
  .reservar p{margin-bottom:2.8rem}
}
@keyframes cardIn{from{opacity:0;transform:translateY(2.125rem)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .js .rv{opacity:1;transform:none}
}
@media (max-width:680px){.ficha-loc{border-radius:1.125rem;padding:.625rem .875rem .625rem .75rem;font-size:.66rem;letter-spacing:.05em}}

/* ---- galería y tipologías en celular ---- */
.gl-track,.gal-btn-m{display:none}
@media (max-width:680px){
  /* cabecera de ficha: más aire entre "Todos los complejos" y el título */
  .back-link{margin-bottom:2.875rem}
  .ficha-final{padding-block:6.5rem 7.5rem}
  .ficha-final .sub{margin-top:2.125rem}
  .ficha-loc{margin-top:1.125rem}
  .ficha-bajada{margin-top:3.5rem}

  /* tipologías: título y datos primero, después la tira de fotos (deslizable), el botón y la descripción */
  .tipo-f{display:flex;flex-direction:column;gap:0}
  .tipo-txt{display:contents}
  .tipo-txt h2{order:1}
  .tipo-txt .specs{order:2;margin-top:.875rem;font-size:.72rem;line-height:1.5;letter-spacing:.04em}
  .tipo-pics{order:3;margin-top:1.75rem;display:flex;gap:.625rem;overflow-x:auto;scroll-snap-type:x mandatory;
    margin-left:calc(-1 * var(--pad));margin-right:calc(-1 * var(--pad));padding-inline:var(--pad);scroll-padding-inline:var(--pad);
    scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tipo-pics::-webkit-scrollbar{display:none}
  .tipo-pics .pic{flex:0 0 86%;scroll-snap-align:start}
  .tipo-pics img{aspect-ratio:4/3}
  .tipo-pics .gal-btn{display:none}
  .gal-btn-m{order:4;display:inline-flex;align-items:center;gap:.6em;align-self:flex-start;margin-top:1.125rem;
    font-family:var(--sans);font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;font-weight:500;color:var(--ink);line-height:1;
    padding:.75rem 1.25rem;border-radius:62.4375rem;border:1px solid rgba(43,41,38,.32);background:transparent;cursor:pointer}
  .gal-btn-m .arr{font-size:.9rem;letter-spacing:0}
  .gal-btn-m:active{background:var(--ink);color:var(--white)}
  .tipo-txt .desc{order:5;margin-top:1.875rem;max-width:none}
  .tipo-txt .ext{order:6;max-width:none}
  .nota-render{order:7;max-width:none}

  /* visor: pantalla completa, fondo claro, fotos a todo el ancho que se deslizan con el dedo */
  .gl.gl--m{background:var(--bg);padding:0;justify-content:center}
  .gl--m > img,.gl--m .gl-nav{display:none}
  .gl--m .gl-track{display:flex;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .gl--m .gl-track::-webkit-scrollbar{display:none}
  .gl--m .gl-slide{flex:0 0 100%;scroll-snap-align:center;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center}
  .gl--m .gl-slide img{width:100%;max-width:none;max-height:74vh;max-height:74svh;object-fit:contain;box-shadow:none}
  .gl--m .gl-close{top:.875rem;right:.875rem;width:2.625rem;height:2.625rem;border-radius:50%;background:var(--white);color:var(--ink);opacity:1;
    font-size:1.7rem;display:grid;place-items:center;box-shadow:0 .25rem 1rem rgba(43,41,38,.12)}
  .gl--m .gl-meta{position:absolute;left:1.25rem;right:1.25rem;bottom:calc(1.625rem + env(safe-area-inset-bottom));margin:0;
    flex-direction:column;align-items:center;gap:.7em;text-align:center;color:var(--title);font-size:.68rem;letter-spacing:.12em}
  .gl--m .gl-count{color:var(--ink);font-size:.8rem;letter-spacing:.08em}
}

/* ---- pantallas grandes: las fotos a sangre no superan el alto de la ventana ---- */
@media (min-width:1700px){
  .intro-img img{aspect-ratio:auto;height:min(68.75vw,86vh)}
  .ficha-photo img{aspect-ratio:auto;height:min(57.8vw,84vh)}
  .about-img img{aspect-ratio:auto;height:min(50vw,84vh)}
  .rev-left img,.amen-photo img{max-height:86vh}
  /* fotos de Pinamar: más bajas en pantallas grandes (se recortan en alto, siguen alineadas al borde) */
  .pin-media .pin-aerea{max-height:68vh}
  /* la foto de la orilla va en su proporción original, sin recorte; los caballos llegan al borde izquierdo y terminan donde termina esa foto */
  .pin-horses img{width:calc(var(--pad) + (100vw - 2 * var(--pad) - clamp(1rem,2.4vw,2.1875rem)) * 590 / 1269)}
  /* golf: ocupa toda la columna derecha y va entera, en su proporción original, sin tope de alto */
  /* bloque Complejos: título y tarjetas arrancan donde empieza la palabra "temporarios" del menú (--x-temp, calculado en JS);
     las tarjetas mantienen el tamaño de las de "Otros complejos" y van juntas */
  .complejos .wrap{padding-left:var(--x-temp, calc(var(--pad) + 10.5vw))}
  .complejos .cards{gap:2vw;grid-template-columns:repeat(3,minmax(0,26.5rem));justify-content:start}
}
