
/* Amaya static readiness fixes */
html, body { overflow-x: hidden; }

/* Keep hero text from spilling into media columns on Elementor exports. */
.elementor .elementor-heading-title,
.elementor .elementor-widget-text-editor,
.elementor .elementor-button-text { overflow-wrap: anywhere; }

/* Isla Mujeres hero: transparent cutout image, no white rectangle, stable text column. */
.elementor-7585 .elementor-element.elementor-element-06ed747,
.elementor-7585 .elementor-element.elementor-element-37dae0d { background-color: #102e4a !important; overflow: hidden; }
.elementor-7585 .elementor-element.elementor-element-6f17e1f { margin-right: 0 !important; max-width: 42vw; flex: 0 0 42vw; z-index: 2; }
.elementor-7585 .elementor-element.elementor-element-2ea86ba .elementor-heading-title { max-width: 11.5em; font-size: clamp(46px, 4.1vw, 76px) !important; line-height: .96 !important; }
.elementor-7585 .elementor-element.elementor-element-8c5460c { max-width: 680px; }
.elementor-7585 .elementor-element.elementor-element-ecd8c5d { flex: 1 1 58vw; overflow: visible; background-color: #102e4a !important; }
.elementor-7585 .elementor-element.elementor-element-f138d5a img,
.elementor-7585 .elementor-element.elementor-element-4439fc4 img { background: transparent !important; display: block; width: min(62vw, 1040px) !important; max-width: none !important; height: auto !important; margin-left: -5vw; }

/* Homepage hero: use the correct desktop/mobile image behavior and avoid bad cropping while resizing. */
.home .elementor-widget-image img[src*="Amaya-desk-2.5"],
body:not(.elementor-page-7585) .elementor-widget-image img[src*="Amaya-desk-2.5"] { object-fit: cover; max-width: 100%; height: auto; }
.home .elementor-widget-image img[src*="amaya-mobil-2.9"],
body:not(.elementor-page-7585) .elementor-widget-image img[src*="amaya-mobil-2.9"] { object-fit: cover; max-width: 100%; height: auto; }

/* Product FAQ: remove stray review/avatar image near More Questions sections. */
.single-product .elementor-widget-image img[src*="66-150x150"],
.single-product .elementor-widget-image img[src*="Bildschirmfoto-2025-11-23-um-12.19.36-150x150"],
.single-product .elementor-widget-image img[src*="Bildschirmfoto-2025-11-23-um-12.21.39-150x150"],
.single-product .elementor-widget-image img[src*="Bildschirmfoto-2025-11-28-um-18.33.53-150x150"] { display: none !important; }

@media (max-width: 1024px) {
  .elementor-7585 .elementor-element.elementor-element-37dae0d { flex-direction: column !important; }
  .elementor-7585 .elementor-element.elementor-element-6f17e1f { max-width: 100%; flex-basis: auto; padding-left: 32px !important; padding-right: 24px !important; }
  .elementor-7585 .elementor-element.elementor-element-2ea86ba .elementor-heading-title { font-size: clamp(44px, 10vw, 72px) !important; max-width: 9em; }
  .elementor-7585 .elementor-element.elementor-element-f138d5a img,
  .elementor-7585 .elementor-element.elementor-element-4439fc4 img { width: 100% !important; margin-left: 0; }
}
@media (max-width: 640px) {
  .elementor-7585 .elementor-element.elementor-element-06ed747 { padding-top: 92px !important; }
  .elementor-7585 .elementor-element.elementor-element-6f17e1f { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-7585 .elementor-element.elementor-element-2ea86ba .elementor-heading-title { font-size: clamp(38px, 12vw, 52px) !important; }
}


/* Mobile homepage hero text fit. */
@media (max-width: 640px) {
  body.home h1.elementor-heading-title,
  body.elementor-page-7188 h1.elementor-heading-title,
  body:not(.elementor-page-7585) .elementor-widget-heading h1.elementor-heading-title {
    font-size: clamp(34px, 10.5vw, 44px) !important;
    line-height: .96 !important;
    max-width: calc(100vw - 40px) !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  body.home .elementor-widget-text-editor,
  body.elementor-page-7188 .elementor-widget-text-editor {
    max-width: calc(100vw - 40px) !important;
  }
}

/* Homepage mobile has a separate Elementor hero. Keep its text inside the viewport. */
@media (max-width: 640px) {
  .elementor-3738 .elementor-element.elementor-element-45ad815,
  .elementor-3738 .elementor-element.elementor-element-45ad815 > .e-con-inner,
  .elementor-3738 .elementor-element.elementor-element-800cc42 {
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  .elementor-3738 .elementor-element.elementor-element-800cc42 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .elementor-3738 .elementor-element.elementor-element-a4d5333 .elementor-heading-title {
    font-size: clamp(30px, 9.1vw, 36px) !important;
    line-height: 1 !important;
    max-width: 330px !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  .elementor-3738 .elementor-element.elementor-element-b7a297d,
  .elementor-3738 .elementor-element.elementor-element-b7a297d p {
    max-width: 340px !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
  }
  .elementor-3738 .elementor-element.elementor-element-f382b31 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
    max-width: 340px !important;
  }
  .elementor-3738 .elementor-element.elementor-element-f382b31 .elementor-button {
    width: 100% !important;
    min-height: 44px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  .elementor-3738 .elementor-element.elementor-element-f382b31 .elementor-button-text {
    font-size: 11px !important;
    white-space: normal !important;
  }
}
@media (min-width: 641px) and (max-width: 1024px) {
  body.home h1.elementor-heading-title,
  body.elementor-page-7188 h1.elementor-heading-title {
    font-size: clamp(44px, 7vw, 64px) !important;
    max-width: 10em !important;
  }
}
