.opportunity-switzerland-page {
  background-color: #f7f9fc;
  color: #191c1e;
}

.opportunity-switzerland-page .dest-hero {
  min-height: min(660px, 78vh);
  display: flex;
  align-items: flex-end;
}

.opportunity-switzerland-page .dest-hero-title {
  max-width: 13ch;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

.opportunity-switzerland-page .dest-hero-desc {
  max-width: 44rem;
}

.opp-ch-hero {
  background:
    linear-gradient(135deg, rgba(13, 125, 150, 0.08), rgba(255, 255, 255, 0) 42%),
    var(--color-surface-container-low, #f6f9fc);
}

.opp-ch-stat,
.opp-ch-card,
.opp-ch-price {
  min-height: 100%;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.05);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.opp-ch-stat:hover,
.opp-ch-card:hover {
  border-color: rgba(13, 125, 150, 0.34);
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.08);
  transform: translateY(-2px);
}

.opp-ch-price {
  position: relative;
  overflow: hidden;
}

.opp-ch-price::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(13, 125, 150, 0.28), transparent 48%);
}

.opp-ch-price > * {
  position: relative;
}

.opp-ch-action {
  min-height: 3.25rem;
  line-height: 1.2;
}

.opp-ch-action:focus-visible {
  outline: 3px solid #42d2e7;
  outline-offset: 3px;
}

.opportunity-switzerland-page a:focus-visible {
  outline: 3px solid #42d2e7;
  outline-offset: 3px;
}

.opportunity-switzerland-page .opp-ch-action:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(7, 95, 115, 0.2);
}

.opportunity-switzerland-page .opp-ch-next {
  box-shadow: 0 14px 36px rgba(13, 125, 150, 0.08);
}

.opp-ch-card h4 {
  line-height: 1.25;
}

.opp-ch-card p {
  font-size: 0.82rem;
  line-height: 1.55;
}

@media (max-width: 767px) {
  .opportunity-switzerland-page .dest-hero {
    min-height: 620px;
  }

  .opportunity-switzerland-page .dest-hero-title {
    max-width: 10ch;
    font-size: clamp(2.2rem, 11vw, 3.3rem);
  }

  .opp-ch-card,
  .opp-ch-price {
    border-radius: 1rem;
  }

  .opportunity-switzerland-page .opp-ch-price {
    padding: 1.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .opp-ch-stat,
  .opp-ch-card,
  .opp-ch-action,
  .opp-ch-next {
    transition: none;
  }

  .opp-ch-stat:hover,
  .opp-ch-card:hover {
    transform: none;
  }

  .opportunity-switzerland-page .opp-ch-action:hover {
    transform: none;
  }
}
