:root {

  --c-blanco: #FFFFFF;
  --c-blanco-rgb: 255, 255, 255;
  --c-blanco-in: #F2F4F6;
  --c-blanco-in-rgb: 242, 244, 246;
  --c-negro: #000A19;
  --c-negro-rgb: 0, 10, 25;
  --c-rojo: #EA0029;
  --c-rojo-rgb: 234, 0, 41;
  --c-rojo-dark: #6B0017;
  --c-gris-dark: #808DA3;
  --c-gris-dark-rgb: 128, 141, 163;
  --c-azul: #003A99;
  --c-azul-rgb: 0, 58, 153;
  --c-azul-acento: #56C1FF;
  --c-azul-acento-rgb: 86, 193, 255;
  --c-azul-dark: #001B47;
  --c-azul-dark-rgb: 0, 27, 71;

  --c-negro-0: rgba(0, 10, 25, 0);

  --grad-azul: linear-gradient(90deg, var(--c-azul-dark) 0%, var(--c-azul-acento) 100%);

  --btn-bg: var(--c-rojo);
  --btn-color: var(--c-blanco);
  --btn-hover-bg: var(--c-azul-dark);
  --btn-hover-color: var(--c-blanco);

  --btn-out-border: var(--c-rojo);
  --btn-out-bg: transparent;
  --btn-out-color: var(--c-rojo);
  --btn-hover-out-border: var(--c-rojo);
  --btn-hover-out-bg: var(--c-rojo);
  --btn-hover-out-color: var(--c-blanco);


  --border-sm: 4px;
  --border-md: 10px;

  --font-body: "DM Sans", sans-serif;
  --font-titulos: "Funnel Display", sans-serif;

  --padding-secciones: 5rem;
  --padding-interno: 1.5rem;

  --filtro-blanco: brightness(0) invert(1);
  --filtro-azul-acento: invert(71%) sepia(61%) saturate(2215%) hue-rotate(174deg) brightness(102%) contrast(101%);
  --filtro-azul-dark: invert(4%) sepia(93%) saturate(6551%) hue-rotate(213deg) brightness(91%) contrast(101%);
  --filtro-rojo: invert(33%) sepia(85%) saturate(6574%) hue-rotate(338deg) brightness(83%) contrast(125%);
  --filtro-gris-dark: invert(58%) sepia(10%) saturate(688%) hue-rotate(179deg) brightness(94%) contrast(91%);


  --svg-menu: url("data:image/svg+xml,%3Csvg width='27' height='23' viewBox='0 0 27 23' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='1.5' y1='1.5' x2='25.5' y2='1.5' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3Cline x1='1.5' y1='11.5' x2='25.5' y2='11.5' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3Cline x1='1.5' y1='21.5' x2='25.5' y2='21.5' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");

  --svg-flecha: url("data:image/svg+xml,%3Csvg width='23' height='17' viewBox='0 0 23 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23 8.5L10.6603 0L9.05296 0.669697L9.04575 2.44329L15.6553 6.99134L0.965841 6.98398L0 8.5L0.958634 9.92771L15.749 9.93507L9.04575 14.5567L9.05296 16.3229L10.6603 17V16.9926L23 8.5Z' fill='black'/%3E%3C/svg%3E%0A");

  --svg-flecha-mini: url("data:image/svg+xml,%3Csvg width='21' height='8' viewBox='0 0 21 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.4648 0.464806C16.6601 0.269544 16.9766 0.269544 17.1719 0.464806L20.3535 3.64645C20.5488 3.84171 20.5488 4.15822 20.3535 4.35348L17.1719 7.53512C16.9766 7.73038 16.6601 7.73038 16.4648 7.53512C16.2696 7.33986 16.2696 7.02335 16.4648 6.82809L18.793 4.49996H0V3.49996H18.793L16.4648 1.17184C16.2696 0.976575 16.2696 0.660068 16.4648 0.464806Z' fill='black'/%3E%3C/svg%3E%0A");

  /* --svg-caret: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); */

  --svg-caret: url("data:image/svg+xml,%3Csvg width='18' height='15' viewBox='0 0 18 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.0227 14.4772L17.5227 2.13749L16.853 0.530157L15.0794 0.522949L10.5314 7.13247L7.58764 7.22618L2.96599 0.522949L1.19976 0.530156L0.522705 2.13749L0.530064 2.13749L9.0227 14.4772Z' fill='black'/%3E%3C/svg%3E%0A");

  --svg-facebook: url('data:image/svg+xml,%3Csvg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 9.44 17"%3E%3Cpath d="M9.44,0h-2.58c-1.14,0-2.23,.45-3.04,1.24-.81,.8-1.26,1.88-1.26,3.01v2.55H0v3.4H2.58v6.8h3.43v-6.8h2.58l.86-3.4h-3.43v-2.55c0-.23,.09-.44,.25-.6,.16-.16,.38-.25,.61-.25h2.58V0Z"/%3E%3C/svg%3E');

  --svg-comillas: url("data:image/svg+xml,%3Csvg%20width%3D%2290%22%20height%3D%2272%22%20viewBox%3D%220%200%2090%2072%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M90%200V10.1854C85.2542%2011.3561%2081.3559%2013.5805%2078.3051%2016.8585C75.2542%2019.9025%2073.0508%2023.8829%2071.6949%2028.8C70.339%2033.4829%2069.661%2038.8683%2069.661%2044.9561H83.3898V72H50.8475V48.8195C50.8475%2035.4732%2053.2203%2025.4049%2057.9661%2018.6146C62.7119%2011.8244%2068.1356%207.14146%2074.2373%204.56586C80.678%201.99025%2085.9322%200.468301%2090%200ZM39.1525%200V10.1854C34.4068%2011.3561%2030.5085%2013.5805%2027.4576%2016.8585C24.4068%2019.9025%2022.2034%2023.8829%2020.8475%2028.8C19.4915%2033.4829%2018.8136%2038.8683%2018.8136%2044.9561H32.5424V72H0V48.8195C0%2035.4732%202.37288%2025.4049%207.11865%2018.6146C12.2034%2011.8244%2017.7966%207.14146%2023.8983%204.56586C30%201.99025%2035.0847%200.468301%2039.1525%200Z%22%20fill%3D%22black%22/%3E%3C/svg%3E");

  --svg-external: url('data:image/svg+xml,%3Csvg viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M18.3345 7.51913C18.6136 7.79815 19.0332 7.88159 19.3978 7.73061C19.7623 7.57961 20 7.22386 20 6.82927V0.97561C20 0.43679 19.5632 0 19.0244 0H13.1707C12.7761 0 12.4204 0.237698 12.2694 0.602263C12.1183 0.96682 12.2019 1.38645 12.4809 1.66547L14.3729 3.5575L7.88853 10.0419C7.50753 10.4229 7.50753 11.0406 7.88853 11.4216L8.57834 12.1114C8.95941 12.4925 9.57707 12.4925 9.95815 12.1114L16.4425 5.62709L18.3345 7.51913Z" fill="black"/%3E%3Cpath d="M2.92683 5.85375C2.92683 5.58434 3.14523 5.36594 3.41463 5.36594H8.35366C8.89249 5.36594 9.32927 4.92914 9.32927 4.39033V3.41472C9.32927 2.8759 8.89249 2.43911 8.35366 2.43911H3.41463C1.52878 2.43911 0 3.96789 0 5.85375V16.5855C0 18.4713 1.52878 20.0001 3.41463 20.0001H14.1463C16.0322 20.0001 17.561 18.4713 17.561 16.5855V11.6465C17.561 11.1076 17.1242 10.6709 16.5854 10.6709H15.6098C15.0709 10.6709 14.6341 11.1076 14.6341 11.6465V16.5855C14.6341 16.8549 14.4157 17.0733 14.1463 17.0733H3.41463C3.14523 17.0733 2.92683 16.8549 2.92683 16.5855V5.85375Z" fill="black"/%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-rojo);
  font-size: 14px;
}

body {
  background-color: var(--c-negro);
  color: var(--c-azul-dark);
  font-family: var(--font-body);
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  transition: transform .5s;
}



/*
TIPO
*/

p {
  font-size: 1rem;
  line-height: 1.55;
}

*:has(+ :is(.card-in ol, .card-in ul, .stxt ul, .stxt ol, .tyf-foto-back ol, .tyf-foto-back ul, .tyf ol, .tyf ul)) {
  margin-bottom: 2rem;
}

*+p {
  margin-top: 1.5rem;
}

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

p small {
  font-size: .875rem;
}

p:has(>small) {
  line-height: 1rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
  font-family: var(--font-titulos);
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  margin-bottom: 0;
}

:is(h1, h2, h3, h4, h5, h6)> :is(b, strong) {
  font-weight: inherit;
}

h1 {
  font-size: 3.5rem;
  line-height: 1;
  word-break: break-word;
}

header.home h1 {
  font-size: 3.5rem;
}

h1:has(+ h4) {
  margin-bottom: 1.5rem;
}

h1:has(+ h5) {
  margin-bottom: 1.5rem;
}

h2 {
  font-size: 2.8rem;
  line-height: 1.1;
  font-weight: 400;
  background: linear-gradient(90deg, var(--c-azul-dark) 0%, var(--c-azul-acento) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  background-size: 200% 100%;
  animation: gradientShift 15s ease-in-out infinite;
}

h2:has(+ h3) {
  margin-bottom: 1.5rem;
}

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

h3 {
  font-size: 2rem;
  line-height: 1.3;
}

h4 {
  font-size: 1.4rem;
  line-height: 1.3;
}

h5 {
  color: var(--c-rojo);
  font-size: 1.375rem;
  line-height: 1.4;
  font-weight: 200;
}

h5:has(+ :is(h1, h2, h3)) {
  margin-bottom: 1rem;
}

/* 
LINKS Y BOTONES 
*/
*:has(+ .btn-in) {
  margin-bottom: 3rem;
}

.btn-in:has(+ .btn-in) {
  margin-bottom: 2rem;
  margin-right: 1rem;
  margin-left: 1rem;
}

.btn-in+.btn-in {
  margin-left: 1rem;
  margin-right: 1rem;
}

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;
}

.btn-in {
  background-color: var(--btn-bg);
  color: var(--btn-color);
  padding: 15px 30px;
  font-family: var(--font-titulos);
  font-size: 1rem;
  font-weight: 300;
  border-radius: var(--border-sm);
  border: none;
}

.btn-in:hover {
  color: var(--btn-hover-color);
  background-color: var(--btn-hover-bg);
}

.btn-in-sm {
  font-size: 0.75rem;
  padding: 10px 20px;
}

.btn-in-out {
  background-color: var(--btn-out-bg);
  color: var(--btn-out-color);
  border: 1px solid var(--btn-out-border);
}

.btn-in-out:hover {
  color: var(--btn-hover-out-color);
  background-color: var(--btn-hover-out-bg);
  border-color: var(--btn-hover-out-border);
}

.link-in {
  color: var(--c-azul-dark);
}

.link-in:hover {
  color: var(--c-azul-acento);
}

.link-in::after {
  content: '';
  background-image: var(--svg-flecha-mini);
  background-size: contain;
  background-repeat: no-repeat;
  width: 21px;
  height: 8px;
  display: inline-block;
  margin-left: 0.5rem;
  vertical-align: middle;
  opacity: 0;
  transform: translateX(-10px);
  -webkit-transition: opacity ease-out .3s, transform ease-out .3s;
  -o-transition: opacity ease-out .3s, transform ease-out .3s;
  transition: opacity ease-out .3s, transform ease-out .3s;
  filter: var(--filtro-azul-acento);
}

.link-in:hover::after {
  opacity: 1;
  transform: translateX(0);
}

/* 
UTILIDADES
 */
section {
  padding: var(--padding-secciones) 0;
}

.borde-grad {
  position: relative;
  background: transparent;
  border-radius: var(--border-sm);
  z-index: 1;
}

.borde-grad::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(45deg,
      var(--c-negro-0) 5%,
      var(--c-azul-acento) 40%,
      var(--c-azul-acento) 60%,
      var(--c-negro-0) 95%);
  background-size: 400% 400%;
  border-radius: var(--border-sm);
  z-index: -1;
  padding: 1px;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: gradientFlow 20s ease infinite var(--animation-delay, 0s);
}

.row-tit:has(+ .row) {
  margin-bottom: 3.25rem;
}

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

@keyframes gradientFlow {

  0%,
  100% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }
}

@keyframes gradientShift {

  0%,
  100% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }
}

/* Reveal Animation */
.card-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.card-in.reveal {
  opacity: 1;
  transform: translateY(0);
}

.accordion-item {
  opacity: 0;
  transform: translateX(-70px);
  transition: opacity 1s ease, transform 1s ease;
}

.accordion-item.reveal {
  opacity: 1;
  transform: translateX(0);
}

/*
Header
*/

header {
  background-color: var(--c-negro);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  position: relative;
}

header.home {
  padding-top: 100px;
  padding-bottom: var(--padding-secciones);
  position: relative;
  background-position: center 15%;
  background-size: 150%;
}

header:not(.home)::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background: var(--c-negro);
  top: 0;
  left: 0;
}

header.home::before {
  content: "";
  background: linear-gradient(0deg, var(--c-negro) 10%, var(--c-negro-0) 90%);
  position: absolute;
  width: 100%;
  height: 300px;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.head {
  position: relative;
  z-index: 2;
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease-out, transform 1s ease-out;
}

.head.animate {
  opacity: 1;
  transform: translateY(0);
}

header.home+section {
  padding-top: 0;
  position: relative;
}

header.home+section::before {
  content: "";
  background: linear-gradient(180deg, var(--c-negro) 10%, var(--c-negro-0) 100%);
  position: absolute;
  width: 100%;
  height: 200px;
  /* top: calc(.5 * var(--padding-secciones)); */
  top: 0;
  left: 0;
  z-index: 0;
}

header.home+section [class^="container"] {
  background-color: var(--c-blanco);
  padding-top: var(--padding-secciones);
  /* margin-top: calc(-.5 * var(--padding-secciones)); */
  border-radius: var(--border-md);
  position: relative;
  z-index: 3;
}

header p b,
header p strong {
  color: var(--c-azul-acento);
  font-weight: inherit;
}

header h5:has(+ h1) {
  color: var(--c-rojo);
  margin-bottom: 1rem;
}

header h5 {
  color: var(--c-blanco);
}

.img-header-int {
  margin-bottom: 2rem;
  position: relative;
}

.img-header-int img {
  max-width: 100%;
  aspect-ratio: 2/1;
  object-fit: cover;

}

.img-header-int::after {
  content: "";
  background: linear-gradient(0deg, rgba(var(--c-negro-rgb), 1) 5%, rgba(var(--c-negro-rgb), .5) 100%);
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  z-index: 1;
}


/* 
Menu 
*/
.navbar {
  padding: 0;
  top: 2rem;
}

.navbar [class^="container"] {
  padding: 30px 20px;
  background-color: rgba(255, 255, 255, 0.01);
  backdrop-filter: blur(15px);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.navbar .btn-in-out {
  --btn-out-border: var(--c-blanco);
  --btn-out-color: var(--c-blanco);
}

.navbar.light {
  top: 1rem;
}

.navbar.light [class^="container"] {
  padding: 15px 20px;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.nav-link {
  color: var(--c-azul-acento);
  /* margin-left: 20px; */
  font-family: var(--font-titulos);
  font-size: 1em;
}

.nav-link:hover,
.nav-link:focus {
  color: var(--c-blanco-in);
}

.navbar.light .nav-link {
  color: var(--c-azul-dark);
}

.navbar.light .nav-link:hover,
.navbar.light .nav-link:focus {
  color: var(--c-azul-acento);
}

/* .navbar .btn-in {
  margin-left: 20px;
} */

.navbar.light .btn-in-out {
  --btn-out-border: var(--c-rojo);
  --btn-out-color: var(--c-rojo);
  --btn-hover-out-bg: var(--c-rojo);
  --btn-hover-out-color: var(--c-blanco);
  --btn-hover-out-border: var(--c-rojo);
}

.dropdown-toggle::after {
  content: '';
  background-image: var(--svg-caret);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  height: 8px;
  border: none;
  margin-left: 0.5rem;
  display: inline-block;
  vertical-align: middle;
  filter: var(--filtro-azul-acento);
  transition: transform 0.3s ease;
}

.dropdown-toggle.show::after {
  transform: rotate(180deg);
}

.dropdown-toggle:hover::after,
.dropdown-toggle:focus::after {
  filter: var(--filtro-blanco);
}

.navbar.light .dropdown-toggle::after {
  filter: var(--filtro-azul-dark);
}

.navbar.light .dropdown-toggle:hover::after,
.navbar.light .dropdown-toggle:focus::after {
  filter: var(--filtro-azul-acento);
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: var(--c-rojo);
}

.dropdown-item.active,
.dropdown-item:active {
  background-color: var(--c-rojo);
}

.menu-off {
  background-color: transparent;
  border: none;
  /* margin-left: 20px; */
  padding: 0;
}

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

.navbar.light .navbar-toggler-icon {
  filter: var(--filtro-azul-dark);
}

.offcanvas {
  background-color: var(--c-negro);
  padding: 2rem;
}

.offcanvas-body {
  padding: 0;
}

.offcanvas-body>ul {
  padding: 3rem 2rem 2rem;
  min-height: 100%;
  list-style: none;
}

.offcanvas-body li {
  margin-bottom: .75rem;
}

.offcanvas-body li a {
  color: var(--c-azul-acento);
  font-family: var(--font-titulos);
  font-size: 1.5rem;
}

.btn-close {
  background: transparent var(--bs-btn-close-bg) center / 1.5rem auto no-repeat;
  width: 1.5em;
  height: 1.5em;
  filter: var(--filtro-azul-acento);
  position: absolute;
  top: 3rem;
  right: 3rem;
  z-index: 99;
  opacity: 1;
  border-radius: 0;
}

.btn-close:hover {
  filter: var(--filtro-blanco);
}

.offcanvas-body li a:hover,
.offcanvas-body li a.active {
  color: var(--c-blanco-in);
}

.submenu-parent {
  position: relative;
}

.submenu-toggle {
  background: none;
  border: none;
  padding: .3rem;
  margin-left: 0.5rem;
  cursor: pointer;
  display: inline-block;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
}

.submenu-icon {
  width: 20px;
  height: 12px;
  background-image: var(--svg-caret);
  background-size: contain;
  background-repeat: no-repeat;
  filter: var(--filtro-azul-acento);
  transition: transform 0.3s ease;
  display: block;
}

.submenu-parent.active .submenu-icon {
  transform: rotate(180deg);
}

.submenu {
  display: none;
  list-style: none;
  padding-left: 0;
  margin-top: 0.5rem;
  margin-bottom: 0;
}

.submenu li {
  margin-bottom: 0.5rem;
}

.submenu li a {
  font-size: 1.2rem;
  color: var(--c-gris-dark);
  padding: 0.25rem 0;
  display: block;
}

.submenu li a:hover,
.submenu li a.active {
  color: var(--c-azul-acento);
}

.submenu.show {
  display: block;
}

.offcanvas-backdrop {
  background-color: var(--c-azul-dark);
}

.offcanvas-backdrop.show {
  opacity: .9;
}

.offcanvas-body .icon-rrss{
  margin-left: 0;
  margin-right: .75rem;
}

/* 
CARDS 
*/
.card-cont-txt:has(+ .cont-cards) {
  margin-bottom: 5rem;
}

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

.card-in {
  color: var(--c-blanco);
  background-color: var(--c-azul);
  height: 100%;
  padding: var(--padding-interno);
  border-radius: var(--border-md);
  text-wrap: balance;
}

.card-in h5 {
  color: var(--c-blanco);
}

.card-in ul,
.tyf-foto-back ul,
.tyf ul,
.accordion-body ul,
.stxt ul {
  list-style: none;
  padding-left: 1.5rem;
}

.card-in ul li,
.tyf-foto-back ul li,
.tyf ul li,
.accordion-body ul li,
.stxt ul li{
  position: relative;
  padding-left: .5rem;
  margin-bottom: 0.75rem;
}

.card-in ul li::before,
.tyf-foto-back ul li::before,
.tyf ul li::before,
.accordion-body ul li::before,
.stxt ul li::before{
  content: '';
  background-image: var(--svg-caret);
  background-size: contain;
  background-repeat: no-repeat;
  width: 12px;
  height: 8px;
  display: block;
  position: absolute;
  left: -1rem;
  top: 0.5rem;
  filter: var(--filtro-azul-acento);
  transform: rotate(-90deg);
}

.card-in ol,
.tyf-foto-back ol,
.tyf ol,
.accordion-body ol,
.stxt ol {
  padding-left: 1.5rem;
}

.card-in ol li,
.tyf-foto-back ol li,
.tyf ol li,
.accordion-body ol li,
.stxt ol li{
  position: relative;
  padding-left: .5rem;
  margin-bottom: 0.75rem;
}

.card-in ol li::marker,
.tyf-foto-back ol li::marker,
.tyf ol li::marker,
.accordion-body ol li::marker,
.stxt ol li::marker{
  color: var(--c-azul-acento);
}

.card-icon {
  width: auto;
  height: 30px;
  margin-bottom: 4rem;
  filter: var(--filtro-azul-acento);
}

.card-txt {
  margin-bottom: 0;
}

.card-txt p {
  font-size: 1rem;
}

.card-txt>p:only-child {
  font-size: 1.13rem;
}

.card-txt :is(h1, h2, h3, h4, h5, h6):not(:has(~ *)) {
  margin-bottom: 0;
}

.card-numeracion {
  color: var(--c-rojo);
  font-family: var(--font-titulos);
  font-weight: 100;
  font-size: 4.75rem;
  line-height: 2.7rem;
  margin-bottom: 6rem;
  display: inline-block;
}

/* Card con link AKA servicios */
.card-con-link {
  display: block;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
  color: var(--c-azul-acento);
}

.card-con-link:hover {
  background-color: var(--c-azul-dark);
  color: var(--c-blanco);
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.card-con-link:hover h5 {
  color: var(--c-azul-acento);
}

.card-flecha {
  width: 23px;
  height: 17px;
  filter: var(--filtro-blanco);
  background-image: var(--svg-flecha);
  background-size: contain;
  display: inline-block;
  opacity: 0;
  position: relative;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.card-con-link:hover .card-flecha {
  opacity: 1;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

/* Card Bandera */
div:has(> .card-in.card-in-bandera) {
  margin: 0;
}

.card-in.card-in-bandera {
  background-color: transparent;
  padding: 0 calc(var(--padding-interno)/2) 8rem var(--padding-interno);
  border-left: 1px solid var(--c-azul-acento);
  border-radius: 0;
}

.card-in.card-in-bandera :is(h1, h2, h3, h4, h5, h6) {
  color: var(--c-azul);
}

.card-in.card-in-bandera p {
  color: var(--c-azul-dark);
}

.card-in.card-in-bandera .card-icon {
  width: auto;
  height: 45px;
  filter: var(--filtro-rojo);
}

/* Card con foto */
.card-in-foto {
  border: 1px solid var(--c-azul-acento);
  border-radius: var(--border-md);
  overflow: hidden;
}

div:has(> .card-in-foto) {
  margin-bottom: 2rem;
}

.card-in-foto .foto a {
  display: block;
  width: 100%;
  height: 150px;
  background-size: cover;
  position: relative;
  overflow: hidden;
}

.card-in-foto .foto a::before {
  content: '';
  background-color: var(--c-azul-dark);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  mix-blend-mode: color;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.card-in-foto:hover .foto a::before {
  opacity: 1;
  -webkit-transition: all ease-out .3s;
  -o-transition: all ease-out .3s;
  transition: all ease-out .3s;
}

.card-in-foto-txt {
  padding: var(--padding-interno);
}

.card-in-foto-txt p{
  font-size: 1rem;
}

/* 
BLOG 
*/

h3.post-title {
  margin-bottom: 0;
}

.post-title a {
  color: var(--c-azul-dark);
}

.post-title a:hover {
  color: var(--c-azul);
}

.card-in-foto-txt .post-date {
  color: var(--c-gris-dark);
  margin-top: .5rem;
  font-size: 0.8rem;
}

.head .post-date {
  color: var(--c-gris-dark);
}

.head h1:has(+ .post-date) {
  margin-bottom: 1rem;
}

.post-desc {
  margin-bottom: 1rem;
}

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

/* 
TEXTO Y FOTO 
*/

.tyf .tyf-foto-back {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: var(--padding-secciones) var(--padding-interno);
  overflow: hidden;
}

.tyf .tyf-foto-back::after {
  content: "";
  background: linear-gradient(90deg, var(--c-blanco) 40%, rgba(var(--c-blanco-rgb), 0) 90%);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}

.tyf .tyf-foto-back.invert::after {
  transform: rotate(180deg);
}

/* .tyf h5,
.stxt h5,
.stxt-col-1 h5 {
  color: var(--c-rojo);
} */

.tyf-col-txt {
  margin: 2rem 0;
}

.tyf-col-txt img,
.stxt-col-1 img,
.stxt-col-2 img,
.stxt img {
  margin-bottom: 1rem;
  max-width: 100%;
  height: auto !important;
  border-radius: var(--border-md);
}

.tyf-full-foto {
  background-size: cover;
  position: relative;
}

.tyf-full-foto::before {
  content: '';
  background-color: var(--c-azul-dark);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: .3;
  mix-blend-mode: hard-light;
}

.tyf-full-foto .tyf-full-foto-cont {
  background-color: rgba(var(--c-blanco-rgb), 0.7);
  padding: calc(var(--padding-secciones)*.75) calc(var(--padding-interno)*2);
  backdrop-filter: blur(15px);
  border-radius: var(--border-md);
}

.tyf-lado-foto {
  aspect-ratio: 6/7;
  object-fit: cover;
  border-radius: var(--border-md);
}

/* 
SOLO FOTO 
*/

.solo-foto {
  background-color: var(--c-rojo);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 200px;
  position: relative;
}

.solo-foto::before {
  content: '';
  background-color: var(--c-azul-dark);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: .3;
  mix-blend-mode: hard-light;
}

.foto-contenedor img {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 2/1;
  object-fit: cover;
  border-radius: var(--border-md);
}

/* 
SOLO TEXTO 
*/

.stxt-col-2 {
  padding: 3rem 0;
}

.stxt h4:not(:first-child),
.stxt h3:not(:first-child),
.tyf-col-txt h4:not(:first-child) {
  margin-top: 3rem;
}

.stxt p a,
.tyf-col-txt p a {
  text-decoration: underline var(--c-azul-acento) 2px;
  text-underline-offset: 4px;
}

.stxt p a:hover,
.tyf-col-txt p a:hover {
  color: var(--c-azul-acento);
}

.stxt li > p:first-child{
  margin-bottom: .5rem
}
.stxt li > p+p{
  margin-top: .75rem;
}

/* 
CTA 
*/

.cta-cont {
  color: var(--c-blanco);
  background-color: var(--c-rojo);
  padding: calc(var(--padding-secciones)*.75) calc(var(--padding-interno)*2);
  border-radius: var(--border-md);
}

.cta *:has(+ p) {
  margin-bottom: 1rem;
}

.cta h2 {
  color: var(--c-blanco);
  background: none;
}

.cta:not(.back-rojo) .btn-in {
  border: 1px solid var(--c-blanco);
}

/* 
ACORDEÓN  
*/

.accordion {
  --bs-accordion-color: transparent;
  --bs-accordion-border-radius: 0;
}

.accordion-item {
  background-color: transparent;
  color: var(--c-blanco-in);
  border: none;
  border-bottom: 1px solid var(--c-blanco-in);
}

.accordion-item:has(.accordion-button:not(.collapsed)) {
  border-bottom: none;
}

.accordion-item:first-of-type,
.accordion-item:first-of-type>.accordion-header .accordion-button {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion-button {
  color: var(--c-gris-dark);
  font-size: inherit;
  font-weight: inherit;
  padding-left: 0;
  background-color: transparent;
}

.accordion-button:not(.collapsed) {
  color: var(--c-azul);
  background-color: transparent;
  box-shadow: none;
}

.accordion-button::after,
.accordion-button:not(.collapsed)::after {
  background-image: var(--svg-flecha);
}

.accordion-button::after {
  transform: rotate(90deg);
  filter: var(--filtro-gris-dark);
}

.accordion-button:not(.collapsed)::after {
  transform: rotate(-90deg);
  filter: var(--filtro-rojo);
}

.accordion-button:focus {
  box-shadow: none;
}


.accordion-body {
  background-color: var(--c-azul);
  padding: 0;
  border-radius: var(--border-md);
  overflow: hidden;
}

.accordion-body img {
  max-width: 40%;
  aspect-ratio: 3/2;
  object-fit: cover;
  margin-bottom: 0;
}

.accordion-body-inner {
  padding: 1rem;
}

.accordion-body p,
.accordion-body ul,
.accordion-body ol {
  margin-top: .85rem;
}

.accordion-body-inner p {
  font-size: 1rem;
}

.accordion-body-inner>p:only-child {
  font-size: 1.13rem;
  margin-top: 0;
}

.accordion-body-inner a {
  color: var(--c-azul-acento);
  text-decoration: underline var(--c-blanco) 2px;
  text-underline-offset: 4px;
}

.accordion-body-inner a:hover {
  color: var(--c-blanco);
}

/* 
TESTIMONIOS 
*/

.testimonios-cont>h5 {
  color: var(--c-azul);
  margin-bottom: 2rem;
}

.testimonios-cont>h5::before {
  content: '';
  background-image: var(--svg-comillas);
  background-size: contain;
  background-repeat: no-repeat;
  width: 90px;
  height: 72px;
  display: block;
  margin: 0 auto 2rem auto;
  filter: var(--filtro-rojo);
}

.carousel-indicators {
  margin-bottom: 0;
  bottom: -40px;
}

.carousel-indicators [data-bs-target] {
  width: 10px;
  height: 10px;
  border-radius: 100%;
}


/* 
FOOTER 
*/

footer {
  color: var(--c-gris-dark);
  background-color: var(--c-negro);
  padding: var(--padding-secciones) 0;
}

footer .borde-grad {
  padding: calc(var(--padding-interno)*1.75) var(--padding-interno);
}

.footer-logo {
  margin-bottom: 3rem;
}

footer p {
  color: var(--c-rojo);
}

footer p:has(>small) {
  color: var(--c-gris-dark);
}

footer p small {
  font-size: .7rem;
  line-height: 1;
}

footer a:hover {
  color: var(--c-azul-acento);
}

footer h5{
  color: var(--c-gris-dark);
}

footer .icon:hover {
  background-color: var(--c-rojo);
}

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

footer li {
  font-size: .875rem;
  line-height: 1rem;
  margin-bottom: .875rem;
}

footer li:last-child {
  margin-bottom: 0;
}



.disclaimer {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.disclaimer p {
  margin-top: auto !important;
}

/*
FORMULARIO
*/

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

.form-in dt{
	display: none;
}

.form-in .form-control{
	background-color: transparent;
	border:1px solid var(--c-azul-acento);
  border-radius: var(--border-sm);
	outline: none;
	font-size: 1rem;
	padding: 1rem;
	margin-bottom: 1rem;
}

.form-in .form-control.input-error{
  border-color: var(--c-rojo);
}


/*
SVG
*/
.icon {
  width: 25px;
  height: 25px;
  -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;
}

.icon-facebook {
  -webkit-mask-image: var(--svg-facebook);
  mask-image: var(--svg-facebook);
}

.icon-blanco {
  background-color: var(--c-blanco);
}

.icon-azul-acento {
  background-color: var(--c-azul-acento);
}

a.external::after {
  content: '';
  width: 10px;
  height: 10px;
  background-color: var(--c-azul-acento);
  margin-left: 0.3rem;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  display: inline-block;
  vertical-align: baseline;
  -webkit-mask-image: var(--svg-external);
  mask-image: var(--svg-external);
}

.icon-rrss{
  margin-left: .75rem;
}
.icon-rrss img{
  filter: var(--filtro-azul-acento);
  width: 25px;
  height: 25px;
}

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

/*
COOKIES
*/

#cookieModal {
  padding: 1.15rem;
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: calc(100% - 40px);
  display: none;
  z-index: 99999;
  transition: transform 0.5s ease-out;
  transform: translateY(100%);
  border-radius: var(--border-md);
}

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

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

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

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

/*
Edit
*/
.edit {
  background-color: var(--c-rojo);
  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-rojo-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%;
}

/* 
BACKS 
*/

/* Generales para fondos oscuros */
:is(.head, .back-negro, .back-azul-dark) :is(h1, h2, h3, h4, h6, p, ul, ol) {
  color: var(--c-blanco-in);
}

:is(.back-negro, .back-azul-dark) h2 {
  background: linear-gradient(90deg, var(--c-azul-acento) 0%, var(--c-azul) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  background-size: 200% 100%;
  animation: gradientShift 15s ease-in-out infinite;
}

:is(.back-negro, .back-azul-dark) .card-in h5 {
  color: var(--c-azul-acento);
}


:is(.head, .back-negro, .back-azul-dark) :is(h1, h2, h3, h4, h6) :is(b, strong) {
  color: var(--c-azul-acento);
}

:is(.head, .back-negro, .back-azul-dark, .navbar:not(.light)) :is(.btn-in):hover {
  --btn-hover-color: var(--c-rojo);
  --btn-hover-bg: var(--c-blanco);
}

:is(.head, .back-negro, .back-azul-dark) :is(.btn-in-out) {
  --btn-out-color: var(--c-blanco);
  --btn-out-border: var(--c-blanco);
}

:is(.back-negro, .back-azul-dark) .card-in {
  background-color: transparent;
}

:is(.back-negro, .back-azul-dark) .card-in.card-in-bandera {
  border-left-color: var(--c-azul);
}

:is(.back-negro, .back-azul-dark) .card-in.card-in-bandera p {
  color: var(--c-blanco-in);
}

:is(.back-negro, .back-azul-dark) .card-in :is(h1, h2, h3, h4, h5, h6) {
  color: var(--c-azul-acento);
}

:is(.back-negro, .back-azul-dark) .accordion-button {
  color: var(--c-blanco-in);
}

:is(.back-negro, .back-azul-dark) .accordion-button:not(.collapsed) {
  color: var(--c-azul-acento);
}

:is(.back-negro, .back-azul-dark) .accordion-item {
  border-bottom-color: var(--c-azul);
}

/* Negro */
.back-negro {
  background-color: var(--c-negro);
}

.back-negro+.back-negro:not(.tyf-full-foto) {
  padding-top: 0;
}

.back-negro.tyf .tyf-foto-back::after {
  background: linear-gradient(90deg, var(--c-negro) 40%, var(--c-negro-0) 90%);
}

.back-negro.tyf-full-foto .tyf-full-foto-cont {
  background-color: rgba(var(--c-negro-rgb), 0.7);
}

.back-negro.tyf-full-foto h5 {
  color: var(--c-azul-acento);
}

.home+section.back-negro [class^="container"] {
  background-color: var(--c-negro);
}

.back-negro .card-numeracion {
  color: var(--c-azul-acento);
}

/* Azul Dark */
.back-azul-dark {
  background-color: var(--c-azul-dark);
}

.back-azul-dark+.back-azul-dark:not(.tyf-full-foto){
  padding-top: 0;
}

.tyf-full-foto.back-azul-dark .tyf-full-foto-cont {
  background-color: rgba(var(--c-azul-dark-rgb), .6);
}

.back-azul-dark.tyf .tyf-foto-back::after {
  background: linear-gradient(90deg, var(--c-azul-dark) 40%, rgba(var(--c-azul-dark-rgb), 0) 90%);
}

.back-azul-dark.tyf-full-foto h5 {
  color: var(--c-azul-acento);
}

.home+section.back-azul-dark [class^="container"] {
  background-color: var(--c-azul-dark);
}

/* Gris Dark */
.back-gris-dark {
  background-color: var(--c-gris-dark);
}

.back-gris-dark+.back-gris-dark:not(.tyf-full-foto){
  padding-top: 0;
}

.back-gris-dark h2 {
  background: none;
  color: var(--c-blanco);
  -webkit-text-fill-color: var(--c-azul-dark);
}

.back-gris-dark .btn-in {
  --btn-bg: var(--c-blanco);
  --btn-color: var(--c-azul-dark);
}

.back-gris-dark .btn-in-out {
  --btn-hover-out-color: var(--c-azul-dark);
}

.back-gris-dark.tyf h5,
.back-gris-dark.stxt h5 {
  color: var(--c-blanco);

}

.back-gris-dark.tyf .tyf-foto-back::after {
  background: linear-gradient(90deg, var(--c-gris-dark) 40%, rgba(var(--c-gris-dark-rgb), 0) 90%);
}

.back-gris-dark .borde-grad::before {
  background: none;
  border: 1px solid var(--c-azul-dark);
}

.back-gris-dark.tyf-full-foto .tyf-full-foto-cont {
  background-color: rgba(var(--c-gris-dark-rgb), 0.7);
}

.home+section.back-gris-dark [class^="container"] {
  background-color: var(--c-gris-dark);
}

.back-gris-dark .card-in {
  background-color: var(--c-azul-dark);
}

.back-gris-dark .card-in.card-in-bandera {
  border-left-color: var(--c-azul);
  background-color: transparent;
}

.back-gris-dark .card-in.card-in-bandera .card-icon{
  filter: var(--filtro-blanco);
}

.back-gris-dark .card-in.card-in-bandera :is(h1, h2, h3, h4, h5, h6){
  color: var(--c-azul-dark);
}

.back-gris-dark .card-in.card-in-bandera .card-numeracion {
  color: var(--c-azul);
}

.back-gris-dark .accordion-button {
  color: var(--c-blanco-in);
}

.back-gris-dark .accordion-button:not(.collapsed) {
  color: var(--c-azul-dark);
}

.back-gris-dark .accordion-button::after {
  filter: var(--filtro-blanco);
}

.back-gris-dark .accordion-button:not(.collapsed)::after {
  filter: var(--filtro-azul-dark);
}

.back-gris-dark .testimonios-cont>h5::before {
  filter: var(--filtro-blanco);
}

/* AZUL */
.back-azul {
  background-color: var(--c-azul);
}

.back-azul+.back-azul:not(.tyf-full-foto){
  padding-top: 0;
}


/* Rojo */
.back-rojo {
  background-color: var(--c-rojo);
}

.back-rojo+.back-rojo:not(.tyf-full-foto){
  padding-top: 0;
}

.back-rojo .cta-cont {
  background-color: var(--c-blanco);
}

.back-rojo .cta-cont :is(h1, h2, h3, h4, h5, h6, p) {
  color: var(--c-azul-dark);
}

/* Blanco */
.back-blanco {
  background-color: var(--c-blanco);
}

.back-blanco+.back-blanco:not(.tyf-full-foto){
  padding-top: 0;
}

.back-blanco+.back-blanco:not(.tyf-full-foto) {
  padding-top: 0;
}

.back-blanco.cta .btn-in:hover,
.back-rojo .btn-in.btn-in-out:hover {
  background-color: var(--c-blanco);
  color: var(--c-rojo);
}

.back-blanco.tyf-full-foto.back-rojo .tyf-full-foto-cont {
  background-color: rgba(var(--c-rojo-rgb), .6);
}

/* Gris AKA Blanco IN*/
.back-gris {
  background-color: var(--c-blanco-in);
}

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

.back-gris.tyf .tyf-foto-back::after {
  background: linear-gradient(90deg, var(--c-blanco-in) 40%, rgba(var(--c-blanco-in-rgb), 0) 90%);
}

.back-gris.tyf-full-foto .tyf-full-foto-cont {
  background-color: rgba(var(--c-blanco-in-rgb), 0.7);
}

.home+section.back-gris [class^="container"] {
  background-color: var(--c-blanco-in);
}

.back-gris .card-in {
  background-color: transparent;
  border: 1px solid var(--c-azul-acento);
}

.back-gris .card-con-link:hover {
  background-color: var(--c-azul);
}

.back-gris .card-con-link:hover h5 {
  color: var(--c-azul-acento);
}

.back-gris .card-in :is(h1, h1 a, h2, h2 a, h3, h3 a, h4, h4 a, h5, h5 a, h6, h6 a) {
  color: var(--c-azul);
}

.back-gris .card-in.card-in-bandera {
  border: none;
  border-left: 1px solid var(--c-azul-acento);
}

.back-gris .card-in :is(p, ol, ul) {
  color: var(--c-azul-dark);
}

.back-gris .accordion-body {
  color: var(--c-azul-dark);
  background-color: transparent;
  border: 1px solid var(--c-azul-acento);
}

.back-gris .accordion-item {
  border-bottom-color: var(--c-blanco);
}

.back-gris .accordion-body-inner h5{
  color: var(--c-azul-dark);
}

.back-gris .accordion-body-inner a {
  color: var(--c-azul);
  text-decoration-color: var(--c-azul-dark);
}

.back-gris .accordion-body-inner a:hover {
  color: var(--c-azul-dark);
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  .tyf-lado-foto {
    aspect-ratio: 3 / 2;
  }
}

/*// Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
  header {
    padding-top: 100px;
  }

  header:not(.home)::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(104deg, var(--c-negro) 35%, rgba(var(--c-negro-rgb), 0.77) 65%, rgba(var(--c-negro-rgb), 0.5) 100%);
    top: 0;
    left: 0;
  }

  header.home h1 {
    font-size: 4.7rem;
  }

  .stxt-col-2 {
    padding: 0;
  }

  .tyf-col-txt {
    margin: 0;
  }

  .tyf-lado-foto {
    aspect-ratio: 6 / 7;
  }

  .card-in-foto .foto a {
    height: 100%;
  }

  .foto-contenedor img {
    aspect-ratio: 6/2;
  }

}

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
  :root {
    --padding-secciones: 6.25rem;
    --padding-interno: 2rem;
  }



  h4 {
    font-size: 1.625rem;
  }

  p,
  .card-in li,
  .tyf-foto-back li,
  .tyf li {
    font-size: 1.13rem;
  }

  header.home {
    background-size: 100%;
    background-position: top center;
  }

  header.home h5 {
    padding: 0 15%;
  }

  header:not(.home) :is(h2, h3, h4, h5, h6, p) {
    padding-right: 25%;
  }

  .solo-foto {
    height: 500px;
  }



  .card-in.card-in-bandera {
    padding-bottom: 14rem;
  }

  #cookieModal {
    left: 20%;
    width: 60%;
  }

}

/* X-LG */
@media (min-width: 1200px) {


  header.home h5 {
    padding: 0 25%;
  }

  header:not(.home) :is(h2, h3, h4, h5, h6, p) {
    padding-right: 35%;
  }

  .card-icon {
    width: auto;
    height: 40px;
    margin-bottom: 6.6rem;
  }
}

/* XX-LG */
@media (min-width: 1400px) {
  html {
    font-size: 16px;
  }
}


/* Media query for screens smaller than 576px */
@media (max-width: 575.98px) {



  .navbar-brand img {
    max-width: 100px;
  }

  .offcanvas {
    width: 100% !important;
  }
}

/* `md` applies to small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
  header:not(.home) .head {
    padding-top: 0;
  }

  .form-in{
    margin-top: 3rem;
  }
}


/* `lg` applies to medium devices (tablets, less than 992px)*/
@media (max-width: 991.98px) {


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

  .navbar .borde-grad {
    margin: 0 2rem;
  }

  .disclaimer h5 {
    margin-bottom: 4rem;
  }

}