/* ============================================
   Banner Customizations (override file)
   Loaded after style.css so rules win.
   ============================================ */

.bannerboxcont {
   right: auto;
   left: 5%;
   text-align: left;
}

.bannerboxcont1 {
   text-align: left;
}

.banner_hd {
   text-align: left;
}

.banner_cont {
   text-align: left;
}

/* ============================================
   Technology Partner card (ported from react-alfvo)
   Sits over the banner slider, bottom-right.
   ============================================ */
.tech-partner-card {
   position: absolute;
   right: 4rem;
   bottom: 8rem;
   z-index: 20;
   max-width: 720px;
}

.tech-partner-label {
   color: #fff;
   font-size: 20px;
   font-weight: 700;
   text-align: center;
   margin: 0 0 16px;
   letter-spacing: 0.3px;
   font-family: "Open Sans", sans-serif;
}

.tech-partner-body {
   display: flex;
   align-items: center;
   background: rgba(0, 0, 0, 0.55);
   border: 1px solid rgba(255, 255, 255, 0.14);
   border-radius: 28px;
   padding: 22px;
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   box-shadow: 0 30px 80px rgba(0, 0, 0, 0.45);
   transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.tech-partner-body:hover {
   box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(255, 255, 255, 0.28);
   border-color: rgba(255, 255, 255, 0.3);
}

.tech-partner-logo {
   background: #fff;
   border-radius: 20px;
   padding: 18px;
   min-width: 160px;
   min-height: 160px;
   flex-shrink: 0;
   display: flex;
   align-items: center;
   justify-content: center;
}

.tech-partner-logo img {
   max-width: 100%;
   max-height: 100%;
   object-fit: contain;
}

.tech-partner-copy {
   width: 0;
   opacity: 0;
   overflow: hidden;
   transition: width 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94),
               opacity 0.35s ease;
}

.tech-partner-body:hover .tech-partner-copy {
   width: 30rem;
   opacity: 1;
}

.tech-partner-logo {
   transition: transform 0.35s ease-out;
}

.tech-partner-body:hover .tech-partner-logo {
   transform: scale(1.04);
}

.tech-partner-copy p {
   width: 30rem;
   color: rgba(255, 255, 255, 0.92);
   font-size: 15px;
   line-height: 1.5;
   margin: 0;
   padding-left: 24px;
   font-family: "Open Sans", sans-serif;
}

@media (max-width: 1024px) {
   .tech-partner-card {
      right: 2rem;
      bottom: 2rem;
      max-width: calc(100% - 4rem);
   }

   .tech-partner-body {
      flex-direction: column;
      align-items: flex-start;
   }

   .tech-partner-logo {
      width: 100%;
      min-width: unset;
      min-height: 100px;
   }
}

@media (max-width: 768px) {
   .tech-partner-card {
      display: none;
   }
}