@font-face{font-family:"Montserrat";src:url("../fonts/montserrat-latin.woff2") format("woff2");font-weight:100 900;font-display:swap}

:root{--ej-bg:#151312;--ej-tx:#F3EDE3;--ej-mu:#B8AFA3;--ej-or:#C9A227;--ej-an:#E5231F}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body.ej{background:var(--ej-bg);color:var(--ej-tx);font-family:"Montserrat",system-ui,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
.ej img{display:block;max-width:100%;height:auto}
.ej a{color:inherit}

.ej-aviso{position:sticky;top:0;z-index:10;background:var(--ej-an);color:#fff;font-size:.8rem;font-weight:700;line-height:1.35}
.ej-aviso .ej-in{display:flex;align-items:center;gap:12px;padding:10px 16px}
.ej-aviso p{flex:1}
.ej-aviso b{font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ej-aviso a{flex:0 0 auto;background:#111;color:#fff;text-decoration:none;font-weight:900;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;border-radius:99px;min-height:44px;display:inline-flex;align-items:center}

.ej-in{max-width:1080px;margin:0 auto}

.ej-hero{display:grid;gap:0}
.ej-hero-f{position:relative;aspect-ratio:4/5;overflow:hidden;background:#000}
.ej-hero-f img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.ej-hero-t{padding:28px 20px 36px}
.ej-marca{display:inline-block;font-size:.72rem;font-weight:900;letter-spacing:.3em;text-transform:uppercase;color:var(--ej-or);border:1.5px solid var(--ej-or);padding:6px 12px;margin-bottom:18px}
.ej h1{font-size:clamp(2rem,9vw,3.6rem);font-weight:900;line-height:1.02;letter-spacing:-.02em;text-transform:uppercase}
.ej h1 em{font-style:normal;color:var(--ej-or)}
.ej-sub{margin-top:14px;color:var(--ej-mu);font-size:1rem;max-width:34ch}
.ej-bts{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.ej-bt{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:99px;font-weight:900;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.ej-bt--or{background:var(--ej-or);color:#151312}
.ej-bt--ln{border:1.5px solid var(--ej-tx);color:var(--ej-tx)}
@media(min-width:800px){
  .ej-hero{grid-template-columns:1fr 1fr;align-items:center;min-height:80vh}
  .ej-hero-f{aspect-ratio:auto;height:100%;min-height:80vh}
  .ej-hero-t{padding:48px 56px}
}

.ej-s{padding:56px 20px;border-top:1px solid rgba(243,237,227,.1)}
.ej-k{display:block;font-size:.7rem;font-weight:900;letter-spacing:.3em;text-transform:uppercase;color:var(--ej-or);margin-bottom:10px}
.ej h2{font-size:clamp(1.5rem,6vw,2.4rem);font-weight:900;line-height:1.1;letter-spacing:-.01em;text-transform:uppercase;margin-bottom:16px}
.ej-p{color:var(--ej-mu);max-width:60ch}

.ej-serv{list-style:none;display:grid;gap:10px;margin-top:22px}
.ej-serv li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0;border-bottom:1px dashed rgba(243,237,227,.18)}
.ej-serv b{font-weight:800;font-size:1.02rem}
.ej-serv span{color:var(--ej-mu);font-size:.85rem;text-align:right}
@media(min-width:800px){.ej-serv{grid-template-columns:1fr 1fr;column-gap:48px}}

.ej-gal{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}
.ej-gal img{width:100%;aspect-ratio:4/5;object-fit:cover}
.ej-gal .ej-gal-a{grid-column:1/-1;aspect-ratio:16/11}
@media(min-width:800px){.ej-gal{grid-template-columns:repeat(3,1fr)}.ej-gal .ej-gal-a{grid-column:auto;aspect-ratio:4/5}}

.ej-contacto{text-align:center}
.ej-contacto .ej-p{margin:0 auto}
.ej-contacto .ej-bts{justify-content:center}
.ej-redes{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:18px}
.ej-redes span{border:1px solid rgba(243,237,227,.25);border-radius:99px;padding:6px 14px;font-size:.78rem;color:var(--ej-mu)}

.ej-an{background:#F3EDE3;color:#151312;padding:48px 20px 56px}
.ej-an .ej-k{color:var(--ej-an)}
.ej-an h2{color:#151312}
.ej-an ul{list-style:none;display:grid;gap:12px;margin:18px 0 26px;max-width:62ch}
.ej-an li{position:relative;padding-left:22px}
.ej-an li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:2px;background:var(--ej-an)}
.ej-an li b{font-weight:800}
.ej-an .ej-bt--an{background:var(--ej-an);color:#fff}
.ej-an .ej-bt--ln{border-color:#151312;color:#151312}
.ej-an-nota{margin-top:18px;font-size:.8rem;color:#5B5550;max-width:62ch}
.ej-pie{padding:22px 20px;text-align:center;font-size:.78rem;color:var(--ej-mu)}
.ej-pie a{font-weight:800}
.ej :focus-visible{outline:3px solid var(--ej-or);outline-offset:3px}
