/* Shared responsive reCAPTCHA v2 (checkbox widget ≈ 304×78px).
   Prevents fixed-width iframe from widening narrow layouts. */

.vyh-recaptcha-wrap {
  width: 100%;
  max-width: 304px;
  margin: 14px auto;
  min-width: 0;
  overflow: hidden;
  display: flex;
  justify-content: center;
}

.vyh-recaptcha-wrap .g-recaptcha {
  flex-shrink: 0;
}

@media (max-width: 420px) {
  .vyh-recaptcha-wrap {
    --vyh-rc-scale: min(1, calc((100vw - 2rem) / 304));
    width: calc(304px * var(--vyh-rc-scale));
    max-width: calc(100vw - 2rem);
    height: calc(78px * var(--vyh-rc-scale));
  }

  .vyh-recaptcha-wrap .g-recaptcha {
    transform: scale(var(--vyh-rc-scale));
    transform-origin: top center;
    width: 304px;
    height: 78px;
  }
}

@media (max-width: 360px) {
  .vyh-recaptcha-wrap {
    --vyh-rc-scale: min(1, calc((100vw - 1.5rem) / 304));
    max-width: calc(100vw - 1.5rem);
  }
}

/* Form hosts: flex/grid children must be allowed to shrink */
.vyh-home-newsletter,
.vyh-home-newsletter-inner,
.vyh-home-newsletter-form-wrap,
.vyh-home-newsletter-field,
.vyh-home-newsletter-input,
.newsletter-strip,
.newsletter-form,
body.vyhraj-onas .contact-form-card {
  min-width: 0;
  max-width: 100%;
}

.newsletter-strip .row {
  margin-left: 0;
  margin-right: 0;
}

.newsletter-form input[type="email"],
.newsletter-form .form-control.email {
  min-width: 0;
  max-width: 100%;
}
