/* The bubble offer and real performance proof share the first screen. */
.bubble-hero { background: #253f67; padding: 48px 24px; text-align: left; }
.bubble-hero-inner { display: grid; grid-template-columns: 1.35fr 1fr; align-items: center; gap: 40px; max-width: 1100px; margin: auto; }
.bubble-hero h1 { font-size: clamp(40px, 5.5vw, 68px); }
.bubble-hero .bubble-area { margin: 0 0 18px; font-size: 17px; color: #ffdc80; }
.bubble-hero .bubble-duration { font-size: 19px; font-weight: 600; }
.bubble-hero .bubble-cities { font-size: 15px; font-weight: 400; line-height: 1.6; }
.bubble-hero .hero-actions { justify-content: flex-start; }
.bubble-hero .service-photo { width: 100%; max-width: 350px; }
.bubble-hero .service-photo img { max-height: 410px; object-fit: cover; }
.bubble-hero .service-photo figcaption { color: #edf1f8; font-size: 13px; line-height: 1.5; }
@media (max-width: 700px) {
  .bubble-hero { padding: 32px 20px; }
  .bubble-hero-inner { grid-template-columns: 1fr; gap: 28px; }
  .bubble-hero .service-photo { max-width: 320px; }
  .bubble-hero .service-photo img { max-height: 280px; object-position: center 42%; }
  .bubble-hero .hero-actions { gap: 12px; }
  .bubble-hero .cta-button { padding: 14px 22px; font-size: 17px; }
}
