/* oAT Site - Local Overrides
   Image URL replacements + inline styles extracted from source HTML
*/

/* =====================================================
   CUSTOM FONTS (loaded from Webflow CDN - keep as-is)
   ===================================================== */
@font-face {
  font-family: 'Urwformcond Demi';
  src: url('https://cdn.prod.website-files.com/67c5c1b3edd7b5d5b77baef9/67c5c1b3edd7b5d5b77baf49_URWFormCond-Demi.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Urwformcond';
  src: url('https://cdn.prod.website-files.com/67c5c1b3edd7b5d5b77baef9/67c5c1b3edd7b5d5b77baf4a_URWFormCond-ExtraBold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Urwformcond';
  src: url('https://cdn.prod.website-files.com/67c5c1b3edd7b5d5b77baef9/67c5c1b3edd7b5d5b77baf48_URWFormCond-Light.otf') format('opentype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* =====================================================
   BACKGROUND IMAGE OVERRIDES (CDN → local paths)
   ===================================================== */

/* Homepage hero */
.section.header {
  background-image: url('../images/hero-bg.avif'), linear-gradient(#ff8867, #fdb7a2);
}

/* Small headers (services, etc.) */
.section.header.small {
  background-image: url('../images/header-small-bg.avif');
}

/* About header */
.section.header.small.about {
  background-image: url('../images/header-about-bg.avif'), linear-gradient(transparent, transparent);
}

/* Services header mobile */
@media screen and (max-width: 767px) {
  .section.header.small.services-header {
    background-image: url('../images/header-services-mobile-bg.avif'), linear-gradient(transparent, transparent);
  }
  .section.header.small.about {
    background-image: url('../images/header-about-mobile-bg.avif'), linear-gradient(transparent, transparent);
  }
  .section.contact {
    background-image: url('../images/contact-mobile-bg.avif');
  }
  .section.cta-block {
    background-image: url('../images/cta-mobile-bg.avif');
  }
  .section.operating-partner {
    background-image: url('../images/header-services-mobile-bg.avif');
  }
}

/* Contact page */
.section.contact {
  background-image: url('../images/contact-bg.avif');
}

/* CTA section */
.section.cta-block {
  background-image: url('../images/cta-bg.avif');
}

/* Operating partner section */
.section.operating-partner {
  background-image: url('../images/operating-partner-bg.avif');
}

/* CTA block inner image */
.cta-block {
  background-image: url('../images/cta-inner-bg.avif');
}

/* =====================================================
   INLINE STYLES FROM SOURCE HTML (w-embed blocks)
   ===================================================== */

html,
body {
  overflow-x: hidden;
}

/* Hero image carousel */
.hero-image {
  opacity: 0;
  transition: transform 1.2s ease-in-out, opacity 1.2s ease-in-out;
}

.hero-image:nth-child(odd) {
  transform: translateY(100px);
}

.hero-image:nth-child(even) {
  transform: translateY(100px);
}

.hero-image.active:nth-child(odd) {
  opacity: 1;
  transform: translateY(0px);
}

.hero-image.active:nth-child(even) {
  opacity: 1;
  transform: translateY(0px);
}

.hero-image.prev:nth-child(odd) {
  transform: translateY(100px);
  opacity: 0;
}

.hero-image.prev:nth-child(even) {
  transform: translateY(100px);
  opacity: 0;
}

/* Gradient green override from inline styles */
.gradient_green {
  background: linear-gradient(360deg, rgba(168, 183, 185, 0) 0%, rgba(168, 183, 185, 0.6) 100%);
}

/* Homepage: transparent navbar */
@media screen and (min-width: 992px) {
  .body-homepage .navbar-item {
    background-color: transparent !important;
  }
}

/* Nav link hover underline */
.nav-link {
  position: relative;
  text-decoration: none;
}

@media screen and (min-width: 992px) {
  .nav-link:hover::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -11px;
    width: 100%;
    height: 1px;
    background-color: #70898C;
  }

  .nav-link.w--current::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -11px;
    width: 100%;
    height: 1px;
    background-color: #70898C;
  }

  .body-homepage .nav-link.w--current::after {
    background-color: #FFFEF3;
  }

  .body-homepage .nav-link:hover::after {
    background-color: #FFFEF3;
  }
}

/* Lottie border radius */
@media screen and (min-width: 768px) {
  .lottie-border svg {
    border-radius: 8px;
  }
}

/* Hamburger icon */
.hamburger-icon {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 13px;
  height: 16.6px;
  background-color: transparent;
  border: none;
  cursor: pointer;
  position: relative;
}

.hamburger-line {
  width: 13px;
  height: 2px;
  background-color: white;
  transition: all 0.3s ease;
  position: absolute;
  left: 0;
}

.line-1 { top: 0; }
.line-2 { top: 6.3px; }
.line-3 { top: 12.6px; }

.menu-button.w--open .line-1 {
  transform: translateY(6.3px) rotate(45deg);
}

.menu-button.w--open .line-2 {
  opacity: 0;
}

.menu-button.w--open .line-3 {
  transform: translateY(-6.3px) rotate(-45deg);
}

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

/* About page lottie wrapper */
.lottie-wrapper-about svg {
  margin-bottom: -10px;
}

/* Material Icons */
.icon-2 {
  font-family: 'Material Icons' !important;
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
}

/* Animated SVG paths */
.path-container {
  width: 100%;
  height: 120px;
  display: flex;
  align-items: start;
  justify-content: center;
}

.base-path {
  stroke: #75898C;
  stroke-width: 0.58;
  fill: none;
}

.animated-left {
  stroke: #BB293A;
  stroke-width: 2;
  fill: none;
  stroke-dasharray: 100 200;
  animation: moveLeft 3s linear infinite;
  filter: url(#redGlow);
}

.animated-right {
  stroke: rgb(112, 137, 140);
  stroke-width: 2;
  fill: none;
  stroke-dasharray: 100 200;
  animation: moveRight 3s linear infinite;
  filter: url(#greenGlow);
}

@keyframes moveLeft {
  from { stroke-dashoffset: 300; }
  to { stroke-dashoffset: 0; }
}

@keyframes moveRight {
  from { stroke-dashoffset: 300; }
  to { stroke-dashoffset: 0; }
}

.path-container-mirrored {
  width: 100%;
  height: 120px;
  display: flex;
  align-items: start;
  justify-content: center;
}

.base-path-mirrored {
  stroke: #75898C;
  stroke-width: 0.58;
  fill: none;
}

.animated-left-mirrored {
  stroke: #BB293A;
  stroke-width: 2;
  fill: none;
  stroke-dasharray: 100 200;
  animation: moveLeftMirrored 3s linear infinite;
  filter: url(#redGlowMirrored);
}

.animated-right-mirrored {
  stroke: rgb(112, 137, 140);
  stroke-width: 2;
  fill: none;
  stroke-dasharray: 100 200;
  animation: moveRightMirrored 3s linear infinite;
  filter: url(#greenGlowMirrored);
}

@keyframes moveLeftMirrored {
  from { stroke-dashoffset: 300; }
  to { stroke-dashoffset: 0; }
}

@keyframes moveRightMirrored {
  from { stroke-dashoffset: 300; }
  to { stroke-dashoffset: 0; }
}

/* Popup overlay */
.popup-overlay {
  cursor: pointer;
}

/* FAQ item wrapper */
.faq-item-wrapper {
  border-bottom: 1px solid #ddd9d0;
}

.faq-item-wrapper:last-child {
  border-bottom: none;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, padding 0.3s ease;
  padding-top: 0;
  padding-bottom: 0;
}

.faq-item-wrapper.open .faq-answer {
  max-height: 2000px;
  padding-bottom: 1.5rem;
}

.faq-arrow {
  transition: transform 0.3s ease;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.faq-item-wrapper.open .faq-arrow {
  transform: rotate(180deg);
}

/* Navbar scroll behavior - becomes solid on scroll for non-homepage */
.navbar-item.scrolled {
  background-color: var(--canvas);
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

/* Footer wrapper node override */
.footer-wrapper {
  width: 100%;
}

/* Input wrapper spacing */
.input-wrapper {
  display: flex;
  flex-direction: column;
}

/* Newsletter popup */
.popup {
  z-index: 9999;
}

/* pb-mobile-0 for gradient sections */
@media screen and (max-width: 767px) {
  .section.gradient_green.pb-mobile-0,
  .section.gradient_orange.pb-mobile-0,
  .section.gradinet-orange_darker.pb-mobile-0 {
    padding-bottom: 0;
  }
}
