:root{
  --fondo:#1E1420;
  --panel:#2C1E30;
  --tinta:#F0E8F0;
  --durazno:#F2A57A;
  --ceniza:#998A99;
  --borde:rgba(240,232,240,.12);
  --oscuro:#1E1420;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none !important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
html,body{margin:0;padding:0}
body{
  background:var(--fondo);
  color:var(--tinta);
  font-family:Lora,Georgia,serif;
  font-size:1.06rem;
  line-height:1.72;
  font-weight:400;
}
img{max-width:100%;height:auto;display:block}
figure{margin:0}
a{color:var(--durazno);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:color-mix(in srgb,var(--durazno) 82%,#fff)}
a:visited{color:color-mix(in srgb,var(--durazno) 78%,var(--ceniza))}
:focus-visible{outline:2px solid var(--durazno);outline-offset:3px}
::selection{background:var(--durazno);color:var(--oscuro)}

h1,h2,h3,.marca,.capsula-nav__lista a,.boton-durazno,.boton-linea,.rotulo{
  font-family:Manrope,system-ui,sans-serif;
}
h1,.titular-grande{
  font-size:clamp(2.7rem,6.2vw,4.7rem);
  font-weight:800;
  letter-spacing:-.035em;
  line-height:1.02;
  margin:0 0 .45em;
}
h2,.titular{
  font-size:clamp(1.9rem,3.4vw,2.9rem);
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1.12;
  margin:0 0 .5em;
}
h3{
  font-size:1.22rem;
  font-weight:700;
  letter-spacing:-.02em;
  line-height:1.28;
  margin:0 0 .45em;
}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
ul,ol{margin:0 0 1em;padding-left:1.15em}
li{margin:.28em 0}

.eje{
  max-width:1180px;
  margin-inline:auto;
  padding-inline:28px;
}
.eje--nav{
  position:sticky;
  top:14px;
  z-index:40;
  padding-block:10px 0;
}

.capsula-nav{
  position:sticky;
  top:14px;
  z-index:40;
  background:color-mix(in srgb,var(--panel) 92%,transparent);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border:1px solid var(--borde);
  border-radius:999px;
  padding:10px 18px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  box-shadow:0 14px 40px rgba(0,0,0,.35);
}
.marca{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--tinta);
  text-decoration:none;
  font-weight:800;
  letter-spacing:-.02em;
  font-size:1.05rem;
  flex-shrink:0;
}
.marca:visited,.marca:hover{color:var(--tinta)}
.marca svg{display:block;width:22px;height:22px}
.capsula-nav__lista{
  display:flex;
  align-items:center;
  gap:4px 18px;
  list-style:none;
  margin:0;
  padding:0;
}
.capsula-nav__lista a{
  color:var(--tinta);
  text-decoration:none;
  font-weight:700;
  font-size:.92rem;
  padding:6px 0 4px;
  border-bottom:2px solid transparent;
  white-space:nowrap;
}
.capsula-nav__lista a:visited{color:var(--tinta)}
.capsula-nav__lista a:hover{color:var(--durazno);border-bottom-color:color-mix(in srgb,var(--durazno) 45%,transparent)}
.capsula-nav__lista a[aria-current="page"]{
  border-bottom-color:var(--durazno);
  color:var(--tinta);
}

@media (max-width:820px){
  .capsula-nav{
    flex-direction:column;
    align-items:stretch;
    border-radius:28px;
    gap:6px;
    padding:12px 14px 10px;
  }
  .capsula-nav__lista{
    overflow-x:auto;
    flex-wrap:nowrap;
    gap:16px;
    padding-bottom:6px;
    -webkit-overflow-scrolling:touch;
  }
  .capsula-nav__lista::-webkit-scrollbar{height:4px}
  .capsula-nav__lista::-webkit-scrollbar-thumb{background:var(--ceniza);border-radius:4px}
}

.tira{padding-block:clamp(72px,9vw,132px)}
.tira--panel{background:var(--panel)}
.tira .eje > .rotulo:first-child{margin-top:0}

.reja-mayor{
  display:grid;
  grid-template-columns:1.58fr .42fr;
  gap:clamp(28px,4vw,64px);
  align-items:start;
}
@media (max-width:900px){
  .reja-mayor{grid-template-columns:1fr}
}

.rotulo{
  font-weight:700;
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:var(--durazno);
  margin:0 0 14px;
}
.bajada{
  font-size:1.12rem;
  line-height:1.68;
  color:color-mix(in srgb,var(--tinta) 88%,var(--ceniza));
  margin-bottom:1.4em;
}

.boton-durazno,.boton-linea{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  font-size:.95rem;
  letter-spacing:-.01em;
  line-height:1.2;
  padding:12px 22px;
  border-radius:999px;
  text-decoration:none;
  cursor:pointer;
  border:1px solid var(--durazno);
  margin:6px 10px 0 0;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
  appearance:none;
  -webkit-appearance:none;
}
.boton-durazno{
  background:var(--durazno);
  color:var(--oscuro);
}
.boton-durazno:visited,.boton-durazno:hover,.boton-durazno:focus{
  color:var(--oscuro);
  background:color-mix(in srgb,var(--durazno) 88%,#fff);
}
.boton-linea{
  background:transparent;
  color:var(--durazno);
}
.boton-linea:visited{color:var(--durazno);background:transparent}
.boton-linea:hover,.boton-linea:focus{
  background:var(--durazno);
  color:var(--oscuro);
}

.panel-dato{
  background:var(--panel);
  border-radius:18px;
  border:1px solid var(--borde);
  padding:clamp(26px,2.4vw,30px);
  transition:border-color .25s ease,transform .25s ease;
}
.tira--panel .panel-dato{
  background:color-mix(in srgb,var(--fondo) 55%,var(--panel));
}
.panel-dato:hover{
  border-color:var(--durazno);
  transform:translateY(-3px);
}
.panel-dato h3{margin-bottom:.55em}
.panel-dato p{color:color-mix(in srgb,var(--tinta) 92%,var(--ceniza))}

.mosaico-4,.mosaico-3,.mosaico-2{
  display:grid;
  gap:22px;
}
.mosaico-4{grid-template-columns:repeat(4,1fr)}
.mosaico-3{grid-template-columns:repeat(3,1fr)}
.mosaico-2{grid-template-columns:1fr 1fr}
@media (max-width:980px){
  .mosaico-4{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .mosaico-4,.mosaico-3,.mosaico-2{grid-template-columns:1fr}
}

.lista-rubros{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:28px;
}
.lista-rubros li{
  margin:0;
  padding-left:22px;
  position:relative;
}
.lista-rubros li::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--durazno);
  position:absolute;
  left:0;
  top:.55em;
}
.lista-rubros h3{margin-bottom:.35em}
.lista-rubros a{font-family:Manrope,system-ui,sans-serif;font-weight:700}

.tabla-agenda{
  width:100%;
  border-collapse:collapse;
  font-size:.95rem;
}
.tabla-agenda th{
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  font-size:.76rem;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:var(--ceniza);
  text-align:left;
  padding:12px 14px 12px 0;
  border-bottom:1px solid var(--borde);
}
.tabla-agenda td{
  padding:14px 14px 14px 0;
  border-bottom:1px solid var(--borde);
  vertical-align:top;
}
.tabla-agenda td:nth-child(2),
.tabla-agenda td:nth-child(3),
.tabla-agenda td:nth-child(4){
  font-family:Manrope,system-ui,sans-serif;
  font-weight:400;
}
.tabla-agenda tbody th{
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  font-size:.95rem;
  text-transform:none;
  letter-spacing:0;
  color:var(--tinta);
}
@media (max-width:720px){
  .tabla-agenda{display:block;overflow-x:auto}
}

.acordeon{
  border-bottom:1px solid var(--borde);
}
.acordeon summary{
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  font-size:1.05rem;
  cursor:pointer;
  list-style:none;
  padding:18px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.acordeon summary::-webkit-details-marker{display:none}
.acordeon summary::after{
  content:"+";
  color:var(--durazno);
  font-family:Manrope,system-ui,sans-serif;
  font-weight:800;
  font-size:1.25rem;
  line-height:1;
  flex-shrink:0;
}
.acordeon[open] summary::after{content:"–"}
.acordeon .acordeon__cuerpo{
  padding:0 0 20px;
  color:color-mix(in srgb,var(--tinta) 92%,var(--ceniza));
}

.nota-item,.nota-destacada{
  border-top:1px solid var(--borde);
  padding:28px 0;
}
.nota-item:first-child,.nota-destacada:first-of-type{border-top:0;padding-top:0}
.nota-item .rotulo,.nota-destacada .rotulo{margin-bottom:8px}
.nota-item a,.nota-destacada a{
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
}

.definicion{
  padding-bottom:8px;
}
.definicion h3{
  font-weight:800;
  font-size:1.28rem;
  margin-bottom:.4em;
}

.cita-borde{
  border-left:3px solid var(--durazno);
  padding:.2em 0 .2em 1.1em;
  font-style:italic;
  font-size:1.12rem;
  line-height:1.65;
  margin:1.4em 0 0;
}

.aviso-chico{
  color:var(--ceniza);
  font-size:.86rem;
  line-height:1.6;
  border:1px dashed var(--borde);
  border-radius:14px;
  padding:18px 20px;
}

.reja-mayor figure img,
.foto-redonda{
  border-radius:20px;
  border:1px solid var(--borde);
  width:100%;
}
.reja-mayor figcaption,
figcaption{
  font-family:Manrope,system-ui,sans-serif;
  font-size:.8rem;
  color:var(--ceniza);
  margin-top:10px;
}

.pie{
  background:var(--panel);
  border-top:1px solid var(--borde);
  padding-block:clamp(56px,7vw,96px) 36px;
}
.pie-form h2{margin-bottom:.35em}
.pie-form .bajada,.pie p{color:color-mix(in srgb,var(--tinta) 90%,var(--ceniza))}
.pie a{color:var(--durazno)}
.pie a:visited{color:color-mix(in srgb,var(--durazno) 80%,var(--ceniza))}
.pie-datos strong{
  font-family:Manrope,system-ui,sans-serif;
  font-weight:800;
  display:block;
  margin-bottom:.5em;
  color:var(--tinta);
}
.pie-cinta{
  margin-top:48px;
  padding-top:28px;
  border-top:1px solid var(--borde);
  font-size:.88rem;
  color:var(--ceniza);
}
.pie-cinta nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  margin-bottom:16px;
}
.pie-cinta nav a{
  color:var(--tinta);
  text-decoration:none;
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  font-size:.82rem;
}
.pie-cinta nav a:visited{color:var(--tinta)}
.pie-cinta nav a:hover{color:var(--durazno)}
.pie-cinta p{margin:0 0 .55em}

.campo{margin:0 0 16px}
.campo label{
  display:block;
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  font-size:.86rem;
  margin-bottom:6px;
}
.campo input[type="text"],
.campo input[type="email"],
.campo select,
.campo textarea{
  width:100%;
  background:color-mix(in srgb,var(--fondo) 70%,var(--panel));
  color:var(--tinta);
  border:1px solid var(--borde);
  border-radius:12px;
  padding:12px 14px;
  font-family:Lora,Georgia,serif;
  font-size:1rem;
}
.campo textarea{min-height:140px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{
  outline:2px solid var(--durazno);
  outline-offset:2px;
  border-color:var(--durazno);
}
.campo--casilla{
  display:flex;
  align-items:flex-start;
  gap:10px;
}
.campo--casilla input{margin-top:5px;accent-color:var(--durazno);flex-shrink:0}
.campo--casilla label{margin:0;font-weight:400;font-family:Lora,Georgia,serif;font-size:.95rem}
.error-campo{
  color:var(--durazno);
  font-size:.86rem;
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  margin:.35em 0 0;
}
.ok-envio{
  background:color-mix(in srgb,var(--durazno) 16%,var(--panel));
  border:1px solid var(--durazno);
  color:var(--tinta);
  border-radius:14px;
  padding:14px 16px;
  margin:0 0 16px;
  font-size:.95rem;
}

.mapa-marco{
  border-radius:18px;
  overflow:hidden;
  border:1px solid var(--borde);
  min-height:280px;
  background:var(--panel);
}
.mapa-marco iframe{
  width:100%;
  height:340px;
  border:0;
  display:block;
  filter:grayscale(.35) contrast(1.05);
}

.aviso-cookies{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:50;
  background:var(--panel);
  border-top:2px solid var(--durazno);
  padding:16px 0;
  box-shadow:0 -12px 40px rgba(0,0,0,.35);
}
.aviso-cookies .eje{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
.aviso-cookies p{
  margin:0;
  font-size:.95rem;
  max-width:62ch;
}
.aviso-cookies__acciones{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 4px;
  flex-shrink:0;
}
.aviso-cookies .boton-durazno,
.aviso-cookies .boton-linea{margin:0 8px 0 0}
.aviso-cookies a{font-family:Manrope,system-ui,sans-serif;font-weight:700;white-space:nowrap}
@media (max-width:820px){
  .aviso-cookies .eje{flex-direction:column;align-items:flex-start}
}

.emerge{opacity:1;transform:none;transition:opacity .5s ease,transform .5s ease}
html.js .emerge{opacity:0;transform:translateY(16px)}
html.js .emerge.a-la-vista{opacity:1;transform:none}
.no-js .emerge{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
  .emerge{opacity:1!important;transform:none!important;transition:none}
  .panel-dato{transition:none}
  .panel-dato:hover{transform:none}
}

.lista-lateral{
  list-style:none;
  margin:0;
  padding:0;
}
.lista-lateral li{
  margin:0;
  border-bottom:1px solid var(--borde);
}
.lista-lateral a{
  display:block;
  padding:10px 0;
  font-family:Manrope,system-ui,sans-serif;
  font-weight:700;
  text-decoration:none;
  color:var(--tinta);
}
.lista-lateral a:visited{color:var(--tinta)}
.lista-lateral a:hover{color:var(--durazno)}

body{padding-bottom:88px}
@media print{
  .capsula-nav,.aviso-cookies,.pie-form{display:none}
  body{background:#fff;color:#111;padding:0}
  a{color:#111}
}
