.elementor-34 .elementor-element.elementor-element-1917b046{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-34 .elementor-element.elementor-element-1917b046:not(.elementor-motion-effects-element-type-background), .elementor-34 .elementor-element.elementor-element-1917b046 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}@media(max-width:767px){.elementor-34 .elementor-element.elementor-element-30db64c5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for html, class: .elementor-element-30db64c5 *//* ================================
   PORTFOLIO PAGE HERO
================================ */

.portfolio-hero-section {
  width: 100%;
  background: #050604;
}

.portfolio-hero {
  position: relative;
  width: 100%;
  min-height: 72vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-image:
    linear-gradient(
      90deg,
      rgba(5, 6, 4, 0.92) 0%,
      rgba(5, 6, 4, 0.74) 42%,
      rgba(5, 6, 4, 0.32) 72%,
      rgba(5, 6, 4, 0.62) 100%
    ),
    linear-gradient(
      180deg,
      rgba(5, 6, 4, 0.22) 0%,
      rgba(5, 6, 4, 0.88) 100%
    ),
    var(--portfolio-hero-img);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.portfolio-hero-inner {
  position: relative;
  z-index: 2;
  width: 1080px;
  max-width: calc(100% - 96px);
  margin: 0 auto;
  padding: 72px 0 46px;
}

.portfolio-hero-copy {
  max-width: 780px;
}

.portfolio-hero-kicker {
  font-family: "Outfit", sans-serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #00cc66;
  margin: 0 0 22px;
}

.portfolio-hero-title {
  font-family: "Syne", sans-serif;
  font-size: 68px;
  font-weight: 800;
  line-height: 0.98;
  letter-spacing: -0.06em;
  color: #ffffff;
  max-width: 860px;
  margin: 0 0 24px;
}

.portfolio-hero-title span {
  color: #00cc66;
}

.portfolio-hero-intro {
  font-family: "Cormorant Garamond", serif;
  font-style: italic;
  font-size: 28px;
  line-height: 1.32;
  color: rgba(255, 255, 255, 0.74);
  max-width: 760px;
  margin: 0;
}

.portfolio-hero-actions {
  margin-top: 24px;
}

.portfolio-hero-link,
.portfolio-hero-link:visited {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  font-family: "Outfit", sans-serif;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #ffffff;
  text-decoration: none;
  transition: color 0.25s ease, gap 0.25s ease;
}

.portfolio-hero-link span {
  color: #00cc66;
  font-size: 18px;
  line-height: 1;
  transform: translateY(-1px);
}

.portfolio-hero-link:hover {
  gap: 16px;
  color: #00cc66;
}

.portfolio-hero-link:focus-visible {
  outline: 2px solid #00cc66;
  outline-offset: 6px;
}

/* Large Screen */

@media (min-width: 1600px) {
  .portfolio-hero {
    min-height: 76vh;
  }

  .portfolio-hero-inner {
    width: 1280px;
    max-width: calc(100% - 160px);
    padding: 86px 0 58px;
  }

  .portfolio-hero-copy {
    max-width: 900px;
  }

  .portfolio-hero-title {
    font-size: 82px;
    max-width: 980px;
  }

  .portfolio-hero-intro {
    font-size: 31px;
    max-width: 820px;
  }
}

/* Desktop */

@media (min-width: 1025px) and (max-width: 1599px) {
  .portfolio-hero {
    min-height: 72vh;
  }

  .portfolio-hero-inner {
    width: 1080px;
    max-width: calc(100% - 96px);
    padding: 72px 0 46px;
  }

  .portfolio-hero-title {
    font-size: 68px;
  }
}

/* Tablet */

@media (min-width: 768px) and (max-width: 1024px) {
  .portfolio-hero {
    min-height: 66vh;
    background-position: center center;
  }

  .portfolio-hero-inner {
    width: calc(100% - 72px);
    max-width: 760px;
    padding: 64px 0 46px;
  }

  .portfolio-hero-title {
    font-size: 52px;
    line-height: 1;
  }

  .portfolio-hero-intro {
    font-size: 25px;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .portfolio-hero {
    min-height: 82svh;
    align-items: flex-end;
    background-image:
      linear-gradient(
        180deg,
        rgba(5, 6, 4, 0.32) 0%,
        rgba(5, 6, 4, 0.72) 48%,
        rgba(5, 6, 4, 0.96) 100%
      ),
      var(--portfolio-hero-img);
    background-position: center center;
  }

  .portfolio-hero-inner {
    width: calc(100% - 36px);
    max-width: none;
    padding: 84px 0 44px;
  }

  .portfolio-hero-kicker {
    font-size: 10px;
    letter-spacing: 0.18em;
    margin-bottom: 18px;
  }

  .portfolio-hero-title {
    font-size: 37px;
    line-height: 1;
    letter-spacing: -0.045em;
    margin-bottom: 20px;
  }

  .portfolio-hero-intro {
    font-size: 21px;
    line-height: 1.3;
  }

  .portfolio-hero-actions {
    margin-top: 22px;
  }

  .portfolio-hero-link {
    font-size: 10px;
    letter-spacing: 0.12em;
  }
}

/* Desktop / widescreen hero image crop adjustment only */
@media (min-width: 1025px) {
  .portfolio-hero {
    background-position: center top !important;
  }
}/* End custom CSS */