/* IT Adviser global pre-footer and footer. */
#wrapper .iad-prefooter {
  position: relative;
  margin: 0;
  padding: 24px 0;
  border-top: 1px solid #dfe7e1;
  background:
    radial-gradient(circle at 88% 18%, rgba(101, 181, 59, .11), transparent 24%),
    linear-gradient(180deg, #f7f9f7 0%, #eef3ef 100%) !important;
}

#wrapper .iad-prefooter .block_newsletter.wrapper {
  display: grid !important;
  grid-template-columns: minmax(320px, .66fr) minmax(0, 1.34fr) !important;
  gap: 8px 34px !important;
  align-items: center !important;
  width: min(1180px, calc(100% - 40px)) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 20px 28px !important;
  border: 1px solid #dbe4de !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .92) !important;
  box-shadow: 0 12px 30px rgba(24, 45, 31, .055) !important;
}

#wrapper .iad-prefooter .newsletter-title {
  grid-column: 1 !important;
  margin: 0 !important;
  color: #18221c !important;
  font-size: clamp(22px, 2vw, 27px) !important;
  font-weight: 800 !important;
  letter-spacing: -.038em !important;
  line-height: 1.08 !important;
  text-wrap: balance;
}

#wrapper .iad-prefooter .newsletter-intro {
  grid-column: 1 !important;
  max-width: 40ch !important;
  margin: 0 !important;
  color: #5f6f65 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

#wrapper .iad-prefooter #footer_newsletter {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

#wrapper .iad-prefooter .newsletter-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-areas:
    "fields action"
    "note note" !important;
  gap: 8px 12px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#wrapper .iad-prefooter .newsletter-grid {
  grid-area: fields !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

#wrapper .iad-prefooter .newsletter-field,
#wrapper .iad-prefooter .newsletter-field-full {
  grid-column: auto !important;
  min-width: 0 !important;
  width: 100% !important;
}

#wrapper .iad-prefooter .newsletter-input {
  width: 100% !important;
  min-height: 44px !important;
  padding: 0 12px !important;
  border: 1px solid #cfdad3 !important;
  border-radius: 11px !important;
  background: #ffffff !important;
  color: #17211b !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  outline: none !important;
  box-shadow: none !important;
}

#wrapper .iad-prefooter .newsletter-input::placeholder {
  color: #69786f !important;
  opacity: 1;
}

#wrapper .iad-prefooter .newsletter-input:focus {
  border-color: #62b53b !important;
  box-shadow: 0 0 0 4px rgba(98, 181, 59, .14) !important;
}

#wrapper .iad-prefooter .newsletter-actions {
  grid-area: action !important;
  display: flex !important;
  margin: 0 !important;
}

#wrapper .iad-prefooter .btn.btn-footer {
  min-width: 138px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  border: 1px solid #397b25 !important;
  border-radius: 11px !important;
  background: #397b25 !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: 0 10px 22px rgba(57, 123, 37, .18) !important;
}

#wrapper .iad-prefooter .btn.btn-footer:hover,
#wrapper .iad-prefooter .btn.btn-footer:focus-visible {
  border-color: #2d641d !important;
  background: #2d641d !important;
  box-shadow: 0 0 0 4px rgba(98, 181, 59, .17), 0 12px 24px rgba(57, 123, 37, .18) !important;
}

#wrapper .iad-prefooter .newsletter-note {
  grid-area: note !important;
  max-width: none !important;
  margin: 0 !important;
  color: #68776e !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}

#wrapper .iad-prefooter .alert {
  margin: 0 0 12px !important;
  border-radius: 11px !important;
}

.iad-footer-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

#footer {
  margin: 0;
  padding: 0;
  background: #141b17;
}

#footer .iad-footer-shell {
  --iad-footer-bg: #141b17;
  --iad-footer-panel: #1a241e;
  --iad-footer-line: rgba(213, 228, 218, .13);
  --iad-footer-text: #f1f6f2;
  --iad-footer-muted: #aebbb2;
  --iad-footer-green: #78c850;
  position: relative;
  overflow: hidden;
  color: var(--iad-footer-text);
  background:
    linear-gradient(rgba(255, 255, 255, .018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .018) 1px, transparent 1px),
    radial-gradient(circle at 86% 4%, rgba(98, 181, 59, .12), transparent 26%),
    var(--iad-footer-bg);
  background-size: 44px 44px, 44px 44px, auto, auto;
}

#footer .iad-footer-shell,
#footer .iad-footer-shell * {
  box-sizing: border-box;
}

#footer .iad-footer-container {
  width: min(1280px, calc(100% - 48px));
  margin: 0 auto;
  padding: 34px 0 0;
}

#footer .iad-footer-brand {
  display: grid;
  grid-template-columns: auto auto;
  gap: 24px;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 26px;
  border-bottom: 1px solid var(--iad-footer-line);
}

#footer .iad-footer-logo {
  display: inline-flex;
  align-items: center;
  width: 180px;
  min-height: 56px;
}

#footer .iad-footer-logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 60px;
  object-fit: contain;
  object-position: left center;
  filter: brightness(0) invert(1);
  opacity: .92;
}

#footer .iad-footer-brand-actions {
  display: grid;
  gap: 5px;
  justify-items: end;
}

#footer .iad-footer-social-label {
  color: #8f9e94;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  line-height: 1;
  text-transform: uppercase;
}

#footer .iad-footer-contact-cta,
#footer .iad-footer-commerce {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid rgba(120, 200, 80, .55);
  border-radius: 999px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}

#footer .iad-footer-contact-cta span,
#footer .iad-footer-commerce span {
  margin-left: 8px;
  transition: transform .18s ease;
}

#footer .iad-footer-contact-cta:hover,
#footer .iad-footer-commerce:hover {
  border-color: var(--iad-footer-green);
  background: var(--iad-footer-green);
  color: #102013;
}

#footer .iad-footer-contact-cta:hover span,
#footer .iad-footer-commerce:hover span {
  transform: translateX(3px);
}

#footer .iad-footer-nav-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr .92fr .95fr .95fr;
  gap: 28px;
  padding: 24px 0 28px;
  border-bottom: 1px solid var(--iad-footer-line);
}

#footer .iad-footer-nav {
  min-width: 0;
}

#footer .iad-footer-nav-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 24px;
  margin-bottom: 10px;
}

#footer .iad-footer-nav-title {
  margin: 0;
  color: #9ede7b;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .11em;
  line-height: 1.35;
  text-decoration: none;
  text-transform: uppercase;
}

#footer a.iad-footer-nav-title:hover {
  color: #ffffff;
}

#footer .iad-footer-nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #ffffff;
  font-size: 24px;
}

#footer .iad-footer-nav-list {
  display: grid;
  gap: 1px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#footer .iad-footer-nav-list li {
  margin: 0;
  padding: 0;
}

#footer .iad-footer-nav-list a {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  min-height: 27px;
  padding: 3px 0;
  color: var(--iad-footer-muted);
  font-size: 13px;
  line-height: 1.35;
  text-decoration: none;
  transition: color .18s ease;
}

#footer .iad-footer-nav-list a::after {
  content: "";
  position: absolute;
  right: 100%;
  bottom: 4px;
  left: 0;
  height: 1px;
  background: var(--iad-footer-green);
  transition: right .18s ease;
}

#footer .iad-footer-nav-list a:hover,
#footer .iad-footer-nav-list a:focus-visible {
  color: #ffffff;
}

#footer .iad-footer-nav-list a:hover::after,
#footer .iad-footer-nav-list a:focus-visible::after {
  right: 0;
}

#footer .iad-footer-nav-list .iad-footer-nav-more,
#footer .iad-footer-nav-list .iad-footer-external {
  color: #c9e9b7;
  font-weight: 750;
}

#footer .iad-footer-nav-extra[hidden] {
  display: none !important;
}

#footer .iad-footer-nav-extra-list {
  display: grid;
  gap: 1px;
  margin: 0;
  padding: 0;
  list-style: none;
}

#footer .iad-footer-more-toggle {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  min-height: 32px;
  margin: 3px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #c9e9b7;
  font-size: 12px;
  font-weight: 800;
}

#footer .iad-footer-more-toggle:hover {
  color: #ffffff;
}

#footer .iad-footer-more-toggle b {
  font-size: 16px;
  font-weight: 500;
}

#footer .iad-footer-ecosystem {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) auto auto;
  gap: 28px;
  align-items: center;
  padding: 24px 0;
  border-bottom: 1px solid var(--iad-footer-line);
}

#footer .iad-footer-location-label {
  margin: 0 0 5px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
}

#footer .iad-footer-location address {
  display: flex;
  gap: 3px 14px;
  align-items: center;
  flex-wrap: wrap;
  max-width: 720px;
  margin: 0;
  color: var(--iad-footer-muted);
  font-size: 13px;
  font-style: normal;
  line-height: 1.4;
}

#footer .iad-footer-location address > span:first-child {
  flex-basis: 100%;
}

#footer .iad-footer-location address a {
  color: #dbe5de;
  text-decoration: none;
}

#footer .iad-footer-location address a:hover {
  color: var(--iad-footer-green);
}

#footer .iad-footer-contact-links {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

#footer .iad-footer-whatsapp-trigger {
  width: max-content;
  font-weight: 750;
}

#footer .iad-footer-social {
  display: grid;
  grid-template-columns: repeat(4, 34px);
  gap: 4px;
}

#footer .iad-footer-social a {
  display: inline-flex;
  justify-content: center;
  width: 34px;
  height: 34px;
  align-items: center;
  min-height: 34px;
  padding: 0;
  border: 1px solid var(--iad-footer-line);
  border-radius: 10px;
  color: #e6eee8;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}

#footer .iad-footer-social svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

#footer .iad-footer-social a:hover {
  border-color: rgba(120, 200, 80, .55);
  color: var(--iad-footer-green);
}

#footer .iad-footer-legal {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  min-height: 60px;
  color: #8f9e94;
  font-size: 12px;
}

#footer .iad-footer-legal p {
  margin: 0;
}

#footer .iad-footer-legal nav {
  display: flex;
  gap: 22px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

#footer .iad-footer-legal a {
  color: #aebbb2;
  text-decoration: none;
}

#footer .iad-footer-legal a:hover {
  color: #ffffff;
}

#footer .iad-footer-backtop {
  min-height: 44px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #c8d4cb;
  font-size: 12px;
  font-weight: 750;
}

#footer .iad-footer-backtop:hover {
  background: rgba(255, 255, 255, .05);
  color: #ffffff;
}

#footer .iad-footer-shell a:focus-visible,
#footer .iad-footer-shell button:focus-visible {
  outline: 3px solid #8ede5c;
  outline-offset: 3px;
}

@media (max-width: 1199px) {
  #footer .iad-footer-nav-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px 26px;
  }

  #footer .iad-footer-ecosystem {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  #footer .iad-footer-commerce {
    grid-column: 2;
  }
}

@media (max-width: 991px) {
  #wrapper .iad-prefooter {
    padding: 26px 0;
  }

  #wrapper .iad-prefooter .block_newsletter.wrapper {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 22px 24px !important;
  }

  #wrapper .iad-prefooter .newsletter-title,
  #wrapper .iad-prefooter .newsletter-intro,
  #wrapper .iad-prefooter #footer_newsletter {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  #wrapper .iad-prefooter .newsletter-intro {
    max-width: 58ch !important;
    margin-bottom: 8px !important;
  }

  #footer .iad-footer-ecosystem {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }

  #footer .iad-footer-commerce {
    grid-column: auto;
    width: max-content;
  }

  #footer .iad-footer-legal {
    grid-template-columns: 1fr auto;
  }

  #footer .iad-footer-legal nav {
    grid-column: 1 / -1;
    grid-row: 1;
    justify-content: flex-start;
  }

  #footer .iad-footer-brand-actions {
    gap: 5px;
  }
}

@media (max-width: 767px) {
  #wrapper .iad-prefooter {
    padding: 22px 0;
  }

  #wrapper .iad-prefooter .block_newsletter.wrapper {
    width: min(100%, calc(100% - 24px)) !important;
    padding: 20px 16px !important;
    border-radius: 14px !important;
  }

  #wrapper .iad-prefooter .newsletter-title {
    font-size: 23px !important;
  }

  #wrapper .iad-prefooter .newsletter-form {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "fields"
      "action"
      "note" !important;
  }

  #wrapper .iad-prefooter .newsletter-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  #wrapper .iad-prefooter .newsletter-actions,
  #wrapper .iad-prefooter .btn.btn-footer {
    width: 100% !important;
  }

#footer .iad-footer-container {
    width: min(100%, calc(100% - 32px));
    padding-top: 26px;
  }

#footer .iad-footer-brand {
    grid-template-columns: auto auto;
    gap: 14px;
    padding-bottom: 22px;
  }

#footer .iad-footer-logo {
    width: 152px;
    min-height: 48px;
  }

#footer .iad-footer-contact-cta {
    width: auto;
  }

  #footer .iad-footer-brand-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
    width: auto;
  }

#footer .iad-footer-nav-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 14px 0 20px;
  }

  #footer .iad-footer-nav {
    border-bottom: 1px solid var(--iad-footer-line);
  }

#footer .iad-footer-nav-head {
    min-height: 52px;
    margin: 0;
  }

  #footer .iad-footer-nav-title {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 4px;
  }

  #footer .iad-footer-nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  #footer .iad-footer-nav-list {
    gap: 0;
    padding: 0 4px 14px;
  }

  #footer .iad-footer-nav-list[hidden] {
    display: none !important;
  }

  #footer .iad-footer-nav-list a {
    display: flex;
    min-height: 44px;
    padding: 10px 0;
  }

  #footer .iad-footer-more-toggle {
    min-height: 44px;
    margin-bottom: 8px;
  }

#footer .iad-footer-ecosystem {
    padding: 24px 0;
  }

  #footer .iad-footer-location address {
    display: grid;
    gap: 9px;
  }

  #footer .iad-footer-contact-links {
    gap: 7px;
  }

  #footer .iad-footer-social {
    display: grid;
    grid-template-columns: repeat(2, 40px);
  }

  #footer .iad-footer-social a {
    width: 40px;
    height: 40px;
    min-height: 40px;
  }

  #footer .iad-footer-commerce {
    width: 100%;
  }

  #footer .iad-footer-legal {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    padding: 24px 0 28px;
  }

  #footer .iad-footer-legal nav {
    grid-column: auto;
    grid-row: auto;
    display: grid;
    gap: 0;
  }

  #footer .iad-footer-legal nav a {
    display: flex;
    align-items: center;
    min-height: 44px;
  }

  #footer .iad-footer-backtop {
    width: max-content;
    padding-left: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  #footer .iad-footer-shell *,
  #wrapper .iad-prefooter * {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
