/* ------------------------- Styleguide Generales -------------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');

/* ------------------------- Fonts -------------------------------------------------- */






/* locomotive  https://controlecoercitif.ca/*/


:root {
   --font-size-body-huge: clamp(28px, 0.0321428571 * calc(100 * var(--vw, 1vw)), 45px);
   --font-size-body-large: clamp(16px, 0.0142857143 * calc(100 * var(--vw, 1vw)), 20px);
   --font-size-body-regular: clamp(16px, 0.0128571429 * calc(100 * var(--vw, 1vw)), 18px);
   --font-size-body-small: clamp(12px, 0.01 * calc(100 * var(--vw, 1vw)), 14px);
   --font-size-body-label: clamp(14px, 0.0128571429 * calc(100 * var(--vw, 1vw)), 18px)
}
:root {
   --spacing-2xs-mobile: 6;
   --spacing-2xs-desktop: 10;
   --spacing-xs-mobile: 14;
   --spacing-xs-desktop: 16;
   --spacing-sm-mobile: 28;
   --spacing-sm-desktop: 32;
   --spacing-md-mobile: 42;
   --spacing-md-desktop: 56;
   --spacing-lg-mobile: 72;
   --spacing-lg-desktop: 96;
   --spacing-xl-mobile: 90;
   --spacing-xl-desktop: 120;
   --spacing-2xl-mobile: 96;
   --spacing-2xl-desktop: 160;
   --spacing-3xl-mobile: 112;
   --spacing-3xl-desktop: 224;
}




.once-in {
   will-change: transform;
}



/* ------------------------- Colors -------------------------------------------------- */

:root {

   --color-primary:#052E28;
   --color-secondary:#D3EC79;

   --color-investigacion: #E8E370;
   --color-empresarial: #E87070;
   --color-docencia: #B1FFB4;
   --color-sanitaria: #6DC6E7;


   --color-white: #fff;
   --color-grey: #F2F6F8;
   --color-grey-dark: #404040;
   
   --color-black: #1A1A1A;
   --green-dark: #04201C;
   --green-light: #0F8A77;


   --bg-primary:#050C40;
   --bg-secondary:#6DC6E7;
 

   /* --section-padding: min(4.5vw, 4.5em); */
   /* --section-padding: clamp(30px, 0.0555555556 * calc(100 * var(--vw, 1vw)), 60px); */
   --section-padding: calc(6.4* var(--vw, 1vw)); /* 120px */
   --section-padding-slim: calc(3.4* var(--vw, 1vw)); /* 120px */
   --section-padding-huge: 120px;

  
   --container-padding: calc(7.3611111111 * var(--vw, 1vw));
   --container-padding-medium: calc(12.3611111111 * var(--vw, 1vw));

   --container-full: calc(100% - 2 * var(--container-padding-medium));
 

   --gap: 1.2rem;


   --box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.05);
   --border-radius: 6px;

   --animation-fast: 0.2s cubic-bezier(.9, 0, .1, 1);
   --animation-cursor: 0.4s cubic-bezier(0.5, 0, .25, 1);
   --animation-primary: 0.5s cubic-bezier(.6, 0, .1, 1);
   --animation-tile: 0.4s cubic-bezier(.4, 0, .1, 1);
   /* --animation-smooth: 1.5s cubic-bezier(.7, 0, .3, 1); */
   --animation-smooth: .6s cubic-bezier(.7, 0, .3, 1);


	/* --font-size-h1: 2.25rem;
	--font-size-h2: 1.75rem;
	--font-size-h3: 1.5rem;
	--font-size-h4: 1.25rem;
	--font-size-h5: 1.125rem;
	--font-size-h6: 1rem */

   /* --font-size-h1: clamp(38px, 0.0642857143 * calc(100 * var(--vw, 1vw)), 90px);
   --font-size-h2: clamp(34px, 0.0514285714 * calc(100 * var(--vw, 1vw)), 72px);
   --font-size-h3: clamp(28px, 0.0385714286 * calc(100 * var(--vw, 1vw)), 54px);
   --font-size-h4: clamp(24px, 0.0285714286 * calc(100 * var(--vw, 1vw)), 40px);
   --font-size-h5: clamp(20px, 0.0214285714 * calc(100 * var(--vw, 1vw)), 30px);
   --font-size-h6: clamp(18px, 0.0164285714 * calc(100 * var(--vw, 1vw)), 23px); */

   --font-size-h1-huge: clamp(48px, 0.0642857143 * calc(100 * var(--vw, 1vw)), 100px);

   --font-size-h1: clamp(38px, 0.0642857143 * calc(100 * var(--vw, 1vw)), 60px);
   --font-size-h2: clamp(34px, 0.0514285714 * calc(100 * var(--vw, 1vw)), 48px);
   --font-size-h3: clamp(28px, 0.0385714286 * calc(100 * var(--vw, 1vw)), 40px);
   --font-size-h4: clamp(20px, 0.0285714286 * calc(100 * var(--vw, 1vw)), 36px);
   --font-size-h5: clamp(18px, 0.0214285714 * calc(100 * var(--vw, 1vw)), 23px);
   --font-size-h6: clamp(18px, 0.0164285714 * calc(100 * var(--vw, 1vw)), 23px);


   --button-hover-translate-x: -0.625rem;
   --button-hover-translate-xx: 0.625rem;
   --button-hover-icon-offset: 8px;
 
}

@media(min-width: 700px) {
	:root {
		--grid-columns: 12;
		--grid-gutter: 1rem;
		--grid-margin: 1.25rem
	}
}

[theme-section="green-dark"] {
   background: var(--green-dark);
}
[theme-section="grey"] {
   background: var(--color-grey);
}
.c-primary{
   color: var(--color-primary) !important;
}
.c-secondary{
   color: var(--color-secondary) !important;
}
.c-white{
   color: var(--color-white) !important;
}

.c-green-light{
   color: var(--green-light)
}

.b-light{
   background: #F7F7F7;
}





@media screen and (max-width: 540px) {

   :root {
      --section-padding: max(2.5em, 12vh);
      --container-padding: 6.5vw;
     
   }
}



.noise{
   position: relative;
}
.noise:after{
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   display: block;
   width: 100%;
   height: 100%;
   background-image: url(../../assets/images/home/noise.png);
   background-repeat: repeat;
   background-size: 49px 49px;
   opacity: 0.1;
   mix-blend-mode: soft-light;
}


/* ------------------------- Body -------------------------------------------------- */

address, blockquote, em, h1, h2, h3, h4, h5, h6, p {
   margin: 0;
   padding: 0;
   font-weight: inherit;
   font-style: inherit;
   font-size: inherit;
   line-height: inherit;
   text-align: inherit;
   letter-spacing: inherit;
}

*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
li, ul, figure { padding: 0; margin: 0; list-style: none;}

html {
   scroll-behavior: initial;
}



html, body {
   width: 100%;
   min-height: 100%;
   -webkit-font-smoothing: antialiased;
   position: relative;
   font-size: calc(16px + 6.2858*((100vw - 1024px) / 2816));
}

body {

   /* font-family: 'Matter'; */
   font-family: "Outfit", sans-serif;
   font-optical-sizing: auto;
   text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
   /* font-size: 1rem; */
   line-height: 1.4;
   -webkit-font-smoothing: antialiased;
   -webkit-text-size-adjust: 100%;
   /* background-image: linear-gradient(229deg, #7e64b3 40% , #53d9e4 100%); */
   background: #fff;
   color:  var(--color-black);
   /* color: var(--color-primary); */
   font-weight: 400;
   line-height: 1.4;
   /* letter-spacing: -0.025em; */
}

/* Selection */
::selection {
   background-color: var(--color-primary);
   opacity: .7;
   color: var(--color-white);
   text-shadow: none;
}

::-moz-selection {
   background-color: var(--color-primary);
   opacity: .7;
   color: var(--color-white);
   text-shadow: none;
}

/* General */
canvas, img, video, picture, figure {
   max-width: 100%;
   height: auto;
   box-sizing: border-box;
   display: block;
}

svg {
   max-width: none;
   height: auto;
   box-sizing: border-box;
}

audio, canvas, iframe, img, svg, video, picture, figure {
   vertical-align: middle;
}

/* ------------------------- Hide Scrollbar -------------------------------------------------- */

/* Chrome, Safari, Opera */
body::-webkit-scrollbar{
   /* display: none; */
}

/* IE & Edge */
body {
   /* -ms-overflow-style: none; */
}

/* Firefox */
html {
   /* scrollbar-width: none; */
}

/* ------------------------- Typography -------------------------------------------------- */

h1, h2, h3, h4, h5, h6, p, a, li, ul, ol, span, strong, em  {
   padding: 0;
    margin: 0;
     font-style: normal; 
     /* letter-spacing: normal; */
   }



h1, .h1{
   font-size: clamp(38px, 0.0642857143 * calc(100 * var(--vw, 1vw)), 58px);
   line-height: 1;
  
}
h1.big-text{
   font-size: 5rem;
   text-transform: uppercase;
}
h2, .h2{
   font-size: clamp(34px, 0.0514285714 * calc(100 * var(--vw, 1vw)), 48px);
   line-height: 1;
  
}



h3, .h3{
   font-size: clamp(28px, 0.0385714286 * calc(100 * var(--vw, 1vw)), 40px);
   line-height: 1;
  
}

h4, .h4{
   font-weight: 600;
   font-size: clamp(24px, 0.0214285714 * calc(100 * var(--vw, 1vw)), 32px);
   line-height: 1.1;
   
}

h5, .h5 {
   font-weight: 600;
   font-size: clamp(18px, 0.0214285714 * calc(100 * var(--vw, 1vw)), 23px);
   line-height: 1.1;
  
}
h6, .h6 {
   font-size: clamp(16px, 0.0164285714 * calc(100 * var(--vw, 1vw)), 18px);

 }


 /* Typescale */

 /* h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  
   margin-bottom: 1rem;
   font-weight: 700;
   line-height: 1.15;
   letter-spacing: -0.022em;
   color: #222222;
} */

/* h1{
font-size: 2.986rem;
}
h2{
   font-size: 2.488rem;
   }
h3{
    font-size: 2.074rem;
}
 h4{
    font-size: 1.728rem;
 }  
 h5{
   font-size: 1.44rem;
}  
h6{
   font-size:1.2rem;
}   */

 p{
font-size: 1rem;
margin-top: 1rem;
    margin-bottom: 1rem;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
   font-size: clamp(16px, 0.0111111111 * calc(100 * var(--vw, 1vw)), 18px);
    line-height: 1.4;
   
    color: var(--color-grey-dark);
    color: #595959;

}


.t-light{
   font-weight: 300 !important;
}
.t-bold{
   font-weight: 700 !important;
}
.t-tiny{
   font-size: 14px;
}
 /*------------*/



 [section="light"]{
   background: #fff;
 }

:is([section="light"]) :is(h1, h2, h2, h3, h4, h5, p) {
   color: #000;
}

[section="dark"]{
   background: #000;
   background-image: radial-gradient(rgb(255 255 255 / 30%) 5%, transparent 0);
   background-size: 55px 55px;
}
:is([section="dark"]) :is(h1, h2, h2, h3, h4, h5, p) {
   color: #fff;
}


strong{
   font-weight: 700;
}
span {
   font-weight: inherit;
   color: inherit;
}



em {
   font-style: italic;
}

:is([data-theme-section="dark"], [data-theme-item="dark"]) strong {
   color: var(--color-black);
}

a {
   color: unset; 
   text-decoration: none;
   transition: color .3s cubic-bezier(0.215, 0.61, 0.355, 1);
}


.columns > p {
   -webkit-column-break-inside: avoid;
   page-break-inside: avoid;
   break-inside: avoid;
}



div#page {

}



/* ------------------------- Main Elements -------------------------------------------------- */
section{
   position: relative;
}
.section {
   /* padding-top: var(--section-padding);
   padding-bottom: var(--section-padding);  */
   /* 160 */
   padding: 4.5rem 0 4.5rem;
   /* padding-top: 5.625rem;
   padding-bottom: 5.625rem; */
   position: relative;
}
.section-slim{
   /* padding-top: var(--section-padding-slim);
   padding-bottom: var(--section-padding-slim);  */
    /* 120 */
    padding: 3.5rem 0 3.5rem;
   /* padding-top: 5.625rem;
   padding-bottom: 5.625rem; */
   position: relative;
}
.section-huge{
   /* padding-top: var(--section-padding-huge);
   padding-bottom: var(--section-padding-huge);  */
    /* 180 */
   padding: 5rem 0 5rem;
   /* padding-top: 5.625rem;
   padding-bottom: 5.625rem; */
   position: relative;
}

.padding-b{
   padding-bottom: 4.5rem;
}
.padding-t{
   padding-top: 5.5rem;
}

.section-slim-bottom{  
   padding-bottom: 3.5rem;
}
.padding-slim-b{
   padding-bottom: 3.5rem;
}
.padding-slim-t{
   padding-top: 3.5rem;
}

.padding-huge-b{
   padding-bottom: 7rem;
}
.padding-huge-t{
   padding-top: 7rem;
}




.section-wrap {
   position: relative;
}

.container {
   margin: 0 auto;
   width: 100%;
   max-width: 1170px;
   margin: 0 auto;
   position: relative;
z-index: 1;
   /* max-width: 1280px;
    margin: 0 auto; */
}

@media screen and (max-width: 1260px) {
   .container{
      padding-left: var(--container-padding);
      padding-right: var(--container-padding);
   }

}

@media screen and (max-width: 1500px) {
 
   .container-medium{
      padding-left: var(--container-padding);
      padding-right: var(--container-padding);
   }
}

.container-medium {
   width: 100%;
   /* max-width: var(--container-full); */
   max-width: 1344px;
   /* padding-left: var(--container-padding-medium);
   padding-right: var(--container-padding-medium); */
   position: relative;
   z-index: 9;
   margin: 0 auto;
}



.container-full {
   width: 100%;
   max-width: 100%;
   padding-left: var(--container-padding);
   padding-right: var(--container-padding);
   position: relative;
   z-index: 9;
}

.o-container {
   width: 100%;
   max-width: 100%;
   padding-left: var(--container-padding);
   padding-right: var(--container-padding);
   position: relative;
   z-index: 9;
}


.container-slider{
   position: relative;
     z-index: 9;
     margin: 0 auto;
     margin-right: 0;
     padding-left: calc(13.3611111111* var(--vw, 1vw));
     max-width: 100%;
     padding-right: 0;
 }
 
 @media screen and (max-width: 1500px) {
 
   .container-slider{
      padding-left: var(--container-padding);
      padding-right: 0;
   }
}




.grid{
    display: grid;
    -moz-column-gap: var(--gap);
    column-gap: var(--gap);
    row-gap: var(--gap);
    grid-template-columns: repeat(12, 1fr);
}
@media (max-width: 768px){
.grid{
   column-gap: 1rem;
}
}
.accordion .grid{
   row-gap: 2.2rem;
}
@media (min-width: 768px){
   .grid-2{
      grid-template-columns: repeat(2, 1fr);
   }
   .grid-3{
       grid-template-columns: repeat(3, 1fr);
       grid-template-columns: repeat(3, minmax(0, 1fr));
   }
   .c-proyectos-inner-categoria .grid-3{
      grid-template-columns: repeat(auto-fit, minmax(375px, 1fr));
   }
   .grid-4{
      grid-template-columns: repeat(4, 1fr);
   }
   .grid-5{
      grid-template-columns: repeat(5, 1fr);
   }
   .grid-6{
      grid-template-columns: repeat(6, 1fr);
   }
}
.row {
   display: flex;
   width: 100%;
   position: relative;
   gap: .5rem;
   gap: var(--gap);
  
}

@media (max-width: 768px){
.row{
   flex-flow: column;
   gap: 3.2rem;
}
}

.flex {
   display: flex;
}
.flex-3 {
   flex-flow: wrap;
   display: flex;
   flex-wrap: wrap;
   gap: var(--gap);
}
.flex-3 article {
   height: auto;
   width: calc(33.33% - var(--gap) / 1.5);
}
.a-center{
   align-items: center;
}
.a-end{
   align-items: end;
}
.a-start{
   align-items: start;
}

.j-center{
   justify-content: center !important;
}
.t-center{
   text-align: center;
}
.col {
   position: relative;
}

.col-2{
   columns: 2;
   grid-gap: calc(calc(var(--title-size) * 0.3) * 4);
   align-items: center;
}
.col-3{
   width: 33.33%;
   }
.col-9{
   width: 66.66%;
   }
.col-6{
width: 50%;
}
.col-12{
   width: 100%;
   }

.m-b{
   margin-bottom: 2.25rem;
}
.m-t{
   margin-top: 3.25rem;
}


.col-image {
   width: 100%;
   max-width: 100%;
}

.col-content {
   width: 100%;
   max-width: 100%;
   align-items: flex-start;
}
.col-content-title h2 {
   margin-bottom: 1.2rem;
}
.overlay {
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
}

.overlay.overlay-dark {
   background-color: rgba(var(--color-black-rgb), 0.5);
}
.repeater_content p {
   margin: 0;
}

.repeater_content h3 {
   font-weight: 700;
   line-height: 1;
}

.repeater_content {
   padding-left: 12px;
}

.repeater_row {
   padding: 45px 0;
}


.repeater_row .icon img {
   max-width: 48px;
}

img.overlay,
video.overlay {
   object-fit: cover;
}

picture.overlay img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.stripe {
   display: block;
   width: 100%;
   height: 1px;
   background-color: var(--color-border);
}

.no-select {
   -webkit-touch-callout: none;
   -webkit-user-select: none;
   -khtml-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
}

/* ------------------------- Most Used -------------------------------------------------- */

/* Basic 2 Col Grid */

.row-grid {
   flex-wrap: wrap;
   gap:var(--gap);
}
.gap{
   gap: 1rem;
}
.gap-2{
   gap: 3rem;
}

.row-grid > .col {
   width: calc((99.95% / var(--columns)) - (var(--gap) * ((var(--columns) - 1) / var(--columns))));
}

@media screen and (max-width: 1024px) {
   .row-grid {
      --columns: 1;
   }
}

/* ------------------------- Main -------------------------------------------------- */

main {
   /* overflow: hidden;
   background-color: #fff;
   box-sizing: border-box;
   position: relative;
   width: 100%;
   display: block; */
   /* overflow: hidden;  */
   box-sizing: border-box;
}

[data-theme-page="dark"] main{
   background-color: var(--color-black);
}

.main-wrap {
   /* will-change: transform; */
   box-sizing: border-box;
   /* z-index: 0;
   position: relative; */
   /* padding: 0 2.5rem 2.5rem;
   background: #000;
   background: #cdea67; */
}




/* ------------------------- Buttons -------------------------------------------------- */


/*--------------------------*/
/* -------- BTN V2 -------- */
/*--------------------------*/

.btn_v2-content {
   display: flex;
}


.cb-btn_cta{
   position: relative;
   display: inline-block;
   overflow: hidden;
   padding: 1.2rem 1.8rem;
   transform: translateZ(0);
   border-radius: 16px;
   font-weight: 500;
   font-size: 0.9rem;
   line-height: 110%;
   /* text-transform: uppercase; */
   transition: transform .3s;
   color: #fff;
}

.c-header-inner .cb-btn_cta {
   -webkit-backdrop-filter: blur(2px);
   backdrop-filter: blur(2px);
   border-radius: 18px;
   padding: 1rem 1.8rem;
}

.c-header-inner .cb-btn_cta-border{
   border: 1px solid rgb(255 255 255 / 10%);
   border-radius: 18px;
}



.btn_primary{
   color: #ffffff;
   background: var(--color-primary);
}

.btn_primary .cb-btn_cta-border{
   border: none;
}
.btn_secondary{
   color: var(--color-primary);;
   background: var(--color-secondary);
}
.btn_primary-bg{
   background: var(--color-primary);
}
.btn_primary .cb-btn_cta-border,
.btn_secondary .cb-btn_cta-border{
   color: var(--color-secondary);
}

.btn_green_light{
   background: var(--green-light);
}
.btn_green_light .cb-btn_cta-border{
   border: none
}

.cb-btn_cta-border {
   content: "";
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 1px;
   z-index: 3;
   border: 1px solid;
   border-radius: 16px;
}

.cb-btn_cta-ripple {
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   z-index: 1;
   overflow: hidden;
   transform: translateZ(0);
   border-radius: inherit;
}

.cb-btn_cta-ripple span {
   display: block;
   width: 100%;
   height: 100%;
   transform: translateY(101%);
   background: #fff;
   border-radius: 50% 50% 0 0;
   transition: transform .5s cubic-bezier(.4,0,0,1), border-radius .5s cubic-bezier(.4,0,0,1);
}

.bg_secondary .cb-btn_cta-ripple span{
   background: var(--color-secondary);
}
.section-nosotros-intro .bg_secondary .cb-btn_cta-border {
   border: 1px solid var(--color-secondary);
}
.cb-btn_cta-title {
   position: relative;
   display: block;
   padding: 0 .16em 0 0;
   overflow: hidden;
   z-index: 2;
}

.cb-btn_cta-title span {
   display: block;
   transition: transform .8s cubic-bezier(.16,1,.3,1);
}

.cb-btn_cta-title span:after {
   content: attr(data-text);
   display: block;
   position: absolute;
   top: 110%;
   left: 0;
   color: #fff;
}

.cb-btn_cta.-inverse .cb-btn_cta-title span:after, .cb-btn_cta.-tertiary .cb-btn_cta-title span:after {
   color: var(--color-primary);
}

.cb-btn_cta:hover {
   transform: scaleX(1.02);
   transition: transform .6s cubic-bezier(.34,5.56,.64,1);
}

.cb-btn_cta:hover .cb-btn_cta-ripple span {
   border-radius: 0;
   transform: translateY(0);
   transition-duration: .5s, .9s;
}

.cb-btn_cta:hover .cb-btn_cta-title span {
   transform: translateY(-110%);
}

.btn_icon{
   padding: 1rem 1.8rem;
}
.btn_icon .cb-btn_cta-title {
   display: flex;
   align-items: center;
}

.btn_icon span.cb-btn_cta-title svg {
   margin-right: 10px;
}


.btn_white span.cb-btn_cta-title svg path {
   fill: #fff;
}
.btn_white:hover span.cb-btn_cta-title svg path {
   fill: var(--color-primary);
}

/*****************************/







.btn {
   display: inline-block;
   margin: 0 12px;
   font-weight: 400;
   text-transform: uppercase;
   text-decoration: none;
   text-align: center;
   color: #fff;
   background-color: #000;
   border: 1px solid #fff;
   transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
   position: relative;
 }

 .btn:hover, .btn:focus {
   color: #fff;
   background-color: #000;
 }




.btn:hover {
   top: 2px;
   left: 2px;
   transition: all 0.15s ease-in-out;
}


.btn:before {
   content: "";
   position: absolute;
   top: 2px;
   left: 2px;
   background: #fff;
   width: calc(100% + 2px);
   height: calc(100% + 2px);
   z-index: 0;
}

.btn:hover:before {
   top: 0;
   left: 0;

}

#h-about .btn_black:before {
   background: #000;
}


/* BTN 2 */

.btn2{
   font-size: 1rem;
   line-height: 1.5;
   --line-height: 1.5rem;
   color: #fff;
   font-family: inherit;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   cursor: pointer;
   transition-property: all;
   background: transparent;
   background: #000;
   padding: 0.75rem 1rem;
   border: solid .0625rem rgb(255, 255, 255);
   /* border-radius: 0.25rem; */
   gap: 0.5rem;
   text-decoration: none;
   transition: all var(--animation-smooth);
   transition: all .15s ease-out;
   line-height: 1;
   text-transform: uppercase;
}
.btn2:hover{
   transform: translate(-0.25rem, -0.25rem);
   box-shadow: .25rem .25rem 0rem rgb(255, 255, 255);
   transition: all var(--animation-smooth);
   transition: all .15s ease-out;
   color: #fff;
}


.btn-big{
   font-size: 1.2rem;
   text-transform: uppercase;
}


.btn2.btn_black{
   color: #000;
   border: solid .0625rem rgb(0, 0, 0);
   background: #fff;
}
.btn2.btn_black:hover{
   color: #000;
   box-shadow: .25rem .25rem 0rem rgb(0, 0, 0);
}

span.btn_inner {
   display: flex;
   align-items: center;
}

span.btn_inner svg {
   margin-left: 6px;
}


/* ------------------------- Styled Content -------------------------------------------------- */

.styled-content  p + ul {
   margin-top: calc(-1.25rem);
}
/* 
.styled-content ul {
   display: flex;
   flex-direction: column;
   margin-bottom: 1.25rem;
   align-items: center;
}

.styled-content ul li {
   position: relative;
   padding-left: 0.75em;
   line-height: 1.5;
}

.styled-content ul li::before {
   content: "";
   left: 0;
   top: 0.6rem;
   height: 3px;
   width: 3px;
   background: var(--color-black);
   position: absolute;
   border-radius: 2px;
} */


.styled-content .sub-title{
   font-size: 12px;
   font-weight: 400;
   line-height: 16px;
   letter-spacing: 0.08em;
   text-transform: uppercase;
}
.styled-text-white .styled-content .sub-title{
   color: #CCCCCC;
}
.styled-text-white .styled-content h3,
.styled-text-white .styled-content h2{
   color: var(--color-white);
   font-weight: 600;
}

.styled-text-white .styled-content p{
   color: var(--color-white);
   margin-top: 24px;
}



/* ------------------------- Styled Form -------------------------------------------------- */

.styled-form {
   display: flex;
   flex-direction: column;
   width: 100%;
}

.styled-form .form-col {
   width: 100%;
   padding-bottom: 1em;
   display: flex;
   flex-direction: column;
   align-items: flex-start;
}

.styled-form .form-label {
   margin-bottom: 0.5em; 
}

.styled-form .form-label span {
   font-size: 0.8em;
   text-transform: uppercase;
   font-weight: 500;
}

.styled-form abbr[title] {
   color: var(--color-alert-error);
   text-decoration: none;
   padding-left: 0.25em;
}

.styled-form input {
   display: block;
}

/* Text */

.styled-form input:is([type="text"], [type="email"], [type="tel"]) {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   outline: none;
   border: 0;
   border-bottom: 1px solid transparent;
   padding: 1em 1em;
   width: 100%;
   border-radius: var(--border-radius);
}

/* Textarea */

.styled-form textarea {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   outline: none;
   border: 0;
   border-bottom: 1px solid transparent;
   resize: vertical;
   min-height: 10em;
   padding: 1em 1em;
   width: 100%;
   border-radius: var(--border-radius);
}

/* Checkbox */

.styled-form .form-col-checkbox {
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   align-items: center;
}

.styled-form input[type="checkbox"] {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   outline: none;
   border: 0;
   width: 1em;
   height: 1em;
   border: 1px solid var(--color-border);
   transition: background-color .3s ease-in-out;
   background-color: var(--color-white);
   margin-right: 0.5em;
   border-radius: calc(var(--border-radius) * 0.33);
}

.styled-form input[type="checkbox"]:focus {
   border-radius: calc(var(--border-radius) * 0.33);  
}

.styled-form input[type="checkbox"]:checked {
   background-color: var(--color-black);
}

.styled-form .form-col-checkbox label {
   font-weight: 400;
}

/* Error */

.styled-form :is(input, textarea).has-error {
   border-bottom: 1px solid var(--color-alert-error);
}

.styled-form input[type="checkbox"].has-error{
   border: 1px solid var(--color-alert-error);
}

.styled-form .has-error + .form-error-message {
   display: flex;
}

.form-error-message {
   width: 100%;
   display: none;
   color: var(--color-alert-error);
   font-size: 0.8em;
   font-weight: 500;
}

/* Focus */

.styled-form :is(input, textarea):focus {
   outline: 0;
   outline-width: 1px !important;
   outline-offset: 0px;
   border-bottom: 1px solid var(--color-black);
}

.styled-form input[type="checkbox"]:focus {
   border: 1px solid var(--color-black);
}

/* Submit */

.styled-form input[type="submit"] {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   outline: none;
   border: 0;
   padding: 1em;
   background: var(--color-primary);
   color: var(--color-white);
   cursor: pointer;
   border-radius: var(--border-radius);
}

/* Autofill */

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
   -webkit-text-fill-color: #000;
   -webkit-box-shadow: 0 0 0px 1000px #fff inset;
   box-shadow: 0 0 0px 1000px #fff inset;
   transition: background-color 5000s ease-in-out 0s;
}




.styled-col-left{
   width: 50%;
   padding-right: calc(var(--gap)* 4);
   padding-bottom: 18px;
}
.styled-col-right{
   width: 50%;
   padding-left: calc(var(--gap)* 4);
   padding-bottom: 18px;
}

/* --------------------------- GRID ------------------------------ */


.o-grid {
	display: grid;
	width: 100%
}

.o-grid:is(ul,
ol) {
	margin: 0;
	padding: 0;
	list-style: none
}

.o-grid.-cols {
	grid-template-columns: repeat(var(--grid-columns), 1fr)
}

.o-grid.-col-12 {
	grid-template-columns: repeat(12, 1fr)
}

.o-grid.-col-8 {
   grid-template-columns: repeat(8, 1fr)
}

.o-grid.-col-4 {
	grid-template-columns: repeat(4, 1fr)
}

.o-grid.-col-3 {
	grid-template-columns: repeat(3, 1fr)
}

.o-grid.-col-2 {
   grid-template-columns: repeat(2, 1fr)
}

@media(min-width: 1000px) {
	.o-grid.-col-12\@from-medium {
		grid-template-columns: repeat(12, 1fr)
	}
}

.o-grid.-gutters {
	gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
}
.o-grid.-col-4.-gutters{
   gap: 45px;
    -moz-column-gap: 45px;
   column-gap: 45px;
}
.o-grid.-full-height {
	height: 100%
}

.o-grid.-top-items {
	align-items: start
}

.o-grid.-right-items {
	justify-items: end
}

.o-grid.-bottom-items {
	align-items: end
}

.o-grid.-left-items {
	justify-items: start
}

.o-grid.-center-items {
	align-items: center;
	justify-items: center
}

.o-grid.-center-items-x {
	justify-items: center
}

.o-grid.-center-items-y {
	align-items: center
}



.o-grid_item.-align-end {
	align-self: end
}


/*-----------------------------------------------*/


.o-grid_item {   
   /* grid-column: 1 / -1; */
   --gc-start: 1;
    --gc-end: 13
}

.o-grid_item {

   grid-column-start: var(--gc-start, initial);
   grid-column-end: var(--gc-end, initial);


}





@media(min-width: 1000px) {
   
.u-gc-1\/2 {
   --gc-start: 1;
   --gc-end: 3
}
.u-gc-1\/3 {
   --gc-start: 1;
   --gc-end: 4
}
.u-gc-1\/4 {
   --gc-start: 1;
   --gc-end: 5
}
.u-gc-1\/5 {
   --gc-start: 1;
   --gc-end: 6
}
.u-gc-1\/6 {
   --gc-start: 1;
   --gc-end: 7
}
.u-gc-1\/7 {
   --gc-start: 1;
   --gc-end: 8
}
.u-gc-1\/8 {
   --gc-start: 1;
   --gc-end: 9
}
.u-gc-1\/9 {
   --gc-start: 1;
   --gc-end: 10
}
.u-gc-1\/10 {
   --gc-start: 1;
   --gc-end: 11
}
.u-gc-1\/11 {
   --gc-start: 1;
   --gc-end: 12
}
.u-gc-1\/12 {
   --gc-start: 1;
   --gc-end: 13
}

.u-gc-2\/3 {
   --gc-start: 2;
   --gc-end: 3
}

.u-gc-3\/5 {
   --gc-start: 3;
   --gc-end: 5
}

.u-gc-10\/12{
   --gc-start: 10;
   --gc-end: 13
}
.u-gc-8\/12{
   --gc-start: 8;
   --gc-end: 13
}

 
}

@media(min-width: 1000px) {
   .u-gc-1\/10\@from-medium {
       --gc-start: 1;
       --gc-end: 10
   }
}

@media(min-width: 1000px) {
   .u-gc-10\/13\@from-medium {
       --gc-start: 10;
       --gc-end: 13
   }
}




@media (min-width: 700px) {



  
   .o-grid.-col-2 {
      grid-template-columns: repeat(2, 1fr);
  }
  .o-grid.-col-4 {
   grid-template-columns: repeat(4, 1fr)
}

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

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





/* -------------------- CABECERAS --------------- */


.c-heading {
	/* margin-bottom: 1.875rem; */
   padding-bottom: 1.875rem
}

/* .type_title_1{
   font-size: 4.25rem;
   text-transform: uppercase;
   font-family: 'Roc Grotesk Condensed ExLight';
   font-weight: 200;
   line-height: .9;
}
.type_title_borded{
   border: 1px solid rgb(0 0 0 / 30%);
   padding: 30px;
} */
.c-sub {
   color: var(--color-primary);
   opacity: .5;
   font-size: .6666666667rem;
   font-weight: 500;
   letter-spacing: 2.7px;
   line-height: 1;
   text-transform: uppercase;
   margin-bottom: 15px;
   font-weight: 700;
}
.c-heading.-h1 {
	font-size: var(--font-size-h1);
    line-height: 1;
    font-weight: 700;
    overflow: hidden;
}

.c-heading.-h2 {
	font-size: var(--font-size-h2);
   
    line-height: 1;
    line-height: 1.1;
    font-weight: 400;
}

.c-heading.-h3 {
	font-size: var(--font-size-h3);
  
    line-height: 1.1;
}

.c-heading.-h4 {
	font-size: var(--font-size-h4);
  
   line-height: 1.1;
}

.c-heading.-h5 {
	font-size: var(--font-size-h5);
    
   line-height: 1.1;
}

.c-heading.-h6 {
	font-size: var(--font-size-h6);
  
    line-height: 1;
}

.c-heading p{

}

.c-button {
	padding: .9375rem 1.25rem;
   border: 1px solid rgb(255 255 255 / 60%);

   border-radius: 2.125em;
}

.c-button:focus,
.c-button:hover {
	background-color: #a9a9a9
}


.c-heading_intro_content h1,
.c-heading_intro_content h2,
.c-heading_intro_content p{
   color:var(--color-white);
   font-weight: 400;
}

.c-heading-center{
   max-width: 925px !important;
   margin: 0 auto;
   text-align: center;
}

header.c-heading_type1 {
   display: flex;
   flex-flow: column;
   margin-bottom: 36px;
   /* max-width: 1024px; */
   
}
[data-page-title ="mapavirtual"] .s-hero header.c-heading_type1{
   margin-bottom: 0;
}
header.c-heading_type1 .center{
margin: 0 auto;
}

header.c-heading_type2 {
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin-bottom: 36px;
}
header.c-heading_type2 h3{
   font-size: var(--font-size-h3);
   font-weight: 300;
}

[theme-section="blue"] .c-heading{
   color: var(--color-white);
}

.c-heading_bg {
   padding-bottom: clamp(60px, 12vw, 220px);
}

.c-heading_bg header.h-header {
   padding-top: clamp(0px, 12vw, 160px);
}


.c-heading_bg-figure{
   position: absolute;
   right: 0;
   top: 0;
   z-index: 0;
   max-width: 66vw;
}
.c-heading_bg-figure img {
   object-fit: cover;
   width: 100%;
   height: 100%;
}

figure.c-heading_bg-figure:before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   width: 100%;
   height: 100%;
   background: radial-gradient(100% 74.62% at 64% 25%, rgba(5, 12, 64, 0.00) 0%, #050c40 100%);
}
figure.c-heading_bg-figure:after {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   width: 100%;
   height: 100%;
   background: linear-gradient(to left, #fff0, #050c40 100%);
}










[theme-section="green-dark"] .c-heading_left h3{
   color: var(--color-white);
}
[theme-section="green-dark"] .c-heading_left p{
   color: var(--color-white);
}






/* --------------------------- Wysiwyg ------------------------------ */


figure.wp-block-gallery {
   display: flex;
   flex-flow: wrap;
   padding: 24px 0;
}

.wp-block-buttons.is-content-justification-center {
   justify-content: center;
   display: flex;
   gap: 1rem;
   padding: 24px 0;
}

ul.wp-block-list li {
   list-style: circle;
}

.wp-block-pullquote p {
   margin-top: 0;
   font-size: 22px;
   font-style: italic;
   color: #050c40;
}

ul.wp-block-list li {
   list-style: circle;
   font-size: 1rem;
   margin-top: 1rem;
   margin-bottom: 1rem;
   font-weight: 400;
   font-size: clamp(16px, 0.0111111111* calc(100* var(--vw, 1vw)), 17.5px);
   line-height: 1.4;
   color: var(--color-grey-dark);
}

.wp-block-image {
   margin: 50px 0;
}

.wp-block-image figure img{
   border-radius: var(--border-radius);
}


.c-wysiwyg p {
  
   -webkit-column-break-inside: avoid;
   page-break-inside: avoid;
   break-inside: avoid;
}

.c-wysiwyg h1,
.c-wysiwyg h2,
.c-wysiwyg h3,
.c-wysiwyg h4,
.c-wysiwyg h5{
   /* letter-spacing: -0.022em; */
color: var(--color-grey-dark);
}

.c-wysiwyg em strong {
   font-size: 16px;
   font-weight: 700;
 

}


@media (max-width: 699px) {
   .c-wysiwyg {
       font-size:14px
   }
}

.c-wysiwyg>:first-child {
   margin-top: 0
}

.c-wysiwyg>:last-child {
   margin-bottom: 0
}

.c-wysiwyg.-text-indent :first-child {
   text-indent: 24.72222vw
}

.c-wysiwyg strong,.c-wysiwyg b {
   font-weight: 700
}

.c-wysiwyg a:not(.c-button) {
 
}

.c-wysiwyg a:not(.c-button):hover {
 
}

.c-wysiwyg.-big-text p {
   font-weight: inherit;
   position: relative;
   line-height: 1.1;
   margin-bottom: 1.875rem;
   letter-spacing: -0.015em;
   font-size: clamp(2rem, 3.19444vw, 2.875rem);
   margin-bottom: 3.75rem
}

.c-wysiwyg.-big-text :first-child {
   margin-top: 0
}

.c-wysiwyg.-big-text :last-child {
   margin-bottom: 0
}

.c-wysiwyg.-medium-text p {
   letter-spacing: -0.015em;
   line-height: 1.4;
   margin-bottom: 3.75rem
}

@media (min-width: 1000px) {
   .c-wysiwyg.-medium-text p {
       font-size:2rem
   }
}

@media (min-width: 700px) and (max-width: 999px) {
   .c-wysiwyg.-medium-text p {
       font-size:28px
   }
}

@media (max-width: 699px) {
   .c-wysiwyg.-medium-text p {
       font-size:1.5rem
   }
}

.c-wysiwyg.-medium-text :first-child {
   margin-top: 0
}

.c-wysiwyg.-medium-text :last-child {
   margin-bottom: 0
}

.c-wysiwyg.-regular-text p {
   font-weight: inherit;
   position: relative;
   line-height: 1.2;
   letter-spacing: -0.035em;
   line-height: 1.4;
   margin-bottom: 2.5rem
}

.c-wysiwyg.-regular-text p.-bold {
   font-weight: 700
}

@media (min-width: 1000px) {
   .c-wysiwyg.-regular-text p {
       font-size:1.375rem
   }
}

@media (max-width: 999px) {
   .c-wysiwyg.-regular-text p {
       font-size:1.25rem
   }
}

.c-wysiwyg.-regular-text :first-child {
   margin-top: 0
}

.c-wysiwyg.-regular-text :last-child {
   margin-bottom: 0
}

.c-wysiwyg h1, .c-wysiwyg h2 {
   /* margin: 1.25rem 0 1em 0;
   font-size: calc(var(--title-size)* 0.375);
    line-height: 1; */
 
}
.c-wysiwyg h3 {
   /* margin: 1.45rem 0 1rem 0;
   font-size: calc(var(--title-size)* 0.25); */
  
}
.c-wysiwyg h4,.c-wysiwyg h5,.c-wysiwyg h6 {
   /* margin: 1.45rem 0 1rem 0;
   font-size: calc(var(--title-size)* 0.2); */
 
}




.c-wysiwyg table {
   width: 100%;
   margin: var(--spacing-large) 0
}

.c-wysiwyg table td {
   font-weight: inherit;
   position: relative;
   line-height: 1.2;
   font-size: 1rem;
   padding: .625rem .9375rem
}

.c-wysiwyg table td.-bold {
   font-weight: 700
}

@media (max-width: 699px) {
   .c-wysiwyg table td {
       font-size:14px
   }
}

.c-wysiwyg ol,.c-wysiwyg ul {
   list-style: circle;
   margin-left: 1.2em;
   margin-top: 10px;
   margin-bottom: 18px;
}

.c-wysiwyg ol li:not(:last-child),.c-wysiwyg ul li:not(:last-child) {
   margin-bottom: 0.6125rem
}

.c-wysiwyg ul li {
   position: relative;
   padding-left: 0;
   color: #4B4B4B;

   list-style: none;
   font-size: 16px;
   line-height: 1.6;
   color: #222;
   margin-bottom: 1.25rem;
}

.c-wysiwyg ul li+li {
   margin-top: 0
}
.c-wysiwyg ul>li{
   position: relative;
   padding-left: 1.25rem;
}

.c-wysiwyg ul li::before {
   color: #111;
   position: absolute;
   content: "";
   top: .2em;
   left: -.3em;
   display: inline-block;
   width: 18px;
   height: 18px;
   border-radius: 3px;
   background-color: #111;
   background: url(../../assets/images/icons/check.svg) no-repeat;
   background-size: contain;
   margin-right: 1em;
}

.c-wysiwyg ol {
   counter-reset: counter
}

.c-wysiwyg ol li {
   counter-increment: counter;
   position: relative;
   padding-left: 1.2em
}

.c-wysiwyg ol li+li {
   margin-top: 0
}

.c-wysiwyg ol li::before {
   content: counter(counter) ". ";
   color: var(--color-primary);
   position: absolute;
   top: 0;
   left: 0
}

.c-wysiwyg iframe {
   width: 100%;
   height: auto;
   aspect-ratio: 16/9;
   margin-top: var(--spacing-small);
   margin-bottom: var(--spacing-small)
}

.c-wysiwyg img {
   max-width: 100%;
   height: auto;
   margin-top: var(--spacing-small);
   margin-bottom: var(--spacing-small)
}

.c-wysiwyg blockquote {
   padding: 0;
   margin-left: auto;
   margin-right: auto;
   margin-top: var(--spacing-small);
   margin-bottom: var(--spacing-small);
   quotes: "Ã¢â‚¬Å“" "Ã¢â‚¬Â" "Ã¢â‚¬â„¢" "Ã¢â‚¬â„¢"
}

.c-wysiwyg blockquote * {
   width: 100%;
   font-weight: inherit;
   position: relative;
   line-height: 1.1;
   margin-bottom: 1.875rem;
   letter-spacing: -0.015em;
   font-size: clamp(2rem, 3.19444vw, 2.875rem)
}

.c-wysiwyg blockquote p {
   padding: 0;
   max-width: 100%
}

.c-wysiwyg blockquote p::before,.c-wysiwyg blockquote p::after {
   display: inline-block
}

.c-wysiwyg blockquote p::before {
   padding-right: 5px;
   content: "Ã¢â‚¬Å“"
}

.c-wysiwyg blockquote p::after {
   padding-left: 5px;
   content: "Ã¢â‚¬Â"
}

/*---------------------------------------------------------------------*/




/* ------------------------- Page Transition -------------------------------------------------- */

.loading-container {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   overflow: hidden;
   z-index: 500;
   pointer-events: none;
}



.loading-container .loading-screen {
   position: relative;
   width: 100%;
   height: 100%;
    /* background-color: var(--color-white); */
   /* background-color: var(--color-primary); */
   display: flex;
   justify-content: center;
   align-items: center;
}

.loading-container.loading-active .loading-screen {
  background-color: #fff 
}

.loading-container .loading-screen .loading-logo {
   width: calc(var(--title-size) * 1.1);
   position: relative;
   opacity: 0.8;
}



/* ------------------------- ANIMATION -------------------------------------------------- */



.u-anim {
   opacity: 0;
   transform: translateY(45px);
   transition: opacity 0.9s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.is-inview .u-anim {
   opacity: 1;
   transform: translateY(0);
}



.anim-mask {
  -webkit-mask-image: linear-gradient(90deg, #fff 33.33%, transparent 66.66%);
  mask-image: linear-gradient(90deg, #fff 33.33%, transparent 66.66%);
  -webkit-mask-position: 100% 0;
  mask-position: 100% 0;
  -webkit-mask-size: 300% 100%;
  mask-size: 300% 100%;
}

.anim-mask.is-inview {
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
  transition: -webkit-mask-position 2s ease 0s;
  transition: mask-position 2s ease 0s;
  transition: mask-position 2s ease 0s, -webkit-mask-position 2s ease 0s;
  transition: -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
  transition: mask-position var(--duration, 2s) ease var(--delay, 0s);
  transition: mask-position var(--duration, 2s) ease var(--delay, 0s), -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
}

/* .loaded .s-hero .anim-mask {
   -webkit-mask-position: 0 0;
   mask-position: 0 0; 
   transition: -webkit-mask-position 4s ease 0s;
   transition: mask-position 2s ease 0s;
   transition: mask-position 2s ease 0s, -webkit-mask-position 2s ease 0s;
   transition: -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition: mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition: mask-position var(--duration, 2s) ease var(--delay, 0s),
   -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition-delay: .5s;
 } */
 .loaded .section-anim .anim-mask {
   -webkit-mask-position: 0 0;
   mask-position: 0 0; 
   transition: -webkit-mask-position 4s ease 0s;
   transition: mask-position 2s ease 0s;
   transition: mask-position 2s ease 0s, -webkit-mask-position 2s ease 0s;
   transition: -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition: mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition: mask-position var(--duration, 2s) ease var(--delay, 0s),
   -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition-delay: .5s;
 }
 .is-loadHome .c-hero-home .anim-mask {
   -webkit-mask-position: 0 0;
   mask-position: 0 0; 
   transition: -webkit-mask-position 4s ease 0s;
   transition: mask-position 2s ease 0s;
   transition: mask-position 2s ease 0s, -webkit-mask-position 2s ease 0s;
   transition: -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition: mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition: mask-position var(--duration, 2s) ease var(--delay, 0s),
   -webkit-mask-position var(--duration, 2s) ease var(--delay, 0s);
   transition-delay: .8s;
 }


 .anim-mask.-delay-1{
   transition-delay: .1s
 }
 .anim-mask.-delay-2{
   transition-delay: .2s
 }
 .anim-mask.-delay-3{
   transition-delay: .3s
 }
 .anim-mask.-delay-4{
   transition-delay: .4s
 }
 .anim-mask.-delay-5{
   transition-delay: .5s
 }
 .anim-mask.-delay-6{
   transition-delay: .6s
 }
 .anim-mask.-delay-7{
   transition-delay: .7s
 }
 .anim-mask.-delay-8{
   transition-delay: .8s
 }

/* 

.u-anim.-delay-1 {
   opacity: 0;
   
} */



.is-inview .u-anim.-delay-1 {
   transition-delay: .1s
}



.is-inview .u-anim.-delay-2 {
   transition-delay: .2s
}



.is-inview .u-anim.-delay-3 {
   transition-delay: .3s
}



.is-inview .u-anim.-delay-4 {
   transition-delay: .4s
}




.is-inview .u-anim.-delay-5 {
   transition-delay: .5s
}





.is-inview .u-anim.-delay-6 {
   transition-delay: .6s
}



.u-anim.-delay-7 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.-delay-7{
   transition-delay: .7s !important;
}

.is-inview .u-anim.-delay-7 {
   opacity: 1;
   transform: none;
   transition-delay: .7s
}



.u-anim.-delay-8 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-8 {
   opacity: 1;
   transform: none;
   transition-delay: .8s
}

.u-anim.-delay-9 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-9 {
   opacity: 1;
   transform: none;
   transition-delay: .9s
}

.u-anim.-delay-10 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-10 {
   opacity: 1;
   transform: none;
   transition-delay: 1s
}



.u-anim.-delay-11 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-11 {
   opacity: 1;
   transform: none;
   transition-delay: 1.1s
}



.u-anim.-delay-12 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-12 {
   opacity: 1;
   transform: none;
   transition-delay: 1.2s
}



.u-anim.-delay-13 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-13 {
   opacity: 1;
   transform: none;
   transition-delay: 1.3s
}



.u-anim.-delay-14 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-14 {
   opacity: 1;
   transform: none;
   transition-delay: 1.4s
}



.u-anim.-delay-15 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-15 {
   opacity: 1;
   transform: none;
   transition-delay: 1.5s
}



.u-anim.-delay-16 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-16 {
   opacity: 1;
   transform: none;
   transition-delay: 1.6s
}



.u-anim.-delay-17 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-17 {
   opacity: 1;
   transform: none;
   transition-delay: 1.7s
}



.u-anim.-delay-18 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-18 {
   opacity: 1;
   transform: none;
   transition-delay: 1.8s
}



.u-anim.-delay-19 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-19 {
   opacity: 1;
   transform: none;
   transition-delay: 1.9s
}


.u-anim.-delay-20 {
   opacity: 0;
   transform: translateY(25px);
   transition: opacity .5s cubic-bezier(.215,.61,.355,1),transform .5s cubic-bezier(.215,.61,.355,1)
}

.is-inview .u-anim.-delay-20 {
   opacity: 1;
   transform: none;
   transition-delay: 2s
}





.u-anim-simple {
   opacity: 0;
   transition: opacity 0s cubic-bezier(0.215, 0.61, 0.355, 1);
 }
 
.u-anim-simple {
   opacity: 1;
 }
 
 .u-anim-simple {
   transition-duration: 0.6s;
 }
 
 .u-anim-image {
   overflow: hidden;
   transition: -webkit-clip-path 0s cubic-bezier(0.645, 0.045, 0.355, 1);
   transition: clip-path 0s cubic-bezier(0.645, 0.045, 0.355, 1);
   transition: clip-path 0s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-clip-path 0s cubic-bezier(0.645, 0.045, 0.355, 1);
   -webkit-clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
           clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
 }
 
 .u-anim-image img {
   transform: scale3d(1.2, 1.2, 1);
   transition: transform 0s cubic-bezier(0.645, 0.045, 0.355, 1);
 }

.u-anim-image.is-inview,
.u-anim-image:not([data-scroll]):not(.-parent) {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  transition-duration: 1s;
}


 .u-anim-image.is-inview img,
.u-anim-image:not([data-scroll]):not(.-parent) img {
  transform: scale3d(1, 1, 1);
  transition-duration: 1s;
}

 .u-anim-image.is-inview.-delay-1,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-1 {
  transition-delay: 0.1s;
}

 .u-anim-image.is-inview.-delay-1 img,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-1 img {
  transition-delay: 0.1s;
}

 .u-anim-image.is-inview.-delay-2,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-2 {
  transition-delay: 0.2s;
}

 .u-anim-image.is-inview.-delay-2 img,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-2 img {
  transition-delay: 0.2s;
}

 .u-anim-image.is-inview.-delay-3,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-3 {
  transition-delay: 0.3s;
}

 .u-anim-image.is-inview.-delay-3 img,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-3 img {
  transition-delay: 0.3s;
}

 .u-anim-image.is-inview.-delay-4,
 .u-anim-image:not([data-scroll]):not(.-parent).-delay-4 {
  transition-delay: 0.4s;
}

 .u-anim-image.is-inview.-delay-4 img,
.u-anim-image:not([data-scroll]):not(.-parent).-delay-4 img {
  transition-delay: 0.4s;
}


.u-anim-left{
   transform: translate3d(80%, 0px, 0px) scale3d(1, 1, 1) !important;
   opacity: 0;
   /* transition: opacity 0.9s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.9s cubic-bezier(0.215, 0.61, 0.355, 1); */
}
.is-inview .u-anim-left{
   transform: translate3d(0%, 0px, 0px) scale3d(1, 1, 1) !important;
   opacity: 1;
   transition: opacity 0.9s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.9s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.is-inview .flickity-slide:nth-child(1) .u-anim-left{
   transition-delay: .3s
}
.is-inview .flickity-slide:nth-child(2) .u-anim-left{
   transition-delay: .4s
}
.is-inview .flickity-slide:nth-child(3) .u-anim-left{
   transition-delay: .5s
}
.is-inview .flickity-slide:nth-child(4) .u-anim-left{
   transition-delay: .6s
}
.is-inview .flickity-slide:nth-child(5) .u-anim-left{
   transition-delay: .7s
}
















.offerings__row-title {
   display: flex;
   position: relative;
 }
 
 .offerings__row-sticky {
   grid-column-gap: var(--gap-responsive);
   grid-row-gap: var(--gap-responsive);
   flex-flow: wrap;
   margin-top: -8vh;
   margin-bottom: -8vh;
   display: flex;
   position: relative;
 }
 
 .offerings__col-sticky {
   width: calc((100% - var(--gap-responsive)) / 2);
 }
 
 .offerings__col-list {
   width: calc((100% - var(--gap-responsive)) / 2);
   flex-flow: column;
   display: flex;
 }
 
 .offerings__single {
   flex-flow: column;
   justify-content: center;
   align-items: center;
   min-height: 70vh;
   display: flex;
 }
 
 .offerings__single-content {
   grid-column-gap: var(--gap-s);
   grid-row-gap: var(--gap-s);
   flex-flow: column;
   align-items: flex-start;
   max-width: 30em;
   display: flex;
 }
 
 .h4.offerings__h4 {
   max-width: 17.5em;
 }
 
 .btn-row {
   padding-top: .5em;
   display: flex;
   position: relative;
 }
 
 .offerings__single-visual {
   display: none;
 }
 
 .offerings__visual {
   cursor: pointer;
   justify-content: center;
   align-items: center;
   width: 100%;
   display: flex;
 }



.offerings__sticky {
   flex-flow: column;
   /* justify-content: center; */
   min-height: 100vh;
   display: flex;
   position: sticky;
   top: 60px;
 }
 
 .offerings__sticky-inner {
   justify-content: center;
   align-items: flex-end;
   width: 100%;
   padding-top: 100%;
   position: relative;
 }
 
 .offerings__sticky-single {
   pointer-events: none;
   width: 100%;
   position: absolute;
   top: 0;
   left: 0;
 }
 
 .fade__wrapper-from-bottom {
   background-image: linear-gradient(180deg, transparent, var(--color-dark));
   flex-grow: 1;
   width: 100%;
   position: relative;
   top: 0;
   left: 0;
 }
 
 .section-wrap {
   position: relative;
 }

 .offerings__visual-before {
   width: 600px;
   height: 400px;
   background: aquamarine;
}

a.offerings__visual.is--digital .offerings__visual-before {
   width: 600px;
   height: 400px;
   background: rgb(70, 60, 107);
}




.offerings__color-overlay {
   transition: opacity var(--animation-primary);
   filter: saturate(1000%) brightness(150%);
   opacity: 0;
   background-color: var(--color-yellow-primary);
   mix-blend-mode: color;
 }
 
 [data-item-index-current="1"] .offerings__color-overlay {
   opacity: 1;
 }
 
 .offerings__sticky .styled-image {
   transition: all var(--animation-primary);
   opacity: 1;
   visibility: visible;
   pointer-events: all;
 }
 
  .offerings__sticky-single[data-item-index-status="not-active"] .styled-image {
   opacity: 0;
   visibility: hidden;
   pointer-events: none;
 }
 
 .offerings__single[data-item-index="1"] .btn-row {
   --color-dark: var(--color-yellow-dark);
   --color-light: var(--color-yellow-light);
   --color-primary: var(--color-yellow-primary);
   --color-secondary: var(--color-yellow-secondary);
 }
 
 @media (min-aspect-ratio: 2/1) {
   .offerings .offerings__row-sticky {
     margin-top: 0;
     margin-bottom: 0;
   }
 }







 
 @media screen and (max-width: 767px) {
   .offerings__single-visual .offerings__visual {
     border: 1px solid rgb(236, 245, 255, 0.2);
   }
 
   .offerings__single-visual .offerings__visual-svg {
     display: none;
   }
   
   .offerings__single-visual .offerings__visual-before {
     padding-top: 40%;
   }
   
   .offerings__single-visual .offerings__logo {
     width: 75%;
     bottom: 50%;
     transform: translateY(50%);
   }
 }
 
 