.elementor-21 .elementor-element.elementor-element-c1e40ed{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-f224927 *//* ==========================================================================
   Footer Stylesheet for Lei Maquila Landing Page
   --------------------------------------------------------------------------
   This file contains styles for a comprehensive footer component designed
   to accompany the corresponding HTML markup in `footer.html`. The footer
   employs a dark, modern colour scheme and supports responsive layouts for
   small devices. Colour values are consistent with the site's primary
   palette (shades of blue and charcoal). Adjust variables or override
   classes as needed to suit your branding.
   --------------------------------------------------------------------------
   Author: Generated by ChatGPT
   ========================================================================== */

/* Base container to centralise content */
.footer-descent {
  background: #0f1115; /* deep charcoal background */
  color: #f6f7fb;      /* off‑white text */
  padding: 60px 20px 40px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  font-family: 'Poppins', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* Layout of the main container within the footer */
.footer-descent .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 40px;
  max-width: 1200px;
  margin: 0 auto;
}

/* Generic column styling */
.footer-descent .footer-column {
  flex: 1 1 220px;
  min-width: 200px;
}

/* Brand section */
.footer-descent .footer-brand .logo {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0090df; /* light accent blue */
  margin-bottom: 16px;
  white-space: nowrap;
}
.footer-descent .footer-brand p {
  font-size: 0.9rem;
  color: #9aa3b2; /* muted text */
}

/* Headings within columns */
.footer-descent h4 {
  font-size: 1.1rem;
  color: #0090df;
  margin-bottom: 16px;
}

/* Links and list items */
.footer-descent a {
  color: #9aa3b2;
  text-decoration: none;
  font-size: 0.9rem;
}
.footer-descent a:hover {
  color: #0090df;
}
.footer-descent ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer-descent li {
  margin-bottom: 8px;
}

/* Contact section styling */
.footer-descent .footer-contact p {
  margin: 0 0 8px;
  font-size: 0.9rem;
  color: #9aa3b2;
}

/* Newsletter form */
.footer-descent .newsletter-form {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}
.footer-descent .newsletter-form input[type="email"] {
  padding: 10px 12px;
  border-radius: 6px;
  border: 1px solid #2a2f3b;
  background: #141a24;
  color: #f6f7fb;
  font-size: 0.9rem;
  width: 100%;
}
.footer-descent .newsletter-form input[type="email"]::placeholder {
  color: #6b7280;
}
.footer-descent .newsletter-form button {
  padding: 12px 16px;
  border-radius: 6px;
  border: none;
  background: linear-gradient(90deg, #0090df, #005da7);
  color: #ffffff;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  transition: filter 0.3s ease;
}
.footer-descent .newsletter-form button:hover {
  filter: brightness(1.1);
}

/* Social media icons */
.footer-descent .social-icons {
  display: flex;
  gap: 10px;
  margin-top: 12px;
}
.footer-descent .social-icons a {
  display: inline-flex;
  width: 32px;
  height: 32px;
  background: #141a24;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  color: #0090df;
  transition: background 0.3s, color 0.3s;
}
.footer-descent .social-icons a:hover {
  background: #005da7;
  color: #ffffff;
}

/* Bottom bar with copyright and legal links */
.footer-descent .bottom-bar {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  font-size: 0.8rem;
  color: #9aa3b2;
}

/* Legal links styling */
.footer-descent .legal-links a {
  margin-left: 12px;
  color: #9aa3b2;
  font-size: 0.85rem;
}
.footer-descent .legal-links a:hover {
  color: #0090df;
}

/* Responsive behaviours */
@media (max-width: 768px) {
  .footer-descent .container {
    flex-direction: column;
    gap: 32px;
  }
  .footer-descent .bottom-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .footer-descent .legal-links a {
    margin-left: 0;
    margin-right: 12px;
  }
}/* End custom CSS */