:root {

  --c-blanco: #FFFFFF;
  --c-negro: #000;
  --c-gris: #474446;
  --c-gris-light: #F2F2F2;
  --c-verde-light: #168EB3;
  --c-verde-dark: #00394A;
  --c-verde-dark-2: #002732;
  --c-turquesa: #69DFF0;

  --border-sm: 10px;

  --font: "Host Grotesk", sans-serif;
  --html-txt: 12px;
  --txt-p: 1.45rem;
  --txt-h1: 3rem;
  --txt-h2: 3rem;
  --txt-h3: 2.2rem;
  --txt-h4: 2rem;
  --txt-h5: 1.6rem;

  --txt-h5-c: var(--c-verde-light);
  --txt-c: var(--c-verde-dark);
  --txt-h5-before: "\2015\00a0";

  --link-c: var(--c-verde-dark);
  --link-hover-c: var(--c-verde-light);

  --tyf-col-txt-mt: -100px;

  --rrss-height: 15px;
  --rrss-margin: 0 1rem 0 0;
  --rrss-color: var(--filtro-verde-dark-2);
  --rrss-color-hover: var(--filtro-verde-light);

  --nav-top: 40px;
  --nav-padding: 0 30px;
  --nav-item-padding: .5rem 0;
  --dropdown-item-padding: .75rem;
  --dropdown-item-txt: 0.9rem;

  --padding-header: 20px;
  --padding-secciones: 8rem;
  --padding-foto-back-txt: 4rem 2rem 7rem;
  --padding-card: 1.4rem;

  --p-margin: 1.5rem;

  --aspect-foto-lado: 3/2;
  --aspect-foto-contenedor: 1/1;
  --aspect-foto-post: 3/2;

  --card-border-color: var(--c-turquesa);
  --card-borde-juntas: var(--c-verde-light);
  --card-img-border: 0 0 10px 10px;
  --card-icon-color: var(--filtro-verde-dark-2);
  --cont-cards-margin: 5rem;

  --tyf-foto-back-img-h: 300px;
  --tyf-lado-borde-c:var(--c-verde-dark);

  --back-elipse: var(--c-blanco);
  --back-seccion: var(--c-blanco);
  --back-card: var(--c-verde-dark);

  --btn-text: var(--c-gris-light);
  --btn-text-hover: var(--c-turquesa);
  --btn-back: var(--c-verde-dark-2);
  --btn-borde: var(--c-verde-light);
  --btn-arrow: var(--filtro-turquesa);

  --cookie-width: 90%;
  --cookie-right: 5%;

  --filtro-verde-dark: invert(11%) sepia(95%) saturate(2098%) hue-rotate(174deg) brightness(92%) contrast(101%);
  --filtro-verde-dark-2: invert(12%) sepia(47%) saturate(1344%) hue-rotate(153deg) brightness(97%) contrast(104%);
  --filtro-turquesa: invert(70%) sepia(69%) saturate(321%) hue-rotate(143deg) brightness(102%) contrast(88%);
  --filtro-blanco: invert(100%) sepia(0%) saturate(0%) hue-rotate(152deg) brightness(108%) contrast(103%);
  --filtro-verde-light: invert(41%) sepia(43%) saturate(3854%) hue-rotate(167deg) brightness(91%) contrast(83%);

  --svg-arrow: url("data:image/svg+xml,%3Csvg width='12' height='20' viewBox='0 0 12 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_10153_6)'%3E%3Cpath d='M2.77865 20L0 17.4713L6.89011 10.0023L0 2.53336L2.77865 0L12 10.0023L2.77865 20Z' fill='%23000000'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_10153_6'%3E%3Crect width='12' height='20' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");

  --svg-medio-escudo: url("data:image/svg+xml,%3Csvg width='179' height='640' viewBox='0 0 179 640' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M178.944 0C180.038 115.402 165.085 258.421 110.342 412.491C79.332 499.803 40.7909 575.798 0 641.034V0H178.944Z' fill='black'/%3E%3C/svg%3E%0A");

  --svg-menu: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='svg9724' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 565.14'%3E%3Cg id='g10449'%3E%3Cpath id='path1237' d='M125.08,502.57c0-34.03-28.55-62.57-62.54-62.57-33.99,0-62.54,28.54-62.54,62.57s28.56,62.57,62.54,62.57,62.54-28.54,62.54-62.57Z'/%3E%3Cpath id='path1235' d='M125.08,282.57c0-34.03-28.55-62.57-62.54-62.57-33.99,0-62.54,28.54-62.54,62.57,0,34.03,28.56,62.57,62.54,62.57,33.99,0,62.54-28.54,62.54-62.57Z'/%3E%3Cpath id='path346' d='M125.08,62.57C125.08,28.54,96.53,0,62.54,0,28.56,0,0,28.54,0,62.57s28.56,62.57,62.54,62.57c33.99,0,62.54-28.54,62.54-62.57Z'/%3E%3Cpath id='path1011' d='M215.28,15.21c-25.01,0-45.28,21.2-45.28,47.35h0c0,26.15,20.27,47.35,45.28,47.36h339.45c25.01,0,45.28-21.2,45.28-47.35h0c0-26.15-20.27-47.36-45.27-47.36H215.28Z'/%3E%3Cpath id='path1011-7' d='M215.28,235.22c-25.01,0-45.28,21.2-45.28,47.35,0,26.15,20.27,47.35,45.28,47.35h339.45c25.01,0,45.28-21.2,45.28-47.35h0c0-26.15-20.27-47.36-45.28-47.36H215.28Z'/%3E%3Cpath id='path1011-5' d='M215.28,455.22c-25.01,0-45.28,21.2-45.28,47.35,0,26.15,20.27,47.35,45.28,47.35h339.45c25.01,0,45.28-21.2,45.28-47.35h0c0-26.15-20.27-47.36-45.28-47.36H215.28Z'/%3E%3C/g%3E%3C/svg%3E");

  --svg-whats: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %2300e676; %7D .cls-2 %7B fill: %23fff; %7D %3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M26.43,85.95l1.63.81c6.81,4.05,14.44,5.95,22.07,5.95h0c23.98,0,43.6-19.46,43.6-43.24,0-11.35-4.63-22.43-12.81-30.54-8.17-8.11-19.07-12.7-30.79-12.7C26.16,6.22,6.54,25.68,6.81,49.73c0,8.11,2.45,15.95,6.54,22.7l1.09,1.62-4.36,15.95,16.35-4.05Z'/%3E%3Cpath class='cls-2' d='M85.56,14.59C76.29,5.14,63.49,0,50.41,0,22.62,0,.27,22.43.54,49.73c0,8.65,2.45,17.03,6.54,24.59L0,100l26.43-6.76c7.36,4.05,15.53,5.95,23.71,5.95h0c27.52,0,49.86-22.43,49.86-49.73,0-13.24-5.18-25.68-14.44-34.86ZM50.41,90.81h0c-7.36,0-14.71-1.89-20.98-5.68l-1.63-.81-15.8,4.05,4.09-15.41-1.09-1.62C3,52.16,8.72,26.76,28.34,14.86c19.62-11.89,44.96-6.22,56.95,13.24,11.99,19.46,6.27,44.59-13.35,56.49-6.27,4.05-13.9,6.22-21.53,6.22ZM74.39,60.81l-3-1.35s-4.36-1.89-7.08-3.24c-.27,0-.54-.27-.82-.27-.82,0-1.36.27-1.91.54h0s-.27.27-4.09,4.59c-.27.54-.82.81-1.36.81h-.27c-.27,0-.82-.27-1.09-.54l-1.36-.54h0c-3-1.35-5.72-2.97-7.9-5.14-.54-.54-1.36-1.08-1.91-1.62-1.91-1.89-3.81-4.05-5.18-6.49l-.27-.54c-.27-.27-.27-.54-.54-1.08,0-.54,0-1.08.27-1.35,0,0,1.09-1.35,1.91-2.16.54-.54.82-1.35,1.36-1.89.54-.81.82-1.89.54-2.7-.27-1.35-3.54-8.65-4.36-10.27-.54-.81-1.09-1.08-1.91-1.35h-3c-.54,0-1.09.27-1.63.27l-.27.27c-.54.27-1.09.81-1.63,1.08-.54.54-.82,1.08-1.36,1.62-1.91,2.43-3,5.41-3,8.38h0c0,2.16.54,4.32,1.36,6.22l.27.81c2.45,5.14,5.72,9.73,10.08,13.78l1.09,1.08c.82.81,1.63,1.35,2.18,2.16,5.72,4.86,12.26,8.38,19.62,10.27.82.27,1.91.27,2.72.54h2.72c1.36,0,3-.54,4.09-1.08.82-.54,1.36-.54,1.91-1.08l.54-.54c.54-.54,1.09-.81,1.63-1.35.54-.54,1.09-1.08,1.36-1.62.54-1.08.82-2.43,1.09-3.78v-1.89s-.27-.27-.82-.54Z'/%3E%3C/svg%3E");

  --svg-edit: url('data:image/svg+xml,%3Csvg viewBox="0 0 49 49" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M41.2526 2.19671L46.5559 7.50001C49.4849 10.4289 49.4849 15.1777 46.5559 18.1066L42.0479 22.6145L26.1381 6.70461L30.6459 2.19671C33.5749 -0.732237 38.3236 -0.732237 41.2526 2.19671ZM23.4864 9.35626L3.16776 29.6748C1.95959 30.883 1.20016 32.4675 1.01516 34.166L0.0301397 43.2105C-0.31581 46.3868 2.36564 49.0683 5.54209 48.7223L14.5864 47.7373C16.285 47.5523 17.8695 46.793 19.0776 45.5848L39.3961 25.266L23.4864 9.35626Z" fill="black"/%3E%3C/svg%3E');

}


html {
  background-color: var(--c-verde-dark-2);
  font-size: var(--html-txt);
  scroll-behavior: smooth;
}

body {
  background-color: var(--back-seccion);
  color: var(--txt-c);
  font-family: var(--font);
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  transition: transform .5s;
}

/* Tipo */

p {
  font-size: var(--txt-p);
  color: var(--txt-c);
  line-height: 1.5;
}

*+p {
  margin-top: var(--p-margin);
}

p:not(:has(~ *)) {
  margin-bottom: 0;
}

p:has(+ h3) {
  margin-bottom: 2rem;
}

h1,
h2,
h3,
h4 {
  text-wrap: balance;
  color: var(--txt-c);
  font-weight: 300;
}

h1 {
  font-size: var(--txt-h1);
  line-height: 1.1;
}

h2 {
  font-size: var(--txt-h2);
  line-height: 1.1;
}

h2:has(+ p) {
  margin-bottom: 2rem;
}

h2:has(+ h4) {
  margin-bottom: 2rem;
}

h3 {
  font-size: var(--txt-h3);
  line-height: 1.3;
}

h3:has(+ h4) {
  margin-bottom: 1.4rem;
}

h4 {
  font-size: var(--txt-h4);
  line-height: 1.3;
}

h4:has(+ h3) {
  margin-bottom: 1.6rem;
}

h5 {
  color: var(--txt-h5-c);
  font-size: var(--txt-h5);
  font-weight: 300;
}

h5:has(+ h1)::before,
h5:has(+ h2)::before,
h5:has(+ h3)::before,
h5:has(+ h4)::before {
  content: var(--txt-h5-before);
}

/* Botones y Links */

a {
  display: inline-block;
  text-decoration: none;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
  color: unset;
  position: relative;
}

a:hover {
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

*:has(+ .link-di) {
  margin-bottom: 2rem;
}

*:has(+ .btn-di) {
  margin-bottom: 4rem;
}

.btn-di {
  background-color: var(--btn-back);
  color: var(--btn-text);
  padding: 1rem 1.4rem;
  font-size: 1.2rem;
  border-radius: var(--border-sm);
  -webkit-box-shadow: 0px 5px 0px 0px var(--btn-borde);
  box-shadow: 0px 5px 0px 0px var(--btn-borde);
  top: 0;
  outline: none;
  border: none;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.btn-di:hover {
  color: var(--btn-text-hover);
  top: 3px;
  -webkit-box-shadow: 0px 2px 0px 0px var(--btn-borde);
  box-shadow: 0px 2px 0px 0px var(--btn-borde);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.btn-di::after {
  content: '';
  background-image: var(--svg-arrow);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  height: 20px;
  display: inline-block;
  margin-left: 1.8rem;
  vertical-align: middle;
  filter: var(--btn-arrow);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.btn-di:hover::after {
  opacity: .75;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.btn-di-out {
  --btn-text: var(--c-verde-dark-2);
  --btn-back: var(--c-turquesa);
}

.btn-di-mini {
  font-size: 1rem;
  padding: 0.8rem 1rem;
}

.btn-di-out:hover {
  --btn-text-hover: var(--c-verde-light);
}

.btn-di-out::after {
  --btn-arrow: var(--filtro-verde-dark-2);
}

.link-di {
  --btn-arrow: var(--filtro-verde-dark-2);

  color: var(--link-c);
  font-size: 1rem;
}

.link-di:hover {
  color: var(--link-hover-c);
}

.link-di::after {
  content: '';
  background-image: var(--svg-arrow);
  background-size: contain;
  background-repeat: no-repeat;
  width: 6px;
  height: 10px;
  position: absolute;
  top: 5px;
  right: -13px;
  display: inline-block;
  /* margin-left: .5rem; */
  /* vertical-align: middle; */
  filter: var(--btn-arrow);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.link-di:hover::after {
  /* margin-left: 1rem; */
  right: -20px;
}

.link-di.prev::after {
  left: -15px;
  transform: rotate(180deg);
}

.link-di.prev:hover::after {
  left: -22px;
}

.link-slide {
  color: var(--txt-c);
  font-size: 1.7rem;
  text-decoration: none;
  position: relative;
  display: inline;
  background-image: linear-gradient(var(--txt-c), var(--txt-c));
  background-size: 0% 4px;
  background-repeat: no-repeat;
  background-position: left bottom;
  -webkit-transition: background-size 0.3s ease-out;
  -o-transition: background-size 0.3s ease-out;
  transition: background-size 0.3s ease-out;
}

.link-slide:hover {
  background-size: 100% .5px;
}

.icon-rrss {
  margin: var(--rrss-margin);
}

.icon-rrss img {
  filter: var(--rrss-color);
  width: auto;
  height: var(--rrss-height);
}

.icon-rrss:hover img {
  filter: var(--rrss-color-hover);
}

#btn-whats {
  position: fixed;
  bottom: 5px;
  left: 5px;
  z-index: 999;
}

#btn-whats a {
  display: block;
  width: 50px;
  height: 50px;
  background-image: var(--svg-whats);
  background-size: contain;
  background-repeat: no-repeat;
  filter: drop-shadow(2px 2px 5px var(--c-verde-dark));
}

#btn-whats a:hover {
  width: 65px;
  height: 65px;
  transform: rotate(5deg);
}

/* Menu */

nav.navbar {
  background-color: transparent;
  padding: var(--nav-padding);
  top: var(--nav-top);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

nav.navbar.scrolled {
  background-color: var(--c-verde-dark-2);
  background-color: color-mix(in srgb, var(--c-verde-dark-2) 95%, transparent);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
  backdrop-filter: blur(3px);
  top: 0;
  /* filter: drop-shadow(0px 5px 10px var(--c-verde-dark-2)); */
}

nav.navbar.scrolled .navbar-brand img{
  width: 45px;
  padding-top: 5px;
}

nav.top-nav {
  top: var(--nav-top);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

nav .nav-item {
  padding: var(--nav-item-padding);
}

nav .navbar-nav {
  background: var(--c-gris-light);
  padding: .5rem 1rem;
  border-radius: var(--border-sm);
}

a.nav-link {
  color: var(--c-verde-dark-2);
  text-transform: uppercase;
  font-weight: 500;
  font-size: 0.9rem;
  letter-spacing: 0.04rem;
  display: block;
}

a.nav-link:hover,
.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
  color: var(--c-verde-light);
}

.navbar-toggler {
  padding: 0;
  border: none;
}

.navbar-toggler-icon {
  filter: var(--filtro-turquesa);
  background-image: var(--svg-menu);
  background-size: contain;
  transition: background-image 0.3s ease;
}

.navbar-toggler:focus {
  box-shadow: none;
}

.navbar-collapse.show {
  margin-bottom: 30px;
  transition: margin 0.3s ease;
}

.dropdown-menu[data-bs-popper] {
  background-color: var(--c-verde-dark-2);
  padding: 0;
  border: none;
  border-radius: var(--border-sm);
  overflow: hidden;
}

.dropdown-item {
  color: var(--c-turquesa);
  padding: var(--dropdown-item-padding);
  font-size: var(--dropdown-item-txt);
  text-transform: uppercase;
  font-weight: 500;
}

.dropdown-item:focus,
.dropdown-item:hover,
.dropdown-item.active,
.dropdown-item:active {
  --bs-dropdown-link-active-bg: var(--c-turquesa);
  --bs-dropdown-link-hover-bg: var(--c-turquesa);
  --bs-dropdown-link-hover-color: var(--c-verde-dark);
  --bs-dropdown-link-active-color: var(--c-verde-dark);
}

/* Header */
header {
  position: sticky;
  top: 0;
  z-index: 10;

  --txt-h5-c: var(--c-turquesa);
  --btn-text: var(--c-verde-dark-2);
  --btn-text-hover: var(--c-verde-light);
  --btn-back: var(--c-turquesa);
  --btn-arrow: var(--filtro-verde-dark-2);

  background: var(--c-turquesa);
  padding: var(--padding-header);
  /* min-height: 600px; */
}

header>.container-fluid {
  background-image: linear-gradient(90deg, var(--c-negro) 0%, var(--c-verde-dark) 100%);
  border-radius: var(--border-sm);
}

header p {
  --txt-c: var(--c-gris-light);
}

header h1,
header h3,
header h4 {
  --txt-c: var(--c-gris-light);
}

.hero-img {
  width: 100%;
  height: auto;
  margin: 5rem 0;
  /* mix-blend-mode: lighten; */
  -webkit-mask-image: linear-gradient(black 70%, transparent 100%);
  mask-image: linear-gradient(black 70%, transparent 100%);
}

.header-txt-solo {
  padding: 12rem 0 5rem;
}

/* Utilidades */

section {
  background-color: var(--back-seccion);
  padding: var(--padding-secciones) 0;
  position: relative;
  z-index: 11;
}

.row-btn {
  margin-top: 3.25rem;
}

/* CARDS */

div:has(> .card-di) {
  margin-bottom: .75rem;
  margin-top: .75rem;
}

.card-cont-txt+.cont-cards {
  margin-top: var(--cont-cards-margin);
}

.cards-juntas {
  background-color: var(--back-card);
  border-radius: var(--border-sm);
  border-top: 10px solid var(--card-border-color);
  overflow: hidden;
}

.card-di {
  --p-margin: 1rem;
  --link-c: var(--c-gris-light);

  background-color: var(--back-card);
  border-radius: var(--border-sm);
  height: 100%;
  overflow: hidden;
  border-top: 10px solid var(--card-border-color);
  position: relative;
}

.cards-juntas .card-di {
  background-color: transparent;
  border-radius: 0;
  border-top: none;
}

.cards-juntas .card-di::after {
  content: "";
  background-color: var(--card-borde-juntas);
  width: 70%;
  height: 1px;
  position: absolute;
  right: 15%;
  bottom: 0;
}

.cards-juntas [class^="col-"]:last-child .card-di:after {
  content: none;
}

.card-img {
  background-color: var(--c-verde-dark-2);
  border-radius: var(--card-img-border);
  overflow: hidden;

}

.card-img img {
  width: 100%;
  aspect-ratio: 5/3;
  object-fit: cover;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.card-img.card-servicios-img img {
  aspect-ratio: 7/5;
}

.card-img img:hover {
  mix-blend-mode: luminosity;
  transform: scale(1.05);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.card-icon {
  padding: 0 var(--padding-card);
  margin-top: 3rem;
}

.cards-juntas .card-icon {
  text-align: center;
}

.card-icon img,
.card-icon svg {
  width: auto;
  max-width: 50px;
  height: calc(var(--padding-card)*3);
  display: inline-block;
  filter: var(--card-icon-color);
}

.card-txt {
  padding: var(--padding-card);
  container-type: inline-size;
}

.cards-juntas .card-txt {
  text-align: center;
}

.card-txt .link-di {
  --btn-arrow: var(--filtro-turquesa);

}

.card-di p {
  --txt-p: 1.14rem;
  --txt-c: var(--c-gris-light);

  text-wrap: balance;
}

.card-di:not(.card-servicios) .card-img+.card-txt p {
  --txt-p: 1.35rem;
}

.card-di h1 {
  --txt-c: var(--c-turquesa);
  --txt-h1: clamp(1.5rem, 70cqi, 6rem);

  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.2rem;
}

.card-di h2 {
  --txt-c: var(--c-turquesa);
  --txt-h2: 3rem;
}

.card-di h3 {
  --txt-c: var(--c-turquesa);
  --txt-h3: 2rem;
}

.card-di h4 {
  --txt-c: var(--c-turquesa);
  --txt-h4: 1.6rem;
}

.card-txt> :only-child {
  max-width: 80%;
}

.card-di-invert {
  --back-card: var(--c-turquesa);
  --card-border-color: var(--c-verde-dark);
}

.card-di-invert p {
  --txt-c: var(--c-verde-light);
}

.card-di-invert .post-date {
  margin-bottom: 9rem;
}

.card-di-invert h4 {
  --txt-c: var(--c-verde-dark);
}

.card-di-invert .link-di {
  --link-c: var(--c-verde-dark);
  --btn-arrow: var(--filtro-verde-dark);
}

/* Texto y Foto */

.tyf p {
  text-wrap: balance;
}

.tyf-col-txt *:has(+ h2)>img,
.tyf-col-txt *:has(+ h3)>img,
.tyf-col-txt *:has(+ h4)>img {
  max-width: 25px;
  height: auto !important;
}

.tyf-lado-foto {
  width: 100%;
  aspect-ratio: var(--aspect-foto-lado);
  object-fit: cover;
  border-radius: var(--border-sm);
  border-top: 10px solid var(--tyf-lado-borde-c);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.tyf-lado-foto:hover {
  border-top-width: 20px;
  transform: scale(1.02);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.tyf-full-foto-cont {
  z-index: 1;
  position: relative;
}

.tyf-full-foto-cont img {
  width: 70%;
  margin: 0 auto;
  display: block;
  -webkit-mask-image: linear-gradient(black, transparent);
  mask-image: linear-gradient(black, transparent);
}

.tyf-full-foto-cont+.tyf-col-txt {
  margin-top: var(--tyf-col-txt-mt);
  z-index: 9;
  position: relative;
}

.tyf-foto-back {
  padding: 0;
  overflow: hidden;
}

section.tyf-foto-back::before {
  content: none;
}

.tyf-foto-back-img {
  width: 100%;
  height: var(--tyf-foto-back-img-h);
  min-height: 400px;
  background-size: cover;
}

.tyf-foto-back-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.tyf-foto-back .tyf-col-txt {
  padding: var(--padding-foto-back-txt);
}

.tyf-foto-back-img::after {
  content: " ";
  background-color: var(--back-elipse);
  width: 100%;
  height: 50px;
  position: absolute;
  bottom: -1px;
  left: 0;
  -webkit-clip-path: ellipse(100% 100% at 0% 110%);
  clip-path: ellipse(100% 100% at 0% 110%);
}

.tyf-col-txt ol,
.tyf-col-txt ul,
.stxt ol,
.stxt ul {
  padding-left: 1.3rem;
  margin: 1.5rem 0 3rem;
}

.tyf-col-txt ul,
.stxt ul {
  list-style: none;
}

.tyf-col-txt li,
.stxt li {
  font-size: 1.2rem;
  position: relative;
  margin-bottom: .75rem;
}

.tyf-col-txt li::before,
.stxt ul li::before {
  content: '';
  background-image: var(--svg-arrow);
  background-size: contain;
  background-repeat: no-repeat;
  width: 10px;
  height: 10px;
  display: block;
  position: absolute;
  left: -1rem;
  top: 0.5rem;
  filter: var(--filtro-turquesa);
}

.tyf-col-txt ol li::marker,
.stxt ol li::marker {
  color: var(--c-turquesa);
  margin-right: .75rem;
  font-weight: 500;
}

.stxt h4:not(:first-child) {
  margin-top: 3rem;
}

.stxt p a {
  text-decoration: underline;
  text-decoration-color: var(--c-turquesa);
  text-decoration-thickness: 3px;
  text-underline-offset: 5px;
}

.stxt p a:hover {
  color: var(--c-turquesa);
}

/* BLOG */

.blog-post {
  --txt-p: 1.3rem;
  --txt-h2: 2.75rem;
  --txt-h3: 2.2rem;
  --txt-h4: 1.8rem;
  --txt-h5: 1.4rem;
}

.blog-post * {
  text-wrap: pretty;
}

.blog-post *+h2 {
  margin-top: 3rem;
}

.blog-post .stxt {
  --txt-h5-before: none;
}

.blog-post .stxt h5 {
  --txt-h5-c: var(--c-verde-dark);

  margin-bottom: 2rem;
}

.blog-post .stxt img {
  margin-bottom: 1rem;
  width: 100% !important;
  height: auto !important;
  border-radius: var(--border-sm);
  border-top: 10px solid var(--c-verde-dark);
}

.post-img-principal {
  aspect-ratio: var(--aspect-foto-post);
  object-fit: cover;
}

.cont-videos {
  border-radius: var(--border-sm);
  overflow: hidden;
}

.cont-videos:has(+ *) {
  margin-bottom: 5rem;
}

*:has(+ .cont-videos) {
  margin-bottom: 3rem;
}

.paginacion {
  margin-top: 3rem;
  text-align: center;
}

.paginacion a {
  margin: 0 2rem;
}

/* FOOTER */

footer {
  --txt-c: var(--c-verde-light);
  --txt-p: 1rem;
  --txt-h3: 1.45rem;
  --p-margin: 1rem;
  --rrss-height: 20px;
  --rrss-color: var(--filtro-blanco);

  background: var(--c-turquesa);
  padding: var(--padding-header);

  position: relative;
  z-index: 11;
}

footer>.container-fluid {
  background-image: linear-gradient(90deg, var(--c-verde-dark) 0%, var(--c-negro) 100%);
  border-radius: var(--border-sm);
}

.cont-footer {
  padding: 4rem 0;
}

.footer-datos {
  margin-top: 4rem;
}

footer h3 {
  --txt-c: var(--c-turquesa);
}

footer ul {
  list-style: none;
  padding-left: 0;
}

footer ul li {
  margin-bottom: 1rem;
}

footer ul li,
footer ul a {
  color: var(--c-verde-light);
}

footer p a:hover,
footer ul a:hover {
  color: var(--c-turquesa);
}

/*
FORMULARIO
*/

a[name="contacto"] {
  position: absolute;
}

.form-di dt {
  display: none;
}

.form-di .form-control {
  color: var(--c-verde-dark);
  background-color: var(--c-gris-light);
  border-radius: var(--border-sm);
  outline: none;
  font-size: 1.2rem;
  padding: 1rem;
  margin-bottom: 1.5rem;
}

.form-di .form-control.input-error {
  border: 1px solid var(--c-turquesa);
  background-color: color-mix(in srgb, var(--c-turquesa) 10%, transparent);
}

p.recaptcha {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.forma-error {
  margin-bottom: 1rem;
  font-size: 1.25rem;
  color: var(--c-verde-light);
}

/* 
BACKS 
*/

/* Blanco */

.back-blanco+.back-blanco {
  padding-top: 0;
}

/* TURQUESA */

.back-turquesa+.back-turquesa {
  padding-top: 0;
}

.back-turquesa {
  --back-elipse: var(--c-turquesa);
  --back-seccion: var(--c-turquesa);
  --card-border-color: var(--c-verde-light);
  --card-icon-color: var(--filtro-verde-light);
}

.back-turquesa .card-di {
  --txt-h5-c: var(--c-turquesa);
}

/* VERDE DARK 2 */

.back-verde-dark-2+.back-verde-dark-2 {
  padding-top: 0;
}

.back-verde-dark-2 {
  --txt-c: var(--c-turquesa);
  --txt-h5-c: var(--c-turquesa);
  --back-elipse: var(--c-verde-dark-2);
  --back-seccion: var(--c-verde-dark-2);
  --btn-text: var(--c-verde-dark-2);
  --btn-text-hover: var(--c-verde-light);
  --btn-back: var(--c-turquesa);
  --btn-arrow: var(--filtro-verde-dark-2);
  --tyf-lado-borde-c: var(--c-verde-light);
}

.back-verde-dark-2 p {
  --txt-c: var(--c-gris-light);
}

.back-verde-dark-2 h3 {
  --txt-c: var(--c-verde-light);
}

.back-verde-dark-2 .card-di h3 {
  --txt-c: var(--c-turquesa);
}

/* GRIS */

.back-gris-light+.back-gris-light {
  padding-top: 0;
}

.back-gris-light {
  --back-elipse: var(--c-gris-light);
  --back-seccion: var(--c-gris-light);
  --txt-h5-c: var(--c-verde-dark);
}

.back-gris-light::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/textura-01.png) 0 0 repeat;
  background-attachment: fixed;
  mix-blend-mode: overlay;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  opacity: .4;
}

.back-gris-light>.container-lg {
  z-index: 1;
  position: relative;
}

.back-gris-light h5 {
  --txt-h5-c: var(--c-verde-light);
}


/*
COOKIES
*/

#cookieModal {
  background-color: var(--back-seccion);
  padding: 1.15rem;
  position: fixed;
  bottom: 10px;
  right: var(--cookie-right);
  width: var(--cookie-width);
  display: none;
  z-index: 99999;
  transition: transform 0.5s ease-out;
  transform: translateY(100%);
  border-radius: var(--border-sm);
}

#cookieModal.show {
  transform: translateY(0);
}

#cookieModal h5 {
  color: var(--c-blanco);
  margin-bottom: .5rem;
}

#cookieModal p {
  font-size: .9rem;
}

#cookieModal p a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

#cookieModal .btn-di {
  margin: 0 1rem 0 0;
}

#cookieModal .btn-di-out {
  --btn-back: var(--c-verde-light);
  --btn-borde: var(--c-turquesa);
  --btn-text-hover: var(--c-verde-dark-2);
}

#cookieModal *:has(+ .btn-di) {
  margin-bottom: 2rem;
}

/*
Edit
*/
.edit {
  background-color: var(--c-gris);
  height: 50px;
  width: 50px;
  border-radius: 100%;
  padding: 8px 10px 10px;
  left: 5px;
  bottom: 50%;
  position: fixed;
  z-index: 99999;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.edit:hover {
  background-color: var(--c-verde-dark);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.edit span {
  background-color: var(--c-blanco);
  width: 30px;
  height: 30px;
  -webkit-mask-image: var(--svg-edit);
  mask-image: var(--svg-edit);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  display: inline-block;
  vertical-align: -webkit-baseline-middle;
  vertical-align: -moz-middle-with-baseline;
}

.edit a {
  display: block;
  width: 100%;
  height: 100%;
}

@media (min-width: 576px) {}

@media (min-width: 768px) {
  :root {
    --tyf-foto-back-img-h: 100%;
    --padding-foto-back-txt: 8rem 0;
    --padding-secciones: 10rem;
    --padding-header: 30px;
    --aspect-foto-lado: 1/1;
    --nav-item-padding: 0 1.2rem;
    --rrss-margin: 0 0 0 1rem;
  }

  nav .nav-item {
    border-right: 1px solid var(--c-blanco);
  }

  nav.navbar.scrolled .navbar-brand img{
    width: 100%;
  }

  .dropdown-menu[data-bs-popper] {
    top: calc(100% - 2px);
  }

  header.home .row {
    min-height: calc(100% - (var(--padding-header)*2));
  }

  .cards-juntas .card-di::after {
    width: 1px;
    height: 70%;
    position: absolute;
    right: 0;
    top: 15%;
  }

  .tyf-foto-back-img::after {
    width: 20%;
    height: 100%;
    top: 0;
    bottom: auto;
    left: -1px;
    -webkit-clip-path: ellipse(100% 100% at 0% 5%);
    clip-path: ellipse(100% 100% at 0% 5%);
  }

  .tyf-foto-back-img.extend-left::after {
    right: -1px;
    left: auto;
    -webkit-clip-path: ellipse(100% 100% at 100% 5%);
    clip-path: ellipse(100% 100% at 100% 5%);
  }
}

@media (min-width: 992px) {
  :root {
    --html-txt: 14px;
    --nav-top: 65px;
    --aspect-foto-post: 5/2;
    --cookie-width: 25%;
    --cookie-right: 10px;
  }
}

@media (min-width: 1200px) {
  :root {
    --padding-foto-back-txt: 14rem 0;
    --tyf-col-txt-mt: -150px;
    --txt-h1: 4.3rem;
    --txt-h2: 4rem;
    --txt-h3: 2.8rem;
    --cont-cards-margin: 9rem;
  }

  /* header.home {
    max-height: 100dvh;
    
  }

  header.home>.container-fluid{
    height: calc(100vh - (var(--padding-header) * 2));
    overflow: hidden;
  } */

}

@media (min-width: 1400px) {}

@media (max-width: 575.98px) {
  .dropdown-item {
    white-space: normal;
  }
}

@media (max-width: 767.98px) {

  .tyf-lado-foto {
    margin-bottom: 3rem;
  }

}

@media (max-width: 991.98px) {

  .container,
  .container-fluid,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

@media (max-width: 1199.98px) {}