/* Modern surfaces and buttons layered over the original layout. */
html { scroll-behavior: smooth; }
.service-card > .fusion-column-wrapper {
  padding: 12px !important;
  background: #fff !important;
  border-radius: 22px !important;
  border: 1px solid #e5edf3;
  box-shadow: 0 8px 28px rgba(21,61,87,.065);
  overflow: hidden;
  transition: transform .3s ease, box-shadow .3s ease;
  height: 100%;
}
.service-card:hover > .fusion-column-wrapper {
  transform: translateY(-7px);
  border-color: #c2deed;
  box-shadow: 0 22px 42px rgba(21,61,87,.12);
}
.service-card .fusion-imageframe { display: block; width: 100%; border-radius: 14px; overflow: hidden; }
.service-card .fusion-image-element { width: 100%; }
.service-card .fusion-imageframe img { width: 100%; height: 215px; object-fit: cover; transition: transform .65s ease; }
.service-card:hover .fusion-imageframe img { transform: scale(1.045); }
.service-card { align-self: stretch; }
.service-card .fusion-builder-row-inner { width: 100% !important; max-width: 100% !important; margin: 0 !important; flex: 1; align-items: stretch !important; }
.service-card .fusion_builder_column_inner {
  margin: 0 !important;
  flex: 1 !important;
  --awb-spacing-right-large: 0 !important; --awb-spacing-left-large: 0 !important;
  --awb-spacing-right-medium: 0 !important; --awb-spacing-left-medium: 0 !important;
  --awb-spacing-right-small: 0 !important; --awb-spacing-left-small: 0 !important;
}
.service-card .fusion_builder_column_inner > .fusion-column-wrapper { padding: 26px 20px 20px !important; background: transparent !important; margin: 0 !important; height: 100%; }
.service-card .fusion-title { margin-bottom: 14px !important; }
.service-card .fusion-title h3 { font-size: 23px !important; line-height: 1.35 !important; letter-spacing: -.4px; color: #155879 !important; }
.service-card .fusion-title h3 p { margin: 0; }
.service-card .fusion-text { flex: 1; min-height: 165px; }
.service-card .fusion-text p { color: #697a87; font-size: 15px; line-height: 1.85; font-weight: 400; margin-bottom: 24px; }
.service-card .fusion-separator { display: none; }
.service-card .fusion_builder_column_inner > .fusion-column-wrapper > div:last-child { margin-top: auto; }
.fusion-body .fusion-button, .fusion-body .fusion-button.button-default {
  background: linear-gradient(135deg, #168ac5, #08649d) !important;
  color: #fff !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 12px rgba(8,100,157,.16) !important;
  padding: 15px 25px !important;
  min-height: 48px;
  font-size: 13px !important; font-weight: 600 !important; letter-spacing: .65px !important;
  text-shadow: none !important;
  transition: background .25s ease, box-shadow .25s ease, transform .25s ease !important;
}
.fusion-body .fusion-button .fusion-button-text, .fusion-body .fusion-button i { color: inherit !important; }
.fusion-body .fusion-button:hover { background: linear-gradient(135deg, #087ab6, #074b7a) !important; transform: translateY(-3px); box-shadow: 0 9px 20px rgba(8,100,157,.23) !important; }
.fusion-body .fusion-button:active { transform: translateY(0); }
.fusion-body .fusion-button.fusion-button-span-yes { border-radius: 0 !important; padding: 30px 24px !important; box-shadow: none !important; }
.fusion-body .fusion-button.fusion-button-span-yes:hover { transform: none; }
.fusion-body .service-card .fusion-button {
  display: flex; justify-content: center; align-items: center; gap: 14px; width: 100%;
  background: #eef7fc !important; color: #096a9f !important; box-shadow: none !important;
  border: 1px solid #d8eaf4 !important; border-radius: 10px !important;
}
.service-card .fusion-button::after { content: '\2192'; font-family: Arial, sans-serif; font-size: 21px; line-height: 1; transition: transform .25s ease; }
.fusion-body .service-card .fusion-button:hover { background: #086b9f !important; color: #fff !important; border-color: #086b9f !important; transform: none; }
.service-card .fusion-button:hover::after { transform: translateX(4px); }
.fusion-builder-row-5 .fusion-builder-column-10 > .fusion-column-wrapper {
  border: 1px solid rgba(255,255,255,.3) !important; border-radius: 24px !important;
  background: linear-gradient(145deg, #089fe0, #087bb7) !important;
  box-shadow: 0 20px 50px rgba(5,49,79,.25);
}
.fusion-body .fusion-builder-row-5 .fusion-builder-column-10 .fusion-button { background: #fff !important; color: #086b9f !important; box-shadow: 0 5px 15px rgba(5,49,79,.12) !important; }
.fusion-body .fusion-builder-row-5 .fusion-builder-column-10 .fusion-button:hover { background: #eaf7ff !important; }
.fusion-form .fusion-form-input { border-radius: 10px !important; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 3px solid #03a9f4 !important; outline-offset: 4px;
}
.local-reveal { animation: gentle-reveal .7s ease both; }
@keyframes gentle-reveal { from { opacity: .25; translate: 0 18px; } to { opacity: 1; translate: 0 0; } }
@media (max-width: 800px) {
  .service-card .fusion-text { min-height: 0; }
  .service-card .fusion-imageframe img { height: 220px; }
  .service-card .fusion_builder_column_inner > .fusion-column-wrapper { padding: 24px 16px 16px !important; }
  .fusion-body .fusion-button { padding: 14px 20px !important; }
  .service-card:hover > .fusion-column-wrapper { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .fusion-animated { visibility: visible !important; opacity: 1 !important; }
}
