/*
Theme Name: Consua Child
Theme URI: https://validthemes.net/themeforest/wp/consua/
Template: consua
Author: validthemes
Author URI: https://themeforest.net/user/validthemes/portfolio
Description:  Consua - Business Consulting Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: consua-child
*/
/* =========================
   Home Services (Widget 0211fb4)
   3 cards first row, 4 cards second row
   ========================= */
.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 24px;
}

.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row > [class*="col-"] {
  float: none;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  display: flex;
}

/* Row 1: first 3 items */
.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row > [class*="col-"]:nth-child(-n+3) {
  grid-column: span 4;
}

/* Row 2: next 4 items */
.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row > [class*="col-"]:nth-child(n+4) {
  grid-column: span 3;
}

.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .services-style-two {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .services-style-two:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.1);
}

.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .services-style-two .info {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.home .elementor-element.elementor-element-0211fb4 .services-style-two-area .services-style-two .button {
  margin-top: auto;
}

@media (max-width: 1199.98px) {
  .home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row > [class*="col-"] {
    grid-column: span 1 !important;
  }
}

@media (max-width: 767.98px) {
  .home .elementor-element.elementor-element-0211fb4 .services-style-two-area .row {
    grid-template-columns: 1fr;
  }
}

/* =========================
   Footer One (Template 1040)
   Professional 4-column responsive footer
   ========================= */
.elementor-1040 .gm-pro-footer {
  background: linear-gradient(180deg, #1a1413 0%, #120d0d 100%);
  border-top: 1px solid rgba(223, 29, 22, 0.2);
}

.elementor-1040 .gm-pro-footer .e-con-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 20px;
}

.elementor-1040 .gm-pro-footer > .e-con-inner > .e-con {
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) minmax(180px, 1fr) minmax(180px, 1fr) minmax(240px, 1.15fr);
  column-gap: 42px;
  row-gap: 24px;
  align-items: start;
}

.elementor-1040 .gm-pro-footer > .e-con-inner > .e-con > .gm-footer-col {
  --width: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  gap: 16px;
}

.elementor-1040 .gm-pro-footer .gm-footer-logo img {
  width: 100%;
  max-width: 260px;
  height: auto;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  background: #fff;
  padding: 8px;
}

.elementor-1040 .gm-pro-footer .gm-footer-desc p {
  color: #adb5bf;
  font-size: 14px;
  line-height: 1.75;
  margin: 2px 0 0;
  max-width: 330px;
}

.elementor-1040 .gm-pro-footer .gm-footer-social .elementor-icon {
  background: rgba(223, 29, 22, 0.08);
  border: 1px solid rgba(223, 29, 22, 0.22);
}

.elementor-1040 .gm-pro-footer .gm-footer-social .elementor-icon:hover {
  transform: translateY(-2px);
}

.elementor-1040 .gm-pro-footer .f-item.link .widget-title,
.elementor-1040 .gm-pro-footer .gm-footer-heading .elementor-heading-title {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 10px;
  position: relative;
  padding-left: 44px;
}

.elementor-1040 .gm-pro-footer .f-item.link .widget-title::before,
.elementor-1040 .gm-pro-footer .gm-footer-heading .elementor-heading-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 32px;
  height: 2px;
  background: #df1d16;
  transform: translateY(-50%);
}

.elementor-1040 .gm-pro-footer .f-item.link ul,
.elementor-1040 .gm-pro-footer .gm-footer-contact-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.elementor-1040 .gm-pro-footer .f-item.link ul li {
  margin: 0 0 8px;
}

.elementor-1040 .gm-pro-footer .f-item.link ul li a {
  color: #aeb5bf;
  font-size: 14px;
  line-height: 1.65;
  transition: all 0.25s ease;
}

.elementor-1040 .gm-pro-footer .f-item.link ul li a:hover {
  color: #df1d16;
  padding-left: 6px;
}

.elementor-1040 .gm-pro-footer .gm-footer-contact-list .elementor-icon-list-item {
  align-items: flex-start;
  margin-bottom: 12px;
}

.elementor-1040 .gm-pro-footer .gm-footer-contact-list .elementor-icon-list-icon {
  margin-top: 3px;
}

.elementor-1040 .gm-pro-footer .gm-footer-contact-list .elementor-icon-list-icon i,
.elementor-1040 .gm-pro-footer .gm-footer-contact-list .elementor-icon-list-icon svg {
  color: #df1d16;
  fill: #df1d16;
}

.elementor-1040 .gm-pro-footer .gm-footer-contact-list .elementor-icon-list-text {
  color: #c4cbd4;
  font-size: 14px;
  line-height: 1.7;
}

.elementor-1040 .gm-pro-footer-bottom {
  background: #0d0909;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  margin: 0 !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.elementor-1040 .gm-pro-footer-bottom .footer-bottom {
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-1040 .gm-pro-footer-bottom .footer-bottom .container,
.elementor-1040 .gm-pro-footer-bottom .footer-bottom .row,
.elementor-1040 .gm-pro-footer-bottom .footer-bottom p,
.elementor-1040 .gm-pro-footer-bottom .footer-bottom ul {
  margin-bottom: 0 !important;
}

.elementor-1040 .gm-pro-footer-bottom .footer-bottom p,
.elementor-1040 .gm-pro-footer-bottom .footer-bottom p a,
.elementor-1040 .gm-pro-footer-bottom .footer-bottom ul li a {
  color: #95a0ad;
  font-size: 13px;
}

.elementor-1040 .gm-pro-footer-bottom .footer-bottom p a:hover,
.elementor-1040 .gm-pro-footer-bottom .footer-bottom ul li a:hover {
  color: #df1d16;
}

/* Last footer block should not leave any bottom gap */
body .elementor.elementor-1040 {
  margin-bottom: 0 !important;
}

body .elementor.elementor-1040 + * {
  margin-top: 0 !important;
}

@media (max-width: 1024px) {
  .elementor-1040 .gm-pro-footer > .e-con-inner > .e-con {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
    column-gap: 28px;
    row-gap: 28px;
  }

  .elementor-1040 .gm-pro-footer .e-con-inner {
    padding: 0 18px;
  }

  .elementor-1040 .gm-pro-footer .gm-footer-about,
  .elementor-1040 .gm-pro-footer .gm-footer-links,
  .elementor-1040 .gm-pro-footer .gm-footer-pages,
  .elementor-1040 .gm-pro-footer .gm-footer-contact {
    --width: 100% !important;
    margin-bottom: 0;
  }
}

@media (max-width: 767px) {
  .elementor-1040 .gm-pro-footer {
    padding-top: 56px;
    padding-bottom: 30px;
  }

  .elementor-1040 .gm-pro-footer .e-con-inner {
    padding: 0 14px;
  }

  .elementor-1040 .gm-pro-footer > .e-con-inner > .e-con {
    grid-template-columns: 1fr;
    row-gap: 20px;
  }

  .elementor-1040 .gm-pro-footer .gm-footer-col {
    --width: 100% !important;
    margin-bottom: 8px;
  }

  .elementor-1040 .gm-pro-footer .gm-footer-logo img {
    max-width: 220px;
  }

  .elementor-1040 .gm-pro-footer-bottom .footer-bottom .row {
    row-gap: 8px;
  }

  .elementor-1040 .gm-pro-footer-bottom .footer-bottom .text-end {
    text-align: left !important;
  }
}
