/*------------------------------------*\
    GRID
\*------------------------------------*/
.grid {
  position: relative;
}
.grid__header h2 {
  font-size: 20px;
  font-weight: 700;
}
.grid__item__header {
  position: relative;
  display: block;
  overflow: hidden;
}
.grid__item__header a {
  display: block;
}
.grid__item__header a::before {
  content: ' ';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: black;
  width: 100%;
  height: 100%;
  z-index: 5;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}
.grid__item__header a:hover::before {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=20);
  opacity: 0.2;
}
.grid__item__header a:hover::after {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
.grid__item__header a:hover img {
  -moz-transform: scale(1.3);
  -ms-transform: scale(1.3);
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}
.grid__item__header a img {
  display: block;
  width: 100%;
  height: 250px;
  margin: 0;
  object-fit: cover;
  filter: grayscale(100%);
  -moz-transition: all 0.15s ease-in-out;
  -o-transition: all 0.15s ease-in-out;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}
.grid__item__content__title {
  display: block;
  font-weight: normal;
  font-size: 16px;
  color: #212529;
  margin: 20px 0;
  text-transform: capitalize;
}
.grid--team {
  position: relative;
  width: 100%;
  display: block;
}
.grid--team .grid__container .grid__item {
  max-width: 100%;
  width: 280px;
  padding-right: 15px;
}
.grid--team .grid__container .grid__item__content__title {
  margin: 15px 0 6px;
  color: #E53D2F;
  font-weight: bold;
}
.grid--team .grid__container .grid__item__content__title a {
  color: #E53D2F;
  text-decoration: none;
}
.grid--team .grid__container .grid__item__content__country {
  font-size: 13px;
  font-weight: bold;
  margin-bottom: 6px;
}
.grid--team .grid__container .grid__item__content__areas {
  font-size: 12px;
}
.grid--socios {
  position: relative;
  width: 100%;
  display: block;
}
.grid--socios .grid__item {
  position: relative;
  background-color: #f0f0f0;
  margin-bottom: 30px;
  padding: 20px;
}
.grid--socios .grid__item__content {
  margin-bottom: 20px;
}
.grid--socios .grid__item__content .thumbnail {
  position: relative;
}
.grid--socios .grid__item__content .thumbnail a {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 100%;
}
.grid--socios .grid__item__content .thumbnail a img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.grid--socios .grid__item__content__title {
  font-size: 20px;
  margin: 0 0 5px;
  font-weight: 600;
}
.grid--socios .grid__item__content__title a {
  color: #212529;
  text-decoration: none;
}
.grid--socios .grid__item__content__text {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
}
.grid--socios .grid__item__footer__city {
  display: block;
  font-size: 14px;
  margin: 0;
  font-weight: 500;
}
.grid--socios .grid__item__footer__city img {
  display: inline-block;
  vertical-align: bottom;
  height: 15px;
}
.grid--socios .grid__item__footer__city span {
  display: inline-block;
  vertical-align: bottom;
  line-height: 1;
}
.grid--socios .grid__item__footer__linkedin {
  display: inline-block;
  margin: 0;
  font-size: 16px;
  color: #212529;
}
.grid--asociados {
  position: relative;
  width: 100%;
  display: block;
}
.grid--asociados .grid__item {
  position: relative;
  background-color: #f0f0f0;
  margin-bottom: 30px;
  padding: 20px;
}
.grid--asociados .grid__item__content {
  margin-bottom: 20px;
}
.grid--asociados .grid__item__content .thumbnail {
  position: relative;
}
.grid--asociados .grid__item__content .thumbnail div {
  position: relative;
  display: block;
  width: 100%;
  padding-bottom: 100%;
}
.grid--asociados .grid__item__content .thumbnail div img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.grid--asociados .grid__item__content__title {
  font-size: 20px;
  margin: 0 0 5px;
  font-weight: 600;
  color: #212529;
}
.grid--asociados .grid__item__content__text {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
}
.grid--asociados .grid__item__footer__city {
  display: block;
  font-size: 14px;
  margin: 0;
  font-weight: 500;
}
.grid--asociados .grid__item__footer__city img {
  display: inline-block;
  vertical-align: bottom;
  height: 15px;
}
.grid--asociados .grid__item__footer__city span {
  display: inline-block;
  vertical-align: bottom;
  line-height: 1;
}
.grid--asociados .grid__item__footer__linkedin {
  display: inline-block;
  margin: 0;
  font-size: 16px;
  color: #212529;
}
.grid--areas-pais .grid__header {
  margin-bottom: 30px;
  padding-bottom: 15px;
  border-bottom: 1px solid #e54133;
}
.grid--areas-pais .grid__container {
  margin: 0 -24px;
}
.grid--areas-pais .grid__footer {
  margin-top: 20px;
  padding-bottom: 30px;
  border-bottom: 1px solid #e54133;
}
.grid--areas-pais .grid__item {
  padding: 0 24px;
}
.grid--areas-pais .grid__item__header h3 {
  display: block;
  font-size: 15px;
  text-transform: uppercase;
  color: #425364;
  font-weight: 500;
  margin-bottom: 10px;
}
.grid--areas-pais .grid__item__content img {
  display: inline-block;
  width: 150px;
  height: 60px;
  max-width: 100%;
  object-fit: cover;
  margin: 0;
}
.grid--areas-pais .grid__item__footer a {
  display: inline-block;
  padding: 10px;
}

/*------------------------------------*\
    SINGLE TEAM
\*------------------------------------*/
.single-team h2,
.single-abogados h2 {
  font-size: 38px;
  color: #425364;
  text-transform: uppercase;
  font-weight: 300;
}
.single-team .title-text-shadow,
.single-abogados .title-text-shadow {
  position: relative;
  margin: 35px;
}
.single-team .title-text-shadow h1,
.single-abogados .title-text-shadow h1 {
  position: relative;
  text-align: right;
  font-size: 38px;
  text-transform: uppercase;
  font-weight: bold;
  z-index: 1;
}
.single-team .title-text-shadow span,
.single-abogados .title-text-shadow span {
  font-size: 38px !important;
  top: 15px;
  right: inherit;
  left: 80%;
  width: 50%;
  font-size: 50px;
  font-weight: bold;
  text-shadow: 0 0px 4px #cacaca;
}
.single-team .city,
.single-abogados .city {
  font-size: 20px;
  display: block;
  padding-top: 10px;
  font-weight: 300;
  text-transform: uppercase;
}
.single-team .content,
.single-abogados .content {
  position: relative;
  margin-bottom: 50px;
  background: url(../images/rectangle.png) no-repeat center right 70%/80% 100%;
}
.single-team .content img,
.single-abogados .content img {
  display: block;
  width: 100%;
  height: 350px;
  object-fit: cover;
  margin-bottom: 30px;
}
.single-team .content h3,
.single-abogados .content h3 {
  display: block;
  font-size: 26px;
  color: white;
  margin: 30px 0 15px;
}
.single-team .content p, .single-team .content a,
.single-abogados .content p,
.single-abogados .content a {
  display: block;
  font-size: 16px;
  margin: 15px 0;
  color: white;
}
.single-team .content .linkedin,
.single-abogados .content .linkedin {
  display: none;
  font-size: 26px;
  color: white;
  margin: 30px 0;
}
.single-team .bio,
.single-abogados .bio {
  position: relative;
  margin-bottom: 50px;
}
.single-team .bio__subtitle,
.single-abogados .bio__subtitle {
  margin: 15px 0;
  color: #E53D2F;
  font-weight: bold;
  font-size: 15px;
}
.single-team .related-practices,
.single-abogados .related-practices {
  position: relative;
  margin-bottom: 50px;
}
.single-team .press-room,
.single-abogados .press-room {
  position: relative;
  margin-bottom: 50px;
}
.single-team .back-team,
.single-abogados .back-team {
  display: inline-block;
  padding: 8px 25px;
  font-weight: 500;
  color: white;
  background-color: #F1958E;
  text-decoration: none;
  line-height: 1.2em;
  margin: 35px auto;
  font-size: 15px;
}

/*------------------------------------*\
    SOCIOS
\*------------------------------------*/
.page-template-template-global-socios .socios-popup {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 600px;
  height: 100%;
  max-height: 100%;
  display: none;
  flex-direction: column;
  -webkit-box-shadow: 5px 5px 5px 2px rgba(194, 194, 194, 0.5);
  box-shadow: 5px 5px 5px 2px rgba(194, 194, 194, 0.5);
  z-index: 999;
}
.page-template-template-global-socios .socios-popup .close-popup {
  position: absolute;
  top: 25px;
  right: 25px;
  width: 45px;
  height: 45px;
  background-color: white;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.page-template-template-global-socios .socios-popup .close-popup img {
  width: 100%;
  margin: 0;
}
.page-template-template-global-socios .socios-popup .socios-content {
  position: relative;
  display: block;
  padding: 80px 5vmin 30px;
  width: 600px;
  max-width: 100%;
  height: 100%;
  margin: 0 auto;
  text-align: left;
  background-color: #f0f0f0;
  overflow-x: visible;
  overflow-y: scroll;
  text-align: left;
}
.page-template-template-global-socios .socios-popup .socio {
  position: relative;
}
.page-template-template-global-socios .socios-popup .socio:hover {
  z-index: 99;
}
.page-template-template-global-socios .socios-popup .socio:hover .socio-hover-data {
  display: block;
}
.page-template-template-global-socios .socios-popup .socio .socios-title {
  display: block;
  border-bottom: 1px solid #9ca5ad;
  padding: 10px 0;
  color: #425363;
  position: relative;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: 300;
}
.page-template-template-global-socios .socios-popup .socio .socio-hover-data {
  position: absolute;
  width: 350px;
  height: auto;
  top: -80px;
  right: -4.5vmin;
  display: none;
  z-index: 999;
  background-color: #f0f0f0;
  -webkit-box-shadow: 1px 1px 5px 2px rgba(194, 194, 194, 0.5);
  box-shadow: 1px 1px 5px 2px rgba(194, 194, 194, 0.5);
}
.page-template-template-global-socios .socios-popup .socio .socio-hover-data .close-hover {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
}
.page-template-template-global-socios .scroll-box {
  display: inline-block;
  vertical-align: middle;
  width: 90px;
  height: 90px;
  border: 1px solid #e63e31;
  border-radius: 50%;
  text-align: center;
  font-size: 12px;
  color: #2f363b;
  font-weight: 700;
  text-transform: uppercase;
  padding: 20px 10px 0;
  line-height: 1;
  background: #fff;
  margin: 15px 35px;
}

/*------------------------------------*\
    RECONOCIMIEMTOS
\*------------------------------------*/
.page-template-template-reconocimientos .data-right {
  background-color: #566c81;
  min-height: auto;
}
.page-template-template-reconocimientos .reconocimientos-heading {
  position: relative;
  margin: 35px;
}
.page-template-template-reconocimientos .reconocimientos-heading h1 {
  position: relative;
  text-align: right;
  font-size: 38px;
  text-transform: uppercase;
  font-weight: bold;
  color: white;
  z-index: 1;
}
.page-template-template-reconocimientos .reconocimientos-heading span {
  font-size: 38px !important;
  top: 15px;
  right: inherit;
  left: 80%;
  width: 50%;
  font-size: 50px;
  font-weight: bold;
  text-shadow: 0 0px 4px #cacaca;
}
.page-template-template-reconocimientos .our-journey-nav ul li a {
  color: #fff;
}
.page-template-template-reconocimientos #reconocimientos-slider .slick-track {
  display: flex !important;
}
.page-template-template-reconocimientos #reconocimientos-slider .slick-slide {
  height: inherit !important;
}
.page-template-template-reconocimientos .reconocimientos-slide {
  position: relative;
  padding: 15px;
}
.page-template-template-reconocimientos .reconocimientos-popup {
  background-color: #dbe1e6f5;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  padding: 30px;
  display: none;
  flex-direction: column;
  z-index: 999;
}
.page-template-template-reconocimientos .reconocimientos-popup .close-popup {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 45px;
  height: 45px;
  background-color: white;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.page-template-template-reconocimientos .reconocimientos-popup .close-popup img {
  width: 100%;
  margin: 0;
}
.page-template-template-reconocimientos .reconocimientos-popup .icon-winner {
  margin: 4vmin auto 8vmin;
  max-height: 100px;
}
.page-template-template-reconocimientos .reconocimientos-popup img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 120px;
  margin: 0 auto;
}
.page-template-template-reconocimientos .reconocimientos-popup .reconocimientos-content {
  display: block;
  width: 300px;
  max-width: 100%;
  margin: 15px auto;
  text-align: left;
  font-size: 14px;
}
.page-template-template-reconocimientos .reconocimientos-popup .reconocimientos-title {
  margin: 15px 0;
  color: #E53D2F;
  font-weight: bold;
  font-size: 15px;
  text-transform: uppercase;
}
.page-template-template-reconocimientos .reconocimientos-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 2px solid white;
  background-color: #708292;
  text-align: center;
  height: 300px;
  padding: 20px;
  margin-bottom: 30px;
}
.page-template-template-reconocimientos .reconocimientos-item .n_reconocimiento {
  position: absolute;
  top: 15px;
  left: 15px;
  color: white;
  font-weight: 300;
  font-size: 20px;
}
.page-template-template-reconocimientos .reconocimientos-item .reconocimientos-title {
  font-weight: bold;
  font-size: 20px;
  color: white;
  text-transform: uppercase;
}
.page-template-template-reconocimientos .reconocimientos-item img {
  width: auto;
  max-width: 100%;
  max-height: 120px;
  -webkit-filter: grayscale(100%);
  /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}

/*------------------------------------*\
    CLIENTES
\*------------------------------------*/
.page-template-template-clientes #clientes-slider .slick-track {
  display: flex !important;
}
.page-template-template-clientes #clientes-slider .slick-slide {
  height: inherit !important;
}
.page-template-template-clientes .clientes-slide {
  position: relative;
  padding: 15px;
}
.page-template-template-clientes .clientes-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 20px;
  margin-bottom: 30px;
}
.page-template-template-clientes .clientes-item img {
  width: auto;
  max-width: 100%;
  max-height: 120px;
  -webkit-filter: grayscale(100%);
  /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}

/*------------------------------------*\
    PRACTICAS
\*------------------------------------*/
.practicas-data-box ul li a {
  color: #425363;
  text-decoration: none;
}

.related-articles h2 {
  text-transform: uppercase;
  font-weight: 300;
  margin-bottom: 35px;
}

/*------------------------------------*\
    SECTORES
\*------------------------------------*/
.page-template-template-sectores-home .sectores-home {
  position: relative;
  margin-bottom: 30px;
}
.page-template-template-sectores-home .sectores-popup {
  background-color: #dbe1e6cc;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: none;
  flex-direction: column;
  z-index: 999;
}
.page-template-template-sectores-home .sectores-popup .close-popup {
  position: absolute;
  top: 25px;
  right: 25px;
  width: 45px;
  height: 45px;
  background-color: white;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.page-template-template-sectores-home .sectores-popup .close-popup img {
  width: 100%;
  margin: 0;
}
.page-template-template-sectores-home .sectores-popup .sectores-content {
  position: relative;
  display: block;
  padding: 6vmin 5vmin;
  width: 700px;
  max-width: 100%;
  height: 100%;
  margin: 0 auto;
  text-align: left;
  font-size: 14px;
  background-color: #f0f0f0;
}
.page-template-template-sectores-home .sectores-popup .sectores-title {
  display: block;
  border-bottom: 1px solid #9ca5ad;
  padding: 10px 0;
  color: #425363;
  position: relative;
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 300;
}

/*------------------------------------*\
    PAISES
\*------------------------------------*/
.single-paises .navbar .dropdown-menu {
  background-color: rgba(255, 255, 255, 0.95) !important;
}
.single-paises .single-paises-header {
  position: relative;
  padding: 4vmin 15px;
  display: block;
  background: #000 url("../images/ecija-home1_poster.png") no-repeat center center/cover;
  overflow: hidden;
}
.single-paises .single-paises-header video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
.single-paises .single-paises-header img {
  position: relative;
  display: inline-block;
  width: 500px;
  max-width: 100%;
  z-index: 2;
}
.single-paises .single-paises-header h4 {
  position: relative;
  font-size: 20px;
  line-height: 30px;
  font-weight: normal;
  color: white;
  margin-bottom: 20px;
  z-index: 2;
}
.single-paises .single-paises-header h4 em {
  display: inline-block;
  font-weight: 500;
}
.single-paises .single-paises-header a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  background-color: #F1958E;
  padding: 4px 40px 0;
  color: #fff;
  font-size: 14px;
  border: 0;
  line-height: 30px;
  z-index: 2;
}
.single-paises .press-room h2 {
  font-size: 38px;
  color: #425364;
  text-transform: uppercase;
  font-weight: 300;
  margin-bottom: 20px;
}
.single-paises .press-room h3 {
  display: block;
  font-size: 15px;
  color: #425364;
  margin-bottom: 30px;
  padding-bottom: 15px;
  border-bottom: 1px solid #e54133;
}
.single-paises .press-room h4 {
  display: block;
  font-size: 15px;
  line-height: 1.4em;
  color: #425364;
  margin-bottom: 30px;
}
.single-paises .press-room .add-plus-icon {
  align-items: flex-start;
}
.single-paises .press-room .add-plus-icon span {
  text-transform: none;
}

.custom-loading {
  position: absolute;
  width: 100%;
  height: 100%;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  display: none;
  background-color: rgba(255, 255, 255, 0.6);
  z-index: 99999999;
}
.custom-loading .custom-loading__spinner {
  position: absolute;
  width: 80px;
  height: 80px;
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-top: 5px solid #151a28;
  -webkit-tap-highlight-color: transparent;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -moz-animation-name: jQuery-plainOverlay-spin;
  -webkit-animation-name: jQuery-plainOverlay-spin;
  animation-name: jQuery-plainOverlay-spin;
  -moz-animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -moz-animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -moz-animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

@-webkit-keyframes jQuery-plainOverlay-spin {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-moz-keyframes jQuery-plainOverlay-spin {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-ms-keyframes jQuery-plainOverlay-spin {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-o-keyframes jQuery-plainOverlay-spin {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes jQuery-plainOverlay-spin {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
