/* 
Theme Name: Gamma
Theme URI: https://josedone.com
Description: Twenty Twenty One Child Theme for Gamma
Author: Jose Done 
Author url: https://josedone.com
Template: twentytwentyone
Version: 1.0
@import url("../twentytwentyone/style.css");
*/
/* Layout */
html {
	overflow-x: hidden;
	font-size: clamp(6px, calc(100vw / 192), 10px) !important;
	/*font-size: 62.5%;  = 10px */
}

html, 
body, 
.respect-color-scheme-preference.is-dark-theme body {
    background: linear-gradient(225deg, #191617 13.64%, #002D72 91.39%) !important;
	color: #ffffff;
}

body .elementor-widget-shortcode {
  width: 100% !important;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  font-family: "Archivo", Sans-serif;
	line-height: inherit;
}

html,
body,
div,
p,
span,
a,
ul, 
ol {
  font-family: "Archivo", Sans-serif;
	line-height: inherit;
}

strong, b {
    font-weight: 500 !important;
}

h1.page-title,
h2.page-title,
.entry-title,
.page-content p {
  color: #ffffff;
}

#trp-floater-ls, #dark-mode-toggler {
    display: none !important;
}

.is-dark-theme img {
    filter: none !important;
}

/* Header */

body {
	padding-top: 0.1rem;
}

@media screen and (min-width: 1024px) {
body header:not(.elementor-sticky--active) {
   background: linear-gradient(to bottom,  rgba(0,45,114,1) 0%,rgba(0,45,114,1) 1%,rgba(0,45,114,0.3) 60%,rgba(0,45,114,0) 100%);
   background-color: transparent !important;
   position: absolute;
   z-index: 9;
   padding-bottom: 4rem !important;
	width: 100%;
}
}

@media screen and (max-width: 1024px) {
body header:not(.elementor-sticky--active) {
   background: rgba(0,45,114,.5) !important;
}
}

/* Menu */

.gamma-sites-menu ul.sub-menu > li:not(:first-child) {
    margin-top: 1rem;
}

body header ul.sub-menu {
	position: relative;
	display: flex;
	align-items: center;
	border-radius: 2rem;
	background: #002D72;
	z-index: 0;
	border: none !important;
	transition: all 0.3s ease-in-out 0s;
	color: #ffffff;
	width: 30rem !important;
	padding: 1rem !important;
}

body header ul.sub-menu::before {
  content: '';
  position: absolute;
  top: -0.2rem; bottom: -0.2rem;
  left: -0.2rem; right: -0.2rem;
  background: linear-gradient(90deg, rgba(232, 232, 232, 0.1) 0%, #E8E8E8 50%, rgba(232, 232, 232, 0.1) 100%);
  border-radius: 2rem;
  z-index: -1;
  mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  mask-composite: exclude; /* Para Firefox usa -moz-mask-composite: xor */
  -webkit-mask-composite: destination-out;
  padding: 2px; /* Simula el grosor del borde */
	width: calc(100% + 0.4rem);
    height: calc(100% + 0.4rem);
}

body header ul.sub-menu > li a {
	color: #ffffff;
	font-size: 2rem !important;
	font-weight: 300 !important;
}

@media screen and (max-width: 1024px) {
	
	body header .menu-mobile ul.sub-menu {
	width: 100% !important;
}

body header .menu-mobile ul.sub-menu > li a {
	color: #ffffff;
	font-size: 3rem !important;
	padding: 2rem !important;
	font-weight: 300 !important;
}
	
}

body header .gamma-sites-menu ul.sub-menu > li img {
    padding-right: 1.5rem;
    margin-right: 1.5rem;
    border-right: 0.1px solid;
	width: calc(5.6rem + 1.5rem);
}

body header .gamma-sites-menu ul.sub-menu > li a {
	position: relative;
	display: flex;
    align-items: center;
   border-radius: 2rem;
   background: transparent;
   z-index: 0;
  border: none !important;
  transition: all 0.3s ease-in-out 0s;
}

body header .gamma-sites-menu ul.sub-menu > li a::before {
  content: '';
  position: absolute;
  top: -0.2rem; bottom: -0.2rem;
  left: -0.2rem; right: -0.2rem;
  background: transparent;
  border-radius: 2rem;
  z-index: -1;
  padding: 0.2rem; /* Simula el grosor del borde */
	width: calc(100% + 0.4rem);
    height: calc(100% + 0.4rem);
}
body header .gamma-sites-menu ul.sub-menu > li:hover a,
body header .gamma-sites-menu ul.sub-menu > li.current-menu-item a,
body header .gamma-sites-menu ul.sub-menu > li.menu-item-home a {
   background: linear-gradient(211.56deg, #E8E8E8 -92.19%, rgba(232, 232, 232, 0) 84.8%);
}

body header .gamma-sites-menu ul.sub-menu > li:hover a::before,
body header .gamma-sites-menu ul.sub-menu > li.current-menu-item a::before,
body header .gamma-sites-menu ul.sub-menu > li.menu-item-home a::before {

  background: linear-gradient(90deg, rgba(232, 232, 232, 0.1) 0%, #E8E8E8 50%, rgba(232, 232, 232, 0.1) 100%);
  mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  mask-composite: exclude; /* Para Firefox usa -moz-mask-composite: xor */
  -webkit-mask-composite: destination-out;
}


/* Slideshow */

.elementor-swiper-button {
    z-index: 1 !important;
}


.page-title {
  text-align: center;
}

/* Divider border decoration */

.divider {
    position: relative;
    z-index: 0;
}

.divider::after {
    content: '';
    display: block;
    position: absolute;
	left: 0;
	bottom: 0;
    z-index: 1;
    width: 100%;
    height: 0.2rem;
    background: linear-gradient(90deg, rgba(232, 232, 232, 0.1) 0%, #E8E8E8 50%, rgba(232, 232, 232, 0.1) 100%) !important;
}

body .gamma-box {
	position: relative;
	display: flex;
    align-items: center;
   border-radius: 3rem;
   background: linear-gradient(211.56deg, #E8E8E8 -92.19%, rgba(232, 232, 232, 0) 84.8%);
   z-index: 0;
  border: none !important;
  transition: all 0.3s ease-in-out 0s;
}

body .gamma-box::before {
  content: '';
  position: absolute;
  top: -0.2rem; bottom: -0.2rem;
  left: -0.2rem; right: -0.2rem;
  background: linear-gradient(90deg, rgba(232, 232, 232, 0.1) 0%, #E8E8E8 50%, rgba(232, 232, 232, 0.1) 100%);
  border-radius: 3rem;
  z-index: -1;
  mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  mask-composite: exclude; /* Para Firefox usa -moz-mask-composite: xor */
  -webkit-mask-composite: destination-out;
  padding: 2px; /* Simula el grosor del borde */
	width: calc(100% + 0.4rem);
    height: calc(100% + 0.4rem);
}

.elementor-element:not(.gamma-sites-menu) > nav > ul > li > ul.sub-menu > li:not(:last-child) > a {
    display: block;
}

.elementor-element:not(.gamma-sites-menu) > nav > ul > li > ul.sub-menu > li:not(:last-child) > a::after {
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    background: linear-gradient(45deg, #ffffff 0%, transparent 75%);
}

body .elementor-element.elementor-widget-image {
	width: 100%;
}

body .gamma-border-image img {
    background: linear-gradient(180deg, #E8E8E8 0%, rgba(232, 232, 232, 0.1) 50%, #E8E8E8 100%) !important;
    padding: 0.2rem !important;
    border-radius: 2.4rem !important;
    width: 100% !important;
	max-width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

/* Button */
body .wp-element-button,
body #dark-mode-toggler,
body .elementor-button {
  position: relative;
  display: inline-block;
  padding: 1rem 2rem;
  font-size: 1rem;
  font-family: system-ui;
  color: #ffffff !important;
  background: linear-gradient(211.56deg, #E8E8E8 -92.19%, rgba(232, 232, 232, 0) 84.8%) !important;
  border-radius: 5rem !important;
  z-index: 0;
  border: none !important;
  transition: all 0.3s ease-in-out 0s;
}

body .wp-element-button:hover,
body #dark-mode-toggler:hover, 
body .elementor-button:hover {
  background: linear-gradient(180deg, #E8E8E8 -92.19%, rgba(232, 232, 232, 0) 84.8%) !important;
  color: #191617 !important;
}

body .wp-element-button::before,
body #dark-mode-toggler::before, 
body .elementor-button::before {
  content: '';
  position: absolute;
  top: -0.2rem; bottom: -0.2rem;
  left: -0.2rem; right: -0.2rem;
  background: linear-gradient(90deg, rgba(232, 232, 232, 0.1) 0%, #E8E8E8 50%, rgba(232, 232, 232, 0.1) 100%);
  border-radius: 5rem;
  z-index: -1;
  mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  mask-composite: exclude; /* Para Firefox usa -moz-mask-composite: xor */
  -webkit-mask-composite: destination-out;
  padding: 0.2rem; /* Simula el grosor del borde */
}

/* Card */
.uk-card-default {
  background-color: #f5f1ec;
  color: #0e1b24;
}

/* How We Are Diferent */

.interactive-box:not(:hover):not(.active) {
	width: 3rem;
}

.interactive-box:not(:hover):not(.active) > div > img {
	opacity: 0;
}

.interactive-box.active > div > img,
.interactive-box:hover  > div > img {
    opacity: 1;
}

.interactive-box > .interactive-content {
    display: none;
}

.interactive-box.active,
.interactive-box:hover {
    z-index: 6;
}
.interactive-box.active > .interactive-content,
.interactive-box:hover > .interactive-content {
    display: block !important;
}

/* Team */

.team-teaser,
.team-teaser > .elementor-element.e-con-full.e-flex.e-con.e-child,
.team-teaser > .elementor-element.e-con-full.e-flex.e-con.e-child .elementor-page-title {
     transition: all 0.3s ease-in-out 0s;
 }

@media screen and (min-width: 1140px) {

.team-teaser:hover {
    background: #002d72;
}

.team-teaser:hover > .elementor-element.e-con-full.e-flex.e-con.e-child {
    margin: 12rem 0rem 0rem 0rem;
    position: initial;
}

.team-teaser:hover > .elementor-element.e-con-full.e-flex.e-con.e-child .elementor-page-title {
     margin-top: -12rem;
 }
}

@media screen and (max-width: 1140px) {
	
#team .swiper-slide.e-loop-item {
    max-width: 78rem !important;
}

body #team .team-teaser {
    background: #002d72 !important;
}

body #team .team-teaser  > .elementor-element.e-con-full.e-flex.e-con.e-child::before {
    display: none !important;
	background: transparent !important;
}

body #team .team-teaser > .elementor-element.e-con-full.e-flex.e-con.e-child {
    margin: 12rem 0rem 0rem 0rem !important;
    position: initial !important;
}

body #team .team-teaser > .elementor-element.e-con-full.e-flex.e-con.e-child .elementor-page-title {
     margin-top: -12rem !important;
 }

}

@media screen and (max-width: 480px) {
	body #team .team-teaser > .elementor-element.e-con-full.e-flex.e-con.e-child {
    margin: 16rem 0rem 0rem 0rem !important;
    position: initial !important;
}

body #team .team-teaser > .elementor-element.e-con-full.e-flex.e-con.e-child .elementor-page-title {
     margin-top: -16rem !important;
 }
}

/* Contact form */

.contact-form button.elementor-button.elementor-size-sm,
.contact-form button.elementor-button.elementor-size-sm::before {
    border-radius: 5px !important;
}

/* Footer */

footer a, 
footer a:hover,
footer a:focus,
footer a:visited {
    text-decoration: underline;
    color: #ffffff !important;
}

.elementor-nav-menu--layout-horizontal .elementor-nav-menu a {
	 white-space: inherit !important;
}

.menu-footer,
.menu-footer nav,
.menu-footer nav > ul,
.menu-footer nav > ul > li > ul.sub-menu,
.menu-footer nav > ul > li > ul.sub-menu > li,
.menu-footer nav > ul > li > ul.sub-menu > li > a {
     width: 100%;
}

.menu-footer nav > ul {
    display: inline-block !important;
}

.menu-footer nav > ul > li {
    width: 100%;
    display: block !important;
    height: auto;
	float: left;
}

@media screen and (min-width: 1024px) {
.menu-footer nav > ul > li {
    width: initial;
    max-width: 21rem;
   
}
	
	.menu-footer nav > ul > li > a {
	    min-height: 5.4rem !important;
	    vertical-align: top;
	    align-items: start;
}
	
}
	
@media screen and (max-width: 1024px) {
.menu-footer nav > ul > li {
	width: 33.33%;
    max-width: 100%;
}
	
.menu-footer nav > ul > li > a {
	 min-height: 10rem !important;
	 vertical-align: top;
	 align-items: start;
}
		
}

.menu-footer nav > ul > li > ul.sub-menu {
    display: block !important;
    position: initial;
}
