/* container */
.wrp {
  max-width:1180px;
  margin-right:auto;
  margin-left:auto;
  padding-right:clamp(16px, 4vw, 40px);
  padding-left:clamp(16px, 4vw, 40px);
}
/* header */
.hd {
  position:relative;
  z-index:300;
  background:var(--c-lana);
  border-bottom:1px solid var(--c-hebra);
}
.hd-inf {
  font-size:.9rem;
  color:var(--c-lana);
  background:var(--c-carbon);
}
.hd-inf-in {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:var(--s-2) var(--s-5);
  min-height:40px;
  padding-top:var(--s-1);
  padding-bottom:var(--s-1);
}
.hd-inf a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-weight:700;
  color:var(--c-lana);
  text-decoration:none;
}
.hd-inf a:hover {
  color:var(--c-madeja);
}
.hd-inf-ls {
  display:flex;
  flex-wrap:wrap;
  gap:var(--s-1) var(--s-5);
  padding:0;
  list-style:none;
}
.hd-row {
  display:flex;
  align-items:center;
  gap:var(--s-5);
  min-height:76px;
}
.lg {
  display:inline-flex;
  align-items:center;
  gap:var(--s-3);
  min-height:44px;
  margin-right:auto;
  font-family:var(--f-hd);
  font-size:1.55rem;
  font-weight:900;
  letter-spacing:-.03em;
  text-decoration:none;
}
.lg img {
  width:34px;
  height:34px;
}
.nv ul {
  display:flex;
  flex-wrap:wrap;
  gap:var(--s-1) var(--s-2);
  margin:0;
  padding:0;
  list-style:none;
}
.nv a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 var(--s-3);
  font-weight:600;
  text-decoration:none;
  border-radius:999px;
}
.nv a:hover, .nv a[aria-current="page"] {
  background:var(--c-madeja);
}
.bg-lnk {
  display:inline-flex;
  align-items:center;
  gap:var(--s-2);
  min-height:44px;
  padding:0 var(--s-4);
  font-weight:700;
  text-decoration:none;
  border:1px solid var(--c-carbon);
  border-radius:999px;
}
.bg-n {
  display:inline-grid;
  place-items:center;
  min-width:1.6rem;
  height:1.6rem;
  padding:0 var(--s-1);
  font-size:.85rem;
  color:var(--c-blanco);
  background:var(--c-quemado);
  border-radius:999px;
}
.brg {
  display:none;
  width:48px;
  height:48px;
  padding:0;
  cursor:pointer;
  background:transparent;
  border:1px solid var(--c-carbon);
  border-radius:999px;
}
.brg span {
  display:block;
  width:20px;
  height:2px;
  margin:4px auto;
  background:var(--c-carbon);
}
/* mobile menu */
.mnu {
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  z-index:500;
  display:flex;
  flex-direction:column;
  gap:var(--s-4);
  width:min(100%, 420px);
  padding:var(--s-5);
  overflow-y:auto;
  visibility:hidden;
  transform:translateX(100%);
  background:var(--c-lana);
  border-left:1px solid var(--c-hebra);
  box-shadow:0 0 60px var(--c-sombra);
  transition:transform .25s ease, visibility .25s;
}
.mnu.state-open {
  visibility:visible;
  transform:none;
}
.mnu-x {
  align-self:flex-end;
  min-width:48px;
  min-height:48px;
  padding:0 var(--s-4);
  font-weight:700;
  cursor:pointer;
  background:var(--c-madeja);
  border:1px solid var(--c-hebra);
  border-radius:999px;
}
.mnu ul {
  display:grid;
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--c-hebra);
}
.mnu li a {
  display:flex;
  align-items:center;
  min-height:56px;
  font-family:var(--f-hd);
  font-size:1.35rem;
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid var(--c-hebra);
}
.mnu-tel {
  font-size:.95rem;
}
@media (max-width:1099px) {
  .js-yes .hd .nv {
    display:none;
  }
  .js-yes .brg {
    display:block;
  }
  .hd-row {
    flex-wrap:wrap;
  }
  .nv {
    flex-basis:100%;
    padding-bottom:var(--s-3);
  }
  .hd-inf-hd {
    display:none;
  }
}
@media (max-width:600px) {
  .hd-inf-ls {
    display:none;
  }
  .phd {
    padding-top:var(--s-5);
    padding-bottom:var(--s-5);
  }
}
/* sections */
.sec {
  border-bottom:1px solid var(--c-hebra);
}
.sp-a {
  padding-top:var(--s-7);
  padding-bottom:var(--s-7);
}
.sp-b {
  padding-top:var(--s-8);
  padding-bottom:var(--s-8);
}
.sp-c {
  padding-top:var(--s-9);
  padding-bottom:var(--s-9);
}
.sp-d {
  padding-top:var(--s-10);
  padding-bottom:var(--s-10);
}
.bnd-t {
  background:var(--c-madeja);
}
.sec-hd {
  display:grid;
  gap:var(--s-3);
  max-width:760px;
  margin-bottom:var(--s-6);
}
.eb {
  display:flex;
  align-items:center;
  gap:var(--s-3);
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.eb::after {
  flex:0 0 56px;
  height:1px;
  content:"";
  background:var(--c-carbon);
}
.g2 {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--s-6);
}
.g3 {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--s-5);
}
@media (max-width:860px) {
  .g2, .g3 {
    grid-template-columns:minmax(0, 1fr);
  }
}
/* page head */
.phd {
  padding-top:var(--s-7);
  padding-bottom:var(--s-6);
  border-bottom:1px solid var(--c-hebra);
}
.phd-in {
  display:grid;
  gap:var(--s-3);
}
.phd-ld {
  max-width:720px;
  font-size:1.12rem;
}
.crm {
  display:flex;
  flex-wrap:wrap;
  gap:var(--s-2);
  margin:0;
  padding:0;
  font-size:.92rem;
  list-style:none;
}
.crm a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
}
.crm li {
  display:inline-flex;
  align-items:center;
  min-height:44px;
}
.crm li + li::before {
  margin-right:var(--s-2);
  content:"/";
  color:var(--c-urdimbre);
}
/* footer */
.ft {
  padding-top:var(--s-10);
  padding-bottom:var(--s-6);
  color:var(--c-lana);
  background:var(--c-carbon);
}
.ft a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:var(--c-lana);
}
.ft a:hover {
  color:var(--c-madeja);
}
.ft-cols {
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr;
  gap:var(--s-7);
}
.ft-cols h2 {
  margin-bottom:var(--s-3);
  font-size:1.15rem;
}
.ft-cols ul {
  margin:0;
  padding:0;
  list-style:none;
}
.ft-lg {
  margin-bottom:var(--s-3);
  font-family:var(--f-hd);
  font-size:2rem;
  font-weight:900;
}
.ft-bt {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:var(--s-3);
  margin-top:var(--s-8);
  padding-top:var(--s-5);
  font-size:.92rem;
  border-top:1px solid var(--c-urdimbre);
}
@media (max-width:760px) {
  .ft-cols {
    grid-template-columns:minmax(0, 1fr);
    gap:var(--s-5);
  }
}
