/* Aventiq custom overrides — mobile nav, breadcrumbs, branding */

/* ============================================================
   Brand accent colour — blue replaces theme gold everywhere
   Edit --aventiq-blue to change menu, scroll-top, buttons, hovers
   ============================================================ */
:root {
  --aventiq-blue: #0178B7;
  --aventiq-blue-dark: #015f92;
  --aventiq-blue-rgb: 1, 120, 183;
  --techguru-base: var(--aventiq-blue);
  --techguru-base-rgb: var(--aventiq-blue-rgb);
  --aventiq-content-width: 90%;
  --aventiq-content-max: 1180px;
  --aventiq-font: sans-serif;
  --aventiq-text-base: 16px;
  --aventiq-text-sm: 15px;
  --aventiq-heading-xl: 30px;
  --aventiq-heading-lg: 24px;
  --techguru-font: sans-serif !important;
  --techguru-font-two: sans-serif !important;
  --bs-font-sans-serif: sans-serif;
  --aventiq-ui-scale: 1;
}

/* ============================================================
   Laptop UI scale (~90% zoom) — 14" Windows laptops (992–1600px)
   Chrome / Edge: native zoom; Firefox: proportional type & layout vars
   ============================================================ */
@media (min-width: 992px) and (max-width: 1600px) {
  @supports (zoom: 1) {
    html {
      zoom: 0.9;
    }
  }

  @supports not (zoom: 1) {
    :root {
      --aventiq-ui-scale: 0.9;
      --aventiq-text-base: 14.4px;
      --aventiq-text-sm: 13.5px;
      --aventiq-heading-xl: 27px;
      --aventiq-heading-lg: 21.6px;
      --aventiq-content-max: 1062px;
    }

    html {
      font-size: 14.4px;
    }

    body {
      font-size: 14.4px !important;
    }

    .main-menu-two__logo .aventiq-logo,
    .main-menu-two__logo img {
      max-height: 110px !important;
      max-width: 360px !important;
    }

    .main-menu .main-menu__list > li > a,
    .stricky-header .main-menu__list > li > a {
      font-size: 14.4px !important;
    }

    .thm-btn {
      font-size: 13.5px !important;
      padding: 10px 20px !important;
    }

    .section-title__title,
    .title-animation {
      font-size: clamp(20px, 1.6vw, 27px) !important;
    }

    .blog-one__title,
    .blog-one__title a {
      font-size: 16px !important;
    }

    .main-slider-two .swiper-slide {
      height: clamp(468px, 58.5vh, 576px) !important;
    }

    .main-slider-two .container {
      padding-top: clamp(106px, 12.6vh, 124px) !important;
    }
  }
}

/* Site-wide typography — system sans-serif only */
html {
  font-family: var(--aventiq-font);
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-size: var(--aventiq-text-base) !important;
  line-height: 1.65 !important;
}

/* Site-wide UI scale — prevents oversized text/cards on large screens */
.section-title__title,
.title-animation {
  font-size: clamp(22px, 1.8vw, var(--aventiq-heading-xl)) !important;
  line-height: 1.3 !important;
}

.section-title__tagline {
  font-size: 12px !important;
  line-height: 1.4 !important;
  letter-spacing: 0.1em !important;
}

.blog-one__title,
.blog-one__title a {
  font-size: 18px !important;
  line-height: 1.35 !important;
}

.blog-one__text {
  font-size: var(--aventiq-text-sm) !important;
  line-height: 1.65 !important;
}

.blog-one__single {
  margin-bottom: 20px;
}

.page-header__inner h2 {
  font-size: clamp(24px, 2.2vw, 32px) !important;
  line-height: 1.25 !important;
}

.main-menu .main-menu__list > li > a,
.stricky-header .main-menu__list > li > a {
  font-size: 16px !important;
}

.main-menu-two__left {
  padding: 18px 0 !important;
}

.main-menu-two__wrapper-inner {
  padding: 0 24px !important;
}

.main-menu-two__logo .aventiq-logo {
  max-height: 100px !important;
  width: auto !important;
}

.thm-btn {
  font-size: 15px !important;
  padding: 11px 22px !important;
  line-height: 1.4 !important;
}

body,
.page-wrapper,
.main-header-two,
.main-menu,
.main-menu-two,
.stricky-header,
h1, h2, h3, h4, h5, h6,
p, a, span, li, label, input, textarea, select, button, b, strong,
.thm-btn,
.main-menu__list > li > a,
.main-menu__list > li > a b,
.main-menu__list .shadow-box li a,
.page-header__inner h2,
.services-details,
.services-details__right,
.thm-breadcrumb li,
.thm-breadcrumb li a,
[style*="font-family"] {
  font-family: var(--aventiq-font) !important;
}

/* Nav: normal casing (theme capitalize made labels look odd) */
.main-menu .main-menu__list > li > a,
.stricky-header .main-menu__list > li > a,
.main-menu-two .main-menu__list > li > a,
.stricky-header.main-menu-two .main-menu__list > li > a {
  text-transform: none;
  letter-spacing: 0.01em;
}

/* Cross-browser: section taglines must stay visible in Firefox */
.section-title__tagline {
  color: var(--aventiq-blue, #0178B7) !important;
  -webkit-text-fill-color: currentColor;
  background: none !important;
  background-clip: border-box;
}

/* Prevent page-wrapper from clipping footer after laptop zoom */
.page-wrapper {
  overflow-x: hidden !important;
  overflow-y: visible !important;
}

/* Site-wide content width — capped layout on desktop */
@media (min-width: 992px) {
  .page-wrapper .container {
    width: var(--aventiq-content-width) !important;
    max-width: min(var(--aventiq-content-width), var(--aventiq-content-max)) !important;
    padding-left: clamp(16px, 2vw, 28px);
    padding-right: clamp(16px, 2vw, 28px);
  }
}

/* Bootstrap + theme set max-width: 1320px at 1320px+ — keep 80% layout */
@media (min-width: 1320px) {
  .page-wrapper .container {
    width: var(--aventiq-content-width) !important;
    max-width: min(var(--aventiq-content-width), var(--aventiq-content-max)) !important;
  }
}

/* Desktop nav link color (replaces inline styles) */
.main-menu-two .main-menu__list > li > a,
.main-menu-two .main-menu__list > li > a b {
  color: #1a1a2e;
}

.main-menu-two .main-menu__list > li:hover > a,
.main-menu-two .main-menu__list > li:hover > a b,
.main-menu-two .main-menu__list > li.current > a,
.main-menu-two .main-menu__list > li.current > a b,
.stricky-header.main-menu-two .main-menu__list > li:hover > a,
.stricky-header.main-menu-two .main-menu__list > li.current > a {
  color: var(--aventiq-blue) !important;
}

.main-menu-two .main-menu__list > li > a::before,
.stricky-header.main-menu-two .main-menu__list > li > a::before {
  background-color: var(--aventiq-blue) !important;
}

.main-menu-two .main-menu__list > li:hover > a::after,
.main-menu-two .main-menu__list > li.current > a::after,
.stricky-header.main-menu-two .main-menu__list > li:hover > a::after,
.stricky-header.main-menu-two .main-menu__list > li.current > a::after {
  color: var(--aventiq-blue) !important;
}

.main-menu-two .main-menu__list .shadow-box li a {
  color: #1a1a2e;
  background: #ffffff;
}

.main-menu-two__logo .aventiq-logo {
  width: auto;
  max-width: 360px;
  max-height: 100px;
  height: auto;
  object-fit: contain;
}

/* Mobile header logo — centered, hamburger stays right */
@media (max-width: 1199px) {
  .main-menu-two__wrapper-inner,
  .stricky-header .main-menu-two__wrapper-inner {
    position: relative;
    justify-content: flex-end;
    align-items: center;
    min-height: 108px;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .main-menu-two__left,
  .stricky-header .main-menu-two__left {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    padding: 6px 0 !important;
    z-index: 1;
    pointer-events: none; /* let clicks pass except on the logo link */
    max-width: calc(100% - 52px); /* leave room for hamburger */
  }

  .main-menu-two__left a,
  .stricky-header .main-menu-two__left a {
    pointer-events: auto;
  }

  .main-menu-two__logo,
  .stricky-header .main-menu-two__logo {
    display: flex;
    justify-content: center;
  }

  .main-menu-two__logo img,
  .main-menu-two__logo .aventiq-logo,
  .stricky-header .main-menu-two__logo img,
  .stricky-header .main-menu-two__logo .aventiq-logo {
    width: min(360px, 86vw) !important;
    max-width: 86vw !important;
    max-height: 110px !important;
    height: auto !important;
  }

  .main-menu-two__main-menu-box,
  .stricky-header .main-menu-two__main-menu-box {
    position: relative;
    z-index: 2;
    margin-left: auto;
    display: flex;
    align-items: center;
  }

  .main-menu .mobile-nav__toggler,
  .stricky-header .mobile-nav__toggler {
    color: var(--aventiq-blue);
    font-size: 24px;
    padding: 10px;
  }
}

@media (max-width: 480px) {
  .main-menu-two__wrapper-inner,
  .stricky-header .main-menu-two__wrapper-inner {
    min-height: 100px;
  }

  .main-menu-two__logo img,
  .main-menu-two__logo .aventiq-logo,
  .stricky-header .main-menu-two__logo img,
  .stricky-header .main-menu-two__logo .aventiq-logo {
    width: min(340px, 84vw) !important;
    max-width: 84vw !important;
    max-height: 100px !important;
  }
}

/* Mobile navigation panel */
.mobile-nav__content {
  width: min(340px, 88vw);
  background: linear-gradient(180deg, #0f1629 0%, #1a1a2e 100%);
  padding: 0;
  display: flex;
  flex-direction: column;
}

/* White logo strip at top */
.mobile-nav__logo-strip {
  position: relative;
  background: #ffffff;
  padding: 20px 48px 16px 15px;
  flex-shrink: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.mobile-nav__logo-link {
  display: block;
  line-height: 0;
}

.mobile-nav__logo-img {
  width: 210px;
  max-width: 100%;
  height: auto;
  display: block;
}

.mobile-nav__menu-body {
  flex: 1;
  overflow-y: auto;
  padding: 16px 15px 30px;
}

.mobile-nav__close {
  top: 14px;
  right: 14px;
  font-size: 18px;
  color: #1a1a2e;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.06);
}

.mobile-nav__close:hover {
  background: rgba(0, 0, 0, 0.1);
}

/* Force readable nav links — overrides any inline color from cloned menu */
.mobile-nav__content .main-menu__list > li > a,
.mobile-nav__content .main-menu__list > li > a b,
.mobile-nav__content .main-menu__list > li > ul > li > a,
.mobile-nav__content .main-menu__list > li > ul > li > a b {
  color: #ffffff !important;
  background: transparent !important;
  font-size: 15px;
  font-weight: 600;
  height: auto;
  min-height: 48px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.mobile-nav__content .main-menu__list > li > ul.shadow-box {
  display: none;
  border-top: none;
  margin-left: 0;
  padding: 4px 0 8px 12px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 8px;
  margin-bottom: 8px;
}

.mobile-nav__content .main-menu__list > li > ul.shadow-box > li > a {
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 14px;
  font-weight: 500;
  min-height: 42px;
  padding: 8px 12px;
  border-bottom: none;
}

.mobile-nav__content .main-menu__list > li > ul.shadow-box > li > a:hover {
  color: var(--aventiq-blue) !important;
}

.mobile-nav__content .main-menu__list > li > a > button {
  background-color: var(--aventiq-blue);
  border-radius: 6px;
}

.mobile-nav__contact li {
  color: rgba(255, 255, 255, 0.9);
  font-size: 14px;
  word-break: break-word;
}

.mobile-nav__contact li a {
  color: rgba(255, 255, 255, 0.9);
}

.mobile-nav__contact li > i {
  background-color: var(--aventiq-blue);
}

/* ============================================================
   Breadcrumbs — customise colours here (site-wide)
   File: assets/css/aventiq-custom.css
   ============================================================ */
.page-header {
  --breadcrumb-link: #0178B7;
  --breadcrumb-link-hover: #015f92;
  --breadcrumb-arrow: #0178B7;
  --breadcrumb-box-bg: rgba(255, 255, 255, 0.95);
  --breadcrumb-box-border: rgba(1, 120, 183, 0.35);
}

.thm-breadcrumb__box {
  background-color: var(--breadcrumb-box-bg);
  border: 1px solid var(--breadcrumb-box-border);
  padding: 10px 18px;
  margin-top: 14px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 8px;
}

.thm-breadcrumb li,
.thm-breadcrumb li a {
  color: var(--breadcrumb-link) !important;
  font-size: 15px;
  font-weight: 600;
}

.thm-breadcrumb li span {
  color: var(--breadcrumb-arrow);
  opacity: 0.7;
  font-size: 12px;
}

.thm-breadcrumb li:hover a {
  color: var(--breadcrumb-link-hover) !important;
}

/* Page header — floating particle background (logo blue)
   Header is position:absolute with ~100px logo — need enough top padding
   so the h2 is fully below the nav (was clipping on Impact/Awards/etc). */
.page-header--wave {
  overflow: hidden;
  padding: clamp(156px, 20vh, 196px) 0 clamp(28px, 4vh, 40px) !important;
  min-height: 0;
  background: transparent;
}

.page-header--wave .page-header__wave {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(165deg, #0178B7 0%, #015f92 48%, #014a75 100%);
  z-index: 0;
  overflow: hidden;
}

.page-header--wave .page-header__wave span {
  display: block;
  border-radius: 50%;
  backface-visibility: hidden;
  position: absolute;
  animation-name: page-header-particle-move;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  pointer-events: none;
  will-change: transform;
  opacity: 0.5;
}

@-webkit-keyframes page-header-particle-move {
  100% {
    -webkit-transform: translate3d(0, 0, 1px) rotate(360deg);
    transform: translate3d(0, 0, 1px) rotate(360deg);
  }
}

@keyframes page-header-particle-move {
  100% {
    -webkit-transform: translate3d(0, 0, 1px) rotate(360deg);
    transform: translate3d(0, 0, 1px) rotate(360deg);
  }
}

.page-header--wave .page-header__wave span:nth-child(1) {
  width: 11px;
  height: 11px;
  color: #c8dce8;
  opacity: 0.42;
  top: 8%;
  left: 37%;
  animation-duration: 16.4s;
  animation-delay: -15.8s;
  transform-origin: -12vw 16vh;
  box-shadow: 15.4px 0 5.7px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(2) {
  width: 16px;
  height: 16px;
  color: #b8a060;
  opacity: 0.48;
  top: 32%;
  left: 31%;
  animation-duration: 19.1s;
  animation-delay: -17.6s;
  transform-origin: -6vw 16vh;
  box-shadow: -22.4px 0 5px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(3) {
  width: 11px;
  height: 11px;
  color: #4db3e8;
  opacity: 0.45;
  top: 25%;
  left: 91%;
  animation-duration: 18.2s;
  animation-delay: -13.6s;
  transform-origin: -5vw 3vh;
  box-shadow: 15.4px 0 2.7px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(4) {
  width: 16px;
  height: 16px;
  color: #a86868;
  opacity: 0.44;
  top: 82%;
  left: 35%;
  animation-duration: 22.1s;
  animation-delay: -6.3s;
  transform-origin: 16vw -11vh;
  box-shadow: 22.4px 0 3.8px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(5) {
  width: 11px;
  height: 11px;
  color: #3a3a42;
  opacity: 0.55;
  top: 51%;
  left: 75%;
  animation-duration: 15.9s;
  animation-delay: -16.9s;
  transform-origin: -4vw 0vh;
  box-shadow: -15.4px 0 7.3px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(6) {
  width: 13px;
  height: 13px;
  color: #d4c48a;
  opacity: 0.4;
  top: 40%;
  left: 60%;
  animation-duration: 20.4s;
  animation-delay: -12.2s;
  transform-origin: 5vw 4vh;
  box-shadow: -18.2px 0 7.3px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(7) {
  width: 16px;
  height: 16px;
  color: #c8dce8;
  opacity: 0.38;
  top: 82%;
  left: 83%;
  animation-duration: 15.7s;
  animation-delay: -6.3s;
  transform-origin: -8vw 11vh;
  box-shadow: -22.4px 0 5.5px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(8) {
  width: 10px;
  height: 10px;
  color: #9e5a5a;
  opacity: 0.46;
  top: 33%;
  left: 89%;
  animation-duration: 17.2s;
  animation-delay: -5.7s;
  transform-origin: -15vw -4vh;
  box-shadow: 14px 0 6.4px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(9) {
  width: 17px;
  height: 17px;
  color: #38bdf8;
  opacity: 0.42;
  top: 32%;
  left: 74%;
  animation-duration: 22.8s;
  animation-delay: -13s;
  transform-origin: 13vw 7vh;
  box-shadow: 23.8px 0 4.6px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(10) {
  width: 13px;
  height: 13px;
  color: #2e2e36;
  opacity: 0.58;
  top: 73%;
  left: 35%;
  animation-duration: 21.5s;
  animation-delay: -11.1s;
  transform-origin: 7vw 5vh;
  box-shadow: 18.2px 0 9.6px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(11) {
  width: 11px;
  height: 11px;
  color: #b8a060;
  opacity: 0.44;
  top: 16%;
  left: 8%;
  animation-duration: 22.6s;
  animation-delay: -15.6s;
  transform-origin: -8vw 9vh;
  box-shadow: -15.4px 0 4.4px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(12) {
  width: 18px;
  height: 18px;
  color: #3a3a42;
  opacity: 0.52;
  top: 72%;
  left: 34%;
  animation-duration: 23.7s;
  animation-delay: -4.2s;
  transform-origin: -18vw -11vh;
  box-shadow: -25.2px 0 10.9px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(13) {
  width: 12px;
  height: 12px;
  color: #a86868;
  opacity: 0.4;
  top: 19%;
  left: 39%;
  animation-duration: 18.3s;
  animation-delay: -10.7s;
  transform-origin: -2vw 14vh;
  box-shadow: 16.8px 0 5.7px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(14) {
  width: 18px;
  height: 18px;
  color: #d8e4ee;
  opacity: 0.36;
  top: 86%;
  left: 66%;
  animation-duration: 20.1s;
  animation-delay: -15.6s;
  transform-origin: -8vw 16vh;
  box-shadow: -25.2px 0 12.6px currentColor;
}

.page-header--wave .page-header__wave span:nth-child(15) {
  width: 10px;
  height: 10px;
  color: #9e5a5a;
  opacity: 0.45;
  top: 7%;
  left: 16%;
  animation-duration: 23.3s;
  animation-delay: -3.9s;
  transform-origin: 1vw -3vh;
  box-shadow: -14px 0 3.2px currentColor;
}

.page-header--wave .container {
  position: relative;
  z-index: 2;
}

.page-header--wave .page-header__inner {
  position: relative;
  z-index: 2;
}

.page-header--wave .page-header__inner h2 {
  color: #ffffff !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.45);
  line-height: 1.3 !important;
  overflow: visible;
}

@media (max-width: 991px) {
  .page-header--wave {
    padding: clamp(132px, 18vh, 168px) 0 clamp(22px, 3vh, 32px) !important;
  }
}

@media (max-width: 767px) {
  .page-header--wave {
    padding: clamp(118px, 16vh, 140px) 0 20px !important;
  }

  .page-header--wave .page-header__wave span {
    opacity: 0.85;
  }
}

/* Blog listing page — features strip */
.blog-features {
  margin-top: 56px;
  padding-top: 40px;
  border-top: 1px solid rgba(1, 120, 183, 0.12);
}

.blog-features__title {
  text-align: center;
  font-size: clamp(22px, 2.5vw, 28px);
  color: #1a1a2e;
  margin: 0 0 28px;
  font-weight: 700;
}

.blog-features__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
}

.blog-features__card {
  background: #f8fbff;
  border: 1px solid rgba(1, 120, 183, 0.12);
  border-radius: 14px;
  padding: 22px 20px;
}

.blog-features__card h3 {
  margin: 0 0 10px;
  font-size: 17px;
  color: #0d3b7a;
  line-height: 1.35;
}

.blog-features__card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #475569;
}

.blog-features__card a {
  color: #0178B7;
  font-weight: 600;
}

.blog-features__admin {
  margin: 28px 0 0;
  text-align: center;
  font-size: 14px;
  color: #64748b;
}

.blog-features__admin a {
  color: #0178B7;
  font-weight: 600;
}

/* Blog listing — fixed tile sizes (410×248 image area) */
.blog-page .row > [class*="col-"] {
  display: flex;
}

.blog-page .blog-one__single {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  margin-bottom: 30px;
}

.blog-page .blog-one__img {
  position: relative;
  height: 248px;
  min-height: 248px;
  max-height: 248px;
  flex-shrink: 0;
  overflow: hidden;
}

.blog-page .blog-one__img > a {
  display: block;
  width: 100%;
  height: 100%;
}

.blog-page .blog-one__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}

.blog-page .blog-one__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  margin-top: 20px;
  padding-left: 0;
}

.blog-page .blog-one__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.blog-page .blog-one__text {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
  margin-bottom: 16px;
}

.blog-page .blog-one__btn-box {
  margin-top: auto;
}

/* Homepage services cards — mobile spacing */
.blog-one__single {
  margin-bottom: 24px;
}

.blog-one__title a {
  font-size: clamp(20px, 4.5vw, 26px);
  line-height: 1.3;
}

.blog-one__text {
  font-size: clamp(16px, 3.8vw, 20px) !important;
  line-height: 1.6;
}

/* Contact form select */
.contact-one__input-box .nice-select {
  width: 100%;
  border-radius: 8px;
}

@media (max-width: 575px) {
  .contact-one__form .row > [class*="col-"] {
    margin-bottom: 4px;
  }

  .contact-one__left {
    padding: 24px 18px;
  }
}

/* Faster mobile nav open/close */
.mobile-nav__wrapper {
  transition: visibility 200ms ease 200ms, transform 200ms ease 200ms, -webkit-transform 200ms ease 200ms !important;
}

.mobile-nav__wrapper.expanded {
  transition: visibility 200ms ease 0ms, transform 200ms ease 0ms, -webkit-transform 200ms ease 0ms !important;
}

.mobile-nav__content {
  transition: opacity 200ms ease 0ms, visibility 200ms ease 0ms, transform 200ms ease 0ms, -webkit-transform 200ms ease 0ms !important;
}

.mobile-nav__wrapper.expanded .mobile-nav__content {
  transition: opacity 200ms ease 200ms, visibility 200ms ease 200ms, transform 200ms ease 200ms, -webkit-transform 200ms ease 200ms !important;
}

/* Faster scroll animations */
.wow {
  animation-duration: 0.45s !important;
}

.wow[data-wow-delay="100ms"],
.wow[data-wow-delay="200ms"],
.wow[data-wow-delay="300ms"],
.wow[data-wow-delay="400ms"] {
  animation-delay: 0.05s !important;
}

.wow[data-wow-duration="2500ms"] {
  animation-duration: 0.5s !important;
}

[data-aos] {
  transition-duration: 0.4s !important;
}

/* ============================================================
   Page header — h2 + breadcrumb alignment (all inner pages)
   ============================================================ */
.page-header .container {
  position: relative;
  z-index: 3;
}

.page-header__inner {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}

.page-header__inner h2 {
  margin: 0;
  padding: 0;
  width: 100%;
  word-break: break-word;
}

.page-header .thm-breadcrumb__box {
  margin-top: 0;
}

/* ============================================================
   Hero slider — text readability on photo backgrounds
   ============================================================ */
.main-slider-two .swiper-slide {
  height: clamp(520px, 65vh, 640px) !important;
  overflow: hidden;
}

.main-slider-two .thm-swiper__slider,
.main-slider-two .swiper-container,
.main-slider-two .swiper-wrapper {
  overflow: hidden;
}

.main-slider-two .container {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  box-sizing: border-box;
  text-align: center;
  padding-left: clamp(20px, 4vw, 48px) !important;
  padding-right: clamp(20px, 4vw, 48px) !important;
}

.main-slider-two .container .row {
  width: 100%;
  margin: 0;
  justify-content: center;
}

.main-slider-two .container .col-xl-12 {
  display: flex;
  justify-content: center;
}

.main-slider-two__content {
  padding-top: 4px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  max-width: min(760px, 100%);
  width: 100%;
}

.main-slider-two__sub-title-box {
  margin-left: auto;
  margin-right: auto;
}

.main-slider-two__btns-box {
  justify-content: center !important;
}

.main-slider-two__title {
  font-size: clamp(30px, 3.2vw, 46px) !important;
  line-height: 1.26 !important;
  color: #ffffff !important;
  text-shadow: none !important;
}

/* Hero — faster banner load & snappier text (no 1.5–1.8s delays) */
.main-slider-two__bg {
  transform: scale(1) !important;
  -webkit-transform: scale(1) !important;
  transition: opacity 350ms ease-in !important;
  will-change: opacity;
}

.main-slider-two .swiper-slide-active .main-slider-two__bg {
  transform: scale(1) !important;
  -webkit-transform: scale(1) !important;
  transition: opacity 350ms ease-in !important;
}

.main-slider-two__sub-title-box,
.main-slider-two__title,
.main-slider-two__btns-box,
.main-slider-two__text {
  transition-duration: 450ms !important;
}

.main-slider-two .swiper-slide-active .main-slider-two__sub-title-box {
  transition-delay: 60ms !important;
}

.main-slider-two .swiper-slide-active .main-slider-two__title {
  transition-delay: 140ms !important;
}

.main-slider-two .swiper-slide-active .main-slider-two__btns-box {
  transition-delay: 220ms !important;
}

.main-slider-two .swiper-slide-active .main-slider-two__text {
  transition-delay: 180ms !important;
}

@media (prefers-reduced-motion: reduce) {
  .main-slider-two__bg,
  .main-slider-two__sub-title-box,
  .main-slider-two__title,
  .main-slider-two__btns-box,
  .main-slider-two__text {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

/* Footer contact links — white on blue background (global `a` uses brand blue) */
.site-footer .footer-widget__contact-list li .text p a.mail-box,
.site-footer .footer-widget__contact-list li .text p a.call-number,
.site-footer .footer-widget__contact-list li .text p a.footer-whatsapp-link {
  color: #ffffff !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(255, 255, 255, 0.55);
  font-weight: 600 !important;
}

.site-footer .footer-widget__contact-list li .text p a.mail-box:hover,
.site-footer .footer-widget__contact-list li .text p a.call-number:hover,
.site-footer .footer-widget__contact-list li .text p a.footer-whatsapp-link:hover {
  color: #9fd6f5 !important;
  text-decoration-color: #9fd6f5;
}

/* Compact footer — reduced height and font sizes */
.site-footer .wow,
.site-footer .fadeInUp {
  visibility: visible !important;
  opacity: 1 !important;
  animation: none !important;
  transform: none !important;
}

.site-footer .footer-widget__title,
.site-footer .site-footer__social-title,
.site-footer .site-footer__copyright-text {
  color: #ffffff !important;
}

.site-footer__top {
  padding: 36px 0 32px !important;
}

.site-footer__top-text {
  font-size: 16px !important;
  line-height: 1.55 !important;
  color: #ffffff !important;
}

.site-footer__btn {
  font-size: 16px !important;
  padding: 14px 28px !important;
}

.site-footer__main-content-box {
  padding: 36px 0 32px !important;
}

.site-footer__bottom {
  padding: 18px 0 !important;
}

.footer-widget__title {
  font-size: 15px !important;
  line-height: 1.3 !important;
  margin-bottom: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  position: relative;
  padding-bottom: 10px;
}

.footer-widget__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 28px;
  height: 2px;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 2px;
}

.footer-widget__contact-list li + li {
  margin-top: 22px !important;
}

.footer-widget__contact-list li:before {
  bottom: -11px !important;
  right: 60px !important;
}

.footer-widget__contact-list li .icon-box {
  gap: 10px !important;
  margin-bottom: 8px !important;
}

.footer-widget__contact-list li .icon-box span {
  font-size: 15px !important;
}

.footer-widget__contact-list li .icon-box p {
  font-size: 15px !important;
  font-weight: 700 !important;
}

.footer-widget__contact-list li .text p,
.site-footer .footer-widget__contact-list li .text p[style] {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: rgba(255, 255, 255, 0.92) !important;
}

.footer-widget__contact-list li .text p a.mail-box,
.footer-widget__contact-list li .text p a.call-number,
.footer-widget__contact-list li .text p a.footer-whatsapp-link {
  font-size: 14px !important;
  padding-top: 4px !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.footer-widget__quick-links,
.footer-widget__support {
  padding-left: 32px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.footer-widget__quick-links:before,
.footer-widget__support:before,
.footer-widget__support:after {
  top: -36px !important;
  bottom: -36px !important;
}

.footer-widget__quick-links-list {
  margin: 0;
  padding: 0;
}

.footer-widget__quick-links-list li + li {
  margin-top: 4px !important;
}

/* Clear, tappable footer nav links */
.footer-widget__quick-links-list li a {
  position: relative;
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 6px 2px 6px 0 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent;
  transition: color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.footer-widget__quick-links-list li a::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.55);
  flex-shrink: 0;
}

.footer-widget__quick-links-list li a:hover,
.footer-widget__quick-links-list li a:focus {
  color: #ffffff !important;
  border-bottom-color: rgba(255, 255, 255, 0.55);
  outline: none;
}

.footer-widget__quick-links-list li a:hover::before,
.footer-widget__quick-links-list li a:focus::before {
  background: #9fd6f5;
}

.site-footer__newsletter-input input[type="email"] {
  height: 46px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
  padding: 0 52px 0 14px !important;
  color: #0f172a !important;
}

.site-footer__newsletter-btn {
  top: 5px !important;
  right: 5px !important;
  height: 36px !important;
  width: 36px !important;
  font-size: 14px !important;
  border-radius: 8px !important;
}

.site-footer__social-box {
  margin-top: 22px !important;
}

.site-footer__social-title {
  font-size: 15px !important;
  line-height: 1.3 !important;
  margin-bottom: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.site-footer__social-box-inner a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1.5px solid rgba(255, 255, 255, 0.55) !important;
  border-radius: 50%;
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.06);
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.site-footer__social-box-inner a:hover,
.site-footer__social-box-inner a:focus {
  background: rgba(255, 255, 255, 0.16);
  border-color: #ffffff !important;
  transform: translateY(-1px);
  outline: none;
}

.site-footer__copyright-text {
  font-size: 13px !important;
  line-height: 1.55 !important;
  color: rgba(255, 255, 255, 0.82) !important;
}

.site-footer__copyright-text a {
  color: #ffffff !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  text-decoration-color: rgba(255, 255, 255, 0.5);
}

.site-footer__copyright-text a:hover {
  color: #9fd6f5 !important;
  text-decoration-color: #9fd6f5;
}

.site-footer .row > [class*="col-"] {
  margin-bottom: 8px;
}

@media (max-width: 991px) {
  .site-footer__main-content-box {
    padding: 28px 0 24px !important;
  }

  .footer-widget__quick-links,
  .footer-widget__support {
    padding-left: 0 !important;
    margin-top: 8px !important;
  }

  .footer-widget__quick-links:before,
  .footer-widget__support:before,
  .footer-widget__support:after {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .site-footer__main-content-box {
    padding: 24px 0 20px !important;
  }

  .footer-widget__contact-list li + li {
    margin-top: 16px !important;
  }

  /* Side-by-side Quick Links + Support on phones */
  .site-footer .footer-widget__quick-links,
  .site-footer .footer-widget__support {
    margin-top: 20px !important;
    padding-right: 8px;
  }

  .site-footer .footer-widget__newsletter {
    margin-top: 22px !important;
  }

  .site-footer .row > [class*="col-"] {
    margin-bottom: 0 !important;
  }

  .footer-widget__title {
    font-size: 13px !important;
    margin-bottom: 12px !important;
  }

  .footer-widget__quick-links-list li a {
    min-height: 42px;
    font-size: 15px !important;
    width: 100%;
  }

  .site-footer__social-box {
    margin-top: 16px !important;
  }

  .site-footer__bottom {
    padding: 14px 0 !important;
  }

  .site-footer__bottom-inner {
    padding: 0 12px;
  }

  .site-footer__copyright-text {
    font-size: 12px !important;
    line-height: 1.6 !important;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
}

.main-slider-two__title span {
  color: #ffffff !important;
  text-shadow: none !important;
}

/* Globe slide — centered earth with readable overlay */
.main-slider-two__bg.main-slider-two__bg--globe {
  /* Same full-bleed fill as other slides so the globe image isn't letterboxed */
  background-size: cover !important;
  background-position: center center !important;
  background-color: #0f1629 !important;
}

.main-slider-two__bg {
  background-size: cover !important;
  background-position: center center !important;
  filter: none !important;
}

.main-slider-two__bg::before {
  /* Lighter overlay so the photo stays clear while text stays readable */
  background: linear-gradient(
    to bottom,
    rgba(15, 22, 41, 0.18) 0%,
    rgba(15, 22, 41, 0.32) 50%,
    rgba(15, 22, 41, 0.22) 100%
  ) !important;
}

.main-slider-two .swiper-slide-active .main-slider-two__bg {
  transform: scale(1) !important;
  -webkit-transform: scale(1) !important;
}

.main-slider-two__sub-title {
  text-shadow: none !important;
  color: #ffffff !important;
  font-size: clamp(15px, 1.5vw, 18px) !important;
  line-height: 1.45 !important;
}

.main-slider-two__sub-title-box {
  padding: 8px 20px !important;
  background: rgba(15, 22, 41, 0.52) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

/* ============================================================
   Hero slider — controls + mobile polish
   ============================================================ */
.main-slider-two .thm-swiper__slider,
.main-slider-two .swiper-container {
  position: relative;
}

.main-slider-two__controls {
  position: absolute;
  inset: 0;
  z-index: 100;
  pointer-events: none;
}

/* Hide pagination dots entirely — use arrow navigation only */
#main-slider-pagination,
.main-slider-two #main-slider-pagination,
.main-slider-two .swiper-pagination {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}

@media (min-width: 992px) {

  .main-slider-two__nav {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 0;
    padding: 0 60px;
    pointer-events: none;
  }

  .main-slider-two__nav .swiper-button-prev,
  .main-slider-two__nav .swiper-button-next {
    pointer-events: auto;
    position: absolute;
    right: 60px;
    left: auto;
    margin: 0;
  }

  .main-slider-two__nav .swiper-button-prev {
    top: calc(50% - 52px);
  }

  .main-slider-two__nav .swiper-button-next {
    top: calc(50% + 8px);
  }

  .main-slider-two__nav #main-slider-pagination {
    position: absolute;
    left: 50px;
    top: 50%;
    transform: translateY(-50%);
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    padding: 0;
    margin: 0 !important;
    pointer-events: auto;
  }

  .main-slider-two__nav #main-slider-pagination .swiper-pagination-bullet {
    margin: 10px 0 !important;
    padding: 0 !important;
  }
}

/* Desktop hero — room for sticky header + full subtitle */
@media (min-width: 992px) {
  .main-slider-two .swiper-slide {
    height: clamp(520px, 65vh, 640px) !important;
  }

  .main-slider-two .container {
    padding-top: clamp(118px, 14vh, 138px) !important;
    padding-bottom: 56px !important;
  }

  .main-slider-two__content {
    max-width: min(760px, 100%);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }

  .main-slider-two__title {
    font-size: clamp(28px, 5.4vw, 38px) !important;
    line-height: 1.26 !important;
    margin-bottom: 10px;
  }

  .main-slider-two__sub-title {
    font-size: clamp(14px, 3.4vw, 17px) !important;
    line-height: 1.45 !important;
  }

  .main-slider-two__sub-title-box {
    padding: 8px 16px !important;
    margin-bottom: 14px !important;
  }

  .main-slider-two__bg:not(.main-slider-two__bg--globe) {
    background-size: cover !important;
    background-position: center 40% !important;
  }

  .main-slider-two__btns-box .thm-btn {
    padding: 12px 24px !important;
    font-size: 15px !important;
  }
}

@media (max-width: 991px) {
  /* Balanced slide height on mobile/tablet */
  .main-slider-two .swiper-slide {
    height: auto !important;
    min-height: clamp(480px, 72vh, 620px);
    max-height: none;
  }

  /* Hide nav pill entirely on mobile — autoplay handles cycling */
  .main-slider-two__controls {
    display: none !important;
  }

  .main-slider-two .container {
    padding-top: clamp(108px, 16vh, 128px) !important;
    padding-bottom: 48px !important;
    position: relative;
    z-index: 2;
  }

  .main-slider-two__content {
    max-width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    padding-left: 8px;
    padding-right: 8px;
  }

  .main-slider-two__title {
    font-size: clamp(1.85rem, 7.6vw, 2.45rem) !important;
    line-height: 1.22 !important;
    margin-bottom: 4px;
  }

  .main-slider-two__sub-title-box {
    background: rgba(15, 22, 41, 0.5) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 14px !important;
    padding: 10px 14px !important;
    margin-bottom: 14px !important;
  }

  .main-slider-two__sub-title {
    font-size: clamp(14px, 3.6vw, 16px) !important;
    line-height: 1.45 !important;
  }

  .main-slider-two__sub-title-box:before {
    opacity: 0.35;
  }

  /* Globe slide — full-bleed cover on mobile */
  .main-slider-two__bg.main-slider-two__bg--globe {
    background-size: cover !important;
    background-position: center center !important;
    background-color: #0f1629 !important;
  }

  /* All other slides — cover normally */
  .main-slider-two__bg:not(.main-slider-two__bg--globe) {
    background-size: cover !important;
    background-position: center center !important;
  }

  /* Centered text overlay on all slides — lighter so the photo stays clear */
  .main-slider-two__bg::before {
    background: linear-gradient(
      to bottom,
      rgba(15, 22, 41, 0.22) 0%,
      rgba(15, 22, 41, 0.38) 50%,
      rgba(15, 22, 41, 0.24) 100%
    ) !important;
  }

  .main-slider-two__btns-box {
    gap: 12px !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100%;
    margin-top: 8px;
  }

  .main-slider-two__btn-box-1,
  .main-slider-two__btn-box-2 {
    width: min(320px, 100%);
  }

  .main-slider-two__btns-box .thm-btn {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 20px !important;
    font-size: 15px !important;
    border-radius: 12px !important;
  }

  .main-slider-two__btn-box-2:before {
    display: none !important;
  }

  .main-slider-two__btn-box-2 .thm-btn {
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.72) !important;
    color: #ffffff !important;
  }
}

/* ============================================================
   Scroll-to-top — stop overlapping content on mobile
   ============================================================ */
/* Scroll-to-top — desktop & mobile */
.scroll-to-top:hover {
  color: var(--aventiq-blue);
}

.scroll-to-top__wrapper {
  background-color: var(--aventiq-blue);
}

@media (max-width: 991px) {
  .scroll-to-top {
    right: 14px !important;
    bottom: 18px !important;
    transform: none !important;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--aventiq-blue);
    justify-content: center;
    box-shadow: 0 3px 14px rgba(0, 0, 0, 0.22);
    z-index: 98;
  }

  .scroll-to-top.show {
    bottom: 18px !important;
  }

  .scroll-to-top__text {
    display: none !important;
  }

  .scroll-to-top__wrapper {
    width: 18px;
    height: 3px;
    background: #ffffff;
  }

  .scroll-to-top__inner {
    background: #1a1a2e;
  }
}

/* ============================================================
   Mobile typography & spacing (CSS only — no content changes)
   ============================================================ */
@media (max-width: 767px) {
  .page-wrapper .container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .page-header--wave {
    padding: clamp(118px, 16vh, 140px) 0 20px !important;
  }

  .page-header {
    padding: 168px 0 52px;
  }

  .page-header__inner {
    gap: 12px;
  }

  .page-header__inner h2 {
    font-size: clamp(22px, 5.5vw, 30px) !important;
    line-height: 1.28 !important;
    letter-spacing: -0.01em;
  }

  .thm-breadcrumb__box {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    display: block;
    width: fit-content;
    padding: 8px 14px;
  }

  .thm-breadcrumb li,
  .thm-breadcrumb li a {
    font-size: 13px;
  }

  .thm-breadcrumb li + li {
    margin-left: 6px;
  }

  .thm-breadcrumb__box::-webkit-scrollbar {
    display: none;
  }

  .thm-breadcrumb {
    white-space: nowrap;
  }

  /* Section headings with inline sizes */
  .section-title h2[style],
  .section-title h2 b {
    font-size: clamp(20px, 5vw, 28px) !important;
    line-height: 1.35 !important;
  }

  .section-title p[style],
  .section-title p b {
    font-size: clamp(14px, 3.8vw, 17px) !important;
    line-height: 1.65 !important;
  }

  .section-title__tagline[style],
  .section-title__tagline center {
    font-size: clamp(16px, 4.2vw, 22px) !important;
    line-height: 1.4 !important;
  }

  /* Body copy with inline font-size */
  p[style*="font-size: 21px"],
  p[style*="font-size: 22px"],
  p[style*="font-size: 23px"],
  p[style*="font-size: 25px"],
  span[style*="font-size: 22px"],
  .about-four__text[style],
  .about-three__text[style] {
    font-size: 15px !important;
    line-height: 1.7 !important;
  }

  h3[style*="font-size"],
  .about-three__points h3[style],
  .blog-two__title-two a[style] {
    font-size: 17px !important;
    line-height: 1.45 !important;
  }

  .blog-one__text[style*="font-size: 20px"] {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  /* Negative-margin sections that collapse on mobile */
  .blog-two.blog-three {
    margin-top: 0 !important;
  }

  .about-three {
    margin-top: 0 !important;
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .blog-two__single-two {
    margin-bottom: 18px;
  }

  .blog-two__content-two {
    padding: 14px 12px;
  }

  /* About list items */
  .about-three__points li {
    margin-bottom: 12px;
  }

  .about-three__points .content h3 {
    margin-bottom: 0;
  }

  /* Contact section title */
  .section-title__title span {
    display: inline;
    font-size: inherit;
  }

  .contact-one__right .section-title__title {
    font-size: clamp(22px, 5.5vw, 30px) !important;
    line-height: 1.3 !important;
  }
}

/* Get in Touch + WhatsApp CTA pairs */
.aventiq-cta-buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
}

.aventiq-cta-buttons__whatsapp {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: #25d366 !important;
  color: #ffffff !important;
  border-color: #25d366 !important;
}

.aventiq-cta-buttons__whatsapp::before,
.aventiq-cta-buttons__whatsapp::after {
  display: none !important;
}

.aventiq-cta-buttons__whatsapp:hover {
  background: #1da851 !important;
  color: #ffffff !important;
  border-color: #1da851 !important;
}

.aventiq-cta-buttons__whatsapp i {
  margin-right: 8px;
}

.aventiq-wa-icon {
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  margin-right: 8px;
}

.aventiq-cta-buttons__whatsapp .aventiq-wa-icon {
  margin-right: 10px;
}

.footer-whatsapp-link .aventiq-wa-icon {
  margin-right: 8px;
  transform: translateY(-1px);
}

.mobile-nav__contact li > .aventiq-wa-icon--nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  padding: 6px;
  border-radius: 6px;
  background-color: var(--aventiq-blue);
  color: #ffffff;
  flex-shrink: 0;
}

.about-page__cta .aventiq-cta-buttons,
.ai-sol-cta .aventiq-cta-buttons,
.ai-sol-hero .aventiq-cta-buttons {
  justify-content: center;
}

.ai-sol-hero .aventiq-cta-buttons {
  margin-top: 8px;
}

.about-page__cta .aventiq-cta-buttons__whatsapp,
.ai-sol-cta .aventiq-cta-buttons__whatsapp {
  border: 2px solid #25d366 !important;
}

.site-footer .footer-whatsapp-link {
  display: inline-block;
  margin-top: 4px;
  font-size: 14px !important;
}

.site-footer .footer-whatsapp-link i {
  margin-right: 6px;
}

.site-footer .footer-whatsapp-link .aventiq-wa-icon {
  margin-right: 8px;
}

/* Contact page — info list + CTAs */
.contact-one__label,
.contact-one__text-line,
.contact-one .section-title__title,
.contact-one__text {
  color: #1a1a2e !important;
}

.contact-one__link {
  color: #0178B7 !important;
  transition: color 0.2s ease;
}

.contact-one__link:hover {
  color: #015f92 !important;
}

.contact-one__link--whatsapp {
  color: #128c7e !important;
  font-weight: 600;
}

.contact-one__link--whatsapp:hover {
  color: #0d6b60 !important;
}

.contact-one__icon--whatsapp {
  display: flex;
  align-items: center;
  justify-content: center;
}

.contact-one__wa-icon {
  width: 22px;
  height: 22px;
  margin: 0;
  color: var(--aventiq-blue);
}

.contact-one__cta {
  margin-top: 28px;
}

.contact-one__cta .aventiq-cta-buttons {
  justify-content: flex-start;
}

/* Homepage FAQ + Testimonials + Partners */
.home-faq,
.home-testimonials,
.home-partners {
  padding: clamp(48px, 8vh, 88px) 0;
}

.home-faq {
  background: linear-gradient(180deg, #f7fafc 0%, #ffffff 100%);
}

.home-faq .section-title__title {
  color: #0f1629 !important;
  -webkit-text-fill-color: #0f1629 !important;
}

.home-faq .section-title__tagline {
  color: var(--aventiq-blue, #0178B7) !important;
  -webkit-text-fill-color: var(--aventiq-blue, #0178B7) !important;
}

.home-faq__lead {
  max-width: 640px;
  margin: 10px auto 0;
  color: #4a5568;
  font-size: 1.05rem;
}

.home-faq__list {
  max-width: 1180px;
  margin: 36px auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

.home-faq__item {
  background: #fff;
  border: 1px solid rgba(15, 22, 41, 0.1);
  border-radius: 12px;
  padding: 4px 16px;
  min-height: 64px;
  height: 100%;
}

.home-faq__item summary {
  cursor: pointer;
  font-weight: 700;
  color: #0f1629;
  list-style: none;
  padding: 14px 0;
  font-size: 0.95rem;
  line-height: 1.35;
}

.home-faq__item summary::-webkit-details-marker {
  display: none;
}

.home-faq__item[open] {
  grid-column: span 1;
}

.home-faq__item p {
  margin: 0 0 16px;
  color: #334155;
  line-height: 1.6;
  font-size: 0.92rem;
}

@media (max-width: 991px) {
  .home-faq__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .home-faq__list {
    grid-template-columns: 1fr;
  }
}

.home-testimonials {
  background: #0f1629;
  color: #fff;
}

.home-testimonials .section-title__title,
.home-testimonials .section-title__tagline {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.home-testimonials__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin-top: 36px;
}

.home-testimonial-card {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  padding: 24px;
  margin: 0;
}

.home-testimonial-card__quote {
  font-size: 1.05rem;
  line-height: 1.55;
  margin: 0 0 18px;
  color: rgba(255, 255, 255, 0.92);
}

.home-testimonial-card__footer {
  display: flex;
  gap: 12px;
  align-items: center;
}

.home-testimonial-card__avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
}

.home-testimonial-card__name {
  font-style: normal;
  font-weight: 700;
  display: block;
  color: #fff;
}

.home-testimonial-card__meta {
  display: block;
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.7);
}

.home-partners {
  background: #fff;
}

.home-partners__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 24px 28px;
  align-items: center;
  justify-items: center;
  margin-top: 36px;
}

.home-partners__item img {
  max-height: 64px;
  max-width: 160px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(0.15);
  opacity: 0.92;
}

.home-coming-soon {
  text-align: center;
  max-width: 480px;
  margin: 28px auto 0;
  padding: 28px 20px;
  border-radius: 16px;
  border: 1px dashed rgba(1, 120, 183, 0.35);
  background: rgba(1, 120, 183, 0.06);
}

.home-testimonials .home-coming-soon {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.06);
}

.home-coming-soon__label {
  font-size: 1.35rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--aventiq-blue, #0178B7);
  margin: 0 0 8px;
}

.home-testimonials .home-coming-soon__label {
  color: #7dd3fc;
}

.home-coming-soon__text {
  margin: 0;
  color: #475569;
}

.home-testimonials .home-coming-soon__text {
  color: rgba(255, 255, 255, 0.78);
}

/* ============================================================
   Homepage — LinkedIn updates section
   ============================================================ */
.home-linkedin {
  padding: 72px 0 80px;
  background: linear-gradient(180deg, #f4f8fc 0%, #ffffff 55%);
}

.home-linkedin .section-title__title {
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a;
  opacity: 1 !important;
}

.home-linkedin .section-title__tagline {
  color: #0178B7 !important;
}

.home-linkedin__intro {
  max-width: 640px;
  margin: 12px auto 0;
  color: #475569;
  font-size: 16px;
  line-height: 1.65;
}

.home-linkedin__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 24px;
  margin-top: 36px;
  align-items: start;
}

.home-linkedin__embed {
  background: #fff;
  border: 1px solid rgba(1, 120, 183, 0.14);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 28px rgba(15, 23, 42, 0.06);
  min-height: 420px;
}

.home-linkedin__embed iframe {
  display: block;
  width: 100%;
  min-height: 520px;
  border: 0;
}

.home-linkedin__viewer {
  margin: 36px auto 0;
  max-width: 820px;
  background: #fff;
  border: 1px solid rgba(1, 120, 183, 0.16);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.08);
}

.home-linkedin__viewer-chrome {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  background: #0a66c2;
  color: #fff;
}

.home-linkedin__viewer-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.35);
}

.home-linkedin__viewer-url {
  margin-left: 8px;
  font-size: 13px;
  opacity: 0.92;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-linkedin__viewer-body {
  padding: 28px 28px 32px;
}

.home-linkedin__brand {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.home-linkedin__brand strong {
  display: block;
  color: #0f172a;
  font-size: 18px;
}

.home-linkedin__brand p {
  margin: 2px 0 0;
  color: #64748b;
  font-size: 14px;
}

.home-linkedin__li-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: #0a66c2;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 20px;
  flex-shrink: 0;
}

.home-linkedin__viewer-text {
  color: #475569;
  font-size: 15px;
  line-height: 1.7;
  margin: 0 0 22px;
}

.home-linkedin__viewer-text code {
  font-size: 13px;
  background: #f1f5f9;
  padding: 2px 6px;
  border-radius: 4px;
}

.home-linkedin__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.home-linkedin__btn {
  background: #0a66c2 !important;
  border-color: #0a66c2 !important;
}

.home-linkedin__btn:hover {
  background: #004182 !important;
  border-color: #004182 !important;
}

.home-linkedin__btn-secondary {
  display: inline-flex;
  align-items: center;
  font-weight: 600;
  color: #0a66c2;
  text-decoration: none;
  padding: 10px 4px;
}

.home-linkedin__btn-secondary:hover {
  color: #004182;
  text-decoration: underline;
}

.home-linkedin__footer-cta {
  text-align: center;
  margin-top: 32px;
}

.home-linkedin__sync {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: #475569;
  font-size: 14px;
}

.home-linkedin__sync.is-done {
  display: none;
}

.home-linkedin__sync-spinner {
  width: 18px;
  height: 18px;
  border: 2px solid rgba(10, 102, 194, 0.25);
  border-top-color: #0a66c2;
  border-radius: 50%;
  animation: aventiq-spin 0.7s linear infinite;
}

@media (max-width: 767px) {
  .home-linkedin {
    padding: 52px 0 60px;
  }

  .home-linkedin__viewer-body {
    padding: 22px 18px 24px;
  }

  .home-linkedin__embed iframe {
    min-height: 460px;
  }
}

/* ============================================================
   Site-wide page loader
   ============================================================ */
.aventiq-page-loader {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(248, 250, 252, 0.72);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  opacity: 0;
  visibility: hidden;
  /* Never capture clicks — overlay must not cancel link navigation */
  pointer-events: none !important;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.aventiq-page-loader.is-active {
  opacity: 1;
  visibility: visible;
}

.aventiq-page-loader__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 22px 28px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(1, 120, 183, 0.14);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12);
}

.aventiq-page-loader__spinner {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 3px solid rgba(1, 120, 183, 0.2);
  border-top-color: #0178B7;
  animation: aventiq-spin 0.75s linear infinite;
}

.aventiq-page-loader__text {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #334155;
}

@keyframes aventiq-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .aventiq-page-loader__spinner,
  .home-linkedin__sync-spinner {
    animation: none;
  }
}
