.service-photo {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  margin: 0 0 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 10px 26px rgba(1, 25, 73, 0.12);
}

.service-photo-note {
  margin: 0 0 20px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

html[data-theme='dark'] .service-photo {
  border-color: rgba(255, 255, 255, 0.14);
}

/* Hero principal de Medellín: el fondo visual lo gestiona hero-video.css. */
.home-ux .service-hub-hero {
  position: relative;
  min-height: clamp(520px, 67vh, 680px);
  display: flex;
  align-items: center;
  padding: clamp(76px, 9vw, 118px) 0 clamp(86px, 10vw, 126px);
  background-color: #07172f !important;
  background-image: none !important;
  color: #fff;
}

.home-ux .service-hub-hero > .container {
  position: relative;
  z-index: 2;
}

.home-ux .service-hub-hero h1 {
  max-width: 800px;
  color: #fff;
  text-shadow:
    0 2px 5px rgba(0, 0, 0, .56),
    0 10px 30px rgba(0, 0, 0, .38);
}

.home-ux .service-hub-hero .eyebrow {
  color: #e9f1ff;
  text-shadow: 0 1px 7px rgba(0, 0, 0, .48);
}

.home-ux .service-hub-hero .lead {
  max-width: 760px;
  color: rgba(255, 255, 255, .95);
  text-shadow:
    0 1px 3px rgba(0, 0, 0, .52),
    0 6px 18px rgba(0, 0, 0, .30);
}

.home-ux .service-hub-hero .service-note {
  max-width: 820px;
  color: #fff;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .42);
  background: rgba(2, 17, 40, .52);
  border-color: rgba(255, 255, 255, .24);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.home-ux .service-hub-hero .button-secondary {
  color: #fff;
  border-color: rgba(255, 255, 255, .65);
  background: rgba(255, 255, 255, .10);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.home-ux .service-hub-hero .button-secondary:hover,
.home-ux .service-hub-hero .button-secondary:focus-visible {
  color: var(--blue);
  background: #fff;
}

@media (max-width: 760px) {
  .home-ux .service-hub-hero {
    min-height: 610px;
    padding: 72px 0 88px;
    background-image: none !important;
  }
}
