.image-signpost {
  margin: 2rem 0;
}
.image-signpost__inner {
  display: flex;
  gap: 2rem;
  align-items: center;
}

/* 50/50 columns on desktop */
.image-signpost__image,
.image-signpost__content {
  flex: 1 1 50%;
}

/* Flip order when variation is right */
.image-signpost--right .image-signpost__content { order: 1; }
.image-signpost--right .image-signpost__image   { order: 2; }

/* Default (left) order already matches markup, but keep explicit for clarity */
.image-signpost--left .image-signpost__image   { order: 1; }
.image-signpost--left .image-signpost__content { order: 2; }

/* Make images behave */
.image-signpost__image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}

/* Tidy text */
.image-signpost__content h2 { margin: 0 0 .75rem; }
.image-signpost__description { margin-bottom: 1rem; }

/* Mobile: stack */
@media (max-width: 768px) {
  .image-signpost__inner { flex-direction: column; }
  .image-signpost__image,
  .image-signpost__content { flex-basis: 100%; }
}

/* Target CTA link inside image-signpost */
.image-signpost__cta a {
  display: inline-block;
  background-color: #ec9c29; /* primary blue */
  color: #fff;               /* white text */
  padding: 10px 20px;
  border-radius: 6px;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

/* Hover & focus effects */
.image-signpost__cta a:hover,
.image-signpost__cta a:focus {
  background-color: #ec9c29; /* darker blue */
  transform: translateY(-2px);
}

/* Optional: Active (click) effect */
.image-signpost__cta a:active {
  background-color: #ec9c29;
  transform: translateY(0);
}
