.elementor-453 .elementor-element.elementor-element-1bac1da{--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;border-style:solid;--border-style:solid;border-width:01px 0px 0px 0px;--border-top-width:01px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-453 .elementor-element.elementor-element-1bac1da:not(.elementor-motion-effects-element-type-background), .elementor-453 .elementor-element.elementor-element-1bac1da > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#051322;}@media(min-width:768px){.elementor-453 .elementor-element.elementor-element-1bac1da{--content-width:1250px;}}/* Start custom CSS for html, class: .elementor-element-d0245cb *//* --- Core Footer Layout Setup --- */
.sopgates-footer {
  background-color: #051322; /* High-end dark navy matching design background */
  color: #ffffff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  padding: 80px 0 0 0;
  box-sizing: border-box;
}

.sopgates-footer-container {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
  display: grid;
  grid-template-columns: 1.4fr 0.8fr 1.1fr 1.1fr; /* Balanced column distributions */
  gap: 48px;
}

.sopgates-footer-col {
  display: flex;
  flex-direction: column;
}

/* --- EXACT COMPACT LOGO LOCKUP STYLE (image_c2b8db.png) --- */
.sopgates-brand-lockup {
  display: flex;
  align-items: center;
  gap: 14px;
  text-decoration: none;
  margin-bottom: 24px;
}

/* Small, crisp image box matching the reference container style */
.sopgates-logo-emblem-box {
  width: 46px; 
  height: 46px;
  background-color: #ffffff;
  padding: 4px;
  border-radius: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  overflow: hidden;
}

.sopgates-emblem-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Text Stack on Right */
.sopgates-logo-text-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.sopgates-text-main {
  font-family: "Georgia", serif;
  font-size: 22px;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.1;
  letter-spacing: 0.3px;
}

.sopgates-text-sub {
  font-size: 10.5px;
  font-weight: 700;
  color: #cbab5c; /* Gold color matching image text */
  letter-spacing: 1px;
  margin-top: 4px;
}

/* --- Brand Info Description & Socials --- */
.sopgates-footer-desc {
  color: #a4b3c6;
  font-size: 14px;
  line-height: 1.6;
  margin: 0 0 28px 0;
}

.sopgates-footer-socials {
  display: flex;
  gap: 12px;
}

.sopgates-footer-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(164, 179, 198, 0.2);
  border-radius: 4px;
  color: #a4b3c6;
  transition: all 0.2s ease;
}

.sopgates-footer-socials a:hover {
  border-color: #cbab5c;
  color: #cbab5c;
  background-color: rgba(203, 171, 92, 0.05);
}

.sopgates-footer-socials svg {
  width: 16px;
  height: 16px;
}

/* --- Column Header Typographies --- */
.sopgates-footer-heading {
  font-family: "Georgia", serif;
  font-size: 20px;
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 28px 0;
}

/* --- List Links Formatting --- */
.sopgates-footer-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.sopgates-footer-links a {
  color: #a4b3c6;
  text-decoration: none;
  font-size: 14px;
  transition: color 0.2s ease;
}

.sopgates-footer-links a:hover {
  color: #cbab5c;
}

/* --- Contact Info Formatting --- */
.sopgates-footer-contact {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sopgates-footer-contact li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: #a4b3c6;
  font-size: 14px;
  line-height: 1.4;
}

.sopgates-footer-contact a {
  color: #a4b3c6;
  text-decoration: none;
  transition: color 0.2s ease;
}

.sopgates-footer-contact a:hover {
  color: #cbab5c;
}

.contact-icon {
  width: 16px;
  height: 16px;
  color: #cbab5c;
  margin-top: 2px;
  flex-shrink: 0;
}

/* --- Bottom Copyright Bar Area --- */
.sopgates-bottom-bar {
  margin-top: 60px;
  border-top: 1px solid rgba(164, 179, 198, 0.1);
  padding: 24px 0;
}

.sopgates-bottom-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.copyright-text {
  color: #7e8e9f;
  font-size: 13px;
  margin: 0;
}

.bottom-legal-links {
  display: flex;
  gap: 24px;
}

.bottom-legal-links a {
  color: #7e8e9f;
  text-decoration: none;
  font-size: 13px;
  transition: color 0.2s ease;
}

.bottom-legal-links a:hover {
  color: #cbab5c;
}

/* --- Responsive Media Adjustments --- */
@media (max-width: 992px) {
  .sopgates-footer-container {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

@media (max-width: 576px) {
  .sopgates-footer {
    padding-top: 60px;
  }
  
  .sopgates-footer-container {
    grid-template-columns: 1fr;
    gap: 36px;
    padding: 0 24px;
  }
  
  .sopgates-bottom-inner {
    padding: 0 24px;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
  }
}/* End custom CSS */