/**
 * Brothers Home Inspection - Footer Branding
 * Footer with beige background and brand colors
 */

/* ===========================
   FOOTER MAIN SECTION - Beige Background
   =========================== */

/* Main footer container with links and info */
.elementor-element-1f39b3f {
  background-color: var(--brand-beige) !important;
  border-color: var(--brand-beige-dark) !important;
}

/* ===========================
   FOOTER TEXT COLORS
   =========================== */

/* Footer headings */
.elementor-element-1f39b3f .elementor-heading-title {
  color: var(--brand-green-dark) !important;
}

/* Footer body text and paragraphs */
.elementor-element-1f39b3f .elementor-text-editor,
.elementor-element-1f39b3f .elementor-text-editor p {
  color: var(--gray-dark) !important;
}

/* Footer links - default state */
.elementor-element-1f39b3f .elementor-icon-list-item a,
.elementor-element-1f39b3f .elementor-icon-list-text {
  color: var(--gray-dark) !important;
  transition: color 0.3s ease !important;
}

/* Footer links - hover state */
.elementor-element-1f39b3f .elementor-icon-list-item a:hover,
.elementor-element-1f39b3f .elementor-icon-list-item:hover .elementor-icon-list-text {
  color: var(--brand-green) !important;
}

/* Footer link icons */
.elementor-element-1f39b3f .elementor-icon-list-icon i {
  color: var(--brand-green) !important;
}

.elementor-element-1f39b3f .elementor-icon-list-icon svg {
  fill: var(--brand-green) !important;
}

/* ===========================
   SOCIAL MEDIA ICONS
   =========================== */

/* Social icons container */
.elementor-element-1f39b3f .elementor-social-icon {
  background-color: var(--brand-beige-light) !important;
  border-color: var(--brand-green) !important;
}

.elementor-element-1f39b3f .elementor-social-icon i {
  color: var(--brand-green) !important;
}

.elementor-element-1f39b3f .elementor-social-icon svg {
  fill: var(--brand-green) !important;
}

/* Social icons hover */
.elementor-element-1f39b3f .elementor-social-icon:hover {
  background-color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
}

.elementor-element-1f39b3f .elementor-social-icon:hover i {
  color: var(--white) !important;
}

.elementor-element-1f39b3f .elementor-social-icon:hover svg {
  fill: var(--white) !important;
}

/* ===========================
   FOOTER BOTTOM SECTION (Contact boxes)
   =========================== */

/* Bottom section with contact icons */
.elementor-element-c2281da {
  background-color: var(--brand-beige-light) !important;
  border-color: var(--brand-beige-dark) !important;
}

/* Icon boxes in bottom section */
.elementor-element-c2281da .jkit-icon-box .icon-box > .icon {
  background-color: var(--brand-beige-very-light) !important;
  border-color: var(--brand-green) !important;
  color: var(--brand-green) !important;
}

.elementor-element-c2281da .jkit-icon-box .icon-box > .icon svg {
  fill: var(--brand-green) !important;
}

/* Icon boxes hover */
.elementor-element-c2281da .jkit-icon-box:hover .icon-box > .icon {
  background-color: var(--brand-green) !important;
  border-color: var(--brand-green) !important;
  color: var(--white) !important;
}

.elementor-element-c2281da .jkit-icon-box:hover .icon-box > .icon svg {
  fill: var(--white) !important;
}

/* Icon box titles and text */
.elementor-element-c2281da .jkit-icon-box .title {
  color: var(--brand-green-dark) !important;
}

.elementor-element-c2281da .jkit-icon-box .icon-box-description {
  color: var(--gray-dark) !important;
}

/* ===========================
   COPYRIGHT SECTION
   =========================== */

/* Copyright bar at very bottom */
.elementor-element-1f35657 {
  background-color: var(--brand-green-dark) !important;
}

/* Copyright text */
.elementor-element-1f35657 .elementor-heading-title,
.elementor-element-1f35657 .elementor-text-editor {
  color: var(--white) !important;
}

/* Add copyright text after contact section */
.elementor-element-c2281da::after {
  content: "© 2025 Brothers Home Inspections LLC. All rights reserved.";
  display: block;
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background-color: var(--brand-green-dark);
  color: var(--white);
  text-align: center;
  padding: 15px 0px;
  font-size: 14px;
  margin-top: 0;
  margin-bottom: 0;
}

/* Remove bottom padding from contact section */
.elementor-element-c2281da {
  padding-top: 10px !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Force all nested elements to have zero bottom spacing */
.elementor-element-c2281da *,
.elementor-element-c2281da .e-con,
.elementor-element-c2281da .e-con-inner,
.elementor-element-c2281da > div,
.elementor-element-c2281da .elementor-element {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Remove padding from inner containers */
.elementor-element-c2281da > .e-con-inner {
  padding-bottom: 0px !important;
  margin-bottom: 0 !important;
}

/* Remove padding from contact info containers */
.elementor-element-c2281da .elementor-widget-container,
.elementor-element-c2281da .jkit-icon-box-wrapper,
.elementor-element-c2281da .jeg-elementor-kit {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Override services page inline styles */
[data-id="c2281da"],
.elementor-element.elementor-element-c2281da {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Reduce spacing of contact icon boxes */
.elementor-element-c2281da .jkit-icon-box {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Target all container types within contact section */
.elementor-element-c2281da .e-con,
.elementor-element-c2281da .elementor-container,
.elementor-element-c2281da .elementor-row {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Target icon wrapper specifically */
.elementor-element-c2281da .jkit-icon-box-wrapper {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Hide any content after the footer contact section */
.elementor-element-c2281da ~ * {
  display: none !important;
}

/* Make sure copyright is visible */
.elementor-element-c2281da::after {
  display: block !important;
}

/* Force remove all spacing after contact section */
.elementor-element-c2281da,
.elementor-element-c2281da > *,
.elementor-element-c2281da .e-con-inner > * {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Ensure footer has no extra spacing at bottom */
footer,
footer > *,
.elementor-119 {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Remove body bottom spacing */
body {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Remove spacing from page wrapper */
#page,
.site {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Force html to have no spacing */
html {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Hide anything that appears after the footer visually */
footer ~ *:not(script):not(link):not(style) {
  display: none !important;
}

/* Target the last visible element in body and remove its spacing */
body > *:last-of-type:not(script):not(style):not(link) {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Remove spacing from #page wrapper */
#page {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
}

/* ===========================
   FOOTER RESPONSIVE ADJUSTMENTS
   =========================== */

@media (max-width: 1024px) {
  .elementor-element-1f39b3f {
    background-color: var(--brand-beige) !important;
  }

  .elementor-element-c2281da {
    background-color: var(--brand-beige-light) !important;
    --padding-bottom: 0px !important;
    --padding-top: 10px !important;
    padding-bottom: 0 !important;
    padding-top: 10px !important;
    margin-bottom: 0 !important;
  }

  /* Override Elementor CSS variables */
  .elementor-119 .elementor-element.elementor-element-c2281da {
    --padding-bottom: 0px !important;
    --padding-top: 10px !important;
    padding-bottom: 0 !important;
    padding-top: 10px !important;
  }

  /* Force remove all spacing in mobile */
  .elementor-element-c2281da > .e-con-inner,
  .elementor-element-c2281da > *,
  .elementor-element-c2281da * {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  body,
  #page,
  .site,
  footer,
  .elementor-119 {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
}

@media (max-width: 767px) {
  .elementor-element-1f39b3f {
    background-color: var(--brand-beige) !important;
  }

  .elementor-element-c2281da {
    background-color: var(--brand-beige-light) !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Ensure copyright has no extra spacing in mobile */
  .elementor-element-c2281da::after {
    padding-bottom: 15px !important;
    margin-bottom: 0 !important;
  }
}
