/* ======================================================================
   El Salón — réplica del diseño "Sobre Nosotros / El Salón" (rosa + crema)
   Autocontenida en variables --es-*.
   ====================================================================== */
:root{
  --es-rosa:#C4707B; --es-rosa-suave:#E8B7BC; --es-tinta:#262019; --es-gris:#55493F;
  --es-fondo:#F7F2EA; --es-carta:#FCF9F4; --es-borde:#E7DCCB;
}

/* ---------- hero ---------- */
.es-hero{position:relative;overflow:hidden;min-height:clamp(340px,42vw,560px);display:flex;align-items:center}
.es-hero img.es-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
                         object-position:center 74%;display:block}
.es-hero::after{content:"";position:absolute;inset:0;
                background:linear-gradient(100deg,rgba(24,18,16,.62) 0%,rgba(24,18,16,.28) 55%,rgba(24,18,16,.15) 100%)}
.es-hero__txt{position:relative;z-index:2;max-width:1220px;width:100%;margin:0 auto;
              padding:clamp(2.5rem,6vw,4rem) clamp(1.5rem,4vw,3.2rem)}
.es-hero__kicker{color:#EFC6CB;font-family:'Jost',sans-serif;font-size:.72rem;font-weight:500;
                 letter-spacing:.3em;text-transform:uppercase}
.es-hero__lema{font-family:'Cormorant Garamond',serif;font-weight:500;color:#fff;
               font-size:clamp(1.7rem,1.2rem + 2.2vw,3rem);line-height:1.28;margin-top:1rem;max-width:22ch}
/* mismo botón "peach" que el resto del rediseño (ver .btn-peach en home-nuevo.css) */
.es-btn{display:inline-flex;align-items:center;gap:.7rem;border-radius:9999px;
        background:var(--peach-cta);color:var(--tinta);text-decoration:none;
        font-family:'Jost',sans-serif;font-size:.74rem;font-weight:500;
        letter-spacing:.18em;text-transform:uppercase;padding:1.05rem 2.2rem;margin-top:1.6rem;
        transition:.4s cubic-bezier(.16,1,.3,1)}
.es-btn:hover{background:var(--peach-cta-hover);transform:translateY(-2px)}
.es-btn svg{width:16px;height:16px;flex:none}
.es-btn--borde{background:transparent;border:1px solid var(--peach-cta);color:var(--tinta)}
.es-btn--borde:hover{background:var(--peach-cta);transform:translateY(-2px)}

/* ---------- intro ---------- */
.es-intro{background:var(--es-fondo);text-align:center;padding:clamp(2.8rem,5.5vw,4.5rem) clamp(1.5rem,4vw,3.2rem)}
.es-intro__lema{font-family:'Cormorant Garamond',serif;font-weight:500;color:var(--es-tinta);
                font-size:clamp(1.5rem,1.2rem + 1.6vw,2.4rem);line-height:1.4;max-width:40ch;
                margin:clamp(1.8rem,3.4vw,2.8rem) auto 0}
.es-intro__sub{color:var(--es-rosa);font-family:'Jost',sans-serif;font-size:.78rem;font-weight:600;
               letter-spacing:.26em;text-transform:uppercase;margin-top:1.5rem}
.es-orn--ancho span{flex:0 1 340px;width:auto}
.es-orn--abajo{margin-top:clamp(1.8rem,3.4vw,2.8rem)}

/* ---------- bloques foto + texto ---------- */
.es-kicker{color:var(--es-rosa);font-family:'Jost',sans-serif;font-size:.68rem;font-weight:600;
           letter-spacing:.26em;text-transform:uppercase}
.es-titulo{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--es-tinta);
           font-size:clamp(1.8rem,1.4rem + 1.6vw,2.7rem);line-height:1.15;margin-top:.7rem}
.es-titulo::after{content:"";display:block;width:42px;height:2px;background:var(--es-rosa);
                  opacity:.8;margin-top:.8rem}
.es-parr{color:var(--es-gris);font-weight:300;line-height:1.75;font-size:.94rem;margin-top:1.05rem;max-width:52ch}

.es-historia{background:var(--es-fondo);padding:clamp(2.8rem,5.5vw,4.5rem) clamp(1.5rem,4vw,3.2rem)}
.es-historia__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;
                    gap:clamp(2.2rem,4.5vw,4.5rem);align-items:center}
.es-historia__img{border-radius:10px;overflow:hidden;
                  box-shadow:0 16px 34px -26px rgba(30,22,16,.5)}
.es-historia__img img{width:100%;height:auto;display:block}

.es-exp{background:#fff;padding:clamp(2.8rem,5.5vw,4.5rem) clamp(1.5rem,4vw,3.2rem)}
.es-exp__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.15fr;
               gap:clamp(2.2rem,4.5vw,4.5rem);align-items:center}
.es-exp__img{border-radius:10px;overflow:hidden;box-shadow:0 16px 34px -26px rgba(30,22,16,.5)}
.es-exp__img img{width:100%;height:auto;display:block}

/* ---------- galeria el salon ---------- */
.es-espacio{background:var(--es-fondo);padding:clamp(2.8rem,5.5vw,4.5rem) clamp(1.5rem,4vw,3.2rem)}
.es-espacio__head{text-align:center;margin-bottom:clamp(1.8rem,3.4vw,2.8rem)}
.es-espacio__head .es-titulo{margin-top:.4rem}
.es-espacio__head .es-titulo::after{margin-inline:auto}
.es-titulo--centro::after{margin-inline:auto}
.es-orn{display:flex;align-items:center;justify-content:center;gap:.55rem;color:var(--es-rosa)}
.es-orn span{width:34px;height:1px;background:var(--es-rosa-suave)}
.es-orn i{font-style:normal;font-size:.62rem}
.es-orn--head{margin-top:1rem}
.es-orn--head span{width:70px}

.es-espacio__head .es-titulo::after{display:none}
.es-espacio__grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.55fr 1fr 1fr;
                  grid-template-rows:repeat(2,1fr);gap:clamp(1rem,2vw,1.6rem)}
.es-card{margin:0;display:flex;flex-direction:column}
.es-card__foto{display:block;border-radius:10px;overflow:hidden;aspect-ratio:4/3}
.es-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.es-card__foto:hover img{transform:scale(1.04)}
/* la grande estira hasta alinear con la segunda fila; su imagen va en
   absoluto para que su altura natural no agrande las filas del grid */
.es-espacio__grid .es-g1{grid-row:1/3;min-height:0}
.es-espacio__grid .es-g1 .es-card__foto{aspect-ratio:auto;flex:1;position:relative;min-height:0}
.es-espacio__grid .es-g1 .es-card__foto img{position:absolute;inset:0}

/* ---------- reseñas — lo que dicen nuestras clientas ---------- */
.es-res{background:#FBEFEA;text-align:center;padding:clamp(2.8rem,5.5vw,4.5rem) clamp(1.5rem,4vw,3.2rem)}
.es-res__kicker{display:flex;align-items:center;justify-content:center;gap:.7rem;color:#C99A4B;
                font-family:'Jost',sans-serif;font-size:.74rem;font-weight:600;
                letter-spacing:.3em;text-transform:uppercase}
.es-res__kicker span{width:56px;height:1px;background:#C99A4B;opacity:.6}
.es-res__kicker i{font-style:normal;font-size:.6rem}
.es-res__titulo{font-family:'Cormorant Garamond',serif;font-weight:600;color:var(--es-tinta);
                font-size:clamp(2rem,1.5rem + 2.4vw,3.6rem);line-height:1.08;margin-top:.7rem}
.es-res__sub{color:var(--es-gris);font-weight:300;font-size:clamp(.92rem,.88rem + .2vw,1.05rem);margin-top:.7rem}

.es-res__grid{max-width:1280px;margin:clamp(1.8rem,3.4vw,2.6rem) auto 0;display:grid;
              grid-template-columns:repeat(3,1fr);gap:clamp(1.1rem,2.2vw,1.8rem)}
.es-res__carta{text-align:start;background:#fff;border:1px solid #F4E2D7;border-radius:18px;
               padding:clamp(1.3rem,2.2vw,1.8rem);
               box-shadow:0 16px 30px -26px rgba(150,100,80,.4)}
.es-res__cab{display:flex;align-items:center;gap:.9rem}
.es-res__cab strong{display:block;font-family:'Cormorant Garamond',serif;font-weight:600;
                    color:var(--es-tinta);font-size:1.18rem;line-height:1.15}
.es-res__cab small{display:flex;align-items:center;gap:.35rem;color:#D08B62;
                   font-family:'Jost',sans-serif;font-size:.74rem;font-weight:400;margin-top:.2rem}
.es-res__check{width:14px;height:14px;color:#E5A883;flex:none}
.es-res__stars{color:#E9A83C;letter-spacing:.2em;font-size:1.05rem;margin:.9rem 0 .55rem}
.es-res__texto{color:#4A423D;font-weight:300;font-size:.92rem;line-height:1.75}
.es-res__gbtn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.1rem;
              border:1px solid #F0CBB2;border-radius:10px;background:#fff;
              padding:.5rem .95rem;color:#D07B52;text-decoration:none;
              font-family:'Jost',sans-serif;font-size:.82rem;font-weight:400;transition:background .25s}
.es-res__gbtn:hover{background:#FBF1E9}
.es-res__gbtn svg{width:15px;height:15px;flex:none}

.es-res__nota{display:flex;align-items:center;justify-content:center;gap:1rem;
              margin-top:clamp(1.8rem,3vw,2.4rem);color:#C99A4B}
.es-res__laurel{width:22px;height:auto}
.es-res__laurel--der{transform:scaleX(-1)}
.es-res__nota p{display:flex;align-items:baseline;gap:.7rem;color:#3E362F;
                font-family:'Jost',sans-serif;font-weight:300;font-size:1.05rem}
.es-res__nota strong{font-family:'Cormorant Garamond',serif;font-weight:600;
                     color:var(--es-tinta);font-size:1.7rem}
.es-res__nota i{font-style:normal;color:#E9A83C}
.es-res__cta{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.5rem;
             background:linear-gradient(180deg,#F2A98F 0%,#E08363 100%);color:#fff;
             border:2px solid #F8CFBA;border-radius:999px;padding:1rem 2.6rem;
             text-decoration:none;font-family:'Jost',sans-serif;font-size:.92rem;font-weight:500;
             box-shadow:0 14px 26px -16px rgba(214,120,85,.6);
             transition:transform .3s,box-shadow .3s}
.es-res__cta:hover{transform:translateY(-2px);box-shadow:0 18px 30px -16px rgba(214,120,85,.7)}
.es-res__cta i{font-style:normal;font-size:.8rem}

/* ---------- ubicacion ---------- */
.es-ubi{background:var(--es-fondo);padding:clamp(2.8rem,5.5vw,4.5rem) clamp(1.5rem,4vw,3.2rem)}
.es-ubi__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;
               gap:clamp(2.2rem,4.5vw,4rem);align-items:center}
.es-ubi__datos{list-style:none;margin:1.4rem 0 0;padding:0}
.es-ubi__datos li{display:flex;align-items:flex-start;gap:.9rem;color:var(--es-gris);
                  font-weight:300;font-size:.92rem;line-height:1.55;margin-bottom:.95rem}
.es-ubi__datos a{color:inherit;text-decoration:none;transition:color .25s}
.es-ubi__datos a:hover{color:var(--es-rosa)}
.es-ubi__ico{flex:none;width:34px;height:34px;border-radius:50%;background:#F3DEE0;color:var(--es-rosa);
             display:flex;align-items:center;justify-content:center;margin-top:-.2rem}
.es-ubi__ico svg{width:16px;height:16px}
.es-ubi__acciones{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:1.3rem}
.es-ubi__acciones .es-btn{margin-top:0}
.es-ubi__mapa{border-radius:12px;overflow:hidden;box-shadow:0 16px 34px -26px rgba(30,22,16,.45)}
.es-ubi__mapa iframe{display:block;width:100%;height:clamp(300px,32vw,420px);border:0}

/* ---------- responsive ---------- */
@media(max-width:920px){
  .es-historia__inner,.es-exp__inner,.es-ubi__inner{grid-template-columns:1fr}
  .es-res__grid{grid-template-columns:1fr;max-width:520px}
  .es-exp__img{order:-1}
  .es-espacio__grid{grid-template-columns:1fr 1fr}
  .es-espacio__grid .es-g1{grid-column:1/3;grid-row:auto}
  .es-espacio__grid .es-g1 .es-card__foto{aspect-ratio:16/10;flex:none}
}
@media(max-width:560px){
  .es-espacio__grid{grid-template-columns:1fr}
  .es-espacio__grid .es-g1{grid-column:auto}
  .es-espacio__grid .es-g1 .es-card__foto{aspect-ratio:4/3}
}
