.elementor-17396 .elementor-element.elementor-element-60ed98e .elementor-icon-wrapper{text-align:center;}.elementor-17396 .elementor-element.elementor-element-a70d0ff .elementor-icon-wrapper{text-align:center;}.elementor-17396 .elementor-element.elementor-element-346a105 .elementor-icon-wrapper{text-align:center;}.elementor-17396 .elementor-element.elementor-element-6a7e8e1 .elementor-icon-wrapper{text-align:center;}.elementor-17396 .elementor-element.elementor-element-adf669d{--e-image-carousel-slides-to-show:1;}.elementor-17396 .elementor-element.elementor-element-c3a8158{--e-image-carousel-slides-to-show:1;}.elementor-17396 .elementor-element.elementor-element-5a1722e{--e-image-carousel-slides-to-show:1;}/* Start custom CSS *//* =========================================================
   SOCDO - Hero página Proyectos
   ========================================================= */

.projects-hero-section {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;

  min-height: 620px !important;
  padding: 150px 20px 110px 20px !important;

  background-color: #101722 !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/* Overlay oscuro premium - versión más ligera */
.projects-hero-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;

  background:
    linear-gradient(
      90deg,
      rgba(8, 13, 24, 0.74) 0%,
      rgba(8, 13, 24, 0.58) 42%,
      rgba(8, 13, 24, 0.18) 100%
    ),
    linear-gradient(
      180deg,
      rgba(8, 13, 24, 0.16) 0%,
      rgba(8, 13, 24, 0.58) 100%
    ),
    radial-gradient(circle at 18% 18%, rgba(42, 82, 190, 0.20), transparent 34%) !important;
}

/* Textura sutil */
.projects-hero-section::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;

  background:
    linear-gradient(135deg, rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(45deg, rgba(42,82,190,0.045), transparent 44%) !important;
  background-size: 34px 34px, 100% 100% !important;
  opacity: 0.38 !important;
}

.projects-hero-inner,
.projects-hero-content {
  position: relative !important;
  z-index: 3 !important;
}

.projects-hero-inner {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.projects-hero-content {
  max-width: 760px !important;
  margin: 0 !important;
  padding: 0 !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;

  text-align: left !important;
}

/* Línea azul decorativa */
.projects-hero-content::before {
  display: none !important;
}

/* Línea roja inferior */
.projects-hero-content::after {
  display: none !important;
}

/* Eyebrow */
.projects-hero-eyebrow,
.projects-hero-eyebrow .elementor-widget-container,
.projects-hero-eyebrow p {
  width: fit-content !important;
  margin: 0 0 18px 0 !important;
  padding: 8px 14px !important;

  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;

  font-family: Inter, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #FFFFFF !important;
  text-align: left !important;
}

/* Título */
.projects-hero-title,
.projects-hero-title .elementor-widget-container,
.projects-hero-title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;

  font-family: Manrope, sans-serif !important;
  font-size: 56px !important;
  font-weight: 800 !important;
  line-height: 1.06em !important;
  letter-spacing: -0.045em !important;
  color: #FFFFFF !important;
  text-align: left !important;
}

/* Texto */
.projects-hero-text,
.projects-hero-text .elementor-widget-container,
.projects-hero-text p {
  max-width: 680px !important;
  margin: 22px 0 0 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.65em !important;
  color: rgba(255, 255, 255, 0.84) !important;
  text-align: left !important;
}

/* Acciones */
.projects-hero-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  flex-wrap: wrap !important;

  margin-top: 34px !important;
  padding: 0 !important;
}

.projects-hero-actions .elementor-widget,
.projects-hero-actions .elementor-widget-container,
.projects-hero-actions .elementor-button-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

/* Botones base */
.projects-hero-actions .elementor-button {
  min-height: 52px !important;
  min-width: 220px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;

  padding: 0 28px !important;
  border-radius: 8px !important;

  font-family: Inter, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  transition:
    transform 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease,
    color 0.22s ease,
    box-shadow 0.22s ease !important;
}

.projects-hero-actions .elementor-button:hover {
  transform: translateY(-2px) !important;
}

.projects-hero-actions .elementor-button span,
.projects-hero-actions .elementor-button i,
.projects-hero-actions .elementor-button svg {
  color: inherit !important;
  fill: currentColor !important;
}

/* Botón principal */
.projects-hero-primary .elementor-button {
  background: #D71920 !important;
  background-color: #D71920 !important;
  border: 1px solid #D71920 !important;
  color: #FFFFFF !important;
  box-shadow: 0 12px 28px rgba(236, 31, 38, 0.20) !important;
}

.projects-hero-primary .elementor-button:hover {
  background: #C9151C !important;
  background-color: #C9151C !important;
  border-color: #C9151C !important;
  color: #FFFFFF !important;
}

/* Botón secundario */
.projects-hero-secondary .elementor-button {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.58) !important;
  color: #FFFFFF !important;
}

.projects-hero-secondary .elementor-button:hover {
  background: rgba(255, 255, 255, 0.10) !important;
  background-color: rgba(255, 255, 255, 0.10) !important;
  border-color: #FFFFFF !important;
  color: #FFFFFF !important;
}

/* Meta */
.projects-hero-meta,
.projects-hero-meta .elementor-widget-container,
.projects-hero-meta p {
  margin: 26px 0 0 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.5em !important;
  color: rgba(255, 255, 255, 0.66) !important;
  text-align: left !important;
}

/* ==============================
   Tablet
   ============================== */

@media (max-width: 1024px) {
  .projects-hero-section {
    min-height: 560px !important;
    padding: 132px 20px 96px 20px !important;
  }

  .projects-hero-content {
    max-width: 700px !important;
  }

  .projects-hero-title,
  .projects-hero-title .elementor-widget-container,
  .projects-hero-title .elementor-heading-title {
    font-size: 46px !important;
  }

  .projects-hero-text,
  .projects-hero-text .elementor-widget-container,
  .projects-hero-text p {
    font-size: 16px !important;
  }
}

/* ==============================
   Móvil
   ============================== */

@media (max-width: 767px) {
  .projects-hero-section {
    min-height: 620px !important;
    padding: 116px 18px 82px 18px !important;
  }

 .projects-hero-section::before {
  background:
    linear-gradient(
      180deg,
      rgba(8, 13, 24, 0.66) 0%,
      rgba(8, 13, 24, 0.76) 100%
    ),
    radial-gradient(circle at 50% 12%, rgba(42, 82, 190, 0.18), transparent 34%) !important;
}

  .projects-hero-content {
    max-width: 350px !important;
    margin: 0 auto !important;
    align-items: center !important;
    text-align: center !important;
  }

  .projects-hero-content::before,
  .projects-hero-content::after {
    display: none !important;
  }

  .projects-hero-eyebrow,
  .projects-hero-eyebrow .elementor-widget-container,
  .projects-hero-eyebrow p {
    font-size: 11.5px !important;
    padding: 8px 12px !important;
    text-align: center !important;
  }

  .projects-hero-title,
  .projects-hero-title .elementor-widget-container,
  .projects-hero-title .elementor-heading-title {
    font-size: 34px !important;
    line-height: 1.12em !important;
    letter-spacing: -0.03em !important;
    text-align: center !important;
  }

  .projects-hero-text,
  .projects-hero-text .elementor-widget-container,
  .projects-hero-text p {
    margin-top: 18px !important;
    font-size: 15px !important;
    line-height: 1.6em !important;
    text-align: center !important;
  }

  .projects-hero-actions {
    width: 100% !important;
    max-width: 320px !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin-top: 30px !important;
  }

  .projects-hero-actions .elementor-widget-button,
  .projects-hero-actions .elementor-widget {
    width: 100% !important;
  }

  .projects-hero-actions .elementor-button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 50px !important;
  }

  .projects-hero-actions .elementor-button:hover {
    transform: none !important;
  }

  .projects-hero-meta,
  .projects-hero-meta .elementor-widget-container,
  .projects-hero-meta p {
    max-width: 300px !important;
    font-size: 12.5px !important;
    text-align: center !important;
  }
}

/* =========================================================
   SOCDO - Barra resumen / navegación rápida Proyectos
   ========================================================= */

.projects-quickbar-section {
  position: relative !important;
  background: #F5F6F8 !important;
  padding: 0 20px 58px 20px !important;
  overflow: visible !important;
  z-index: 5 !important;
}

.projects-quickbar-inner {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* Tarjeta flotante */
.projects-quickbar-card {
  position: relative !important;
  z-index: 6 !important;

  width: 100% !important;
  margin: -54px auto 0 auto !important;
  padding: 30px 34px !important;

  display: flex !important;
  flex-direction: column !important;
  gap: 22px !important;

  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 20px !important;

  box-shadow: 0 22px 58px rgba(15, 23, 42, 0.12) !important;
}

/* Línea azul superior sutil */
.projects-quickbar-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 34px !important;
  width: 72px !important;
  height: 3px !important;
  border-radius: 0 0 999px 999px !important;
  background: #2A52BE !important;
  pointer-events: none !important;
}

/* =========================================================
   Fila de datos
   ========================================================= */

.projects-quickbar-stats {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.projects-quickbar-item {
  position: relative !important;

  display: grid !important;
  grid-template-columns: auto 1fr !important;
  grid-template-areas:
    "icon label"
    "icon value" !important;
  column-gap: 14px !important;
  row-gap: 3px !important;

  padding: 0 26px !important;
  align-items: center !important;
}

.projects-quickbar-item:first-child {
  padding-left: 0 !important;
}

.projects-quickbar-item:last-child {
  padding-right: 0 !important;
}

.projects-quickbar-item:not(:last-child)::after {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  right: 0 !important;
  width: 1px !important;
  height: calc(100% - 16px) !important;
  background: #E5E7EB !important;
}

/* Icono */
.projects-quickbar-icon,
.projects-quickbar-icon .elementor-widget-container {
  grid-area: icon !important;
  margin: 0 !important;
  padding: 0 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.projects-quickbar-icon i,
.projects-quickbar-icon svg {
  width: 30px !important;
  height: 30px !important;
  font-size: 30px !important;
  color: #2A52BE !important;
  fill: currentColor !important;
}

/* Label */
.projects-quickbar-label,
.projects-quickbar-label .elementor-widget-container,
.projects-quickbar-label p {
  grid-area: label !important;
  margin: 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  line-height: 1.35em !important;
  color: #1E1E1E !important;
}

/* Value */
.projects-quickbar-value,
.projects-quickbar-value .elementor-widget-container,
.projects-quickbar-value p,
.projects-quickbar-value .elementor-heading-title {
  grid-area: value !important;
  margin: 0 !important;
  padding: 0 !important;

  font-family: Manrope, sans-serif !important;
  font-size: 19px !important;
  font-weight: 800 !important;
  line-height: 1.18em !important;
  letter-spacing: -0.02em !important;
  color: #000000 !important;
}

/* =========================================================
   Navegación rápida
   ========================================================= */

.projects-quickbar-nav {
  width: 100% !important;

  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;

  margin: 0 !important;
  padding: 18px 0 0 0 !important;
  border-top: 1px solid #E5E7EB !important;
}

.projects-quickbar-link,
.projects-quickbar-link .elementor-widget-container,
.projects-quickbar-link .elementor-button-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

.projects-quickbar-link .elementor-button {
  min-height: 40px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 0 16px !important;
  border-radius: 999px !important;

  background: #F5F6F8 !important;
  background-color: #F5F6F8 !important;
  border: 1px solid #E5E7EB !important;
  color: #2A52BE !important;

  font-family: Inter, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 750 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-shadow: none !important;

  transition:
    background-color 0.22s ease,
    border-color 0.22s ease,
    color 0.22s ease,
    transform 0.22s ease !important;
}

.projects-quickbar-link .elementor-button:hover {
  transform: translateY(-2px) !important;
  background: #2A52BE !important;
  background-color: #2A52BE !important;
  border-color: #2A52BE !important;
  color: #FFFFFF !important;
}

.projects-quickbar-link .elementor-button span,
.projects-quickbar-link .elementor-button i,
.projects-quickbar-link .elementor-button svg {
  color: inherit !important;
  fill: currentColor !important;
}

/* Link destacado */
.projects-quickbar-link.is-primary .elementor-button {
  background: #EC1F26 !important;
  background-color: #EC1F26 !important;
  border-color: #EC1F26 !important;
  color: #FFFFFF !important;
}

.projects-quickbar-link.is-primary .elementor-button:hover {
  background: #C9151C !important;
  background-color: #C9151C !important;
  border-color: #C9151C !important;
  color: #FFFFFF !important;
}

/* ==============================
   Tablet
   ============================== */

@media (max-width: 1024px) {
  .projects-quickbar-section {
    padding: 0 20px 50px 20px !important;
  }

  .projects-quickbar-card {
    margin-top: -44px !important;
    padding: 28px 28px !important;
    gap: 20px !important;
  }

  .projects-quickbar-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    row-gap: 22px !important;
  }

  .projects-quickbar-item {
    padding: 0 22px !important;
  }

  .projects-quickbar-item:nth-child(2)::after {
    display: none !important;
  }

  .projects-quickbar-item:nth-child(3) {
    padding-left: 0 !important;
  }
}

/* ==============================
   Móvil
   ============================== */

@media (max-width: 767px) {
  .projects-quickbar-section {
    padding: 0 18px 44px 18px !important;
  }

  .projects-quickbar-card {
    margin-top: -38px !important;
    padding: 24px 20px !important;
    border-radius: 18px !important;
    gap: 20px !important;
  }

  .projects-quickbar-card::before {
    left: 20px !important;
    width: 60px !important;
  }

  .projects-quickbar-stats {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .projects-quickbar-item {
    padding: 0 !important;
    grid-template-columns: 32px 1fr !important;
    column-gap: 13px !important;
  }

  .projects-quickbar-item::after {
    display: none !important;
  }

  .projects-quickbar-icon i,
  .projects-quickbar-icon svg {
    width: 26px !important;
    height: 26px !important;
    font-size: 26px !important;
  }

  .projects-quickbar-label,
  .projects-quickbar-label .elementor-widget-container,
  .projects-quickbar-label p {
    font-size: 13px !important;
  }

  .projects-quickbar-value,
  .projects-quickbar-value .elementor-widget-container,
  .projects-quickbar-value p,
  .projects-quickbar-value .elementor-heading-title {
    font-size: 17px !important;
  }

  .projects-quickbar-nav {
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding: 18px 0 2px 0 !important;
    gap: 9px !important;

    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .projects-quickbar-nav::-webkit-scrollbar {
    display: none !important;
  }

  .projects-quickbar-link {
    flex: 0 0 auto !important;
  }

  .projects-quickbar-link .elementor-button {
    min-height: 38px !important;
    padding: 0 14px !important;
    font-size: 13px !important;
  }

  .projects-quickbar-link .elementor-button:hover {
    transform: none !important;
  }
}

/* =========================================================
   SOCDO - Página Proyectos
   Sección vitrina de proyectos disponibles
   ========================================================= */

.projects-showcase-section {
  position: relative !important;
  background: #F5F6F8 !important;
  padding: 88px 20px 104px 20px !important;
  overflow: hidden !important;
}

.projects-showcase-inner {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* Header */
.projects-showcase-header {
  max-width: 820px !important;
  margin: 0 auto 56px auto !important;
  padding: 0 !important;
  text-align: center !important;
}

.projects-showcase-eyebrow,
.projects-showcase-eyebrow .elementor-widget-container,
.projects-showcase-eyebrow p {
  margin: 0 0 12px 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 1.2em !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #2A52BE !important;
  text-align: center !important;
}

.projects-showcase-title,
.projects-showcase-title .elementor-widget-container,
.projects-showcase-title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;

  font-family: Manrope, sans-serif !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  line-height: 1.12em !important;
  letter-spacing: -0.035em !important;
  color: #000000 !important;
  text-align: center !important;
}

.projects-showcase-subtitle,
.projects-showcase-subtitle .elementor-widget-container,
.projects-showcase-subtitle p {
  max-width: 760px !important;
  margin: 16px auto 0 auto !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.65em !important;
  color: #5F6368 !important;
  text-align: center !important;
}

/* Tarjeta principal */
.projects-showcase-card {
  position: relative !important;
  overflow: hidden !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr) !important;
  gap: 0 !important;
  align-items: stretch !important;

  width: 100% !important;
  margin: 0 0 46px 0 !important;
  padding: 0 !important;

  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  border-radius: 24px !important;

  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.09) !important;
}

/* Sutil línea superior */
.projects-showcase-card::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 34px !important;
  width: 72px !important;
  height: 2px !important;
  background: #2A52BE !important;
  z-index: 3 !important;
}

/* Galería */
.projects-showcase-gallery {
  position: relative !important;
  overflow: hidden !important;
  min-height: 470px !important;
  background: #111827 !important;
}

.projects-showcase-gallery,
.projects-showcase-gallery .elementor-widget-container,
.projects-showcase-gallery .elementor-image-carousel-wrapper,
.projects-showcase-gallery .swiper,
.projects-showcase-gallery .swiper-container {
  height: 100% !important;
}

.projects-showcase-gallery img,
.projects-showcase-gallery .swiper-slide img,
.projects-showcase-carousel img {
  width: 100% !important;
  height: 470px !important;
  object-fit: cover !important;
  display: block !important;
}

/* Ajuste de carousel */
.projects-showcase-carousel,
.projects-showcase-carousel .elementor-widget-container {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Flechas */
.projects-showcase-gallery .elementor-swiper-button,
.projects-showcase-gallery .swiper-button-prev,
.projects-showcase-gallery .swiper-button-next {
  width: 42px !important;
  height: 42px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: #2A52BE !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18) !important;
}

.projects-showcase-gallery .elementor-swiper-button i,
.projects-showcase-gallery .elementor-swiper-button svg {
  color: #2A52BE !important;
  fill: #2A52BE !important;
}

/* Dots */
.projects-showcase-gallery .swiper-pagination {
  bottom: 18px !important;
}

.projects-showcase-gallery .swiper-pagination-bullet {
  width: 7px !important;
  height: 7px !important;
  opacity: 1 !important;
  background: rgba(255, 255, 255, 0.72) !important;
}

.projects-showcase-gallery .swiper-pagination-bullet-active {
  width: 22px !important;
  border-radius: 999px !important;
  background: #FFFFFF !important;
}

/* Contenido */
.projects-showcase-content {
  position: relative !important;
  padding: 46px 42px 42px 42px !important;

  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;

  background:
    radial-gradient(circle at 100% 0%, rgba(42, 82, 190, 0.06), transparent 36%),
    #FFFFFF !important;
}

/* Badge */
.projects-showcase-status,
.projects-showcase-status .elementor-widget-container,
.projects-showcase-status p {
  width: fit-content !important;
  margin: 0 0 18px 0 !important;
  padding: 8px 13px !important;

  border-radius: 999px !important;
  background: rgba(42, 82, 190, 0.10) !important;

  font-family: Inter, sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #2A52BE !important;
}

.projects-showcase-status.status-red,
.projects-showcase-status.status-red .elementor-widget-container,
.projects-showcase-status.status-red p {
  background: rgba(236, 31, 38, 0.10) !important;
  color: #EC1F26 !important;
}

/* Título */
.projects-showcase-card-title,
.projects-showcase-card-title .elementor-widget-container,
.projects-showcase-card-title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;

  font-family: Manrope, sans-serif !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  line-height: 1.08em !important;
  letter-spacing: -0.035em !important;
  color: #000000 !important;
}

/* Ubicación */
.projects-showcase-location,
.projects-showcase-location .elementor-widget-container,
.projects-showcase-location p {
  margin: 10px 0 0 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.45em !important;
  color: #2A52BE !important;
}

/* Texto */
.projects-showcase-text,
.projects-showcase-text .elementor-widget-container,
.projects-showcase-text p {
  margin: 18px 0 0 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 400 !important;
  line-height: 1.68em !important;
  color: #5F6368 !important;
}

/* Specs */
.projects-showcase-specs-widget,
.projects-showcase-specs-widget .elementor-widget-container {
  margin: 24px 0 0 0 !important;
  padding: 0 !important;
}

.projects-showcase-specs {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.projects-showcase-specs span {
  display: flex !important;
  align-items: center !important;
  min-height: 42px !important;

  padding: 10px 13px !important;

  border-radius: 10px !important;
  background: #F5F6F8 !important;
  border: 1px solid #E5E7EB !important;

  font-family: Inter, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.25em !important;
  color: #111111 !important;
}

.projects-showcase-specs span:first-child {
  background: rgba(42, 82, 190, 0.08) !important;
  border-color: rgba(42, 82, 190, 0.18) !important;
  color: #2A52BE !important;
}

/* Acciones */
.projects-showcase-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;

  margin: 30px 0 0 0 !important;
  padding: 0 !important;
}

.projects-showcase-actions .elementor-widget,
.projects-showcase-actions .elementor-widget-container,
.projects-showcase-actions .elementor-button-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

.projects-showcase-actions .elementor-button {
  min-height: 48px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  padding: 0 22px !important;
  border-radius: 9px !important;

  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;

  transition:
    transform 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease,
    color 0.22s ease,
    box-shadow 0.22s ease !important;
}

.projects-showcase-actions .elementor-button:hover {
  transform: translateY(-2px) !important;
}

.projects-showcase-primary .elementor-button {
  background: #D71920 !important;
  background-color: #D71920 !important;
  border: 1px solid #D71920 !important;
  color: #FFFFFF !important;
  box-shadow: 0 14px 30px rgba(236, 31, 38, 0.18) !important;
}

.projects-showcase-primary .elementor-button:hover {
  background: #C9151C !important;
  background-color: #C9151C !important;
  border-color: #C9151C !important;
  color: #FFFFFF !important;
}

.projects-showcase-secondary .elementor-button {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid #2A52BE !important;
  color: #2A52BE !important;
  box-shadow: none !important;
}

.projects-showcase-secondary .elementor-button:hover {
  background: #2A52BE !important;
  background-color: #2A52BE !important;
  border-color: #2A52BE !important;
  color: #FFFFFF !important;
}

.projects-showcase-actions .elementor-button span,
.projects-showcase-actions .elementor-button i,
.projects-showcase-actions .elementor-button svg {
  color: inherit !important;
  fill: currentColor !important;
}

/* Nota */
.projects-showcase-note,
.projects-showcase-note .elementor-widget-container,
.projects-showcase-note p {
  max-width: 820px !important;
  margin: 28px auto 0 auto !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  line-height: 1.6em !important;
  color: #5F6368 !important;
  text-align: center !important;
}

/* ==============================
   Tablet
   ============================== */

@media (max-width: 1024px) {
  .projects-showcase-section {
    padding: 76px 20px 88px 20px !important;
  }

  .projects-showcase-header {
    margin-bottom: 46px !important;
  }

  .projects-showcase-title,
  .projects-showcase-title .elementor-widget-container,
  .projects-showcase-title .elementor-heading-title {
    font-size: 38px !important;
  }

  .projects-showcase-card {
    grid-template-columns: 1fr !important;
    margin-bottom: 30px !important;
  }

  .projects-showcase-gallery {
    min-height: 420px !important;
  }

  .projects-showcase-gallery img,
  .projects-showcase-gallery .swiper-slide img,
  .projects-showcase-carousel img {
    height: 420px !important;
  }

  .projects-showcase-content {
    padding: 40px 36px 38px 36px !important;
  }
}

@media (max-width: 1024px) {
  .projects-showcase-card.is-reversed {
    grid-template-columns: 1fr !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-gallery {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-content {
    grid-column: 1 !important;
    grid-row: 2 !important;
  }
}

/* ==============================
   Móvil
   ============================== */

@media (max-width: 767px) {
  .projects-showcase-section {
    padding: 64px 18px 76px 18px !important;
  }

  .projects-showcase-header {
    margin-bottom: 36px !important;
  }

  .projects-showcase-title,
  .projects-showcase-title .elementor-widget-container,
  .projects-showcase-title .elementor-heading-title {
    font-size: 30px !important;
    line-height: 1.16em !important;
    letter-spacing: -0.025em !important;
  }

  .projects-showcase-subtitle,
  .projects-showcase-subtitle .elementor-widget-container,
  .projects-showcase-subtitle p {
    font-size: 15px !important;
    line-height: 1.6em !important;
  }

  .projects-showcase-card {
    border-radius: 20px !important;
    margin-bottom: 26px !important;
  }

  .projects-showcase-card::before {
    left: 24px !important;
    width: 58px !important;
  }

  .projects-showcase-gallery {
    min-height: 290px !important;
  }

  .projects-showcase-gallery img,
  .projects-showcase-gallery .swiper-slide img,
  .projects-showcase-carousel img {
    height: 290px !important;
  }

  .projects-showcase-content {
    padding: 30px 24px 28px 24px !important;
  }

  .projects-showcase-card-title,
  .projects-showcase-card-title .elementor-widget-container,
  .projects-showcase-card-title .elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.12em !important;
  }

  .projects-showcase-specs {
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  .projects-showcase-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 11px !important;
  }

  .projects-showcase-actions .elementor-widget,
  .projects-showcase-actions .elementor-widget-button,
  .projects-showcase-actions .elementor-button-wrapper,
  .projects-showcase-actions .elementor-button {
    width: 100% !important;
  }

  .projects-showcase-actions .elementor-button:hover {
    transform: none !important;
  }

  .projects-showcase-gallery .elementor-swiper-button,
  .projects-showcase-gallery .swiper-button-prev,
  .projects-showcase-gallery .swiper-button-next {
    width: 36px !important;
    height: 36px !important;
  }

  .projects-showcase-note,
  .projects-showcase-note .elementor-widget-container,
  .projects-showcase-note p {
    font-size: 13px !important;
  }
}

/* Tarjeta invertida: contenido izquierda / galería derecha */
.projects-showcase-card.is-reversed {
  grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.15fr) !important;
}

.projects-showcase-card.is-reversed .projects-showcase-content {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.projects-showcase-card.is-reversed .projects-showcase-gallery {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

.projects-showcase-card:last-of-type {
  margin-bottom: 0 !important;
}

/* =========================================================
   SOCDO - CTA final página Proyectos
   ========================================================= */

.projects-final-cta-section {
  position: relative !important;
  background: #F5F6F8 !important;
  padding: 16px 20px 104px 20px !important;
  overflow: hidden !important;
}

.projects-final-cta-inner {
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.projects-final-cta-card {
  position: relative !important;
  overflow: hidden !important;

  width: 100% !important;
  padding: 56px 58px !important;

  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr) !important;
  gap: 44px !important;
  align-items: center !important;

  border-radius: 24px !important;

  background:
    radial-gradient(circle at 12% 16%, rgba(42, 82, 190, 0.32), transparent 34%),
    radial-gradient(circle at 92% 18%, rgba(236, 31, 38, 0.14), transparent 28%),
    linear-gradient(135deg, #101722 0%, #151B26 56%, #0F1115 100%) !important;

  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 28px 76px rgba(15, 23, 42, 0.18) !important;
}

/* Textura sutil */
.projects-final-cta-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;

  background:
    linear-gradient(135deg, rgba(255,255,255,0.035) 1px, transparent 1px),
    linear-gradient(45deg, rgba(42,82,190,0.045), transparent 44%) !important;
  background-size: 34px 34px, 100% 100% !important;
  opacity: 0.42 !important;
}

/* Línea roja decorativa */
.projects-final-cta-card::after {
  content: "" !important;
  position: absolute !important;
  right: -44px !important;
  bottom: 38px !important;
  width: 150px !important;
  height: 2px !important;
  background: #EC1F26 !important;
  transform: rotate(-45deg) !important;
  transform-origin: center !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.projects-final-cta-content,
.projects-final-cta-info {
  position: relative !important;
  z-index: 3 !important;
}

/* Columna izquierda */
.projects-final-cta-content {
  max-width: 660px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Eyebrow */
.projects-final-cta-eyebrow,
.projects-final-cta-eyebrow .elementor-widget-container,
.projects-final-cta-eyebrow p {
  margin: 0 0 16px 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 1.2em !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #EC1F26 !important;
}

/* Título */
.projects-final-cta-title,
.projects-final-cta-title .elementor-widget-container,
.projects-final-cta-title .elementor-heading-title {
  margin: 0 !important;
  padding: 0 !important;

  font-family: Manrope, sans-serif !important;
  font-size: 44px !important;
  font-weight: 800 !important;
  line-height: 1.08em !important;
  letter-spacing: -0.035em !important;
  color: #FFFFFF !important;
}

/* Texto */
.projects-final-cta-text,
.projects-final-cta-text .elementor-widget-container,
.projects-final-cta-text p {
  max-width: 620px !important;
  margin: 20px 0 0 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.68em !important;
  color: rgba(255, 255, 255, 0.80) !important;
}

/* Acciones */
.projects-final-cta-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 14px !important;

  margin: 34px 0 0 0 !important;
  padding: 0 !important;
}

.projects-final-cta-actions .elementor-widget,
.projects-final-cta-actions .elementor-widget-container,
.projects-final-cta-actions .elementor-button-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

.projects-final-cta-actions .elementor-button {
  min-height: 52px !important;
  min-width: 220px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;

  padding: 0 28px !important;
  border-radius: 9px !important;

  font-family: Inter, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  transition:
    transform 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease,
    color 0.22s ease,
    box-shadow 0.22s ease !important;
}

.projects-final-cta-actions .elementor-button:hover {
  transform: translateY(-2px) !important;
}

.projects-final-cta-actions .elementor-button span,
.projects-final-cta-actions .elementor-button i,
.projects-final-cta-actions .elementor-button svg {
  color: inherit !important;
  fill: currentColor !important;
}

/* Botón principal */
.projects-final-cta-primary .elementor-button {
  background: #D71920 !important;
  background-color: #D71920 !important;
  border: 1px solid #D71920 !important;
  color: #FFFFFF !important;
  box-shadow: 0 14px 32px rgba(236, 31, 38, 0.22) !important;
}

.projects-final-cta-primary .elementor-button:hover {
  background: #C9151C !important;
  background-color: #C9151C !important;
  border-color: #C9151C !important;
  color: #FFFFFF !important;
}

/* Botón secundario */
.projects-final-cta-secondary .elementor-button {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.58) !important;
  color: #FFFFFF !important;
  box-shadow: none !important;
}

.projects-final-cta-secondary .elementor-button:hover {
  background: rgba(255, 255, 255, 0.10) !important;
  background-color: rgba(255, 255, 255, 0.10) !important;
  border-color: #FFFFFF !important;
  color: #FFFFFF !important;
}

/* Columna derecha */
.projects-final-cta-info {
  padding: 28px !important;
  border-radius: 18px !important;

  background: rgba(255, 255, 255, 0.07) !important;
  border: 1px solid rgba(255, 255, 255, 0.11) !important;
}

/* Título de la caja derecha */
.projects-final-cta-info-title,
.projects-final-cta-info-title .elementor-widget-container,
.projects-final-cta-info-title .elementor-heading-title {
  margin: 0 0 20px 0 !important;
  padding: 0 !important;

  font-family: Manrope, sans-serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.2em !important;
  letter-spacing: -0.02em !important;
  color: #FFFFFF !important;
}

/* Lista */
.projects-final-cta-list-widget,
.projects-final-cta-list-widget .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.projects-final-cta-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 13px !important;

  margin: 0 !important;
  padding: 0 !important;
}

.projects-final-cta-list span {
  position: relative !important;
  display: block !important;

  padding: 0 0 0 24px !important;

  font-family: Inter, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.48em !important;
  color: rgba(255, 255, 255, 0.88) !important;
}

.projects-final-cta-list span::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.45em !important;
  color: #EC1F26 !important;
}

/* Nota */
.projects-final-cta-note,
.projects-final-cta-note .elementor-widget-container,
.projects-final-cta-note p {
  margin: 22px 0 0 0 !important;
  padding: 0 !important;

  font-family: Inter, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  line-height: 1.55em !important;
  color: rgba(255, 255, 255, 0.56) !important;
}

/* ==============================
   Tablet
   ============================== */

@media (max-width: 1024px) {
  .projects-final-cta-section {
    padding: 10px 20px 88px 20px !important;
  }

  .projects-final-cta-card {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    padding: 48px 42px !important;
  }

  .projects-final-cta-content {
    max-width: 100% !important;
  }

  .projects-final-cta-title,
  .projects-final-cta-title .elementor-widget-container,
  .projects-final-cta-title .elementor-heading-title {
    font-size: 38px !important;
  }
}

/* ==============================
   Móvil
   ============================== */

@media (max-width: 767px) {
  .projects-final-cta-section {
    padding: 0 18px 76px 18px !important;
  }

  .projects-final-cta-card {
    padding: 36px 24px !important;
    border-radius: 20px !important;
    gap: 28px !important;
  }

  .projects-final-cta-card::after {
    display: none !important;
  }

  .projects-final-cta-title,
  .projects-final-cta-title .elementor-widget-container,
  .projects-final-cta-title .elementor-heading-title {
    font-size: 30px !important;
    line-height: 1.14em !important;
    letter-spacing: -0.025em !important;
  }

  .projects-final-cta-text,
  .projects-final-cta-text .elementor-widget-container,
  .projects-final-cta-text p {
    font-size: 15px !important;
    line-height: 1.62em !important;
  }

  .projects-final-cta-actions {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    margin-top: 30px !important;
  }

  .projects-final-cta-actions .elementor-widget,
  .projects-final-cta-actions .elementor-widget-button,
  .projects-final-cta-actions .elementor-button-wrapper,
  .projects-final-cta-actions .elementor-button {
    width: 100% !important;
    min-width: 0 !important;
  }

  .projects-final-cta-actions .elementor-button:hover {
    transform: none !important;
  }

  .projects-final-cta-info {
    padding: 24px 20px !important;
    border-radius: 16px !important;
  }

  .projects-final-cta-info-title,
  .projects-final-cta-info-title .elementor-widget-container,
  .projects-final-cta-info-title .elementor-heading-title {
    font-size: 20px !important;
  }

  .projects-final-cta-list span {
    font-size: 14px !important;
  }
}

/* =========================================================
   Ajuste flechas carrusel proyectos
   ========================================================= */

.projects-showcase-gallery .elementor-swiper-button,
.projects-showcase-gallery .swiper-button-prev,
.projects-showcase-gallery .swiper-button-next {
  width: 44px !important;
  height: 44px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  color: #2A52BE !important;

  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18) !important;
  transform: translateY(-50%) !important;
}

/* Limpia desajustes internos del icono */
.projects-showcase-gallery .elementor-swiper-button i,
.projects-showcase-gallery .elementor-swiper-button svg,
.projects-showcase-gallery .swiper-button-prev::after,
.projects-showcase-gallery .swiper-button-next::after {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin: 0 !important;
  padding: 0 !important;

  font-size: 18px !important;
  line-height: 1 !important;
  color: #2A52BE !important;
  fill: #2A52BE !important;
}

/* Posición lateral */
.projects-showcase-gallery .elementor-swiper-button-prev,
.projects-showcase-gallery .swiper-button-prev {
  left: 18px !important;
}

.projects-showcase-gallery .elementor-swiper-button-next,
.projects-showcase-gallery .swiper-button-next {
  right: 18px !important;
}

/* Hover */
.projects-showcase-gallery .elementor-swiper-button:hover,
.projects-showcase-gallery .swiper-button-prev:hover,
.projects-showcase-gallery .swiper-button-next:hover {
  background: #FFFFFF !important;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.24) !important;
}

/* Móvil */
@media (max-width: 767px) {
  .projects-showcase-gallery .elementor-swiper-button,
  .projects-showcase-gallery .swiper-button-prev,
  .projects-showcase-gallery .swiper-button-next {
    width: 38px !important;
    height: 38px !important;
  }

  .projects-showcase-gallery .elementor-swiper-button i,
  .projects-showcase-gallery .elementor-swiper-button svg,
  .projects-showcase-gallery .swiper-button-prev::after,
  .projects-showcase-gallery .swiper-button-next::after {
    font-size: 15px !important;
  }

  .projects-showcase-gallery .elementor-swiper-button-prev,
  .projects-showcase-gallery .swiper-button-prev {
    left: 12px !important;
  }

  .projects-showcase-gallery .elementor-swiper-button-next,
  .projects-showcase-gallery .swiper-button-next {
    right: 12px !important;
  }
}

/* =========================================================
   SOCDO - Corrección responsive tarjeta invertida
   Casas Independientes
   ========================================================= */

/* Asegura comportamiento correcto en desktop */
@media (min-width: 1025px) {
  .projects-showcase-card.is-reversed {
    grid-template-columns: minmax(360px, 0.85fr) minmax(0, 1.15fr) !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-content {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-gallery {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
}

/* Tablet y móvil: todas las tarjetas vuelven a formato vertical */
@media (max-width: 1024px) {
  .projects-showcase-card.is-reversed {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-gallery {
    grid-column: 1 !important;
    grid-row: 1 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-content {
    grid-column: 1 !important;
    grid-row: 2 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-carousel,
  .projects-showcase-card.is-reversed .projects-showcase-carousel .elementor-widget-container,
  .projects-showcase-card.is-reversed .elementor-image-carousel-wrapper,
  .projects-showcase-card.is-reversed .swiper,
  .projects-showcase-card.is-reversed .swiper-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* Ajuste fino móvil */
@media (max-width: 767px) {
  .projects-showcase-card.is-reversed {
    border-radius: 20px !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-gallery {
    min-height: 290px !important;
    height: auto !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-gallery img,
  .projects-showcase-card.is-reversed .projects-showcase-gallery .swiper-slide img,
  .projects-showcase-card.is-reversed .projects-showcase-carousel img {
    width: 100% !important;
    max-width: 100% !important;
    height: 290px !important;
    object-fit: cover !important;
    display: block !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-content {
    padding: 30px 24px 28px 24px !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-status,
  .projects-showcase-card.is-reversed .projects-showcase-status .elementor-widget-container,
  .projects-showcase-card.is-reversed .projects-showcase-status p {
    max-width: 100% !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-card-title,
  .projects-showcase-card.is-reversed .projects-showcase-card-title .elementor-widget-container,
  .projects-showcase-card.is-reversed .projects-showcase-card-title .elementor-heading-title,
  .projects-showcase-card.is-reversed .projects-showcase-location,
  .projects-showcase-card.is-reversed .projects-showcase-location .elementor-widget-container,
  .projects-showcase-card.is-reversed .projects-showcase-location p,
  .projects-showcase-card.is-reversed .projects-showcase-text,
  .projects-showcase-card.is-reversed .projects-showcase-text .elementor-widget-container,
  .projects-showcase-card.is-reversed .projects-showcase-text p {
    width: 100% !important;
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-specs {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 1fr !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-specs span {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .projects-showcase-card.is-reversed .projects-showcase-actions,
  .projects-showcase-card.is-reversed .projects-showcase-actions .elementor-widget,
  .projects-showcase-card.is-reversed .projects-showcase-actions .elementor-button-wrapper,
  .projects-showcase-card.is-reversed .projects-showcase-actions .elementor-button {
    width: 100% !important;
  }
}/* End custom CSS */