/* WPForms button styling for form ID 993 */
#wpforms-form-993 .wpforms-submit {
  background: #EE3131 !important;       /* requested red */
  color: #ffffff !important;            /* white text */
  border: none !important;
  padding: 7px 36px !important;        /* vertical = 18px, horizontal = 36px */
  font-size: 18px !important;
  font-weight: 700 !important;
  border-radius: 30px !important;       /* pill shape */
  box-shadow: 0 8px 18px rgba(0,0,0,0.12);
  transition: transform .15s ease, box-shadow .15s ease, background .12s ease;
  display: inline-block;
  text-align: center;
}

/* Hover & active */
#wpforms-form-993 .wpforms-submit:hover {
  background: #d82a2a !important;       /* slightly darker on hover */
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(0,0,0,0.14);
}

/* Focus (keyboard) */
#wpforms-form-993 .wpforms-submit:focus {
  outline: 3px solid rgba(238,49,49,0.18) !important;
  outline-offset: 3px !important;
}

/* Mobile: full width button */
@media (max-width: 767px) {
  #wpforms-form-993 .wpforms-submit {
    width: 100% !important;
    padding: 18px !important; /* keep vertical and horizontal padding balanced on mobile */
  }
}



/* === Contact Form 7 — minimal style overrides ===
   Only: label color, input/textarea borders, submit color, message height
*/

/* Label (field name) color only */
.wpcf7 form label {
  color: #000 !important;
}

/* Input / email / tel / select / textarea borders only */
.wpcf7 form input[type="text"],
.wpcf7 form input[type="email"],
.wpcf7 form input[type="tel"],
.wpcf7 form input[type="number"],
.wpcf7 form select,
.wpcf7 form textarea {
  border: 1px solid #000 !important;
}

/* Target the Contact Form 7 message textarea by name (your-message) and set height */
.wpcf7 form textarea[name="your-message"] {
  height: 100px !important;
  max-height: none !important;
}

/* Submit button color (red #EE3131) */
.wpcf7 form input[type="submit"],
.wpcf7 form button[type="submit"] {
  background-color: #EE3131 !important;
  border-color: #EE3131 !important;
  color: #fff !important;
  /* keep rest of the button styles as-is (no spacing/layout changes) */
}
/* Center the submit button */
.wpcf7 form input[type="submit"],
.wpcf7 form button[type="submit"] {
  display: block;
  margin: 0 auto; /* Centers horizontally */
}
/* import Lato from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');

/* Footer 1 — center logo + tagline */
.footer-col.footer-col-1 { 
  text-align: center;
  font-family: 'Lato', sans-serif !important; /* Lato applied */
  font-weight: 300 !important;
}

/* logo wrapper to center and control spacing */
.footer-logo-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 12px;
}

/* logo size and responsive scaling */
.footer-logo {
  max-width: 170px;
  width: 100%;
  height: auto;
  display: block;
}

/* tagline styling */
.footer-tagline {
  margin: 0;
  color: #f3f4f6;
  font-size: 18px;
  line-height: 1.5;
  max-width: 220px;         /* stops the text from stretching too wide */
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-family: 'Lato', sans-serif !important; /* ensure tagline uses Lato */
  font-weight: 300 !important;                 /* lean weight */
  letter-spacing: 0.2px;
}

/* small screens: smaller logo and text */
@media (max-width: 480px) {
  .footer-logo { max-width: 130px; }
  .footer-tagline { font-size: 17px; max-width: 260px; padding: 0 8px; }
}
/* Import Lato if not already imported */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');

/* Footer 3 — Contact column styling */
.footer-col.footer-col-3.contact-block {
  text-align: right;
  padding-left: 12px;
  padding-right: 12px;
	padding-top: 12px;
  font-family: 'Lato', sans-serif !important;
}

/* Heading styling */
.footer-col.footer-col-3 .footer-heading {
  margin: 0  20px 20px;         /* more gap below heading */
  color: #ffffff;
  font-weight: 700;
  font-size: 25px;            /* bigger heading */
  letter-spacing: 0.3px;
}

/* Contact lines */
.footer-col.footer-col-3 .footer-contact-line {
  margin: 10px 0;              /* equal spacing top & bottom */
  color: #ffffff;
  line-height: 1.6;
  font-size: 18px;
  font-weight: 300;           /* lean look */
  letter-spacing: 0.2px;
}

/* Contact links (phone/email) */
.footer-col.footer-col-3 .footer-contact-link {
  color: #ffffff;
  text-decoration: none;
  font-weight: 400;
}
.footer-col.footer-col-3 .footer-contact-link:hover {
  color: #EE3131;
  text-decoration: underline;
}

/* Mobile responsive */
@media (max-width: 767px) {
  .footer-col.footer-col-3.contact-block {
    text-align: left !important;
    padding-left: 14px;
    padding-right: 14px;
  }
  .footer-col.footer-col-3 .footer-heading { 
    text-align: center; 
    font-size: 25px;          /* slightly smaller on mobile */
  }
}
/* Center the footer columns as a group and give equal spacing between them */
.site-footer .footer-widgets,
.footer-widgets-area,
.site-footer .widgets-wrap {
  max-width: 1200px;         /* keep content constrained in center */
  margin: 0 auto;            /* center the whole group */
  padding: 0 20px;           /* small left/right breathing room */
  display: flex !important;
  justify-content: center !important; /* center the group */
  gap: 60px !important;      /* equal spacing between columns */
  align-items: flex-start;
  box-sizing: border-box;
}

/* Make each footer widget a fixed width block so spacing stays even */
.site-footer .footer-widgets .widget,
.footer-widgets-area .widget,
.site-footer .widgets-wrap .widget {
  flex: 0 0 260px;           /* each column approx 260px wide */
  max-width: 260px;
  box-sizing: border-box;
  padding-left: 6px;
  padding-right: 6px;
}

/* Center the content inside each column so they match visually */
.site-footer .footer-widgets .widget,
.site-footer .footer-widgets .widget * {
  text-align: center !important;
}

/* But keep logo image centered and not stretched */
.site-footer .footer-col-1 .footer-logo,
.site-footer .footer-col-1 img {
  display: block;
  margin: 0 auto;
}

/* If you want the menu column text slightly smaller */
.site-footer .footer-widgets .widget ul,
.site-footer .footer-widgets .widget .menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Contact specifics: keep link colors intact and centered */
.footer-col.footer-col-3 .footer-contact-line,
.footer-col.footer-col-3 .footer-contact-link {
  color: #ffffff !important;
  text-align: center !important;
}

/* Bottom copyright bar keep full width */
.site-footer .site-info, .site-footer .copyright {
  text-align: center;
  padding-top: 18px;
  color: #9aa6b2;
}

/* MOBILE: stack columns and left-align for readability */
@media (max-width: 767px) {
  .site-footer .footer-widgets,
  .footer-widgets-area,
  .site-footer .widgets-wrap {
    flex-direction: column !important;
    gap: 18px !important;
    align-items: stretch;
    padding-left: 16px;
    padding-right: 16px;
  }
  .site-footer .footer-widgets .widget {
    flex: 1 1 auto;
    max-width: none;
    text-align: left !important;
    padding-left: 0;
    padding-right: 0;
  }
  .footer-col.footer-col-1 img { max-width: 140px; }
}
/* Load Lato */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');

/* Target Astra footer menu */
#astra-footer-menu,
#astra-footer-menu .menu-link {
  font-family: 'Lato', sans-serif !important;
  color: #ffffff !important;            /* white text */
}

/* Menu container (remove default list styles) */
#astra-footer-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
}

/* Menu items — spacing, size, weight */
#astra-footer-menu > li {
  margin: 8px 0;                         /* vertical spacing between items */
}

#astra-footer-menu > li > a.menu-link {
  display: inline-block;
  font-size: 18px !important;           /* readable size */
  font-weight: 400 !important;          /* regular weight */
  letter-spacing: 0.2px;
  text-transform: none !important;      /* keep original case */
  text-decoration: none !important;
  color: #ffffff !important;
  padding: 6px 0;                        /* clickable/tap vertical space */
}

/* Hover / focus state */
#astra-footer-menu > li > a.menu-link:hover,
#astra-footer-menu > li > a.menu-link:focus {
  color: #EE3131 !important;            /* accent on hover */
  text-decoration: underline !important;
}

/* If menu currently displays horizontally in footer, force vertical stack */
.astra-footer-vertical-menu,
#astra-footer-menu {
  display: block;
}

/* Align menu on desktop — center within its widget column */
footer .ast-footer-widget-area #astra-footer-menu,
.site-footer .ast-footer-widget-area #astra-footer-menu {
  text-align: center;                    /* center menu in its column */
}

/* MOBILE: readable tap sizes, left or center alignment (choose one) */
@media (max-width: 767px) {
  /* Make each menu link full-width block for larger tap targets */
  #astra-footer-menu > li > a.menu-link {
    display: block !important;
    width: 100% !important;
    padding: 10px 0 !important;
    font-size: 16px !important;
    text-align: center !important;        /* change to 'center' if you prefer centered mobile menu */
  }

  /* Reduce margins on mobile */
  #astra-footer-menu > li { margin: 1px 0; }
}
/* Submenu dropdown background */
ul.sub-menu {
    background-color: #000000 !important; /* black background */
}

/* Submenu link text */
ul.sub-menu li a {
    color: #ffffff !important; /* white text */
}

/* Submenu link hover (optional: gray background + white text) */
ul.sub-menu li a:hover {
    background-color: #333333 !important; /* dark gray on hover */
    color: #ffffff !important;
}
