:root {
  --primary: #8b8a05;
  --white: white;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-checkbox {
  margin-bottom: 5px;
  padding-left: 20px;
  display: block;
}

.w-checkbox:before {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox:after {
  content: " ";
  clear: both;
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.w-checkbox-input {
  float: left;
  margin: 4px 0 0 -20px;
  line-height: normal;
}

.w-checkbox-input--inputType-custom {
  border: 1px solid #ccc;
  border-radius: 2px;
  width: 12px;
  height: 12px;
}

.w-checkbox-input--inputType-custom.w--redirected-checked {
  background-color: #3898ec;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/static/custom-checkbox-checkmark.589d534424.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: #3898ec;
}

.w-checkbox-input--inputType-custom.w--redirected-focus {
  box-shadow: 0 0 3px 1px #3898ec;
}

body {
  color: var(--primary);
  font-family: Montserrat, sans-serif;
  font-size: 1rem;
  line-height: 1.25rem;
}

h1 {
  letter-spacing: .0015em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3.5rem;
  font-weight: 500;
  line-height: 1.35;
}

h2 {
  letter-spacing: .0005em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.875rem;
  font-weight: 500;
  line-height: 1.25;
}

h3 {
  letter-spacing: .0005em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.25;
}

h4 {
  letter-spacing: .0005em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
}

h5 {
  letter-spacing: .0005em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.4;
}

h6 {
  letter-spacing: .0005em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.4;
}

p {
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.6;
}

a {
  color: var(--primary);
  text-decoration: underline;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 1.875rem;
  line-height: 1.5;
}

li {
  margin-bottom: .3125rem;
}

blockquote {
  border-left: .1875rem solid var(--primary);
  margin-bottom: 0;
  padding: .625rem 1.25rem;
  font-size: 1.125rem;
  font-style: italic;
  line-height: 1.5;
}

figure {
  margin-bottom: .625rem;
}

figcaption {
  text-align: center;
  margin-top: .3125rem;
}

.container {
  width: 100%;
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto;
}

.container.relative {
  z-index: 2;
  position: relative;
}

.container.limite {
  max-width: 60rem;
}

.section {
  padding: 5.625rem 1.25rem;
}

.section.cta {
  padding-top: 10.625rem;
  position: relative;
}

.section.showreel {
  min-height: 40.625rem;
  position: relative;
}

.section.footer {
  background-color: var(--primary);
  color: var(--white);
  padding-bottom: 1.875rem;
}

.section.home-articles {
  padding-top: 0;
}

.section.fondo-rayas, .section.gris {
  background-color: #fafafa;
}

.spacer {
  width: .625rem;
  height: .625rem;
}

.spacer._1rem {
  width: 1rem;
  height: 1rem;
}

.spacer._1-875rem {
  width: 1.875rem;
  height: 1.875rem;
}

.spacer._2-5rem {
  width: 2.5rem;
  height: 2.5rem;
}

.spacer._1-25rem {
  width: 1.25rem;
  height: 1.25rem;
}

.sg-title-wrap {
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 3.125rem;
  display: flex;
}

.sg-title-line {
  background-color: var(--primary);
  width: 100%;
  height: .0625rem;
  margin-top: .625rem;
}

.typography-flex {
  justify-content: space-around;
  align-items: center;
  margin-top: 2.5rem;
  display: flex;
}

.typography-flex-column {
  width: 35%;
}

.typography-flex-column._2 {
  width: 56%;
}

.rich-text h1 {
  margin-bottom: 1.5rem;
}

.rich-text h6 {
  margin-bottom: .625rem;
}

.rich-text h2, .rich-text p, .rich-text h3, .rich-text ul {
  margin-bottom: 1.5rem;
}

.rich-text li {
  line-height: 1.6;
}

.rich-text h5 {
  margin-bottom: 1rem;
}

.rich-text ol, .rich-text blockquote {
  margin-bottom: 1.5rem;
}

.rich-text figure {
  margin-bottom: 1.875rem;
}

.rich-text h4 {
  margin-bottom: 1rem;
}

.rich-text a {
  transition: opacity .2s;
}

.rich-text a:hover {
  opacity: .85;
}

.rich-text figcaption {
  opacity: .8;
  margin-top: .625rem;
  line-height: 1.6;
}

.rich-text.blog-post {
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}

.footer-column {
  flex-direction: column;
  align-items: flex-start;
  padding-top: .625rem;
  display: flex;
}

.footer-column.intro {
  padding-top: 0;
  padding-right: 3.75rem;
}

.footer-link {
  color: var(--white);
  margin-bottom: .625rem;
  font-size: .875rem;
  line-height: 1.6;
  text-decoration: none;
  transition: opacity .2s;
}

.footer-link:hover {
  opacity: .85;
  text-decoration: none;
}

.footer-logo {
  margin-bottom: 1.875rem;
}

.footer-column-title.w--current {
  background-color: #f9f9f9;
}

.paragraph-small {
  font-size: .875rem;
}

.hero-wrap {
  max-width: 35rem;
}

.button {
  border-bottom: .0625rem solid var(--primary);
  color: var(--primary);
  letter-spacing: .0625rem;
  background-color: #0000;
  background-image: url('../images/button-arrow-brown.svg');
  background-position: 94% .625rem;
  background-repeat: no-repeat;
  background-size: .4375rem;
  padding: .3125rem 1.875rem .3125rem .625rem;
  font-size: 1rem;
  font-style: italic;
  font-weight: 300;
  line-height: 1.5;
  transition: color .2s, background-color .2s;
}

.button:hover {
  background-color: var(--primary);
  color: var(--white);
  background-image: url('../images/button-arrow-white.svg');
  background-position: 94% .625rem;
  background-repeat: no-repeat;
  background-size: .4375rem;
}

.button.white {
  border-bottom-color: var(--white);
  color: var(--white);
  background-image: url('../images/button-arrow-white.svg');
}

.button.white:hover {
  background-color: var(--white);
  color: var(--primary);
  background-image: url('../images/button-arrow-brown.svg');
}

.scroll-down-link {
  width: 1.5rem;
  overflow: hidden;
}

.scroll-down-arrow {
  width: 100%;
}

.content-grid {
  grid-column-gap: 1.25rem;
  grid-row-gap: 1.25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.showreel-wrap {
  z-index: 2;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.showreel-lightbox-link {
  background-color: #ffffffbf;
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 7.5rem;
  height: 7.5rem;
  padding-left: .3125rem;
  transition: background-color .2s, transform .2s;
  display: none;
}

.showreel-lightbox-link:hover {
  background-color: #fff;
  transform: scale(1.1);
}

.service-flex {
  align-items: center;
  margin-top: 5rem;
  display: flex;
  position: relative;
}

.service-flex.reverse {
  flex-direction: row-reverse;
}

.service-image-wrap {
  flex: none;
  width: 82.5%;
  position: relative;
  overflow: hidden;
}

.service-text-wrap {
  z-index: 2;
  border: .0625rem solid var(--primary);
  background-image: linear-gradient(to right, var(--white), #ffffffb3);
  text-align: center;
  max-width: 25rem;
  margin-left: -11.875rem;
  padding: 4.6875rem 2.5rem 3.125rem;
  position: relative;
}

.service-text-wrap.reverse {
  background-image: linear-gradient(270deg, var(--white), #ffffffb3);
  margin-left: 0;
  margin-right: -11.875rem;
}

.bg-cover-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.bg-image-fill {
  z-index: 1;
  background-color: #8b8a054d;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.bg-image-fill.cta {
  background-color: #8b8a0569;
}

.bg-image-fill.dark {
  background-color: #8b8a0538;
}

.bg-image-fill.degradado {
  background-image: radial-gradient(circle, #00000052, #fff0);
}

.bg-image-wrap {
  position: absolute;
  inset: 0%;
  overflow: hidden;
}

.cta-wrap {
  color: var(--white);
  text-align: center;
  max-width: 34.375rem;
  margin-left: auto;
  margin-right: auto;
}

.footet-grid {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  grid-template-rows: auto;
  grid-template-columns: 1.7fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  margin-bottom: 3.75rem;
  display: grid;
}

.copyright-flex {
  justify-content: center;
  align-items: center;
  display: flex;
}

.copyright-link {
  color: var(--white);
}

.navbar {
  background-color: #0000;
  padding: .9375rem 1.25rem;
  position: absolute;
  inset: 0% 0% auto;
}

.navbar.relative {
  position: relative;
}

.brand {
  z-index: 2;
  width: 7.9rem;
  margin-top: .9375rem;
}

.brand.w--current {
  width: 7.9rem;
}

.menu-button {
  color: var(--white);
  margin-top: 1.75rem;
  padding: 0;
}

.menu-button.w--open {
  background-color: #0000;
}

.menu-icon {
  float: right;
  width: 1.5625rem;
  margin-top: .1875rem;
  margin-left: .5rem;
}

.menu-text {
  float: left;
}

.nav-menu {
  margin-right: auto;
  padding-top: .6875rem;
}

.nav-link {
  border-bottom: .0625rem solid var(--white);
  color: var(--white);
  margin-left: 1.25rem;
  padding: .3125rem .625rem .125rem;
  font-size: .875rem;
  font-style: italic;
  font-weight: 300;
  line-height: 1.5;
  transition: color .2s, background-color .2s;
}

.nav-link:hover, .nav-link.w--current {
  background-color: var(--white);
  color: var(--primary);
}

.nav-link.dark {
  border-bottom-color: var(--primary);
  color: var(--primary);
}

.nav-link.dark:hover, .nav-link.dark.w--current {
  background-color: var(--primary);
  color: var(--white);
}

.projects-grid {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.project-link-block {
  color: var(--white);
  text-align: center;
  text-decoration: none;
  display: block;
  position: relative;
  overflow: hidden;
}

.project-item-content-wrap {
  background-color: #8b8a05b8;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 90%;
  height: 90%;
  margin: auto;
  display: flex;
  position: absolute;
  inset: 0%;
}

.button-centered-wrap {
  text-align: center;
  padding-top: 3.125rem;
}

.button-centered-wrap.articles-home {
  padding-top: 1.875rem;
}

.latest-articles-wrap {
  background-color: var(--primary);
  color: var(--white);
  text-align: center;
  padding: 5.625rem 1.25rem;
}

.posts-list-home {
  margin-left: auto;
  margin-right: auto;
}

.post-link-home {
  grid-column-gap: 3.125rem;
  grid-row-gap: 3.125rem;
  color: var(--white);
  text-align: left;
  border-bottom: .0625rem solid #ffffff80;
  grid-template-rows: auto;
  grid-template-columns: .7fr 1fr;
  grid-auto-columns: 1fr;
  margin-bottom: 1.5625rem;
  padding-bottom: 1.875rem;
  text-decoration: none;
  transition: opacity .2s;
  display: grid;
}

.post-link-home:hover {
  opacity: .8;
}

.paragraph-xs {
  font-size: .75rem;
  line-height: 1.5;
}

.paragraph-xs.post-tag {
  font-weight: 500;
}

.section-hero {
  color: var(--white);
  align-items: center;
  min-height: 50rem;
  padding: 9.375rem 1.25rem 5.625rem;
  display: flex;
  position: relative;
}

.section-hero.project-template {
  background-color: var(--primary);
  color: var(--white);
  min-height: 0;
  padding-top: 11.25rem;
  padding-bottom: 2.5rem;
  display: block;
}

.section-hero.blog-post-template {
  background-color: var(--primary);
  color: var(--white);
  text-align: center;
  min-height: 0;
  padding-top: 11.25rem;
  padding-bottom: 0;
  display: block;
}

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

.stats-grid {
  grid-column-gap: 1.5625rem;
  grid-row-gap: 1.5625rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.stat-column {
  border: .0625rem solid var(--primary);
  text-align: center;
  padding: 1.25rem;
}

.about-images-grid {
  grid-column-gap: .9375rem;
  grid-row-gap: .9375rem;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr .75fr;
  grid-auto-columns: 1fr;
  margin-top: 5rem;
  margin-bottom: 3.125rem;
  display: grid;
}

.about-image-wrap {
  overflow: hidden;
}

.about-image-wrap.small {
  width: 80%;
}

.image {
  object-fit: cover;
  width: 100%;
  min-height: 27vw;
  max-height: 27vw;
}

.image.project-main-image, .image.blog-main-image {
  object-fit: cover;
  height: 100%;
}

.image.sin {
  min-height: auto;
  max-height: none;
}

.values-grid {
  grid-column-gap: 1.5625rem;
  grid-row-gap: 1.5625rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.value-column {
  border: .0625rem solid var(--primary);
  background-color: #fff;
  padding: 2.1875rem 1.5625rem 1.875rem;
}

.section-title-wrap {
  z-index: 2;
  text-align: center;
  margin-bottom: 4.375rem;
}

.section-title-wrap.intro-section {
  text-align: left;
  margin-bottom: 1.5625rem;
}

.section-title-wrap.services {
  text-align: center;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

.section-title-wrap.blog-posts {
  text-align: center;
  max-width: 40.625rem;
  margin-bottom: 5rem;
  margin-left: auto;
  margin-right: auto;
}

.section-title-wrap.projects, .section-title-wrap.contact {
  text-align: center;
  max-width: 40.625rem;
  margin-left: auto;
  margin-right: auto;
}

.section-title-wrap.individual-project {
  text-align: center;
  max-width: 43.75rem;
  margin-left: auto;
  margin-right: auto;
}

.section-title-wrap.values, .section-title-wrap.team {
  text-align: center;
  max-width: 40.625rem;
  margin-left: auto;
  margin-right: auto;
}

.value-icon {
  opacity: .5;
  width: 4.375rem;
  margin-bottom: 1.25rem;
}

.team-members-grid {
  grid-column-gap: 1.875rem;
  grid-row-gap: 1.875rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.mamber-column {
  flex: 1;
}

.project-main-image-wrap {
  height: 40.625rem;
  margin-bottom: 3.125rem;
  overflow: hidden;
}

.project-intro-grid {
  grid-column-gap: 1.25rem;
  grid-row-gap: 1.25rem;
  text-align: left;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  max-width: 53.125rem;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.paragraph-large {
  font-size: 1.125rem;
  line-height: 1.5;
}

.paragraph-large.footer-column-title, .paragraph-large.project-intro {
  font-weight: 500;
}

.paragraph-xl {
  font-size: 1.25rem;
  line-height: 1.5;
}

.paragraph-xl.contact-info {
  font-weight: 500;
}

.project-main-grid {
  grid-column-gap: 3.125rem;
  grid-row-gap: 3.125rem;
  grid-template-rows: auto;
  grid-template-columns: .4fr 1fr;
  grid-auto-columns: 1fr;
  align-items: start;
  display: grid;
}

.project-services-block {
  position: sticky;
  top: 1.875rem;
}

.post-info-flex {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: center;
  display: flex;
}

.blog-main-image-wrapper {
  height: 40.625rem;
  overflow: hidden;
}

.project-category-link {
  border: .0625rem solid var(--primary);
  color: var(--primary);
  padding: .625rem 1rem;
  text-decoration: none;
  transition: color .2s, background-color .2s;
}

.project-category-link:hover, .project-category-link.w--current {
  background-color: var(--primary);
  color: var(--white);
}

.projects-categories-flex {
  grid-column-gap: .9375rem;
  grid-row-gap: .9375rem;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  margin-bottom: 2.5rem;
  display: flex;
}

.posts-grid {
  grid-column-gap: 3.75rem;
  grid-row-gap: 3.75rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.post-item:nth-child(2n) {
  margin-top: 4.375rem;
}

.post-item.post-template:nth-child(2n) {
  margin-top: 0;
}

.post-item-link {
  color: var(--primary);
  text-align: center;
  text-decoration: none;
  display: block;
}

.post-item-image-wrap {
  overflow: hidden;
}

.post-item-arrow {
  width: 1.25rem;
}

.projects-categories-list {
  grid-column-gap: .9375rem;
  grid-row-gap: .9375rem;
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.contact-grid {
  grid-column-gap: 0rem;
  grid-row-gap: 0rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.contact-grid-column {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 30.9375rem;
  padding: 3.75rem 2.5rem;
  display: flex;
}

.contact-grid-column.dark {
  background-color: var(--primary);
  color: var(--white);
  align-items: flex-start;
  padding-left: 6.25rem;
}

.contact-grid-column.dark.otro {
  padding-right: 6.25rem;
}

.form-block {
  width: 100%;
  margin-bottom: 0;
}

.input-field {
  background-color: #0000;
  border: .0625rem solid #0000;
  border-bottom-color: #57454566;
  min-height: 2.5rem;
  margin-bottom: 1.875rem;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  font-size: 1rem;
  line-height: 1.5;
  transition: border-color .2s;
}

.input-field:hover {
  border-bottom-color: var(--primary);
}

.input-field:focus {
  border-color: transparent transparent var(--primary);
}

.input-field::placeholder {
  color: #574545cc;
}

.input-field.password {
  margin-bottom: .625rem;
}

.text-area {
  border: .0625rem solid #0000;
  border-bottom-color: #57454566;
  min-height: 6.25rem;
  margin-bottom: 1.875rem;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  font-size: 1rem;
  line-height: 1.5;
  transition: border-color .2s;
}

.text-area:hover {
  border-bottom-color: var(--primary);
}

.text-area:focus {
  border-color: transparent transparent var(--primary);
}

.text-area::placeholder {
  color: #574545cc;
}

.error-message {
  color: var(--white);
  background-color: red;
}

.success-message {
  background-color: var(--primary);
  color: var(--white);
}

.contact-link {
  color: var(--white);
  text-decoration: none;
}

.contact-link:hover {
  text-decoration: underline;
}

.map {
  width: 100%;
  height: 25rem;
}

.testimonial-slider {
  background-color: #0000;
  height: auto;
  padding-left: 3.75rem;
  padding-right: 3.75rem;
}

.testimonial-slide {
  width: 50%;
  padding-left: .625rem;
  padding-right: .625rem;
}

.slider-arrow {
  border: .0625rem solid var(--primary);
  color: var(--primary);
  background-color: #0000;
  width: 3.125rem;
  height: 3.125rem;
  font-size: 1rem;
  transition: color .2s, background-color .2s;
}

.slider-arrow:hover {
  background-color: var(--primary);
  color: var(--white);
}

.slide-nav {
  font-size: .875rem;
  display: none;
}

.testimonial-flex {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  align-items: center;
  display: flex;
}

.testimonial-avatar {
  width: 3.75rem;
}

.testimonial-name {
  font-weight: 500;
}

.testimonial-slide-wrap {
  border: .0625rem solid var(--primary);
  padding: 2.5rem 1.875rem 1.25rem;
}

.latest-articles-inner-wrap {
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}

.privacy-outer-wrap {
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}

.newsletter-form-block {
  margin-bottom: 0;
}

.newsletter-form {
  align-items: flex-end;
  display: flex;
}

.input-field-newsletter {
  color: var(--white);
  background-color: #0000;
  border: .0625rem solid #0000;
  border-bottom-color: #ffffffb3;
  min-height: 2.1875rem;
  margin-bottom: 0;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  font-size: 1rem;
  line-height: 1.5;
  transition: border-color .2s;
}

.input-field-newsletter:hover {
  border-bottom-color: var(--white);
}

.input-field-newsletter:focus {
  border-color: transparent transparent var(--white);
}

.input-field-newsletter::placeholder {
  color: #fffc;
}

.success-message-newsletter {
  background-color: var(--white);
  color: var(--primary);
}

.sg-buttons-grid {
  grid-column-gap: 0rem;
  grid-row-gap: 0rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.sg-button-wrap {
  border: .0625rem solid var(--primary);
  justify-content: center;
  align-items: center;
  height: 6.25rem;
  display: flex;
}

.sg-button-wrap.dark-bg {
  background-color: var(--primary);
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 25rem;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: center;
  width: 100%;
  display: flex;
}

.hidden-label {
  display: none;
}

.social-flex {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: flex;
}

.social-link {
  border: .0625rem solid var(--white);
  border-radius: 100%;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  transition: background-color .2s;
  display: flex;
}

.social-link:hover {
  background-color: #fff3;
}

.social-logo {
  width: 55%;
}

.social-logo.x {
  width: 44%;
}

.fs-styleguide_background {
  border: .0625rem solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.fs-styleguide_background-space {
  width: .0625rem;
  height: .0625rem;
  margin: 5rem;
}

.sg-color-item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  display: grid;
  position: relative;
}

.sg-color-label {
  background-color: var(--primary);
  color: #fff;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem .75rem;
  font-weight: 600;
  line-height: 1.4;
  display: flex;
}

.sg-color-label.is-hex {
  color: #000;
  background-color: #f5f5f5;
}

.sg-colors-grid {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.sg-color-block.is-3 {
  background-color: #fff;
}

.sg-color-block.is-1 {
  background-color: var(--primary);
}

.sg-color-block.is-2 {
  background-color: var(--white);
}

.entero {
  background-image: url('../images/image1.jpeg');
  background-position: 50% 0;
  background-size: cover;
  height: 49vw;
}

.entero._2 {
  background-image: url('../images/image2.jpeg');
}

.checkbox-field {
  margin-bottom: 20px;
}

.checkbox-label {
  color: #786b6a;
}

.div-block {
  background-image: url('../images/5384.jpg');
  background-position: 50%;
  background-size: cover;
  height: 43vw;
}

.grid {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  grid-template-rows: auto;
}

.slider {
  min-height: 40.625rem;
}

.div-block-2 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  max-width: 70%;
  display: flex;
}

.centro {
  color: var(--white);
  text-align: center;
}

.centro-blanco {
  color: var(--white);
  text-align: center;
  text-shadow: 0 0 20px #000;
}

.div-block-3, .div-block-4 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.div-block-5 {
  background-image: url('../images/Captura-de-pantalla-2025-01-21-a-las-9.49.12.png');
  background-position: 50%;
  background-size: cover;
  height: 25rem;
}

.div-block-6 {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex-flow: column;
  display: flex;
}

.div-block-7 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  display: flex;
}

.div-block-8 {
  background-image: url('../images/1459.jpg');
  background-position: 50%;
  background-size: cover;
  flex: 1;
  min-height: 32vw;
}

.div-block-8._2 {
  background-image: url('../images/253.jpg');
}

.div-block-9 {
  flex: 1;
}

.div-block-9.limite {
  align-self: flex-start;
  max-width: 100%;
}

.div-block-9.limite.citar {
  border-left: 2px solid var(--primary);
  padding-left: 20px;
}

.grid-2 {
  grid-column-gap: 3.75rem;
  grid-row-gap: 3.75rem;
  grid-template-rows: auto;
}

.div-block-10 {
  margin-top: 70px;
}

.blanco {
  color: var(--white);
}

.div-block-11 {
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  display: flex;
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 3.125rem;
  }

  h2 {
    font-size: 2.5rem;
  }

  h3 {
    font-size: 1.6rem;
  }

  h4 {
    font-size: 1.4rem;
  }

  .section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .section.cta {
    padding-top: 8.75rem;
  }

  .sg-title-wrap {
    margin-bottom: 4.5em;
  }

  .typography-flex-column {
    width: 47%;
  }

  .typography-flex-column._2 {
    width: 53%;
  }

  .footer-column.intro {
    padding-right: 1.25rem;
  }

  .service-flex {
    margin-top: 4.375rem;
  }

  .service-text-wrap {
    padding: 3.125rem 1.5625rem 2.1875rem;
  }

  .footet-grid {
    grid-column-gap: 1.875rem;
    grid-row-gap: 1.875rem;
  }

  .menu-button {
    z-index: 2;
    margin-top: .9375rem;
  }

  .menu-button.dark {
    color: var(--primary);
  }

  .nav-menu {
    background-color: var(--primary);
    padding: 6.25rem 1.25rem 1.5625rem;
    position: fixed;
    inset: 0% 0% auto;
  }

  .nav-menu.white-bg {
    background-color: var(--white);
  }

  .nav-link {
    margin-bottom: .9375rem;
    margin-left: 0;
    font-size: 1rem;
  }

  .projects-grid {
    grid-column-gap: 1.5625rem;
    grid-row-gap: 1.5625rem;
  }

  .project-item-content-wrap {
    width: 100%;
    height: auto;
    padding: .9375rem .625rem 1.25rem;
    position: absolute;
    inset: auto 0% 0%;
  }

  .latest-articles-wrap {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .section-hero.project-template, .section-hero.blog-post-template {
    padding-top: 8.125rem;
  }

  .stats-grid {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .about-images-grid {
    grid-column-gap: .625rem;
    grid-row-gap: .625rem;
    margin-top: 3.75rem;
  }

  .values-grid {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .section-title-wrap {
    margin-bottom: 3.75rem;
  }

  .team-members-grid {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .project-main-image-wrap {
    height: 34.375rem;
  }

  .project-main-grid {
    grid-column-gap: 1.875rem;
    grid-row-gap: 1.875rem;
  }

  .blog-main-image-wrapper {
    height: 34.375rem;
  }

  .posts-grid {
    grid-column-gap: 2.8125rem;
    grid-row-gap: 2.8125rem;
  }

  .post-item:nth-child(2n) {
    margin-top: 3.125rem;
  }

  .contact-grid-column {
    min-height: 29.375rem;
    padding: 3.125rem 1.25rem;
  }

  .contact-grid-column.dark {
    padding-left: 2.5rem;
  }

  .map {
    height: 21.875rem;
  }

  .testimonial-slider {
    padding-left: 2.8125rem;
    padding-right: 2.8125rem;
  }

  .slider-arrow {
    width: 2.8125rem;
    height: 2.8125rem;
  }

  .testimonial-avatar {
    width: 3.4375rem;
  }

  .testimonial-slide-wrap {
    padding-top: 2.1875rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .latest-articles-inner-wrap {
    width: 95%;
  }

  .social-link {
    width: 2.1875rem;
    height: 2.1875rem;
  }

  .sg-colors-grid {
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.8rem;
  }

  h2 {
    font-size: 2.18rem;
  }

  h3 {
    font-size: 1.5rem;
  }

  h4 {
    font-size: 1.3125rem;
  }

  h5 {
    font-size: 1.125rem;
  }

  h6 {
    font-size: 1rem;
  }

  p {
    font-size: .875rem;
  }

  .section {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }

  .section.showreel {
    min-height: 37.5rem;
  }

  .spacer {
    width: .5rem;
    height: .5rem;
  }

  .sg-title-wrap {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 3em;
  }

  .sg-title-line {
    margin-top: .5em;
    margin-left: 0;
  }

  .typography-flex {
    flex-direction: column;
  }

  .typography-flex-column {
    width: 100%;
  }

  .typography-flex-column._2 {
    width: 100%;
    margin-top: 1.5em;
  }

  .rich-text {
    width: 100%;
  }

  .rich-text blockquote {
    background-image: none;
  }

  .footer-column.intro {
    padding-right: 0;
  }

  .footer-link {
    font-size: .8125rem;
  }

  .footer-column-title {
    font-size: 1rem;
  }

  .paragraph-small {
    font-size: .75rem;
  }

  .button {
    font-size: .875rem;
  }

  .content-grid {
    text-align: center;
    grid-template-columns: 1fr;
  }

  .service-flex {
    flex-direction: column;
    margin-top: 3.4375rem;
  }

  .service-flex.reverse {
    flex-direction: column;
  }

  .service-image-wrap {
    width: 100%;
  }

  .service-text-wrap {
    margin-top: -7.5rem;
    margin-left: auto;
    margin-right: auto;
  }

  .service-text-wrap.reverse {
    margin-left: auto;
    margin-right: auto;
  }

  .footet-grid {
    grid-template-rows: auto auto;
    grid-template-columns: 1.7fr 1fr;
    margin-bottom: 3.125rem;
  }

  .brand {
    padding-left: 0;
  }

  .menu-icon {
    margin-top: .0625rem;
  }

  .projects-grid {
    grid-template-columns: 1fr;
  }

  .project-item-content-wrap {
    padding-top: 1.25rem;
  }

  .button-centered-wrap {
    padding-top: 2.5rem;
  }

  .button-centered-wrap.articles-home {
    padding-top: .9375rem;
  }

  .latest-articles-wrap {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }

  .post-link-home {
    grid-column-gap: .9375rem;
    grid-row-gap: .9375rem;
    grid-template-columns: 1fr;
  }

  .paragraph-xs {
    font-size: .6875rem;
  }

  .section-hero {
    min-height: 37.5rem;
    padding-top: 7.5rem;
    padding-bottom: 4.375rem;
  }

  .stats-grid {
    grid-template-columns: 1fr 1fr;
  }

  .about-images-grid {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
  }

  .image {
    min-height: 56vw;
    max-height: 56vw;
  }

  .values-grid {
    grid-template-columns: 1fr 1fr;
  }

  .value-column {
    padding: 1.875rem 1.25rem 1.5625rem;
  }

  .section-title-wrap {
    margin-bottom: 3.125rem;
  }

  .section-title-wrap.intro-section {
    text-align: center;
    margin-bottom: 1.25rem;
  }

  .section-title-wrap.blog-posts {
    margin-bottom: 3.75rem;
  }

  .team-members-grid {
    grid-template-columns: 1fr 1fr;
  }

  .project-main-image-wrap {
    height: 31.25rem;
    margin-bottom: 2.5rem;
  }

  .project-intro-grid {
    grid-template-columns: 1fr 1fr;
  }

  .paragraph-large {
    font-size: 1rem;
  }

  .paragraph-xl {
    font-size: 1.125rem;
  }

  .project-main-grid {
    grid-column-gap: .625rem;
    grid-row-gap: .625rem;
    grid-template-columns: 1fr;
  }

  .project-services-block {
    position: relative;
    top: 0;
  }

  .blog-main-image-wrapper {
    height: auto;
  }

  .posts-grid {
    grid-template-columns: 1fr;
  }

  .post-item:nth-child(2n) {
    margin-top: 0;
  }

  .contact-grid {
    grid-template-columns: 1fr;
  }

  .contact-grid-column {
    min-height: auto;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .contact-grid-column.dark {
    padding-top: 3.125rem;
    padding-right: 1.25rem;
  }

  .testimonial-slide {
    width: 100%;
  }

  .grid {
    grid-template-columns: 1fr;
  }

  .slider {
    min-height: 37.2rem;
  }

  .grid-2 {
    grid-template-columns: 1fr;
  }

  .div-block-10 {
    margin-top: 0;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  h4 {
    font-size: 1.7em;
  }

  ul, ol {
    padding-left: 1.5rem;
    font-size: .875rem;
  }

  .section {
    padding: 3.4375rem .9375rem;
  }

  .section.cta {
    padding-top: 7.5rem;
  }

  .section.showreel {
    min-height: 28.125rem;
    overflow: visible;
  }

  .section.footer {
    padding-bottom: 1.5625rem;
  }

  .spacer._1rem {
    width: .875rem;
    height: .875rem;
  }

  .spacer._1-875rem {
    width: 1.5rem;
    height: 1.5rem;
  }

  .spacer._2-5rem {
    width: 1.875rem;
    height: 1.875rem;
  }

  .spacer._1-25rem {
    width: 1.125rem;
    height: 1.125rem;
  }

  .sg-title-wrap {
    margin-bottom: 2.5em;
  }

  .rich-text h1, .rich-text h2, .rich-text p, .rich-text h3 {
    margin-bottom: 1.25rem;
  }

  .rich-text ul {
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;
  }

  .rich-text li {
    font-size: .875rem;
  }

  .rich-text h5 {
    margin-bottom: .875rem;
  }

  .rich-text ol {
    margin-bottom: 1.25rem;
    padding-left: 1.5625rem;
  }

  .rich-text blockquote {
    background-image: none;
    margin-bottom: 1.25rem;
    font-size: 1rem;
  }

  .rich-text figure {
    margin-bottom: 1.5rem;
  }

  .rich-text h4 {
    margin-bottom: .875rem;
  }

  .rich-text figcaption {
    font-size: .875rem;
  }

  .footer-link {
    margin-right: 0%;
  }

  .scroll-down-link {
    width: 1.25rem;
  }

  .showreel-wrap {
    height: Infinity% ;
  }

  .showreel-lightbox-link {
    width: 5.625rem;
    height: 5.625rem;
  }

  .service-flex {
    margin-top: 3.125rem;
  }

  .service-text-wrap {
    max-width: none;
    margin-top: 0;
    padding: 1.5625rem .625rem 1.25rem;
  }

  .footet-grid {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
    grid-template-columns: 1fr 1fr;
  }

  .copyright-flex {
    grid-column-gap: .3125rem;
    grid-row-gap: .3125rem;
    flex-direction: column;
    align-items: flex-start;
  }

  .nav-link {
    margin-bottom: .8125rem;
    padding-bottom: .25rem;
    font-size: .9375rem;
  }

  .projects-grid {
    grid-column-gap: 1.875rem;
    grid-row-gap: 1.875rem;
  }

  .project-item-content-wrap {
    background-color: #574545;
    position: relative;
  }

  .button-centered-wrap {
    padding-top: 2.1875rem;
  }

  .latest-articles-wrap {
    padding: 3.4375rem .9375rem;
  }

  .posts-list-home {
    width: 100%;
  }

  .post-link-home {
    padding-bottom: 1.5625rem;
  }

  .section-hero {
    padding-bottom: 3.4375rem;
    padding-left: .9375rem;
    padding-right: .9375rem;
  }

  .stats-grid {
    grid-column-gap: .9375rem;
    grid-row-gap: .9375rem;
  }

  .about-images-grid {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .about-image-wrap.small {
    width: 100%;
  }

  .values-grid {
    grid-template-columns: 1fr;
  }

  .section-title-wrap, .section-title-wrap.blog-posts {
    margin-bottom: 2.5rem;
  }

  .team-members-grid {
    grid-template-columns: 1fr;
  }

  .project-main-image-wrap {
    height: 21.875rem;
  }

  .project-category-link {
    text-align: center;
    display: block;
  }

  .projects-categories-flex {
    grid-column-gap: .625rem;
    grid-row-gap: .625rem;
    margin-bottom: 1.5625rem;
  }

  .posts-grid {
    grid-column-gap: 1.875rem;
    grid-row-gap: 1.875rem;
  }

  .projects-categories-list {
    grid-column-gap: .625rem;
    grid-row-gap: .625rem;
  }

  .contact-grid-column {
    min-height: auto;
    padding-top: 0;
    padding-bottom: 2.5rem;
  }

  .contact-grid-column.dark {
    padding-top: 2.5rem;
    padding-left: 1.25rem;
  }

  .testimonial-slider {
    padding-bottom: 3.75rem;
    padding-left: 0;
    padding-right: 0;
  }

  .testimonial-slide {
    padding-left: 0;
    padding-right: 0;
  }

  .slider-arrow {
    display: none;
  }

  .slide-nav {
    display: block;
  }

  .latest-articles-inner-wrap {
    width: 100%;
  }

  .input-field-newsletter {
    font-size: .875rem;
  }

  .sg-buttons-grid {
    grid-template-columns: 1fr;
  }

  .slider {
    min-height: 28rem;
    overflow: hidden;
  }

  .left-arrow {
    margin-left: -18px;
  }

  .right-arrow {
    margin-right: -18px;
  }

  .icon, .icon-2 {
    font-size: 1.4rem;
  }
}

#w-node-f8956bd9-c188-c9e9-853d-abbb450b940f-3fa7de3a, #w-node-d3e5519f-0455-9052-68b8-d2dbcde36ed8-3fa7de3a, #w-node-_778f8389-d7b7-e9e4-2e92-cd6a704bed9d-3fa7de42, #w-node-_46e47c23-1b90-c948-8a02-1ce73ecff5ad-3fa7de42, #w-node-_44aea36f-9779-b6a2-a429-5d2fe0d5e5e7-3fa7de43, #w-node-_34f8f71e-22dd-b9fa-cadc-ded74f12f0fc-3fa7de43, #w-node-ec8d8544-2fe8-4f83-2177-86a7f4464e75-3fa7de43, #w-node-b7766b2e-2860-0374-c440-61d0c9202b2e-3fa7de43, #w-node-_242bf7de-3f27-6e16-92e5-7aa47f185aa0-3fa7de43, #w-node-_259dbd85-a670-1918-c0c2-540e8842a5cf-3fa7de43, #w-node-f8956bd9-c188-c9e9-853d-abbb450b940f-3fa7de45, #w-node-f4211c38-7a47-fb05-cf4f-b340e79f6048-3fa7de45, #w-node-_4130d65a-2c7a-a618-d748-4187e577ad4d-3fa7de45 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b84cd69e-1c7e-1341-e10f-f6169967e3ac-3fa7de45 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: end;
}

#w-node-_267b9d55-e6f6-856a-c6ca-749de77f49f9-3fa7de45 {
  grid-area: span 2 / span 1 / span 2 / span 1;
  align-self: center;
}

#w-node-_942b1a30-19df-0898-953d-5abaa8a36ecd-3fa7de45 {
  grid-area: span 1 / span 1 / span 1 / span 1;
  place-self: start end;
}

#w-node-_24180680-87e7-8569-22db-d84d79a88813-3fa7de45, #w-node-_872d93f4-002b-f49f-5ac5-cfcc5a339f12-3fa7de45, #w-node-_0cf06371-c677-3853-8b13-fd0e7f8f2c8e-3fa7de45, #w-node-bcc48f41-a3c0-6502-7975-0816c06e346d-3fa7de45, #w-node-_24180680-87e7-8569-22db-d84d79a8881d-3fa7de45, #w-node-f731ad33-6700-db71-c5bd-ce3628eb9b59-3fa7de45, #w-node-_72a25462-695c-d62e-0b54-87e34c6f136c-3fa7de45, #w-node-_1ee51b57-eb12-e557-36fc-94b079eb327a-3fa7de45, #w-node-_066743b6-4142-e705-5e52-a21e0db50d0b-3fa7de45, #w-node-_066743b6-4142-e705-5e52-a21e0db50d12-3fa7de45, #w-node-_066743b6-4142-e705-5e52-a21e0db50d19-3fa7de45, #w-node-_066743b6-4142-e705-5e52-a21e0db50d20-3fa7de45, #w-node-_066743b6-4142-e705-5e52-a21e0db50d27-3fa7de45, #w-node-bf644f8e-88b1-4d03-e077-9e90f12f8fdd-3fa7de49, #w-node-_1633e1e5-3854-99ed-f737-6d53ef484062-3fa7de49 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 767px) {
  #w-node-_1633e1e5-3854-99ed-f737-6d53ef484062-3fa7de49 {
    grid-area: 1 / 1 / 2 / 2;
  }
}

@media screen and (max-width: 479px) {
  #w-node-afb47ec8-0ac2-6e69-7600-ebf6d79a86e4-d79a86e1, #w-node-afb47ec8-0ac2-6e69-7600-ebf6d79a86fe-d79a86e1 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


