/*
Theme Name: Aina Child Theme
Description: This is a custom child theme
Template: salient
Version: 1.0
*/

/*GENERAL*/
:root {
  --light: #fff6f2;
  --dark: #ff5539;
  --grey: #494949;
  --light-grey: #d9d9d9;
  --accent: #ff5539;
  --secondary: #5c2126;

  --current-color: var(--light);
  --base: 1440;

  --primary-font: 'ABCSynt', sans-serif;
  --secondary-font: 'InterTight', sans-serif;
  --mono-font: 'IBM Plex Mono', monospace;

  --fnt-size-huge: calc(110 / 1440 * 100vw);
  --fnt-size-big: calc(58 / 1440 * 100vw);
  --fnt-size-medium: calc(39 / 1440 * 100vw);
  --fnt-size-small: calc(25 / 1440 * 100vw);
  --font-size-body-footer: calc(18 / 1440 * 100vw);
  --fnt-size-body: calc(22 / 1440 * 100vw);
  --fnt-size-tiny: calc(13 / 1440 * 100vw);
  --fnt-size-huge-mb: calc(46 / 390 * 100vw);
  --fnt-size-big-mb: calc(30 / 390 * 100vw);
  --fnt-size-medium-mb: calc(24 / 390 * 100vw);
  --fnt-size-small-mb: calc(22 / 390 * 100vw);
  --font-size-body-footer-mb: calc(18 / 390 * 100vw);
  --fnt-size-body-mb: calc(16 / 390 * 100vw);
  --fnt-size-tiny-mb: calc(14 / 390 * 100vw);

  --fnt-size-project-title: calc(140 / 1440 * 100vw);
  --fnt-size-project-title-mb: calc(60 / 390 * 100vw);
}

::selection {
  background-color: var(--dark);
  color: var(--light);
  text-shadow: none;
}

@font-face {
  font-family: 'ABCSynt';
  src:
    url('/wp-content/themes/aina-child/fonts/ABCSynt-Regular.woff2') format('woff2'),
    url('/wp-content/themes/aina-child/fonts/ABCSynt-Regular.woff') format('woff'),
    url('/wp-content/themes/aina-child/fonts/ABCSynt-Regular.ttf') format('ttf');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'ABCSynt';
  src:
    url('/wp-content/themes/aina-child/fonts/ABCSynt-RegularSlant.woff2') format('woff2'),
    url('/wp-content/themes/aina-child/fonts/ABCSynt-RegularSlant.woff') format('woff'),
    url('/wp-content/themes/aina-child/fonts/ABCSynt-RegularSlant.ttf') format('ttf');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'InterTight';
  src:
    url('/wp-content/themes/aina-child/fonts/InterTight-Regular.woff2') format('woff2'),
    url('/wp-content/themes/aina-child/fonts/InterTight-Regular.woff') format('woff'),
    url('/wp-content/themes/aina-child/fonts/InterTight-Regular.ttf') format('ttf');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/*WRAPPERS*/
@media (min-width: 1000px) {
  .full-width-content:not(.no-padding, .special-padding) > .row_col_wrap_12 {
    padding-left: 48px !important;
    padding-right: 48px !important;
  }

  .no-padding {
    padding: 0 !important;
  }

  .no-padding > .row_col_wrap_12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 1000px) {
  .full-width-content:not(.no-padding) > .row_col_wrap_12 {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .no-padding > .row_col_wrap_12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

p {
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-body);
  line-height: 1.4;
}

@media (max-width: 1000px) {
  p {
    font-size: var(--fnt-size-body-mb);
  }
}

/*BTN*/

.expand-circle {
  --circle-size: 2em;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  box-sizing: border-box;
  width: var(--circle-size);
  min-width: var(--circle-size);
  height: var(--circle-size);
  padding-left: 0.75em;
  padding-right: 0.75em;
  border-radius: 999px;
  overflow: hidden;
  text-decoration: none;
  white-space: nowrap;
}

.expand-circle__label {
  width: 100%;
  text-align: center;
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-tiny);
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.25s ease;
  transition-delay: 0s;
}

.expand-circle--orange {
  background-color: var(--accent);
}

.expand-circle--orange .expand-circle__label {
  color: var(--light);
}

.expand-circle--light {
  background-color: var(--light);
}

.expand-circle--light .expand-circle__label {
  color: var(--dark);
}
@media (max-width: 1000px) {
  .expand-circle__label {
    font-size: var(--fnt-size-tiny-mb);
  }
}

/*TITLES*/
.custom-title *,
.custom-title {
  margin-bottom: 0 !important;
}

.custom-title strong {
  font-weight: 600;
}
.custom-title.regular,
.custom-title.regular * {
  font-weight: 400;
}
.custom-title.semibold,
.custom-title.semibold * {
  font-weight: 500;
}

.custom-title.bold,
.custom-title.bold * {
  font-weight: 600;
}

.custom-title.italic,
.custom-title.italic * {
  font-style: italic;
}

.custom-title.uppercase .custom-title.uppercase * {
  text-transform: uppercase !important;
}

.custom-title.lowercase,
.custom-title.lowercase * {
  text-transform: initial !important;
}

.custom-title.black,
.custom-title.black * {
  color: var(--black);
}
.custom-title.light,
.custom-title.light * {
  color: var(--light);
}

.custom-title.dark,
.custom-title.dark * {
  color: var(--secondary);
}

.custom-title.accent,
.custom-title.accent * {
  color: var(--accent);
}

a.toggle-heading {
  font-family: var(--secondary-font) !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
  color: var(--dark) !important;
}
span.open-quote,
span.close-quote {
  display: none !important;
}

.custom-title.space-bottom {
  margin-bottom: 40px !important;
}

/*1vw = 14.4 en 1440px*/
@media (min-width: 1000px) {
  .custom-title.huge *,
  .custom-title.huge {
    font-size: var(--fnt-size-huge) !important;
    line-height: 0.95 !important;
  }
  .custom-title.big *,
  .custom-title.big {
    font-size: var(--fnt-size-big) !important;
    line-height: 1 !important;
  }

  .custom-title.big.animated *,
  .custom-title.big.animated {
    line-height: 0.8 !important;
  }

  .custom-title.medium *,
  .custom-title.medium {
    font-size: var(--fnt-size-medium) !important;
    line-height: 1.1 !important;
  }
  .custom-title.small *,
  .custom-title.small {
    font-size: var(--fnt-size-small) !important;
    line-height: 1.1 !important;
  }

  .custom-title.body *,
  .custom-title.body {
    font-size: var(--fnt-size-body) !important;
    line-height: 1.2 !important;
  }

  .custom-title.tiny *,
  .custom-title.tiny,
  .nectar-button.medium {
    font-size: var(--fnt-size-tiny) !important;
    line-height: 1.1 !important;
  }

  .custom-title.tiny.bigger-tiny *,
  .custom-title.tiny.bigger-tiny {
    font-size: calc(16 / 1440 * 100vw) !important;
    line-height: 1.1 !important;
  }

  a.toggle-heading {
    font-size: var(--fnt-size-tiny) !important;
  }
}

@media (max-width: 1000px) {
  .custom-title.huge *,
  .custom-title.huge {
    font-size: var(--fnt-size-huge-mb) !important;
    line-height: 1 !important;
  }
  .custom-title.big *,
  .custom-title.big {
    font-size: var(--fnt-size-big-mb) !important;
    line-height: 1.1 !important;
  }

  .custom-title.big.animated *,
  .custom-title.big.animated {
    line-height: 1 !important;
  }

  .custom-title.big.animated.proyecto-description *,
  .custom-title.big.animated.proyecto-description {
    line-height: 0.9 !important;
  }
  .custom-title.medium *,
  .custom-title.medium {
    font-size: var(--fnt-size-medium-mb) !important;
    line-height: 1.1 !important;
  }

  .custom-title.medium.size-body-mb *,
  .custom-title.medium.size-body-mb {
    font-size: calc(20 / 390 * 100vw) !important;
    line-height: 1.1 !important;
  }
  .custom-title.small *,
  .custom-title.small,
  a.toggle-heading {
    font-size: var(--fnt-size-small-mb) !important;
    line-height: 1.2 !important;
  }

  .custom-title.small .proyecto-card__reveal-text {
    line-height: 1.1 !important;
  }

  .custom-title.tiny *,
  .custom-title.tiny,
  .nectar-button.medium {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  .custom-title.body *,
  .custom-title.body {
    font-size: var(--fnt-size-body-mb) !important;
    line-height: 1.3 !important;
  }
}
.custom-title.primary,
.custom-title.primary * {
  font-family: var(--primary-font) !important;
}

.custom-title.mono,
.custom-title.mono * {
  font-family: var(--mono-font) !important;
}

.custom-title.secondary,
.custom-title.secondary *,
.nectar-button.medium {
  font-family: var(--secondary-font) !important;
}

.custom-title.margin_bottom_title {
  margin-bottom: 1em !important;
}
/*TITLE ANIMATION*/

.splitting-lines {
  opacity: 0;
}

.line {
  display: block;
}

/*FOOTER*/
.footer-logo {
  width: 100% !important;
}

.legals .wpb_wrapper {
  display: flex;
  padding: 3rem 0 1rem 0;
  gap: 2rem;
}

#footer a {
  color: var(--light);
}

#footer .underline-hover a {
  position: relative;
  display: inline-block;
}

#footer .custom-title.underline-hover,
#footer .footer-logo {
  margin-bottom: 0.5em !important;
}
#footer .underline-hover a:after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 0;
  right: 0;
  border-bottom: 1.5px solid var(--light);
  transform-origin: right;
  transition:
    transform 0.3s cubic-bezier(0.25, 0, 0.4, 1),
    border-color 0.35s cubic-bezier(0.52, 0.01, 0.16, 1);
  backface-visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
}

#footer .underline-hover a:hover:after {
  transform: scaleX(1);
  transform-origin: left;
}
#footer .custom-title.italic-hover {
  transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}
#footer .custom-title.italic-hover:hover {
  transform: skewX(-18deg) !important;
}
@media (max-width: 1000px) {
  .legals .wpb_wrapper {
    flex-flow: column;
  }
}

/*BTN*/
a.nectar-button.medium.see-through.extra-color-2:before {
  content: '';
  height: 0;
  background: var(--dark);
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  transition: all 0.3s cubic-bezier(0.7, 0, 0.2, 1);
  z-index: -1;
}

a.nectar-button.medium.see-through.extra-color-2.light:before {
  background: var(--light);
}

.submit-wrapper {
  position: relative;
}

a.nectar-button.medium.see-through.extra-color-2 {
  position: relative;
  z-index: 99;
  transition: all 0.3s cubic-bezier(0.7, 0, 0.2, 1);
  border-width: 1px;
  color: var(--dark);
  border: 1px solid var(--dark);
}

a.nectar-button.medium.see-through.extra-color-2.light {
  color: var(--light);
  border: 1px solid var(--light);
}

a.nectar-button.medium.see-through.extra-color-2 span {
  color: var(--dark);
}

a.nectar-button.medium.see-through.extra-color-2:hover span {
  color: var(--light);
}

a.nectar-button.medium.see-through.extra-color-2.light span {
  color: var(--light);
}

a.nectar-button.medium.see-through.extra-color-2.light:hover span {
  color: var(--dark);
}

a.nectar-button.medium.see-through.extra-color-2:hover:before,
.submit-wrapper:hover .submit-hover {
  height: 100%;
}

.footer-bottom-social .wpb_wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 1000px) {
  span.not-break {
    white-space: nowrap;
  }
}

/*NAV*/

#top.site-header {
  background: transparent !important;
  background-color: transparent !important;
}

#header-outer {
  background: transparent !important;
  padding: 0 18px !important;
}

/*LOGO*/
#top .site-header__logo {
  position: relative !important;
  z-index: 250 !important;
  display: flex;
}

#top .site-header__logo-link {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  overflow: hidden !important;
  height: 26px !important;
  width: 82px !important;
  color: var(--dark);

  transition: width 1.1s cubic-bezier(0.75, 0, 0.15, 1) !important;
}

#top .site-header__logo-link:hover,
#top .site-header__logo-link:focus-visible {
  width: 211px !important;
}

#top .site-header__logo-svg {
  position: absolute !important;
  top: 0;
  left: 0;
  height: 26px !important;
  width: auto !important;
  max-width: none !important;
  display: block;
  overflow: visible;
}

#top .site-header__logo-svg path {
  fill: var(--dark) !important;
}

#top .site-header__menu-group[data-menu-open='true'] .site-header__logo-svg path {
  fill: var(--light) !important;
}

#top .site-header__logo-svg .lg-move {
  transform: translate(var(--tx), var(--ty));
  transition:
    transform 0.7s cubic-bezier(0.75, 0, 0.15, 1),
    fill 0.4s cubic-bezier(0.7, 0, 0.3, 1);
}

#top .site-header__logo-link:hover .site-header__logo-svg .lg-move,
#top .site-header__logo-link:focus-visible .site-header__logo-svg .lg-move {
  transform: translate(0, 0);
}

#top .site-header__logo-svg .lg-ain {
  transition:
    clip-path 0.7s cubic-bezier(0.75, 0, 0.15, 1),
    fill 0.4s cubic-bezier(0.7, 0, 0.3, 1);
}

#top .site-header__logo-link:hover .site-header__logo-svg .lg-ain,
#top .site-header__logo-link:focus-visible .site-header__logo-svg .lg-ain {
  clip-path: polygon(
    0px 0px,
    48px 0.33px,
    48px 1.33px,
    48px 2.33px,
    48px 3.33px,
    48px 4.35px,
    48px 5.35px,
    48px 6.35px,
    48px 7.35px,
    48px 8.35px,
    48px 9.35px,
    48px 10.35px,
    48px 11.35px,
    48px 12.35px,
    48px 13.35px,
    48px 14.35px,
    48px 15.35px,
    48px 16.35px,
    48px 17.35px,
    48px 18.35px,
    48px 19.35px,
    48px 20.35px,
    48px 21.35px,
    48px 21.52px,
    48px 21.6px,
    48px 21.68px,
    48px 21.77px,
    48px 21.85px,
    48px 21.93px,
    48px 22.02px,
    48px 22.1px,
    48px 22.18px,
    48px 22.27px,
    48px 22.35px,
    48px 22.43px,
    48px 22.52px,
    48px 22.6px,
    48px 22.68px,
    48px 22.77px,
    48px 22.85px,
    48px 22.93px,
    48px 23.02px,
    48px 23.1px,
    48px 23.18px,
    48px 23.27px,
    48px 23.35px,
    48px 23.43px,
    48px 23.52px,
    48px 23.6px,
    48px 23.68px,
    48px 23.77px,
    48px 23.85px,
    48px 23.93px,
    48px 24.02px,
    48px 24.1px,
    48px 25.28px,
    0px 26px
  ) !important;
}
#top .site-header__logo-svg .lg-fade {
  opacity: 0;
  transform: translateX(-10px) scale(0.92);
  transform-origin: left center;
  transition:
    opacity 0.7s cubic-bezier(0.75, 0, 0.15, 1),
    transform 0.6s cubic-bezier(0.75, 0, 0.15, 1),
    fill 0.4s cubic-bezier(0.7, 0, 0.3, 1);
}

#top .site-header__logo-link:hover .site-header__logo-svg .lg-fade,
#top .site-header__logo-link:focus-visible .site-header__logo-svg .lg-fade {
  opacity: 1;
  transform: translateX(0) scale(1);
}

/*PRELOADER*/
#aina-preloader {
  z-index: 99999;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

#aina-preloader .preloader__bg {
  background-color: var(--dark);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  inset: 0;
  -webkit-mask-image: none;
  mask-image: none;
}

#aina-preloader .preloader__content {
  color: var(--light);
  display: flex;
  flex-flow: column;
  align-items: start;
  justify-content: space-between;
  height: 100%;
  width: 100%;
}

#aina-preloader .preloader__text {
  color: var(--light);
  font-family: var(--primary-font);
  font-size: clamp(1.25rem, 2.5vw, 2rem);
  line-height: 1.1;
  max-width: 18em;
  margin: 0;
  padding: 1.5em;
  padding-top: 1em;
}

#aina-preloader .preloader__text em {
  font-style: italic;
}

#aina-preloader .preloader__logo {
  position: relative;
  width: 100%;
}

#aina-preloader .preloader__logo-svg {
  height: 100%;
  width: auto;
  display: block;
  overflow: visible;
  padding-bottom: 0.8em;
  padding-left: 3.5em;
  padding-right: 3.5em;
}

#aina-preloader .preloader__logo-svg path {
  fill: var(--light);
}

#aina-preloader .preloader__logo-svg .lg-move {
  transform: translate(0, 0);
  transition: transform 0.7s cubic-bezier(0.75, 0, 0.15, 1);
}

#aina-preloader .preloader__logo[data-state='compact'] .lg-move {
  transform: translate(var(--tx), var(--ty));
}

#aina-preloader .preloader__logo-svg .lg-ain {
  clip-path: inset(0 0% 0 0) !important;
  transition: clip-path 0.7s cubic-bezier(0.75, 0, 0.15, 1);
}

#aina-preloader .preloader__logo[data-state='compact'] .lg-ain {
  clip-path: polygon(
    0px 0px,
    12.37px 0.33px,
    12.72px 1.33px,
    13.07px 2.33px,
    13.43px 3.33px,
    13.78px 4.35px,
    14.15px 5.35px,
    14.5px 6.35px,
    14.85px 7.35px,
    15.22px 8.35px,
    15.57px 9.35px,
    15.92px 10.35px,
    16.28px 11.35px,
    16.63px 12.35px,
    16.98px 13.35px,
    17.35px 14.35px,
    17.7px 15.35px,
    18.05px 16.35px,
    18.4px 17.35px,
    18.77px 18.35px,
    19.12px 19.35px,
    19.47px 20.35px,
    19.83px 21.35px,
    19.88px 21.52px,
    19.92px 21.6px,
    19.95px 21.68px,
    19.98px 21.77px,
    20px 21.85px,
    20.03px 21.93px,
    20.07px 22.02px,
    20.1px 22.1px,
    20.12px 22.18px,
    20.15px 22.27px,
    20.18px 22.35px,
    20.22px 22.43px,
    20.25px 22.52px,
    20.27px 22.6px,
    20.3px 22.68px,
    20.33px 22.77px,
    20.37px 22.85px,
    20.38px 22.93px,
    20.42px 23.02px,
    20.45px 23.1px,
    20.48px 23.18px,
    20.52px 23.27px,
    20.53px 23.35px,
    20.57px 23.43px,
    20.6px 23.52px,
    20.63px 23.6px,
    20.65px 23.68px,
    20.68px 23.77px,
    20.72px 23.85px,
    20.75px 23.93px,
    20.78px 24.02px,
    23.27px 24.1px,
    23.27px 25.28px,
    0px 26px
  ) !important;
}

#aina-preloader .preloader__logo-svg .lg-fade {
  opacity: 1;
  transform: translateX(0) scale(1);
  transition:
    opacity 0.5s ease,
    transform 0.6s cubic-bezier(0.75, 0, 0.15, 1);
}

#aina-preloader .preloader__logo[data-state='compact'] .lg-fade {
  opacity: 0;
  transform: translateX(-10px) scale(0.92);
}

#aina-preloader .preloader__dot {
  position: absolute;
  top: 2.5em;
  right: 18px;
  width: 2em;
  height: 2em;
  border-radius: 999px;
  background-color: var(--light);
  pointer-events: none;
}

@media (max-width: 1000px) {
  #aina-preloader .preloader__logo-svg {
    padding-left: 1.5em;
    padding-right: 1.5em;
  }
}

/*MENU*/
#top .site-header__menu-group {
  position: fixed;
  top: 2.5em;
  left: 18px;
  right: 18px;
  z-index: 200;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  pointer-events: none;
}

#top .site-header__menu-group > * {
  pointer-events: auto;
}

#top .site-header__menu-btn {
  --auto-width: 7em;
  padding-left: 0.75em;
  padding-right: 0.75em;
  all: unset !important;
  pointer-events: auto !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  position: relative !important;
  z-index: 250 !important;
  height: 2em !important;
  width: 2em !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background-color: var(--dark) !important;
  overflow: hidden !important;
  transition:
    width 0.45s cubic-bezier(0.7, 0, 0.3, 1),
    background-color 0.4s ease !important;
}

@media (hover: hover) and (pointer: fine) {
  #top .site-header__menu-btn:hover {
    width: var(--auto-width) !important;
  }
}

#top .site-header__menu-btn:focus-visible {
  width: var(--auto-width) !important;
}

#top .site-header__menu-group[data-menu-open='true'] .site-header__menu-btn {
  background-color: var(--light) !important;
}

#top .site-header__menu-btn-label {
  text-align: center;
  width: 100%;
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-tiny);
  line-height: 2;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--light) !important;
  opacity: 0 !important;
  transition: opacity 0.25s ease !important;
  transition-delay: 0s !important;
}

@media (hover: hover) and (pointer: fine) {
  #top .site-header__menu-btn:hover .site-header__menu-btn-label {
    opacity: 1 !important;
    transition-delay: 0.2s !important;
  }
}

#top .site-header__menu-btn:focus-visible .site-header__menu-btn-label {
  opacity: 1 !important;
  transition-delay: 0.2s !important;
}

#top .site-header__menu-group[data-menu-open='true'] .site-header__menu-btn-label {
  color: var(--dark) !important;
}

@media (max-width: 1000px) {
  #aina-preloader .preloader__text {
    max-width: 15em;
  }
  #top .site-header__menu-btn,
  #top .site-header__menu-btn:hover,
  #top .site-header__menu-btn:focus-visible {
    width: 2em !important;
  }
  #top .site-header__menu-btn-label {
    display: none !important;
  }

  #top .site-header__menu-group {
    left: 18px;
  }

  #top .site-header__logo-svg {
    height: 28px !important;
  }

  #top .site-header__logo-link {
    height: 28px !important;
    width: 125px !important;
  }

  #top .site-header__logo-link:hover,
  #top .site-header__logo-link:focus-visible {
    width: 300px !important;
  }
  #top .site-header__menu-group {
    top: 1.5em;
  }
}

#top .site-header__panel {
  z-index: 100;
  pointer-events: none;
  background-color: var(--dark);
  width: 100%;
  height: 100%;
  position: fixed;
  inset: 0;
  visibility: hidden;
  will-change: clip-path;
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
  transition:
    clip-path 1s cubic-bezier(0.9, 0, 0.1, 1),
    visibility 0s linear 1s;
}

#top .site-header__panel[data-nav-state='open'] {
  pointer-events: auto;
  visibility: visible;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  transition:
    clip-path 1s cubic-bezier(0.9, 0, 0.1, 1),
    visibility 0s linear 0s;
}

#top .site-header__panel-nav {
  width: 100%;
  height: 100%;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

#top .site-header__menu-list {
  display: flex !important;
  flex-flow: column;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none !important;
}

#top .site-header__menu-list-item {
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none !important;
  display: flex;
  position: relative;
  overflow: hidden;
  transition: opacity 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}

#top .site-header__menu-list:has(.site-header__menu-list-item:hover) .site-header__menu-list-item {
  opacity: 0.6;
}

#top .site-header__menu-list:has(.site-header__menu-list-item:hover) .site-header__menu-list-item:hover {
  opacity: 1;
}

#top .site-header__menu-link {
  display: inline-block;
  color: var(--light) !important;
  font-family: var(--primary-font);
  font-size: clamp(2.75rem, 4vw + 3.5vh, 7.5rem);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.02em;
  padding: 0.05em 0.1em;
  text-decoration: none !important;
  background: none !important;
  border: none !important;
  transform: translateY(100%) rotate(4deg);
  transition: transform 0.5s cubic-bezier(0.7, 0, 0.3, 1);
  text-transform: uppercase;
}

#top .site-header__menu-list-item:nth-child(1) .site-header__menu-link {
  transition-delay: 0.2s;
}
#top .site-header__menu-list-item:nth-child(2) .site-header__menu-link {
  transition-delay: 0.15s;
}
#top .site-header__menu-list-item:nth-child(3) .site-header__menu-link {
  transition-delay: 0.1s;
}
#top .site-header__menu-list-item:nth-child(4) .site-header__menu-link {
  transition-delay: 0.05s;
}
#top .site-header__menu-list-item:nth-child(5) .site-header__menu-link {
  transition-delay: 0s;
}

#top .site-header__panel[data-nav-state='open'] .site-header__menu-link {
  transform: translateY(0%) rotate(0deg);
}

#top .site-header__panel[data-nav-state='open'] .site-header__menu-list-item:nth-child(1) .site-header__menu-link {
  transition-delay: 0.3s;
}
#top .site-header__panel[data-nav-state='open'] .site-header__menu-list-item:nth-child(2) .site-header__menu-link {
  transition-delay: 0.35s;
}
#top .site-header__panel[data-nav-state='open'] .site-header__menu-list-item:nth-child(3) .site-header__menu-link {
  transition-delay: 0.4s;
}
#top .site-header__panel[data-nav-state='open'] .site-header__menu-list-item:nth-child(4) .site-header__menu-link {
  transition-delay: 0.45s;
}
#top .site-header__panel[data-nav-state='open'] .site-header__menu-list-item:nth-child(5) .site-header__menu-link {
  transition-delay: 0.5s;
}

#top .site-header__menu-link-text {
  display: inline-block;
  transition: transform 0.35s cubic-bezier(0.33, 1, 0.68, 1);
}

#top .site-header__menu-link:hover .site-header__menu-link-text {
  transform: skewX(-18deg);
}

#top .site-header__panel-bottom {
  justify-content: center;
  align-items: center;
  gap: 2em;
  display: flex;
  position: absolute;
  bottom: 2.25em;
  left: 0;
  width: 100%;
}

#top .site-header__panel-bottom a {
  color: var(--light) !important;
  font-family: var(--primary-font);
  font-size: var(--fnt-size-body);
  text-decoration: none !important;
  transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
  text-transform: uppercase;
}

#top .site-header__panel-bottom a:hover {
  transform: skewX(-18deg);
}

@media (max-width: 1000px) {
  #top .site-header__panel-bottom {
    gap: 1.25em;
    bottom: 1.75em;
  }
  #top .site-header__menu-link {
    font-size: clamp(3.7rem, 9vw, 3.5rem);
  }

  #top .site-header__panel-bottom a {
    font-size: var(--fnt-size-body-mb);
  }
}

/*CURSOR*/

@media (pointer: fine) {
  body,
  body a,
  body p,
  form * {
    cursor: none !important;
  }
}

@media (pointer: coarse) and (max-width: 1000px) {
  .cursor {
    display: none;
  }
}

.cursor {
  pointer-events: none;
}

.cursor {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
}

.cursor circle {
  fill: var(--dark);
}

.nav-open .cursor circle,
.is--footer-hover .cursor circle {
  fill: var(--light);
}

/*SINGLE PROYECTO*/
.single-proyecto {
  background-color: var(--light);
}

.proyecto-container {
  margin: 0 auto;
  padding: 0 48px;
}

@media (max-width: 1000px) {
  .proyecto-container {
    padding: 0 16px;
  }
}

.proyecto-header {
  padding-top: 10em;
  padding-bottom: 0.3em;
  transition: background-color 0.4s ease;
}

.proyecto-header--oscuro {
  background-color: var(--secondary);
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-left: 28px;
  padding-right: 28px;
  box-sizing: border-box;
}

@media (max-width: 1000px) {
  .proyecto-header--oscuro {
    padding-left: 16px;
    padding-right: 16px;
  }
}

.proyecto-title {
  margin: 0;
  font-size: var(--fnt-size-project-title);
  line-height: 0.8;
}

@media (max-width: 1000px) {
  .proyecto-header {
    padding-top: 8.5em;
  }
  .proyecto-title {
    font-size: var(--fnt-size-project-title-mb);
  }
}

.proyecto-featured-image {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.proyecto-featured-image picture {
  display: block;
  width: 100%;
  height: 100%;
}

.proyecto-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.proyecto-description {
  margin-top: 0.5em;
  margin-bottom: 4em;
  max-width: 27ch;
}

.proyecto-description p {
  margin: 0;
  line-height: 1.3;
  padding-bottom: 0;
}

.proyecto-details {
  display: grid;
  grid-template-columns: minmax(0, 360px) 1fr;
  gap: 4em;
  padding-top: 5em;
}

.single-proyectos .wpb_wrapper > div {
  margin-bottom: 0;
}

@media (max-width: 1000px) {
  .proyecto-details {
    display: flex;
    flex-flow: column-reverse;
    gap: 2.5em;
    padding-bottom: 0;
    padding-top: 4em;
  }
  .proyecto-featured-image {
    aspect-ratio: 3 / 5;
  }
}

.proyecto-tabs__nav {
  display: flex;
  align-items: center;
  gap: 1.75em;
  margin-bottom: 1.75em;
}

.proyecto-tabs__trigger {
  all: unset;
  font-family: var(--primary-font);
  font-size: var(--fnt-size-small);
  color: var(--dark);
  transition: opacity 0.3s ease;
}

.proyecto-tabs__trigger.is--active {
  opacity: 1;
}

.proyecto-tabs__trigger.is--active::before {
  content: '• ';
}

.proyecto-tabs__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s cubic-bezier(0.7, 0, 0.3, 1);
}

.proyecto-tabs__panel.is--active {
  grid-template-rows: 1fr;
}

.proyecto-tabs__panel-inner {
  overflow: hidden;
  min-height: 0;
}

.proyecto-field-list {
  display: flex;
  flex-flow: column;
  gap: 1.4em;
  padding-top: 0.3em;
}

.proyecto-field-label {
  font-family: var(--primary-font);
  font-size: calc(22 / 1440 * 100vw);
  line-height: 1.1;
  text-transform: uppercase;
  color: var(--dark);
}

.proyecto-field-value {
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-tiny);
  color: var(--dark);
  opacity: 1;
  line-height: 1.4;
}

.proyecto-field-value a {
  color: inherit;
  text-decoration: underline;
}

.proyecto-description-large *,
.proyecto-description-large {
  font-family: var(--primary-font);
  font-size: calc(34 / 1440 * 100vw);
  color: var(--dark);
  line-height: 1.2;
}

.proyecto-description-large p {
  margin: 0;
}

.proyecto-description-large p:last-child {
  margin-bottom: 0;
}

.proyecto-description-large a {
  color: inherit;
  text-decoration: underline;
}

.proyecto-content {
  padding-bottom: 4em;
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-body);
  color: var(--dark);
}

.proyectos-navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 3em 0 6em;
}

.proyecto-nav-btn--next {
  margin-left: auto;
}

button.proyecto-tabs__trigger.custom-title.tiny.lowercase.dark.secondary.is--active {
  color: var(--dark);
}

@media (max-width: 1000px) {
  .proyecto-field-value {
    font-size: var(--fnt-size-tiny-mb);
  }
  .proyecto-tabs__nav {
    gap: 1.25em;
  }

  .proyecto-field-list {
    gap: 1.4em;
  }

  .proyecto-description-large,
  .proyecto-description-large * {
    font-family: var(--primary-font);
    font-size: calc(20 / 390 * 100vw);
  }

  .proyecto-field-label {
    font-size: calc(18 / 390 * 100vw);
  }
}

@media (min-width: 1000px) {
  .proyecto-description-large {
    padding-left: 6em;
  }
}

/*PROYECTOS FILTRO*/
.proyectos-grid-wrap {
  padding-bottom: 9em;
}

.proyectos-grid-wrap.is--filtered {
  padding-top: 5em;
}

.proyectos-filtro {
  margin-bottom: 3.5em;
  overflow: hidden;
}

.proyectos-filtro__track {
  display: flex;
  align-items: center;
  gap: 2em;
  width: max-content;
}

.proyectos-filtro__item {
  all: unset;
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-tiny);
  line-height: 1.2;
  padding: 0.55em 0;
  color: var(--secondary);
  white-space: nowrap;
  transition: opacity 0.3s ease;
}

.proyectos-filtro__item.is--active {
  color: var(--dark);
}

.proyectos-filtro__item.is--active {
  opacity: 1;
}

.proyectos-filtro__item.is--active::before {
  content: '• ';
}

@media (max-width: 1000px) {
  .proyectos-filtro__track {
    gap: 2.5em;
    padding-right: 28px;
  }

  .proyectos-filtro__item {
    font-size: var(--fnt-size-tiny-mb);
  }
}

/*PROYECTOS GRID*/
.proyectos-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9em 2em;
  align-items: start;
}

.proyecto-card {
  grid-column: var(--proyecto-columna, auto);
  grid-row: var(--proyecto-fila, auto);
  position: relative;
}

.proyecto-grid__empty {
  grid-column: 1 / -1;
  font-family: var(--primary-font);
  font-size: var(--fnt-size-small);
  color: var(--dark);
}

.proyecto-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.proyecto-card__image {
  width: 100%;
  overflow: hidden;
  margin-bottom: 1.2em;
  clip-path: circle(0% at 50% 50%);
  transition: clip-path 1s cubic-bezier(0.7, 0, 0.3, 1);
}

.proyecto-card.is--revealed .proyecto-card__image {
  clip-path: circle(150% at 50% 50%);
}

.proyecto-card__reveal-mask {
  display: block;
  overflow: hidden;
}

.proyecto-card__reveal-text {
  display: block;
  transform: translateY(110%);
  transition: transform 0.8s cubic-bezier(0.7, 0, 0.3, 1) 0.25s;
}

.proyecto-card.is--revealed .proyecto-card__reveal-text {
  transform: translateY(0%);
}

.proyecto-card__img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
  transition: transform 0.6s cubic-bezier(0.25, 0, 0.4, 1);
}

.proyecto-card__link:hover .proyecto-card__img {
  transform: scale(1.04);
}

.proyecto-card--horizontal .proyecto-card__image {
  aspect-ratio: 16 / 10;
}

.proyecto-card--vertical .proyecto-card__image {
  aspect-ratio: 3 / 4;
}

.proyecto-card--sin-imagen .proyecto-card__body {
  padding-top: 0.2em;
}

.proyecto-card__title {
  margin-bottom: 0.15em !important;
}

.proyecto-card__description {
  margin: 0 !important;
}

@media (max-width: 1000px) {
  .proyectos-grid {
    grid-template-columns: 1fr;
    gap: 7em;
  }

  .proyecto-card {
    grid-column: 1;
    grid-row: auto;
  }
  .proyecto-card:not(.proyecto-card--espacio-movil) {
    padding-right: 5.5em;
  }
  .proyecto-card--espacio-movil {
    padding-left: 5.5em;
  }
}

/*PROYECTOS CATEGORIAS*/
.proyecto-card__categorias {
  display: flex;
  position: relative;
  z-index: 2;
  margin-bottom: 24px;
}

.proyecto-card__categorias-toggle {
  all: unset;
  display: block;
  height: 2em !important;
  width: 2em !important;
  border-radius: 100% !important;
  -webkit-border-radius: 100% !important;
  background-color: var(--secondary);
  transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

.proyecto-card__categorias-list {
  position: absolute;
  top: 50%;
  left: 2em;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  pointer-events: none;
}

.proyecto-card__categorias.is--open .proyecto-card__categorias-list {
  pointer-events: auto;
}

.proyecto-card__categoria {
  display: inline-flex;
  align-items: center;
  padding: 0 1.1em;
  height: 2em;
  border-radius: 999px;
  background-color: var(--secondary);
  font-family: var(--secondary-font);
  font-size: min(var(--fnt-size-tiny), 14px);
  color: var(--light);
  white-space: nowrap;
  transform: scale(0);
  opacity: 0;
  transform-origin: center;
  transition:
    opacity 0.5s cubic-bezier(0.34, 1.56, 0.64, 1),
    transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.proyecto-card__categorias.is--open .proyecto-card__categoria,
.proyecto-card__categorias:has(.proyecto-card__categorias-toggle:hover) .proyecto-card__categoria {
  transform: scale(1);
  opacity: 1;
}

.proyecto-card__categoria:nth-child(1) {
  transition-delay: 0s;
}
.proyecto-card__categoria:nth-child(2) {
  transition-delay: 0.06s;
}
.proyecto-card__categoria:nth-child(3) {
  transition-delay: 0.12s;
}
.proyecto-card__categoria:nth-child(4) {
  transition-delay: 0.18s;
}
.proyecto-card__categoria:nth-child(5) {
  transition-delay: 0.24s;
}
.proyecto-card__categoria:nth-child(6) {
  transition-delay: 0.3s;
}

.proyecto-card__categorias:not(.is--open) .proyecto-card__categoria {
  transition-delay: 0s !important;
}

@media (max-width: 1000px) {
  .proyecto-card__categoria {
    font-size: min(var(--fnt-size-tiny-mb), 12px);
    height: 2.4em;
  }
}
/*PINNED TABS*/
.pinned-tabs {
  position: relative;
}

.pinned-tabs__inner {
  width: 100%;
  box-sizing: border-box;
}

.pinned-tabs__mobile-nav {
  display: none;
}

.pinned-tabs__item {
  position: relative;
}

.pinned-tabs__trigger {
  all: unset;
  display: flex;
  align-items: center;
  gap: 1.5em;
}

.pinned-tabs__number {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.1em;
  height: 1.1em;
  border-radius: 999px;
  border: 2.5px solid var(--dark);
  color: var(--dark);
  background-color: transparent;
  font-family: var(--primary-font);
  font-size: var(--fnt-size-big);
  transition:
    background-color 0.3s ease,
    color 0.3s ease;
  font-weight: 600;
}

.pinned-tabs__item.is--active .pinned-tabs__number {
  background-color: var(--dark);
  color: var(--light);
  border-color: var(--dark);
}

.pinned-tabs__title {
  margin: 0 !important;
  opacity: 0.4;
  transition: opacity 0.3s ease;
  text-transform: uppercase;
  font-size: calc(48 / 1440 * 100vw);
  line-height: 1.1;
}

.pinned-tabs__item.is--active .pinned-tabs__title {
  opacity: 1;
}

.pinned-tabs__panel {
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-body);
  color: var(--dark);
}

.pinned-tabs__panel p:last-child {
  margin-bottom: 0;
}

p.pinned-tabs__service {
  padding-bottom: 2px;
}

.pinned-tabs__services * {
  font-size: calc(16 / 1440 * 100vw);
}

.pinned-tabs__service {
  position: relative;
  padding-left: 20px;
}

.pinned-tabs__service::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

@media (min-width: 1001px) {
  .nectar-video-box {
    max-width: 75vw;
    margin: 0 auto;
  }
  .pinned-tabs__title {
    padding-left: 1.5em;
  }

  .pinned-tabs__inner {
    height: 70svh;
    padding-bottom: 2em !important;
    display: flex;
    flex-flow: column;
    justify-content: center;
  }

  .pinned-tabs__row {
    display: flex;
    align-items: flex-start;
    gap: 3em;
    width: 100%;
  }

  .pinned-tabs__list {
    width: 54%;
    display: flex;
    flex-flow: column;
    gap: 3em;
  }

  .pinned-tabs__panels {
    position: relative;
    width: 42%;
  }

  .pinned-tabs__item .pinned-tabs__panel {
    display: none;
  }

  .pinned-tabs__panels .pinned-tabs__panel {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    visibility: hidden;
  }

  .pinned-tabs__panels .pinned-tabs__panel.is--active {
    visibility: visible;
  }

  .pinned-tabs__panels .pinned-tabs__panel-inner p {
    opacity: 0;
    transform: translateY(30px);
  }
}

@media (max-width: 1000px) {
  .pinned-tabs__services * {
    font-size: calc(16 / 390 * 100vw);
  }
  .pinned-tabs__inner {
    padding: 4em 0;
  }

  .pinned-tabs__title {
    font-size: calc(25 / 390 * 100vw);
  }

  .pinned-tabs__mobile-nav {
    display: flex;
    align-items: center;
    gap: 1em;
    margin-bottom: 2.5em;
    justify-content: space-between;
  }

  .pinned-tabs__mobile-number {
    all: unset;

    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    width: 1.4em;
    height: 1.4em;
    border-radius: 999px;
    border: 2.5px solid var(--dark);
    color: var(--dark);
    background-color: transparent;
    font-family: var(--primary-font);
    font-size: var(--fnt-size-big-mb);
    transition:
      background-color 0.3s ease,
      color 0.3s ease;
  }

  .pinned-tabs__mobile-number.is--active {
    background-color: var(--dark);
    color: var(--light);
  }

  .pinned-tabs__list {
    width: 100%;
    display: flex;
    flex-flow: column;
    gap: 2em;
  }

  .pinned-tabs__number {
    display: none;
    font-size: var(--fnt-size-big-mb);
  }

  .pinned-tabs__title {
    opacity: 1;
  }

  .pinned-tabs__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s cubic-bezier(0.7, 0, 0.3, 1);
  }

  .pinned-tabs__item.is--active .pinned-tabs__panel {
    grid-template-rows: 1fr;
  }

  .pinned-tabs__panel-inner {
    overflow: hidden;
    min-height: 0;
    padding-top: 1em;
  }
}

div#error-404 {
  min-height: 90svh;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
}

/*FORM*/
.container-wrap input[type='text'],
.container-wrap input[type='email'],
.container-wrap input[type='password'],
.container-wrap input[type='tel'],
.container-wrap input[type='url'],
.container-wrap input[type='search'],
.container-wrap input[type='date'],
.container-wrap input[type='number'],
.container-wrap textarea,
.container-wrap select,
body input[type='text'],
body input[type='email'],
body input[type='password'],
body input[type='tel'],
body input[type='url'],
body input[type='search'],
body input[type='date'],
body input[type='number'],
body textarea,
body select,
body > #review_form_wrapper.modal input[type='text'],
body > #review_form_wrapper.modal textarea,
body > #review_form_wrapper.modal select,
body > #review_form_wrapper.modal input[type='email'],
.select2-container--default .select2-selection--single,
body[data-fancy-form-rcs='1'] .select2-container--default .select2-selection--single,
.woocommerce input#coupon_code,
.material.woocommerce-page[data-form-style='default'] input#coupon_code,
body[data-form-style='minimal'] input[type='text'],
body[data-form-style='minimal'] textarea,
body[data-form-style='minimal'] input[type='email'],
body[data-form-style='minimal'] input[type='password'],
body[data-form-style='minimal'] input[type='tel'],
body[data-form-style='minimal'] input[type='url'],
body[data-form-style='minimal'] input[type='search'],
body[data-form-style='minimal'] input[type='date'],
body[data-form-style='minimal'] input[type='number'],
body[data-form-style='minimal'] select,
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder,
.wpcf7 input[type='text']::placeholder,
.wpcf7 input[type='email']::placeholder,
.wpcf7 input[type='password']::placeholder,
.wpcf7 input[type='tel']::placeholder,
.wpcf7 input[type='url']::placeholder,
.wpcf7 input[type='search']::placeholder,
.wpcf7 input[type='date']::placeholder,
.wpcf7 input[type='number']::placeholder,
.wpcf7 select::placeholder {
  font-size: var(--fnt-size-small);
  font-style: italic;
  font-family: var(--primary-font);
  color: var(--accent) !important;
  opacity: 1;
}

.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder,
.wpcf7 input[type='text']::placeholder,
.wpcf7 input[type='email']::placeholder,
.wpcf7 input[type='password']::placeholder,
.wpcf7 input[type='tel']::placeholder,
.wpcf7 input[type='url']::placeholder,
.wpcf7 input[type='search']::placeholder,
.wpcf7 input[type='date']::placeholder,
.wpcf7 input[type='number']::placeholder,
.wpcf7 select::placeholder {
  color: var(--secondary) !important;
}

.material.woocommerce-page[data-form-style='default'] input#coupon_code,
input[type='date'],
input[type='email'],
input[type='number'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='text'],
input[type='url'],
select,
textarea {
  background-color: transparent;
  border-radius: 0;
  border: none;
  border-bottom: 1.5px solid var(--accent);
  padding-left: 0;
}

input[type='date']:focus,
input[type='email']:focus,
input[type='number']:focus,
input[type='password']:focus,
input[type='search']:focus,
input[type='tel']:focus,
input[type='text']:focus,
input[type='url']:focus,
select:focus,
textarea:focus {
  box-shadow: none;
}

@media (max-width: 1000px) {
  .container-wrap input[type='text'],
  .container-wrap input[type='email'],
  .container-wrap input[type='password'],
  .container-wrap input[type='tel'],
  .container-wrap input[type='url'],
  .container-wrap input[type='search'],
  .container-wrap input[type='date'],
  .container-wrap input[type='number'],
  .container-wrap textarea,
  .container-wrap select,
  body input[type='text'],
  body input[type='email'],
  body input[type='password'],
  body input[type='tel'],
  body input[type='url'],
  body input[type='search'],
  body input[type='date'],
  body input[type='number'],
  body textarea,
  body select,
  body > #review_form_wrapper.modal input[type='text'],
  body > #review_form_wrapper.modal textarea,
  body > #review_form_wrapper.modal select,
  body > #review_form_wrapper.modal input[type='email'],
  .select2-container--default .select2-selection--single,
  body[data-fancy-form-rcs='1'] .select2-container--default .select2-selection--single,
  .woocommerce input#coupon_code,
  .material.woocommerce-page[data-form-style='default'] input#coupon_code,
  body[data-form-style='minimal'] input[type='text'],
  body[data-form-style='minimal'] textarea,
  body[data-form-style='minimal'] input[type='email'],
  body[data-form-style='minimal'] input[type='password'],
  body[data-form-style='minimal'] input[type='tel'],
  body[data-form-style='minimal'] input[type='url'],
  body[data-form-style='minimal'] input[type='search'],
  body[data-form-style='minimal'] input[type='date'],
  body[data-form-style='minimal'] input[type='number'],
  body[data-form-style='minimal'] select,
  .wpcf7 input::placeholder,
  .wpcf7 textarea::placeholder,
  .wpcf7 input[type='text']::placeholder,
  .wpcf7 input[type='email']::placeholder,
  .wpcf7 input[type='password']::placeholder,
  .wpcf7 input[type='tel']::placeholder,
  .wpcf7 input[type='url']::placeholder,
  .wpcf7 input[type='search']::placeholder,
  .wpcf7 input[type='date']::placeholder,
  .wpcf7 input[type='number']::placeholder,
  .wpcf7 select::placeholder {
    font-size: var(--fnt-size-small-mb);
  }
}

body[data-form-submit='regular'] .container-wrap button[type='submit'],
body[data-form-submit='regular'] .container-wrap input[type='submit'] {
  padding: 0 !important;
}

/*FORM · TEXTAREA*/
.wpcf7-form textarea {
  min-height: 4.5em;
  max-height: 8em;
}

/*FORM · LAYOUT DEL ÚLTIMO TRAMO (checkbox + enviar en la misma fila)*/
.wpcf7-form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.wpcf7-form > p:first-of-type {
  flex: 1 0 100%;
}

.wpcf7-form > p:has(.wpcf7-acceptance) {
  order: 2;
  margin-left: auto;
}

@media (max-width: 1000px) {
  .wpcf7-form > p:has(.wpcf7-acceptance) {
    order: 1;
    width: 100%;
    margin-bottom: 30px;
  }
}

.wpcf7-form > p:has(.wpcf7-submit) {
  order: 1;
  display: flex;
  align-items: center;
}

/*FORM · CHECKBOX DE ACEPTACIÓN COMO CÍRCULO*/
.wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

.wpcf7-acceptance label {
  display: flex;
  align-items: center;
  gap: 0.75em;
}

.wpcf7-acceptance input[type='checkbox'] {
  appearance: none;
  -webkit-appearance: none;
  flex: 0 0 auto;
  width: 1.5em;
  height: 1.5em;
  margin: 0;
  border-radius: 999px;
  border: 1.5px solid var(--accent);
  background-color: transparent;

  transition: background-color 0.25s ease;
}

.wpcf7-acceptance input[type='checkbox']:checked {
  background-color: var(--accent);
}

.wpcf7-acceptance input[type='checkbox']:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.wpcf7-list-item-label {
  font-family: var(--secondary-font);
  font-size: var(--fnt-size-tiny);
  color: var(--accent);
}

@media (max-width: 1000px) {
  .wpcf7-list-item-label {
    font-size: var(--fnt-size-tiny-mb);
  }
}

/*FORM · BOTÓN ENVIAR = expand-circle*/
form .expand-circle {
  height: 2em;
  width: 2em;
  font-size: 16px;
  max-width: 7em;
  padding: 0 10px;
}
.wpcf7-form .expand-circle {
  position: relative;
}

.wpcf7-form .expand-circle .wpcf7-submit {
  all: unset;
  position: absolute;
  inset: 0;
  color: transparent;
  text-shadow: none;
}

.wpcf7-form .wpcf7-spinner {
  margin-left: 0.75em;
  position: absolute;
  left: 8em;
}

.wpcf7-acceptance * {
  color: var(--accent) !important;
}
.wpcf7-form > p:has(.wpcf7-acceptance) {
  padding-bottom: 0;
}
.wpcf7-response-output {
  position: absolute;
  bottom: -66px;
  border-radius: 60px;
  background-color: var(--light) !important;
}

.wpcf7-form .expand-circle:has(.wpcf7-submit:disabled) {
  opacity: 0.4;
  pointer-events: none;
}

@media (min-width: 1000px) {
  .home .proyecto-card:nth-child(3) {
    grid-column: 3;
    grid-row: 1;
    position: relative;
  }
}

/* CUSTOM GALLERIES
----------------------*/

.custom-gallery {
  display: flex;
  width: 100%;
  gap: 0.5em;
  flex-wrap: wrap;
  margin: 0 !important;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
}

.gallery-image {
  display: flex;
}

.custom-gallery-1,
.custom-gallery-2 {
  justify-content: center;
  flex-flow: column;
  align-items: center;
}

.custom-gallery-1 .gallery-image {
  width: 75vw !important;
  aspect-ratio: 3 / 2;
}

.custom-gallery-2 .gallery-image {
  width: 32% !important;
  aspect-ratio: 2 / 3;
}

.custom-gallery.custom-gallery-3 {
  justify-content: space-around;
  padding-left: 16%;
  padding-right: 16%;
}

.custom-gallery-3 .gallery-image {
  width: 48%;
  aspect-ratio: 2 / 3;
}

.gallery-image a,
.gallery-image img:not([srcset]) {
  width: 100% !important;
  height: 100%;
  object-fit: cover;
}

.nectar-video-box {
  padding-top: 2.5em;
  padding-bottom: 2.5em;
}

.nectar-video-box .inner-wrap {
  overflow: hidden;
  aspect-ratio: 16 / 9;
}
@media (max-width: 1000px) {
  .custom-gallery {
    width: calc(100vw - 32px);
  }

  .custom-gallery-1 .gallery-image,
  .custom-gallery-2 .gallery-image {
    width: 100% !important;
  }

  .custom-gallery.custom-gallery-3 {
    padding-left: 0;
    padding-right: 0;
  }

  .custom-gallery,
  .nectar-video-box {
    padding-top: 4.5em;
    padding-bottom: 4.5em;
  }
}

.nectar-video-box a.nectar_video_lightbox:not(.play_button_mouse_follow):before {
  opacity: 1;
}

.single-proyectos .custom-title p {
  padding-bottom: 0 !important;
}

.single-proyectos.material .wpb_content_element,
.material .wpb_row {
  margin-bottom: 0 !important;
}

.nectar-drag-indicator {
  z-index: 999999 !important;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: none !important;
}

.nectar-drag-indicator i {
  display: none !important;
}
.nectar-drag-indicator .inner-layer {
  position: relative;
  opacity: 0;
}

.nectar-drag-indicator.visible .inner-layer {
  opacity: 1;
  height: 100%;
  width: 100%;
  display: flex;
  top: 0;
  align-items: center;
  justify-content: center;
}

.nectar-drag-indicator .inner-layer::before {
  transition: transform 0.3s cubic-bezier(0.33, 1, 0.68, 1);
  content: url('data:image/svg+xml,<svg width="72" height="45" viewBox="0 0 72 45" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M61.5742 14.7666C58.559 11.4762 55.7024 6.50053 52.8459 0L49.3546 1.52482L56.734 20.2239H14.6794L22.0588 1.52482L18.5675 0C16.6631 4.41394 14.7588 8.1056 12.7751 10.9947C10.7914 13.8839 8.80765 16.131 6.66525 17.736C4.60219 19.3411 2.38045 20.3844 0 20.8659V23.9155C3.57067 24.7181 6.82394 26.7244 9.83918 30.0148C12.8544 33.3052 15.7109 38.2809 18.5675 44.7814L22.0588 43.2566L14.6794 24.5576H56.734L49.3546 43.2566L52.8459 44.7814C54.7502 40.3675 56.6546 36.6758 58.6383 33.7867C60.622 30.8976 62.6057 28.6505 64.7481 27.0454C66.8112 25.4404 69.0329 24.3971 71.4134 23.9155V20.8659C67.8427 20.0634 64.5894 18.057 61.5742 14.7666Z" fill="%23FFF6F2"/></svg>');
}

.nectar-drag-indicator.visible.pointer-down .inner-layer::before,
.nectar-drag-indicator.visible.pointer-down {
  transform: scale(0.5);
}

.nectar-drag-indicator.visible.pointer-down[data-type='solid'] .color-circle {
  transform: scale(0.7);
}

.cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
  text-transform: uppercase;
  font-weight: 400;
}

.cmplz-cookiebanner a {
  cursor: none !important;
}
.cmplz-cookiebanner * {
  font-family: var(--secondary-font) !important;
}

.cmplz-cookiebanner {
  margin: 0 !important;
  width: 100% !important;
  border-radius: 0 !important;
}

.cmplz-cookiebanner .cmplz-message p {
  max-width: 125ch;
  font-size: 14px;
}

.cmplz-soft-cookiewall {
  background-color: rgba(0, 0, 0, 0.2);
}

.contact_stretch .wpb_wrapper:first-child {
  display: flex;
  flex-flow: column;
  justify-content: space-between;
}

@media (min-width: 1024px) {
  .cmplz-cookiebanner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100% !important;
    gap: 2em;
  }
}

.cmplz-divider.cmplz-footer,
.cmplz-documents.cmplz-links {
  display: none !important;
}

button.cmplz-btn.cmplz-hidden.cmplz-manage-consent.manage-consent-1,
#cmplz-manage-consent {
  visibility: hidden !important;
}

p {
  padding-bottom: var(--nectar-paragraph-bottom-spacing, 1em);
}

@media (min-width: 1000px) {
  .custom-title.big.proyecto-card__title * {
    line-height: 1.15 !important;
  }
}
