.gb-consent {
  position: fixed;
  z-index: 2147483000;
  right: 20px;
  bottom: 20px;
  left: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  max-width: 980px;
  margin: 0 auto;
  padding: 16px 18px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 4px;
  background: rgba(15, 15, 15, .97);
  color: #fff;
  box-shadow: 0 12px 38px rgba(0, 0, 0, .28);
  font: 400 14px/1.5 Arial, sans-serif;
}

.gb-consent a { color: #fff; text-decoration: underline; }
.gb-consent__actions { display: flex; flex: 0 0 auto; gap: 10px; }
.gb-consent button {
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid #fff;
  border-radius: 2px;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font: inherit;
}
.gb-consent .gb-consent__accept { background: #fff; color: #111; }
.gb-consent button:focus-visible { outline: 3px solid #f0c83c; outline-offset: 2px; }
.gb-honeypot { position: absolute !important; left: -10000px !important; opacity: 0 !important; }
.gb-contact-whatsapp { display: inline-flex; vertical-align: middle; }
.gb-contact-whatsapp:focus-visible { outline: 2px solid #35c759; outline-offset: 2px; }

.gb-language {
  position: relative;
  display: flex;
  align-items: center;
  align-self: center;
  flex-shrink: 0;
  margin-left: auto;
  font: inherit;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: .25px;
}
.gb-language[hidden],
.gb-language--empty { display: none; }

.gb-language__button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 190px;
  min-height: 40px;
  padding: 10px 10px 40px;
  border: 0;
  border-top: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  text-align: start;
  transition: all .2s;
}

.gb-language__button:hover,
.gb-language.is-open .gb-language__button {
  background: #00000026;
  border-top-color: #d7ae7a;
  color: #fff;
}

.gb-language__button[aria-disabled="true"] { cursor: default; }
.gb-language__button .gb-language__name {
  display: block;
  white-space: nowrap;
  overflow-wrap: normal;
}
.gb-language__flag { flex: 0 0 auto; font-size: 18px; line-height: 1; }
.gb-language__name {
  display: -webkit-box;
  min-width: 0;
  overflow: hidden;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.gb-language__arrow { flex: 0 0 auto; transition: transform .16s ease; }
.gb-language.is-open .gb-language__arrow { transform: rotate(180deg); }

.gb-language__menu {
  position: absolute;
  z-index: 1000;
  top: 100%;
  inset-inline-end: 0;
  display: none;
  width: max-content;
  min-width: 220px;
  max-width: min(320px, calc(100vw - 32px));
  max-height: min(360px, 60vh);
  margin: 0;
  padding: 10px 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 0;
  border-radius: 0;
  background: #171d27d9;
  box-shadow: 0 8px 50px #0000000d;
  color: #fff;
  scrollbar-color: #d7ae7a #171d27;
  list-style: none;
}

.gb-language.is-open .gb-language__menu:not([hidden]),
.gb-language:not(.is-enhanced):hover .gb-language__menu:not([hidden]),
.gb-language:not(.is-enhanced):focus-within .gb-language__menu:not([hidden]) {
  display: block;
}

.gb-language__item { margin: 0; padding: 0; }
.gb-language__option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 7px 20px;
  border-radius: 0;
  color: #fff;
  line-height: 1.25;
  text-align: start;
  text-decoration: none;
}
.gb-language__option:hover { background: #00000026; color: #d7ae7a; }
.gb-language__button:focus-visible,
.gb-language__option:focus-visible {
  outline: 3px solid #c79b00;
  outline-offset: 2px;
}

[dir="rtl"] .gb-language {
  margin-right: auto;
  margin-left: 0;
  direction: rtl;
}
[dir="rtl"] .gb-language__button,
[dir="rtl"] .gb-language__option { text-align: start; }

[dir="rtl"] [data-gb-ltr],
[dir="rtl"] a[href^="tel:"],
[dir="rtl"] a[href^="mailto:"],
[dir="rtl"] [data-gb-url],
[dir="rtl"] [data-gb-model],
[dir="rtl"] [data-gb-number],
[dir="rtl"] [data-gb-unit] {
  direction: ltr;
  unicode-bidi: isolate;
  text-align: left;
}

@media (max-width: 991px) {
  .gb-language {
    position: absolute;
    z-index: 1001;
    top: 100%;
    inset-inline-end: 0;
    flex-direction: column;
    align-items: stretch;
    align-self: auto;
    width: min(320px, calc(100vw - 32px));
    min-width: 0;
    margin: 4px 0 8px;
    background: #171d27;
    color: #fff;
  }
  .gb-language__button {
    width: 100%;
    max-width: none;
    justify-content: flex-start;
    padding-bottom: 25px;
  }
  .gb-language__menu {
    position: static;
    width: 100%;
    max-width: none;
    max-height: min(300px, 45vh);
    margin-top: 4px;
    box-shadow: none;
  }
}

@media (max-width: 767px) {
  .gb-consent { align-items: stretch; flex-direction: column; gap: 12px; }
  .gb-consent__actions { width: 100%; }
  .gb-consent button { flex: 1; }

  .gb-language {
    position: static;
    width: 100%;
    max-width: 100%;
    background: transparent;
    color: inherit;
  }
  .gb-language__menu { max-height: min(240px, 35vh); }
  .gb-language__button { padding-top: 10px; padding-bottom: 10px; }

  html, body { max-width: 100%; overflow-x: hidden; }
  img, video, iframe { max-width: 100%; height: auto; }
  .w-container { width: 100%; max-width: none; padding-right: 16px; padding-left: 16px; }
  .heading-3, .title-top { overflow-wrap: anywhere; }
  .heading-3 { font-size: clamp(42px, 14vw, 72px); line-height: .95; }
  .text-zw { padding-right: 16px; padding-left: 16px; }

  .contact-details { width: calc(100% - 24px); margin-right: 12px; margin-left: 12px; }
  .div-block-35 { display: block; height: auto !important; min-height: 0; padding: 32px 16px !important; }
  .div-block-36, .div-block-41, .div-block-42 { width: 100% !important; max-width: 100%; }
  .div-block-42 { margin-top: 32px; }
  .div-block-38 { height: auto !important; min-height: 0; padding-bottom: 16px; }
  .grid-25, .grid-23, .grid-22, .grid-26, .grid-21, .lianxi-us {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-flow: row !important;
    width: 100%;
  }
  .grid-22, .grid-23, .grid-25 { gap: 12px; }
  .grid-26 { gap: 16px; }
  .grid-21 { gap: 28px; }
  .grid-25 > *, .grid-23 > *, .grid-22 > *, .grid-26 > * { min-width: 0; width: 100%; }
  .w-input, .w-select, .w-button, textarea { max-width: 100%; font-size: 16px; }
  .textarea { min-height: 150px; }
  .file-upload { max-width: 100%; }
  .w-file-upload-default { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
  .submit-button { min-height: 48px; }

  .whatsapp_link {
    inset: auto 8px 16px auto !important;
    width: 58px !important;
    height: 116px !important;
    margin: 0 !important;
  }
  .whatsapp_link .grid-7 { width: 58px; }
  .product-contact, .link-block-2 { width: 58px !important; height: 58px !important; }
  .gb-contact-whatsapp { min-width: 32px; min-height: 32px; align-items: center; justify-content: center; }

  table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}
