/**
 * Financial Services Industry Page Styles
 * Page: industries/financial-services.html
 *
 * Page-specific styles for the Financial Services AI Solutions page.
 * Shared classes (hero-gradient, gradient-text, feature-card, feature-icon,
 * capabilities-section, outcome-card, outcome-stat, use-case-card, cta-section)
 * are defined in strongly.css and excluded here.
 */

/* Button gradients with vendor prefixes */
.btn-gradient {
  background: #05A34A;
  background: -webkit-linear-gradient(90deg, #05A34A, #6571FF);
  background: -moz-linear-gradient(90deg, #05A34A, #6571FF);
  background: -o-linear-gradient(90deg, #05A34A, #6571FF);
  background: linear-gradient(90deg, #05A34A, #6571FF);
  border: none;
  color: white;
  color: #ffffff;
}

.btn-gradient:hover {
  background: #048a3e;
  background: -webkit-linear-gradient(90deg, #048a3e, #5560e6);
  background: -moz-linear-gradient(90deg, #048a3e, #5560e6);
  background: -o-linear-gradient(90deg, #048a3e, #5560e6);
  background: linear-gradient(90deg, #048a3e, #5560e6);
  -webkit-transform: translateY(-1px);
  -moz-transform: translateY(-1px);
  -ms-transform: translateY(-1px);
  -o-transform: translateY(-1px);
  transform: translateY(-1px);
}

.metric-card {
  background: white;
  background-color: #ffffff;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  border-radius: 1rem;
  padding: 2rem;
  height: 100%;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.metric-card:hover {
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
  transform: translateY(-5px);
  -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.process-step {
  position: relative;
  padding-left: 3rem;
  margin-bottom: 2rem;
}

.process-step::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 2rem;
  height: 2rem;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #05A34A;
  background-color: #05A34A;
  opacity: 0.1;
}

.process-step::after {
  content: '';
  position: absolute;
  left: 0.9rem;
  top: 2rem;
  width: 2px;
  height: calc(100%);
  background: #05A34A;
  background-color: #05A34A;
  opacity: 0.1;
}

.process-step:last-child::after {
  display: none;
}

.demo-window {
  background: #1a1a1a;
  background-color: #1a1a1a;
  -webkit-border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  border-radius: 0.5rem;
  padding: 1rem;
  color: #4fff4f;
  font-family: 'Fira Code', 'Courier New', monospace;
}

.terminal-line {
  margin-bottom: 0.5rem;
  opacity: 0;
  -webkit-animation: fadeIn 0.5s forwards;
  -moz-animation: fadeIn 0.5s forwards;
  -o-animation: fadeIn 0.5s forwards;
  animation: fadeIn 0.5s forwards;
}

@-webkit-keyframes fadeIn {
  to { opacity: 1; }
}

@-moz-keyframes fadeIn {
  to { opacity: 1; }
}

@-o-keyframes fadeIn {
  to { opacity: 1; }
}

@keyframes fadeIn {
  to { opacity: 1; }
}

.security-feature {
  padding: 1.5rem;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  border-radius: 1rem;
  background: white;
  background-color: #ffffff;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.security-feature:hover {
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
  transform: translateY(-5px);
  -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.workflow-diagram {
  position: relative;
  height: 400px;
  background: white;
  background-color: #ffffff;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  border-radius: 1rem;
  padding: 2rem;
  overflow: hidden;
}

.agent-node {
  position: absolute;
  width: 160px;
  padding: 1rem;
  background: white;
  background-color: #ffffff;
  -webkit-border-radius: 0.5rem;
  -moz-border-radius: 0.5rem;
  border-radius: 0.5rem;
  -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  text-align: center;
}

.connector {
  position: absolute;
  height: 2px;
  background: #05A34A;
  background: -webkit-linear-gradient(90deg, #05A34A, #6571FF);
  background: -moz-linear-gradient(90deg, #05A34A, #6571FF);
  background: -o-linear-gradient(90deg, #05A34A, #6571FF);
  background: linear-gradient(90deg, #05A34A, #6571FF);
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -ms-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
}

.platform-component {
  border: none;
  -webkit-border-radius: 1rem;
  -moz-border-radius: 1rem;
  border-radius: 1rem;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  height: 100%;
}

.platform-component:hover {
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  -o-transform: translateY(-5px);
  transform: translateY(-5px);
  -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.mobile-ml-0 {
  left: 10%;
}

.mobile-mr-0 {
  right: 10%;
}

/* Flexbox fallbacks */
.d-flex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -moz-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.align-items-center {
  -webkit-box-align: center !important;
  -webkit-align-items: center !important;
  -moz-box-align: center !important;
  -ms-flex-align: center !important;
  align-items: center !important;
}

.align-items-start {
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
  -moz-box-align: start !important;
  -ms-flex-align: start !important;
  align-items: flex-start !important;
}

.justify-content-center {
  -webkit-box-pack: center !important;
  -webkit-justify-content: center !important;
  -moz-box-pack: center !important;
  -ms-flex-pack: center !important;
  justify-content: center !important;
}

.justify-content-between {
  -webkit-box-pack: justify !important;
  -webkit-justify-content: space-between !important;
  -moz-box-pack: justify !important;
  -ms-flex-pack: justify !important;
  justify-content: space-between !important;
}

@media (max-width: 991.98px) {
  .d-flex.gap-3 {
    flex-direction: column;
  }

  .d-flex.gap-3 .btn {
    width: 100%;
  }
  .mobile-mt-4 {
    margin-top: 40px;
  }

  .mobile-mt-15 {
    margin-top: 130px;
  }

  .mobile-ml-0 {
    right: 0%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .mobile-mr-0 {
    right: 0%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }

  .mobile-h-550 {
    height: 530px;
  }
}

/* Browser-specific fixes */
@supports (-ms-ime-align: auto) {
  /* Edge specific styles */
  .hero-gradient {
    background: #212A3A;
  }
  .gradient-text {
    background: none;
    color: #05A34A;
  }
  .connector {
    background: #05A34A;
  }
}

/* IE11 specific fixes */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .d-flex {
    display: -ms-flexbox !important;
  }
  .workflow-diagram {
    display: block;
  }
}
