/* Scoped to the existing Transpi frontend. No theme files are replaced. */
.main-header .transpi_right_header { gap: 12px; }
.main-header .transpi_right_header > .thm__btn { white-space: nowrap; }
.main-header .hamburger_menu { color: #090f24; }
.main-header .hamburger_menu i { display: none; }
.main-header .hamburger_menu::before {
  content: ''; display: block; width: 20px; height: 2px;
  background: currentColor; box-shadow: 0 -6px currentColor, 0 6px currentColor;
}
.ce-language { position: relative; flex: 0 0 auto; font: inherit; text-align: left; }
.ce-language summary {
  display: flex; align-items: center; justify-content: center; gap: 9px;
  min-width: 68px; min-height: 48px; padding: 10px 12px;
  border: 1px solid #c7c9ce; border-radius: 4px;
  background: #fff; color: #090f24; font-size: 14px; font-weight: 700;
  line-height: 1.3; cursor: pointer; list-style: none;
  transition: border-color 150ms ease, background-color 150ms ease;
}
.ce-language summary::-webkit-details-marker { display: none; }
.ce-language .ce-language-flag { display: inline-block; width: 24px; height: 16px; object-fit: cover; vertical-align: middle; border-radius: 1px; margin-right: 5px; }
.ce-language summary .ce-language-flag { margin: 0; }
.ce-language summary svg { transition: transform 180ms ease-out; }
.ce-language[open] summary { border-color: #9e2936; background: #fff7f7; }
.ce-language[open] summary svg { transform: rotate(180deg); }
.ce-language-list {
  position: absolute; z-index: 10010; right: 0; top: calc(100% + 8px);
  width: max-content; min-width: 176px; max-width: min(280px, 90vw);
  margin: 0 !important; padding: 6px !important; list-style: none !important;
  border-radius: 6px; background: #fff; color: #090f24;
  box-shadow: 0 8px 24px rgb(9 15 36 / 18%);
}
.ce-language-list li { list-style: none; padding: 0; margin: 0; }
.ce-language-list a, .ce-language-list span {
  display: block; min-height: 44px; padding: 11px 12px;
  color: #090f24; font-size: 15px; font-weight: 500; line-height: 1.5;
  text-transform: none; border-radius: 3px; text-decoration: none;
}
.ce-language-list a[aria-current] { background: #f8eded; color: #852532; font-weight: 700; }
.ce-language-list small { display: block; font-size: 12px; color: #5d626c; }
.ce-language-list [aria-disabled] { color: #5d626c; }
.ce-language summary:focus-visible, .ce-language a:focus-visible,
.main-header a:focus-visible, .hamburger_menu:focus-visible,
.wpcf7-form :is(input,select,textarea,button):focus-visible {
  outline: 3px solid #9e2936; outline-offset: 3px;
}
.main-header .thm__btn, .wpcf7-submit {
  transition: background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}
@media (hover: hover) {
  .ce-language summary:hover { border-color: #9e2936; }
  .ce-language-list a:hover { background: #f8eded; color: #852532; }
}
/* Keep copy immediately readable instead of revealing individual letters on scroll. */
.spilit__enable, .spilit__enable div,
.transpi-splipe-enable, .transpi-splipe-enable div {
  opacity: 1 !important; visibility: visible !important;
  transform: none !important;
}
.wow { animation-duration: 350ms !important; animation-delay: 0ms !important; }
@media (max-width: 1399px) {
  .main-header .transpi_menu { display: none; }
  .main-header .hamburger_menu { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
}
@media (max-width: 767px) {
  .main-header .header__top-main-wrap-inner { flex-wrap: wrap; gap: 10px; padding-block: 12px; }
  .main-header .transpi_logo { flex: 0 1 128px; }
  .main-header .transpi_logo img { max-width: 128px; height: auto; }
  .main-header .transpi_right_header { flex-wrap: wrap; gap: 8px; margin-left: auto; }
  .main-header .transpi_right_header > .thm__btn { display: block !important; padding: 10px; min-height: 44px; font-size: 13px; line-height: 24px; }
  .ce-language summary { min-height: 44px; min-width: 60px; padding-inline: 8px; }
  .wpcf7-form :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { max-width: 100%; min-height: 48px; font-size: 16px; }
  .wpcf7-form .tp-select, .wpcf7-form .wc-select { min-width: 0; max-width: 100%; }
  .wpcf7-form select { width: 100%; text-overflow: ellipsis; }
  .main-slider .main-slider-content { padding: 56px 0 72px; }
  .wow { animation: none !important; visibility: visible !important; }
}
@media (max-width: 479px) {
  .main-header .transpi_right_header { flex-basis: 100%; justify-content: flex-end; }
  .main-header .transpi_right_header > .thm__btn { margin-right: auto; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .wow, .transpi_animation-img, .elementor-animation-float { animation: none !important; transform: none !important; visibility: visible !important; }
  .ce-language summary svg { transition: none; }
  .main-slider .swiper-wrapper, .main-slider .swiper-slide { transition-duration: 0ms !important; }
}
