/* Footer Container */
.footer {
    display: flex;
    flex-direction: column;
    align-items: left;
    padding: 0px;
    background-color: #000; /* Black background */
    color: #fff; /* White text */
    font-family: 'Cormorant Garamond', serif;
}
/* Logo and Tagline */
.brand {
    display: flex;
    flex-direction: column;
    align-items: left;
    margin-bottom: 20px;
}
.logo {
    width: 200px; /* Make logo bigger */
    margin-bottom: 10px;
}
.tagline {
    font-size: 1.7rem; /* Increase tagline size */
    color: #fff; /* Slightly lighter text for tagline */
}
/* Copyright Text */
.copyright {
    font-size: 1.5rem;
    color: #666;
    margin-bottom: 20px;
}
/* Social Media Links */
.social-media {
    display: flex;
    gap: 20px; /* Space between icons */
}
.social-icon img {
    width: 30px; /* Size of social media icon */
    height: 30px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
.social-icon img:hover {
    transform: scale(1.2); /* Slight zoom on hover */
    opacity: 0.8;
}
.footer-bottom-wrap {
    background-color: #000; /* Set background to black */
}
.footer-top-wrap .row > [class*="col-"] {
    display: flex;
    flex: 1;
    justify-content: center;
    text-align: left;
}
.footer-top-wrap .row {
    display: flex;
    justify-content: space-evenly;
    align-items: flex-start;
}
.elementor-widget-spacer {
  display: none; /* Hides the spacer widget */
}
.elementor-section {
  margin: 0 !important; /* Removes any margin from Elementor sections */
  padding: 0 !important; /* Removes any padding from Elementor sections */
}
.elementor-element {
  margin: 0 !important; /* Removes any element-level margins */
  padding: 0 !important; /* Removes any element-level padding */
}
body .reviews-section {
  color: #333;
}
body .reviews-section * {
  color: #333;
}
/* --- REFINED HRZN SOCIAL ICON STYLE --- */
.social-media {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 10px;
}
.social-icon img {
    width: 22px;
    height: 22px;
    filter: invert(100%); /* crisp white icons */
    opacity: 0.85;
    transition: opacity 0.25s ease, transform 0.25s ease;
}
.social-icon img:hover {
    opacity: 1;
    transform: scale(1.08);
}
/* --- tighten gap between tagline and copyright/icons --- */
.brand {
    margin-bottom: 8px;   /* reduce space below logo/tagline */
}
.tagline {
    margin-bottom: 4px;   /* bring copyright closer to tagline */
}
.copyright {
    margin-top: 0;        /* remove extra space above copyright */
    margin-bottom: 10px;  /* small breathing room before icons */
}
.social-media {
    margin-top: 6px;      /* bring icons a little closer to copyright */
}

/* ========================================
   MOBILE HEADER - HIDE MENU & USER ICON
   ======================================== */
@media (max-width: 768px) {
  /* Hide hamburger menu button */
  header#homey_nav_sticky_mobile .btn-mobile-nav.mobile-main-nav {
    display: none;
  }
  
  /* Hide user icon button */
  header#homey_nav_sticky_mobile .btn-mobile-nav.user-mobile-nav {
    display: none;
  }
  
  /* Hide their parent columns for better spacing */
  header#homey_nav_sticky_mobile .col-xs-3 {
    display: none;
  }
  
  /* Center the logo to take full width */
  header#homey_nav_sticky_mobile .col-xs-6 {
    width: 100%;
  }
}

/* ========================================
   MOBILE FOOTER FIX - 2x2 GRID WITH ALIGNMENT
   ======================================== */
@media (max-width: 768px) {
  /* Target Bootstrap-style rows */
  .footer-top-wrap .row,
  .footer-bottom-wrap .row {
    display: flex !important;
    flex-wrap: wrap !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  /* Each column takes 50% width (2 per row) */
  .footer-top-wrap .row > [class*="col-"],
  .footer-bottom-wrap .row > [class*="col-"] {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    margin-bottom: 24px !important;
    padding-left: 0 !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }
  
  /* Also target Elementor if it's being used */
  .footer-top-wrap .elementor-row,
  .footer-bottom-wrap .elementor-row,
  .footer-top-wrap .elementor-container,
  .footer-bottom-wrap .elementor-container {
    display: flex !important;
    flex-wrap: wrap !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  .footer-top-wrap .elementor-column,
  .footer-bottom-wrap .elementor-column,
  .footer-top-wrap [class*="elementor-col-"],
  .footer-bottom-wrap [class*="elementor-col-"] {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    margin-bottom: 24px !important;
    padding-left: 0 !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    text-align: left !important;
    justify-content: flex-start !important;
  }
  
  /* Ensure inner content aligns left */
  .footer-top-wrap .row > [class*="col-"] > *,
  .footer-bottom-wrap .row > [class*="col-"] > *,
  .footer-top-wrap .elementor-column > *,
  .footer-bottom-wrap .elementor-column > * {
    text-align: left !important;
    margin-left: 0 !important;
  }
  
  /* Add padding to footer container */
  .footer-top-wrap,
  .footer-bottom-wrap {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* ========================================
   MOBILE FOOTER - TIGHTEN HEADER SPACING
   ======================================== */
@media (max-width: 768px) {
  /* Reduce space below footer section headers */
  .footer-top-wrap h3,
  .footer-top-wrap h4,
  .footer-top-wrap h5,
  .footer-top-wrap .widget-title,
  .footer-top-wrap .footer-title,
  .footer-bottom-wrap h3,
  .footer-bottom-wrap h4,
  .footer-bottom-wrap h5,
  .footer-bottom-wrap .widget-title,
  .footer-bottom-wrap .footer-title {
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
  }
  
  /* Also target Elementor headings */
  .footer-top-wrap .elementor-widget-heading,
  .footer-bottom-wrap .elementor-widget-heading {
    margin-bottom: 8px !important;
  }
  
  .footer-top-wrap .elementor-widget-heading .elementor-heading-title,
  .footer-bottom-wrap .elementor-widget-heading .elementor-heading-title {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  
  /* Reduce space above the content/links below headers */
  .footer-top-wrap ul,
  .footer-top-wrap .menu,
  .footer-top-wrap .footer-links,
  .footer-top-wrap p,
  .footer-bottom-wrap ul,
  .footer-bottom-wrap .menu,
  .footer-bottom-wrap .footer-links,
  .footer-bottom-wrap p {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  
  /* Elementor text widgets */
  .footer-top-wrap .elementor-widget-text-editor,
  .footer-bottom-wrap .elementor-widget-text-editor {
    margin-top: 0 !important;
  }
}