/* Start custom CSS *//* TBG mobile-only responsive */
@media (max-width: 1024px) {
  .elementor-49834 { overflow-x: hidden !important; max-width: 100vw !important; }
}
@media (max-width: 767px) {
  html, body { overflow-x: hidden !important; }
  .elementor-49834 { overflow-x: hidden !important; width: 100% !important; }
  .elementor-49834 h1,
  .elementor-49834 .e-heading-base {
    font-size: clamp(1.75rem, 7vw, 2.35rem) !important;
    line-height: 1.15 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }
  .elementor-49834 img { max-width: 100% !important; height: auto !important; }
  .elementor-49834 input,
  .elementor-49834 textarea,
  .elementor-49834 button,
  .elementor-49834 .e-button-base { max-width: 100% !important; min-height: 48px !important; }
}

/* TBG force class animations (global class sheet omits animation props) */
@keyframes tbgFadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes tbg-marquee-up{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-50%,0)}}
@keyframes tbg-marquee-down{from{transform:translate3d(0,-50%,0)}to{transform:translate3d(0,0,0)}}
.elementor .tbg-fade,.tbg-fade{
  animation:tbgFadeUp .75s cubic-bezier(.22,1,.36,1) both!important;
}
.elementor .tbg-marquee-up,.tbg-marquee-up{
  animation-name:tbg-marquee-up!important;
  animation-timing-function:linear!important;
  animation-iteration-count:infinite!important;
}
.elementor .tbg-marquee-down,.tbg-marquee-down{
  animation-name:tbg-marquee-down!important;
  animation-timing-function:linear!important;
  animation-iteration-count:infinite!important;
}
.elementor .tbg-card,.tbg-card{
  transition:transform .35s ease,box-shadow .35s ease!important;
}
.elementor .tbg-card:hover,.tbg-card:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 22px 48px rgba(33,11,57,.16)!important;
}
@media(max-width:767px){
  .elementor .tbg-fade,.tbg-fade{animation-duration:.55s!important;}
  .elementor .tbg-marquee-up,.elementor .tbg-marquee-down,.tbg-marquee-up,.tbg-marquee-down{animation-play-state:paused!important;}
  .elementor .tbg-card:hover,.tbg-card:hover{transform:none!important;}
}

/* ===== SERVICES DROPDOWN SITEWIDE ===== */
/* Home header + shared header component */
[data-id="139c286f"],
[data-id="4b92a7d7"],
[data-id="2465188f"],
[data-id="1546c8f0"],
[data-id="7b003d62"],
[data-id="3014e022"]{
  overflow:visible!important;
}
[data-id="1815dbb2"],
[data-id="373a8218"]{
  position:relative!important;
  z-index:10060!important;
  overflow:visible!important;
}
/* Hide duplicate "Services" heading inside dropdown */
[data-id="32e4bc03"],
[data-id="66280d3a"],
.elementor-element-32e4bc03,
.elementor-element-66280d3a{
  display:none!important;
}
/* Dropdown panels */
[data-id="253a6721"],
[data-id="4117db93"],
.elementor-element-253a6721,
.elementor-element-4117db93{
  display:none!important;
  position:absolute!important;
  top:calc(100% + .35rem)!important;
  left:0!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:0.85rem!important;
  min-width:16rem!important;
  width:max-content!important;
  max-width:22rem!important;
  padding:0.95rem 1.15rem!important;
  background:#fff!important;
  border-radius:.75rem!important;
  box-shadow:0 14px 40px rgba(10,14,39,.18)!important;
  z-index:10070!important;
  opacity:0;
  transform:translateY(6px);
  pointer-events:none!important;
  transition:opacity .16s ease, transform .16s ease!important;
}
[data-id="1815dbb2"]:hover [data-id="253a6721"],
[data-id="1815dbb2"]:focus-within [data-id="253a6721"],
[data-id="1815dbb2"].is-open [data-id="253a6721"],
[data-id="373a8218"]:hover [data-id="4117db93"],
[data-id="373a8218"]:focus-within [data-id="4117db93"],
[data-id="373a8218"].is-open [data-id="4117db93"]{
  display:flex!important;
  opacity:1!important;
  transform:translateY(0)!important;
  pointer-events:auto!important;
}
[data-id="253a6721"] > *,
[data-id="4117db93"] > *{
  margin:0!important;
}
[data-id="253a6721"] a,
[data-id="4117db93"] a{
  color:#0A0E27!important;
  text-decoration:none!important;
  font-family:Poppins,sans-serif!important;
  font-weight:500!important;
  font-size:.95rem!important;
  white-space:nowrap!important;
}
[data-id="253a6721"] a:hover,
[data-id="4117db93"] a:hover{
  color:#047D84!important;
}
[data-id="6c1004b"],
[data-id="6c1004b"] *,
[data-id="3e895345"],
[data-id="3e895345"] *{
  cursor:pointer!important;
}
@media screen and (max-width:1024px){
  [data-id="1815dbb2"]:hover [data-id="253a6721"],
  [data-id="1815dbb2"].is-open [data-id="253a6721"],
  [data-id="373a8218"]:hover [data-id="4117db93"],
  [data-id="373a8218"].is-open [data-id="4117db93"]{
    display:none!important;
  }
}/* End custom CSS */