.elementor-457 .elementor-element.elementor-element-8e6cb9f{--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;--padding-top:80px;--padding-bottom:80px;--padding-left:24px;--padding-right:24px;}.elementor-457 .elementor-element.elementor-element-8e6cb9f:not(.elementor-motion-effects-element-type-background), .elementor-457 .elementor-element.elementor-element-8e6cb9f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0a0a0a;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-457 .elementor-element.elementor-element-8e6cb9f{--content-width:1280px;}}/* Start custom CSS */@import url('https://fonts.googleapis.com/css2?family=Varela+Round&display=swap');

/* === SERVICIOS PAGE === */
.md-srv-hero { padding: clamp(3rem,6vh,4rem) 0 clamp(2rem,5vh,2rem); max-width: 860px; }
.md-srv-kicker { display: block; font-size: 0.7rem; letter-spacing: 0.3em; text-transform: uppercase; color: #615fff; font-weight: 700; margin-bottom: 1rem; font-family: 'Varela Round', sans-serif; }
.md-srv-hero-title { font-size: clamp(2.5rem,7vw,5rem); font-weight: 800; line-height: 1; letter-spacing: -0.02em; color: #fff; margin: 0 0 1.5rem; text-transform: uppercase; font-family: 'Varela Round', sans-serif; }
.md-srv-hero-title span { color: #615fff; }
.md-srv-hero-sub { color: rgba(255,255,255,0.6); font-size: clamp(1rem,1.8vw,1.15rem); line-height: 1.8; max-width: 640px; margin: 0; font-family: 'Varela Round', sans-serif; }

.md-srv-list { display: flex; flex-direction: column; gap: clamp(6rem,12vh,10rem); padding: clamp(2rem,5vh,4rem) 0; }

.md-srv-item { display: grid; grid-template-columns: 5fr 7fr; gap: clamp(2rem,6vw,5rem); align-items: center; }
.md-srv-item--reversed { grid-template-columns: 7fr 5fr; }
.md-srv-item--reversed .md-srv-carousel { order: 1; }
.md-srv-item--reversed .md-srv-item__text { order: 2; }

.md-srv-item__text { display: flex; flex-direction: column; gap: 1.25rem; font-family: 'Varela Round', sans-serif; }
.md-srv-num { font-size: 0.75rem; font-weight: 800; letter-spacing: 0.2em; }
.md-srv-title { font-size: clamp(2rem,4vw,3rem); font-weight: 800; letter-spacing: -0.02em; color: #fff; margin: 0; line-height: 1.1; text-transform: uppercase; }
.md-srv-tags { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.md-srv-tag { font-size: 0.65rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; padding: 0.3rem 0.75rem; border-radius: 4px; border: 1px solid rgba(255,255,255,0.15); color: rgba(255,255,255,0.6); }
.md-srv-desc { color: rgba(255,255,255,0.7); line-height: 1.8; font-size: clamp(0.9rem,1.5vw,1rem); margin: 0; }
.md-srv-features { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.6rem; }
.md-srv-feature { display: flex; align-items: center; gap: 0.6rem; font-size: 0.8rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255,255,255,0.5); }
.md-srv-feature svg { color: #615fff; flex-shrink: 0; }

/* === CAROUSEL === */
.md-srv-carousel { position: relative; }
.md-srv-carousel__track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; border-radius: 12px; gap: 0; }
.md-srv-carousel__track::-webkit-scrollbar { display: none; }
.md-srv-img-wrap { flex: 0 0 100%; scroll-snap-align: start; overflow: hidden; border-radius: 12px; aspect-ratio: 4/3; background: #1a1a2e; }
.md-srv-img-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94); }
.md-srv-carousel:hover .md-srv-img-wrap img { transform: scale(1.03); }
.md-srv-carousel__dots { display: flex; justify-content: center; gap: 0.5rem; margin-top: 0.75rem; }
.md-srv-dot { width: 6px; height: 6px; border-radius: 50%; background: rgba(255,255,255,0.2); border: none; cursor: pointer; padding: 0; transition: background 0.25s ease, transform 0.25s ease; }
.md-srv-dot.active { background: #615fff; transform: scale(1.4); }

@media (max-width: 1024px) {
  .md-srv-item,
  .md-srv-item--reversed { grid-template-columns: 1fr; }

  /* texto siempre arriba, carrusel siempre abajo */
  .md-srv-item__text { order: 1 !important; }
  .md-srv-carousel { order: 2 !important; }
}

@media (max-width: 768px) {
  .md-srv-img-wrap { aspect-ratio: 16/9; }
}/* End custom CSS */