/**
 * Footer Styles for Acumen Theme
 * Robust responsive styling and burger-style mobile accordion.
 *
 * @package Acumen
 */

/* ==========================================================================
   Universal Footer Structure (Pure White Background)
   ========================================================================== */
footer.footer,
.footer,
.footer.wp-block-group,
.footer.wp-block-group.alignfull,
.footer.is-layout-constrained,
.footer.wp-block-group-is-layout-constrained,
.wp-block-group.footer {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 80px 70px 40px !important;
  position: relative !important;
  background-color: #ffffff !important;
  background: #ffffff !important;
  color: var(--dark, #0a1b2e) !important;
  border-top: 1px solid var(--stroke-dark-10, rgba(10, 27, 46, 0.1)) !important;
  box-sizing: border-box !important;
  margin: 0 auto !important;
}

.footer .footer-inner,
.footer .card-global-payroll {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  position: relative !important;
  width: 100% !important;
  max-width: 1440px !important;
  gap: 48px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

/* ==========================================================================
   Brand & Contacts Column
   ========================================================================== */
.footer .footer-col-brand,
.footer .US-UK {
  position: relative !important;
  width: 320px !important;
  max-width: 320px !important;
  flex: 0 0 320px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
}

.footer .card-US,
.footer .footer-brand-widget,
.footer .widget_text,
.footer .textwidget {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  align-items: flex-start !important;
  gap: 28px !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.footer .frame {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 24px !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Crisp & Enlarged Footer Logo */
.footer .logo,
.footer figure.logo,
.footer .wp-block-image.logo,
.footer .footer-logo {
  position: relative !important;
  width: auto !important;
  max-width: 220px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  flex-shrink: 0 !important;
}

.footer .logo a,
.footer figure.logo a,
.footer .custom-logo-link {
  display: block !important;
  height: 44px !important;
  width: auto !important;
}

.footer .logo img,
.footer figure.logo img,
.footer .wp-block-image.logo img,
.footer .custom-logo {
  height: 44px !important;
  max-height: 44px !important;
  width: auto !important;
  max-width: 220px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Contact List */
.footer .contact-list,
.footer .flexcontainer {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer .contact-list .text,
.footer .flexcontainer .text,
.footer .contact-list p,
.footer .flexcontainer p {
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  color: var(--text-gray, #475462) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer .contact-list .text-wrapper,
.footer .flexcontainer .text-wrapper {
  color: var(--text-gray, #475462) !important;
}

.footer .contact-list a,
.footer .flexcontainer a {
  color: var(--text-gray, #475462) !important;
  text-decoration: none !important;
  transition: color 0.18s ease !important;
}

.footer .contact-list a:hover,
.footer .flexcontainer a:hover {
  color: var(--red, #ff5a5f) !important;
}

/* Footer Social Links */
.footer .footer-social-links,
.editor-styles-wrapper .footer .footer-social-links {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

.footer .footer-social-links .social-link,
.editor-styles-wrapper .footer .footer-social-links .social-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;
  text-decoration: none !important;
  transition: opacity 0.2s ease, transform 0.2s ease !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
}

.footer .footer-social-links .social-link:hover,
.editor-styles-wrapper .footer .footer-social-links .social-link:hover {
  opacity: 0.7 !important;
  transform: translateY(-2px) !important;
}

.footer .footer-social-links .social-link img,
.footer .footer-social-links .social-link svg,
.editor-styles-wrapper .footer .footer-social-links .social-link img,
.editor-styles-wrapper .footer .footer-social-links .social-link svg {
  display: block !important;
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
  object-fit: contain !important;
}

/* CTA Button */
.footer .footer-cta-btn,
.footer .wp-block-buttons.footer-cta-btn,
.footer .wp-block-buttons {
  display: flex !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer .wp-block-button {
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  margin: 0 !important;
  box-shadow: none !important;
}

.footer .footer-cta-btn .wp-block-button__link,
.footer .footer-cta-btn .is-style-red .wp-block-button__link,
.footer .wp-element-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 13px 24px !important;
  background-color: var(--red, #ff5a5f) !important;
  border-radius: var(--radius-btn, 8px) !important;
  color: #ffffff !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  border: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  width: fit-content !important;
}

.footer .footer-cta-btn .wp-block-button__link:hover,
.footer .footer-cta-btn .is-style-red .wp-block-button__link:hover,
.footer .wp-element-button:hover {
  background-color: var(--red-hover, #f24448) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 15px rgba(255, 90, 95, 0.25) !important;
  color: #ffffff !important;
}

.footer .footer-cta-btn .wp-block-button__link::after,
.footer .footer-cta-btn .is-style-red .wp-block-button__link::after {
  content: "" !important;
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.83301 14.1667L14.1663 5.83337' stroke='%23FFFFFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M6.0415 5.83337H14.1665V13.9584' stroke='%23FFFFFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  margin-left: 2px !important;
  transition: transform 0.2s ease !important;
}

.footer .footer-cta-btn .wp-block-button__link:hover::after,
.footer .footer-cta-btn .is-style-red .wp-block-button__link:hover::after {
  transform: translate(2px, -2px) !important;
}

/* ==========================================================================
   Desktop Nav Columns (Solutions, Resources, Company)
   ========================================================================== */
.footer .footer-col-solutions,
.footer .footer-col-resources,
.footer .footer-col-company,
.footer .footer-col.div {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 18px !important;
  position: relative !important;
  flex: 1 1 0 !important;
  min-width: 180px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.footer .footer-col-widget,
.footer .widget_nav_menu {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.footer .footer-col-title,
.footer .div-2,
.footer h3.widgettitle {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.footer .footer-heading,
.footer .text-wrapper-2,
.footer h3.widgettitle,
.footer .wp-block-heading.footer-heading {
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 600 !important;
  color: var(--dark, #0a1b2e) !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  padding: 0 !important;
  transition: color 0.2s ease !important;
}

/* Arrow Icon */
.footer .footer-col-arrow {
  display: none;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-left: auto;
  flex-shrink: 0;
}

.footer .footer-arrow-icon {
  width: 12px;
  height: 8px;
  display: block;
  transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.footer .footer-arrow-icon path {
  transition: stroke 0.2s ease;
}

/* Links Container & WordPress Menu Widgets */
.footer .footer-links,
.footer .flexcontainer-links,
.footer .flexcontainer-2,
.footer .flexcontainer-3,
.footer .flexcontainer-4,
.footer .menu-footer-solutions-container,
.footer .menu-footer-resources-container,
.footer .menu-footer-company-container,
.footer [class*="menu-footer-"],
.footer ul.menu,
.footer .footer-menu-list {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: none !important;
}

.footer .footer-links .text,
.footer .flexcontainer-links .text,
.footer .flexcontainer-2 .text,
.footer .flexcontainer-3 .text,
.footer .flexcontainer-4 .text,
.footer .footer-links p,
.footer ul.menu .menu-item,
.footer .footer-menu-list .menu-item,
.footer .menu-item {
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: none !important;
  width: 100% !important;
  text-align: left !important;
}

.footer .footer-links .text a,
.footer .flexcontainer-links .text a,
.footer .flexcontainer-2 .text a,
.footer .flexcontainer-3 .text a,
.footer .flexcontainer-4 .text a,
.footer .footer-links a,
.footer ul.menu .menu-item a,
.footer .footer-menu-list .menu-item a,
.footer .menu-item a {
  color: var(--text-gray, #475462) !important;
  text-decoration: none !important;
  transition: color 0.18s ease !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  display: inline-block !important;
  border: none !important;
  padding: 2px 0 !important;
}

.footer .footer-links .text-wrapper,
.footer .footer-links a span {
  color: var(--text-gray, #475462) !important;
  transition: color 0.18s ease !important;
}

.footer .footer-links .text a:hover,
.footer .flexcontainer-links .text a:hover,
.footer .flexcontainer-2 .text a:hover,
.footer .flexcontainer-3 .text a:hover,
.footer .flexcontainer-4 .text a:hover,
.footer .footer-links a:hover,
.footer .footer-links a:hover .text-wrapper,
.footer .footer-links a:hover span,
.footer ul.menu .menu-item a:hover,
.footer .footer-menu-list .menu-item a:hover,
.footer .menu-item a:hover {
  color: var(--red, #ff5a5f) !important;
}

/* ==========================================================================
   Copyright Row
   ========================================================================== */
.footer .copyright-container,
.footer .copyright {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 30px auto 0 auto !important;
  padding-top: 0 !important;
  border-top: none !important;
  box-sizing: border-box !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}

.footer .copyright .p,
.footer .copyright p,
.footer .copyright-container p {
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  color: var(--text-light, #9198a1) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer .copyright .span,
.footer .copyright span {
  color: var(--text-light, #9198a1) !important;
}

.footer .copyright a {
  color: var(--text-gray, #475462) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.footer .copyright a:hover,
.footer .copyright a:hover span {
  color: var(--red, #ff5a5f) !important;
}

/* ==========================================================================
   Tablet Responsive (< 1024px)
   ========================================================================== */
@media (max-width: 1024px) {
  footer.footer,
  .footer,
  .footer.wp-block-group,
  .footer.wp-block-group.alignfull,
  .wp-block-group.footer {
    padding: 60px 30px 30px !important;
  }

  .footer .footer-inner,
  .footer .card-global-payroll {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 36px !important;
  }

  .footer .footer-col-brand,
  .footer .US-UK {
    width: 100% !important;
    max-width: 100% !important;
    grid-column: span 2 !important;
  }
}

/* ==========================================================================
   Mobile Responsive (< 768px) with Burger-Style Accordion
   ========================================================================== */
@media (max-width: 768px) {
  footer.footer,
  .footer,
  .footer.wp-block-group,
  .footer.wp-block-group.alignfull,
  .wp-block-group.footer {
    padding: 36px 16px 24px !important;
  }

  .footer .footer-inner,
  .footer .card-global-payroll {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Brand Column */
  .footer .footer-col-brand,
  .footer .US-UK {
    width: 100% !important;
    max-width: 100% !important;
    flex: unset !important;
    margin-bottom: 0 !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid var(--stroke-dark-10, rgba(10, 27, 46, 0.1)) !important;
    gap: 20px !important;
  }

  .footer .card-US,
  .footer .frame {
    gap: 20px !important;
    width: 100% !important;
  }

  .footer .logo,
  .footer figure.logo,
  .footer .wp-block-image.logo,
  .footer .footer-logo {
    height: 38px !important;
    min-height: 38px !important;
    max-height: 38px !important;
    width: auto !important;
    max-width: 190px !important;
  }

  .footer .logo img,
  .footer figure.logo img,
  .footer .wp-block-image.logo img,
  .footer .custom-logo {
    height: 38px !important;
    max-height: 38px !important;
    width: auto !important;
    max-width: 190px !important;
    object-fit: contain !important;
  }

  .footer .footer-cta-btn,
  .footer .footer-cta-btn .wp-block-button {
    width: 100% !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    text-align: left !important;
  }

  .footer .footer-cta-btn .wp-block-button__link,
  .footer .footer-cta-btn .is-style-red .wp-block-button__link,
  .footer .wp-element-button {
    width: fit-content !important;
    display: inline-flex !important;
    justify-content: flex-start !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  /* Navigation Columns (Accordion Items) */
  .footer .footer-col:not(.footer-col-brand),
  .footer .footer-col-solutions,
  .footer .footer-col-resources,
  .footer .footer-col-company {
    width: 100% !important;
    max-width: 100% !important;
    min-width: unset !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--stroke-dark-10, rgba(10, 27, 46, 0.1)) !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
  }

  .footer .footer-col-widget,
  .footer .widget_nav_menu {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    gap: 0 !important;
  }

  /* Interactive Header Bar */
  .footer .footer-col-title,
  .footer .div-2,
  .footer h3.widgettitle {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 16px 0 !important;
    margin: 0 !important;
    border: none !important;
    cursor: pointer !important;
    user-select: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .footer .footer-heading,
  .footer .text-wrapper-2,
  .footer h3.widgettitle,
  .footer .wp-block-heading.footer-heading {
    font-size: 16px !important;
    line-height: 1.3 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--dark, #0a1b2e) !important;
    text-align: left !important;
  }

  .footer .footer-col-arrow {
    display: flex !important;
  }

  .footer .footer-arrow-icon {
    width: 12px !important;
    height: 8px !important;
  }

  /* Collapsed by default */
  .footer .footer-links,
  .footer .flexcontainer-links,
  .footer .flexcontainer-2,
  .footer .flexcontainer-3,
  .footer .flexcontainer-4,
  .footer .menu-footer-solutions-container,
  .footer .menu-footer-resources-container,
  .footer .menu-footer-company-container,
  .footer [class*="menu-footer-"],
  .footer ul.menu,
  .footer .footer-menu-list {
    display: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    list-style: none !important;
  }

  /* Open / Expanded Accordion */
  .footer .footer-col.is-open .footer-links,
  .footer .footer-col.is-open .flexcontainer-links,
  .footer .footer-col.is-open .flexcontainer-2,
  .footer .footer-col.is-open .flexcontainer-3,
  .footer .footer-col.is-open .flexcontainer-4,
  .footer .footer-col.is-open .menu-footer-solutions-container,
  .footer .footer-col.is-open .menu-footer-resources-container,
  .footer .footer-col.is-open .menu-footer-company-container,
  .footer .footer-col.is-open [class*="menu-footer-"],
  .footer .footer-col.is-open ul.menu,
  .footer .footer-col.is-open .footer-menu-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 4px 0 18px 0 !important;
    animation: footerSlideDown 0.22s ease forwards !important;
  }

  .footer .footer-col.is-open .footer-arrow-icon {
    transform: rotate(180deg) !important;
  }

  .footer .footer-col.is-open .footer-arrow-icon path {
    stroke: var(--red, #ff5a5f) !important;
  }

  .footer .footer-col.is-open .footer-heading,
  .footer .footer-col.is-open h3.widgettitle {
    color: var(--red, #ff5a5f) !important;
  }

  @keyframes footerSlideDown {
    from {
      opacity: 0;
      transform: translateY(-4px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .footer .copyright-container,
  .footer .copyright {
    margin-top: 24px !important;
    padding-top: 0 !important;
    border-top: none !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
}

/* ==========================================================================
   Countries Dropdown / Accordion Section
   ========================================================================== */
.footer .countries-dropdown {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 30px !important;
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 30px auto 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  flex: 0 0 auto !important;
}

.footer .divider,
.footer .countries-dropdown .divider {
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  background-color: var(--stroke-dark-10, rgba(10, 27, 46, 0.1)) !important;
}

.footer .frame-2,
.footer .countries-dropdown-toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 50px !important;
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto !important;
  cursor: pointer !important;
  user-select: none !important;
  -webkit-tap-highlight-color: transparent !important;
}

.footer .countries-dropdown .frame-3 {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 8px !important;
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
  flex-grow: 1 !important;
}

.footer .countries-dropdown .p {
  position: relative !important;
  align-self: stretch !important;
  margin: 0 !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 600 !important;
  color: var(--dark, #0a1b2e) !important;
  font-size: 20px !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
}

.footer .countries-dropdown .text-wrapper-3 {
  position: relative !important;
  align-self: stretch !important;
  margin: 0 !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  color: var(--text-light, #9198a1) !important;
  font-size: 16px !important;
  letter-spacing: 0 !important;
  line-height: 1.6 !important;
}

.footer .countries-dropdown .icon-container,
.editor-styles-wrapper .footer .countries-dropdown .icon-container {
  position: relative !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  border-radius: 0 !important;
  border: none !important;
  outline: none !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  flex-shrink: 0 !important;
  transform: rotate(180deg) !important;
  overflow: visible !important;
}

.footer .countries-dropdown.is-open .icon-container,
.editor-styles-wrapper .footer .countries-dropdown.is-open .icon-container {
  transform: rotate(0deg) !important;
}

.footer .countries-dropdown .icon-path,
.footer .countries-dropdown .icon-container svg,
.editor-styles-wrapper .footer .countries-dropdown .icon-path,
.editor-styles-wrapper .footer .countries-dropdown .icon-container svg {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  max-width: 48px !important;
  max-height: 48px !important;
  display: block !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

.footer .countries-dropdown .icon-path path,
.footer .countries-dropdown .icon-container svg path {
  stroke: var(--red, #ff5a5f) !important;
  stroke-width: 2.5px !important;
}

.footer .countries-dropdown .frame-4,
.footer .countries-dropdown-content {
  display: none !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 20px !important;
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  flex: 0 0 auto !important;
}

.footer .countries-dropdown.is-open .frame-4,
.footer .countries-dropdown.is-open .countries-dropdown-content {
  display: flex !important;
  animation: footerSlideDown 0.25s ease forwards !important;
}

.footer .countries-dropdown .frame-5 {
  display: flex !important;
  align-items: flex-start !important;
  gap: 30px !important;
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  flex: 0 0 auto !important;
}

.footer .countries-dropdown .frame-5 .continent-col,
.footer .countries-dropdown .frame-5 .frame-3 {
  flex: 1 1 calc(33.333% - 20px) !important;
  max-width: calc(33.333% - 20px) !important;
  box-sizing: border-box !important;
}

.footer .countries-dropdown .frame-6 {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  position: relative !important;
  flex: 0 0 auto !important;
  margin-bottom: 4px !important;
}

.footer .countries-dropdown .text-wrapper-4 {
  position: relative !important;
  width: fit-content !important;
  margin: 0 !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 500 !important;
  color: var(--dark, #0a1b2e) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  white-space: nowrap !important;
}

.footer .countries-dropdown .text-wrapper-5 {
  position: relative !important;
  width: fit-content !important;
  margin: 0 !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 500 !important;
  color: var(--text-light, #9198a1) !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  white-space: nowrap !important;
}

.footer .countries-dropdown .text-wrapper-6,
.footer .countries-dropdown .country-links-list,
.editor-styles-wrapper .footer .countries-dropdown .text-wrapper-6,
.editor-styles-wrapper .footer .countries-dropdown .country-links-list {
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  column-gap: 16px !important;
  row-gap: 6px !important;
}

.footer .countries-dropdown .country-link,
.footer .countries-dropdown .text-wrapper-6 a,
.editor-styles-wrapper .footer .countries-dropdown .country-link,
.editor-styles-wrapper .footer .countries-dropdown .text-wrapper-6 a {
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  color: var(--text-light, #9198a1) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  display: inline-block !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer .countries-dropdown .country-link:hover,
.footer .countries-dropdown .text-wrapper-6 a:hover,
.editor-styles-wrapper .footer .countries-dropdown .country-link:hover,
.editor-styles-wrapper .footer .countries-dropdown .text-wrapper-6 a:hover {
  color: var(--red, #ff5a5f) !important;
  text-decoration: underline !important;
}

/* ==========================================================================
   Copyright & Legal Links Row
   ========================================================================== */
.footer .copyright-container,
.footer .copyright {
  display: flex !important;
  height: auto !important;
  min-height: 22px !important;
  align-items: center !important;
  justify-content: space-between !important;
  position: relative !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 30px auto 0 !important;
  box-sizing: border-box !important;
}

.footer .copyright-2 {
  position: relative !important;
  margin: 0 !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  color: var(--text-gray, #475462) !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  line-height: 1.6 !important;
}

.footer .copyright-2 a {
  color: var(--text-gray, #475462) !important;
  text-decoration: none !important;
}

.footer .copyright-2 a:hover {
  color: var(--red, #ff5a5f) !important;
}

.footer .privacy-policy {
  display: inline-flex !important;
  align-items: center !important;
  gap: 24px !important;
  position: relative !important;
  flex: 0 0 auto !important;
}

.footer .privacy-policy .text-wrapper-4,
.footer .privacy-policy .text-wrapper-7,
.footer .privacy-policy a {
  position: relative !important;
  width: fit-content !important;
  margin: 0 !important;
  font-family: var(--font-main, "Poppins", sans-serif) !important;
  font-weight: 400 !important;
  color: var(--text-gray, #475462) !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  line-height: 1.6 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.footer .privacy-policy a:hover {
  color: var(--red, #ff5a5f) !important;
}

/* ==========================================================================
   Mobile Responsive Rules for Countries Dropdown
   ========================================================================== */
@media (max-width: 991px) {
  .footer .countries-dropdown {
    margin-top: 24px !important;
    gap: 20px !important;
  }

  .footer .countries-dropdown .frame-2 {
    gap: 16px !important;
  }

  .footer .countries-dropdown .p {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }

  .footer .countries-dropdown .text-wrapper-3 {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .footer .countries-dropdown .frame-4 {
    gap: 20px !important;
  }

  .footer .countries-dropdown .frame-5 {
    flex-direction: column !important;
    gap: 20px !important;
  }

  .footer .countries-dropdown .frame-5 .continent-col,
  .footer .countries-dropdown .frame-5 .frame-3 {
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }

  .footer .copyright-container,
  .footer .copyright {
    margin-top: 24px !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  .footer .copyright-2 {
    width: 100% !important;
  }

  .footer .privacy-policy {
    gap: 20px !important;
  }
}

