/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */


/* global */
p:last-child {
	margin-bottom:0;
}

a:hover {
	text-decoration: none !important;
}

strong,
b {
  font-weight: 600;
}

.grecaptcha-badge,
.elementor-field-type-recaptcha_v3 {
	display: none !important;
}

.otgs-development-site-front-end {
  display: none;
}

.swiper:has(.swiper-wrapper):has(.swiper-slide:only-of-type) ~ .elementor-swiper-button {
    display: none !important;
}




.color-accent {
  color:var(--e-global-color-accent);
}






/* header */
@media (max-width:1200px) {
  header > div > div {
    --column-gap:30px;
  }
}




/* menu */
.menu-item:after{
  content:' ' !important;
  position: absolute;
  width:100%;
  background:white;
  left:0;
}

.menu-submenu li {
  padding-left:0 !important;
  padding-right: 0 !important;
}

.menu-submenu a {
  font-weight: 500 !important;
  padding:15px 20px;
  border-radius: 15px;
}

.menu-submenu li:hover a {
  background-color:var(--e-global-color-b447627);
}


@media (max-width:1110px) {
  header .e-n-menu-item  {
    --n-menu-title-space-between:0;
  }
  
  header .e-n-menu-title {
    --n-menu-title-padding:0.5rem 0.4rem;
  }
}






/* off canvas */
header .e-off-canvas .e-off-canvas__content {
  padding-top:100px !important;
}

header .e-off-canvas  {
  z-index: 12 !important;
}





/* toggle off canvas */

.toggle-off-canvas  {
  margin-right: -10px;
}

.toggle-off-canvas .ham {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: transform 400ms;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.toggle-off-canvas .elementor-icon[aria-expanded="true"] .hamRotate {
  transform: rotate(45deg);
}

.toggle-off-canvas .line {
  fill:none;
  transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
  stroke:#000;
  stroke-width:5.5;
  stroke-linecap:round;
}

.toggle-off-canvas .ham8 .top {
  stroke-dasharray: 40 160;
}
.toggle-off-canvas .ham8 .middle {
  stroke-dasharray: 40 142;
  transform-origin: 50%;
  transition: transform 400ms;
}
.toggle-off-canvas .ham8 .bottom {
  stroke-dasharray: 40 85;
  transform-origin: 50%;
  transition: transform 400ms, stroke-dashoffset 400ms;
}
.toggle-off-canvas .elementor-icon[aria-expanded="true"] .ham8 .top {
  stroke-dashoffset: -64px;
}
.toggle-off-canvas .elementor-icon[aria-expanded="true"] .ham8 .middle {
  transform: rotate(90deg);
}
.toggle-off-canvas .elementor-icon[aria-expanded="true"] .ham8 .bottom {
  stroke-dashoffset: -64px;
}




/* mobile menu */
.mobile-menu .elementor-nav-menu ul {
  padding-left:30px;
}

.mobile-menu .elementor-nav-menu a.has-submenu {
  background-image:url('assets/img/chevron-down-arrow.svg');
  background-size: 20px auto;
  background-position: right center;
  background-repeat: no-repeat;
  padding-right: 30px;
}

.mobile-menu .elementor-nav-menu a[aria-expanded="true"].has-submenu {
  background-image:url('assets/img/chevron-up-arrow.svg');
}




/* buttons */
.elementor-widget-button.btn-outline .elementor-button {
  background-color:transparent;
  color:var(--e-global-color-accent);
}

.elementor-widget-button.btn-outline .elementor-button:hover {
  color:#fff;
  color:var(--e-global-color-b447627);
  border-color:var(--e-global-color-b447627);
}

.elementor-widget-button.text-accent .elementor-button {
  color:var(--e-global-color-accent) !important;
}

.elementor-widget-button.text-accent .elementor-button:hover {
  color:var(--e-global-color-b447627) !important;
}

.elementor-widget-button.double-border .elementor-button {
  border-width:2px;
}

.elementor-widget-button.btn-black .elementor-button {
  background-color:var(--e-global-color-secondary);
  border-color:var(--e-global-color-secondary);
  color:#fff;
}

.elementor-widget-button.btn-black .elementor-button:hover {
  background-color:var(--e-global-color-ebf00b8);
  border-color:var(--e-global-color-ebf00b8);
}





/* links */
.link-arrow-next a,
.link-arrow-prev a {
    position: relative;
}
.link-arrow-next.underline a,
.link-arrow-prev.underline a {
    text-decoration: underline;
}

.link-arrow-next a:after,
.link-arrow-prev a:after {
    content:' ';
    background-size: auto 12px;
    background-repeat: no-repeat;
    background-position: right center;
    width:12px;
    height: 100%;
    position: absolute;
    transition:width 0.2s;
    background-image:url('assets/img/icon-arrow-next-link.svg');
    top:0;
} 

.link-arrow-next a:after {
    left:calc(100% + 12px);
} 

.link-arrow-prev a:after {
    right:calc(100% + 12px);
    transform: rotate(180deg);
} 

.link-arrow-next a:hover:after,
.link-arrow-prev a:hover:after,
.trigger-link-animation:hover .link-arrow-next a:after,
.trigger-link-animation:hover .link-arrow-prev a:after {
  width:30px;
}





/* tabla comparativa */
.comparative-table {
  overflow-x: auto;
  width:100%;
}
.comparative-table table {
  background:black;
  color:white;
  border:0;
  border-radius: 20px;
  width:100%;
}

.comparative-table table tr th,
.comparative-table table tr td {
  padding:50px 30px;
  border:0 !important;
  width:25%;
}

@media (max-width:1024px) {
  .comparative-table table tr th,
  .comparative-table table tr td {
    padding:20px 20px;
  }
}

.comparative-table table tr td {
  vertical-align: middle;
}

.comparative-table table tr th {
  text-align: left;
}

.comparative-table table tr th:not(.color-accent) {
  color:#D4D1D1;
}

.comparative-table table tr td:first-child,
.comparative-table table tr th {
  font-size: 18px;
}

.comparative-table table tbody tr:nth-child(odd) td {
  background-color: #3C3C3C;
}





/* forms */

form .elementor-field-option {
  display: flex;
  gap:10px;
  align-items: flex-start;

}

form .elementor-field-option input {
  margin-top:5px;
}

form .elementor-field-option a {
  color:inherit;
  text-decoration: underline;
}

form .elementor-field-option a:hover {
  color:inherit;
  text-decoration: none;
}
form .elementor-field-option label {
  font-size: 14px !important;
}

form .elementor-field-type-acceptance > label {
  display: none;
  
}

.form-orange .elementor-field-label {
  font-weight: 700 !important;
  margin-bottom:5px;
}

.form-orange .elementor-field {
  border:1px solid #D4D4D4;
  border-radius: 10px;
  padding: .8rem 1rem;
}

.form-orange  .elementor-field-type-recaptcha_v3 {
  display: none !important;
}

.form-orange .elementor-form-fields-wrapper {
  gap:15px;
}

.form-orange .elementor-button {
  flex-basis: auto !important;
  background-color:var(--e-global-color-secondary) !important;
  border-color:var(--e-global-color-secondary) !important;
  color:#fff;
}

.form-orange .elementor-button:hover {
  background-color:var(--e-global-color-ebf00b8) !important;
  border-color:var(--e-global-color-ebf00b8) !important;
  color:#fff;
}




/* cms */
.cms a {
  text-decoration: underline;
}

.cms a:hover {
  text-decoration: none;
}

/* cms */
.cms h2,
.cms h3,
.cms h4 {
  margin-top:30px;
}

.cms section:first-child h2 {
  margin-top:0px;
}

.cms h2,
.cms h3,
.cms h4,
.cms h5,
.cms h6 {
  color: var(--e-global-color-text) !important;
}

.cms h2 {
  font-size:36px;
}

.cms h3 {
  font-size:28px;
}

.cms h4 {
  font-size:20px;
}

@media (max-width:768px) {
  .cms h2 {
    font-size:26px;
  }
  
  .cms h3 {
    font-size:20px;
  }
  
  .cms h4 {
    font-size:16px;
  }
}







/* tables  */
table tbody tr:hover>td, 
table tbody tr:hover>th {
  background-color:inherit;  
}





/* marquee casos */
.marquee-casos .deensimc__card {
  gap:0;
  border-radius: 24px !important;
  overflow:hidden;
  position: relative;
}

.marquee-casos .deensimc--card__content {
  position: absolute;
  top:0;
  padding:40px 50px 40px 50px ;
  width: 100%;
  height: 100%;
}

.marquee-casos .deensimc--card__content .deensimc--card__title {
  color:white;
  letter-spacing: inherit;
  margin-bottom:20px !important;
}

.marquee-casos .deensimc--post__image {
  height: 100% ;
  position: relative;
}


.marquee-casos .deensimc--post__image:after {
  content:' ';
  position: absolute;
  top:0;
  left:0;
  width:100%;
  height: 100%;
  background:rgba(0, 0, 0, 0.5); 
}

.marquee-casos .deensimc--post__image img {
  width: 100% !important ;
  height: 100% !important ;
  aspect-ratio: auto ;
  object-fit: cover ;
}

.marquee-casos .deensimc__card{
  background:transparent;
}

/*
.marquee-casos .deensimc--cards__item {
  width:33vw !important;
}
*/

.marquee-casos .deensimc--read_more {
  border:1px solid white;
  border-radius: 20px;
  padding:4px 16px;
  max-width: max-content;
  color:white;
  transition:all 0.2s;
  font-weight: 500;
}

.marquee-casos .deensimc__card:hover .deensimc--read_more {
  opacity: 0.7;
}

.marquee-casos .deensimc--read_more:before {
  content:' ';
  width: 100%;
  height: 100%;
  position: absolute;
  left:0;
  top:0;
}




/* vídeo */
.elementor-custom-embed-play {
    background: white;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    filter: drop-shadow(1px 0 6px rgba(0, 0, 0, .3));
}

.elementor-custom-embed-play svg {
  filter:none;
  margin-left:5px;
}




/* taxonomy  filter */
.taxonomy-filter .e-filter {
  gap:10px;
}

.taxonomy-filter .e-filter-item {
  border:1px solid black !important;
  padding:6px 18px;
  border-radius: 30px;
  color:black;
  transition:color 0.3s, background-color 0.3s, border-color 0.3s, padding-left 0.3s;
}

.taxonomy-filter .e-filter-item:not([aria-pressed="true"]):hover {
  border-color:var(--e-global-color-ebf00b8);
  color:var(--e-global-color-ebf00b8);
}

.taxonomy-filter .e-filter-item[aria-pressed="true"] {
    background:black;
    color:white;
    background-image:url('assets/img/icon-check-white.svg');
    background-repeat: no-repeat;
    background-position: 16px center;
    background-size: 14px auto;
    padding-left:46px;
}






/* tabs switch button */
.tabs-switch .e-n-tabs-heading {
  padding:10px;
  box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.08);
  max-width: max-content;
  align-self: center;
  border-radius: 100px;
}

.tabs-switch .e-n-tabs-heading button[aria-selected="true"] span {
  font-weight: 600;
}




/* box valores */
@media (min-width:1025px) {
  .box-valores .elementor-icon-box-title { 
      min-height: 72px;
  }
}




/* list to check icons */
.list-check ul li {
  list-style: none;
  font-weight: 500;
  align-items: flex-start !important;
  display: flex;
}

.list-check ul li:not(:last-child) {
  margin-bottom:10px;
}



.list-check ul li:before {
  content:' ';
  display: block;
  background-image:url('assets/img/icon-check-dark.svg');
  background-repeat: no-repeat;
  background-size: 18px auto;
  padding-left:36px;
  width:18px;
  height: 16px;
  margin-top:8px;
}





/* archive search */
.archive-search-input .e-search-form {
  max-width: 540px;
  margin-left:auto;
  margin-right: auto;
}

.archive-search-input .e-search-results-container {
  left:0 !important;
}

@media (max-width:767px) {
  .blog-search-input .e-search-input {
    --e-search-input-padding-inline-start:16px;
    --e-search-input-padding-inline-end:16px;
  }
  
  .blog-search-input .e-search-label>i,.elementor-widget-search .e-search-label>svg {
     margin-left:-10px;
  }
}




/* post terms */
.post-terms {
  display: inline-flex;
  gap:16px;
  flex-wrap: wrap;
}

.e-loop-item .post-terms {
  gap:10px;
}

.post-terms .tag-item {
  font-size: 14px;
  color:white;
  background-color: var(--e-global-color-f6c51da);
  padding: 6px 12px 6px 12px;
  border-radius: 30px 30px 30px 30px;
}




/* blog grid */
.blog-grid .elementor-pagination {
  display: flex;
  justify-content: space-between;
}




/* hero */
.hero-large {
  font-size: 110px;
}


@media (min-width:769px) {
  .hero-large {
    font-size: 200px;
  }
}
