/* Header: reduce vertical whitespace */
.elementor.elementor-7494 .elementor-element-61c9f12b {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

/*
  Responsive tweaks (safe overrides).
  Rollback: disable plugin "Informatica Responsive Tweaks".

  Goals:
  - Desktop: do NOT change typography/menu
  - Tablet: horizontal menu usable
  - Mobile: burger usable
  - Flags: always visible, horizontal, never covering menu
*/

html, body { overflow-x: hidden; }

/* Header layout: stack flags above menu in the right column */
.elementor.elementor-7494 .elementor-element-cca7375 .elementor-widget-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 14px;
}

/* Flags styling (once JS moves it into header) */
.gtranslate_wrapper.ig-gt-in-header {
  position: static !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin-left: auto !important;
  gap: 18px !important;
  white-space: nowrap !important;
  max-width: 100%;
  z-index: auto;
}

.gtranslate_wrapper.ig-gt-in-header a,
.gtranslate_wrapper.ig-gt-in-header span,
.gtranslate_wrapper.ig-gt-in-header img,
.gtranslate_wrapper.ig-gt-in-header div {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Flags: space between flag + language text */
.gtranslate_wrapper.ig-gt-in-header a {
  display: inline-flex !important;
  align-items: center !important;
  flex-direction: row !important;
  column-gap: 4px !important;
}

.gtranslate_wrapper.ig-gt-in-header img {
  margin-right: 0 !important;
  margin-left: 4px !important;
}

.gtranslate_wrapper.ig-gt-in-header a span,
.gtranslate_wrapper.ig-gt-in-header a div {
  letter-spacing: 0;
}


/* If GTranslate renders separate anchors (flag + label), keep them paired */
.gtranslate_wrapper.ig-gt-in-header .ig-gt-item {
  display: inline-flex;
  align-items: center;
  column-gap: 4px;
}

.gtranslate_wrapper.ig-gt-in-header .ig-gt-item img {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Desktop: increase spacing between flags */
@media (min-width: 1025px) {
  .gtranslate_wrapper.ig-gt-in-header {
    gap: 28px !important;
  }
}


/* Tablet/Mobile: push flags higher (more separation from menu) */
@media (max-width: 1024px) {
  .elementor.elementor-7494 .elementor-element-cca7375 .elementor-widget-wrap {
    gap: 18px;
    padding-top: 6px;
  }
  .gtranslate_wrapper.ig-gt-in-header {
    gap: 20px !important;
    transform: none !important;
  }
}

/* Tablet: keep menu horizontal and align a bit left (more room) */
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor.elementor-7494 .elementor-nav-menu--main { display: block !important; }
  .elementor.elementor-7494 .elementor-menu-toggle { display: none !important; }

  /* Align menu with flags area (not too far right) */
  .elementor.elementor-7494 .elementor-nav-menu--main {
    align-self: stretch;
  }

  .elementor.elementor-7494 ul.elementor-nav-menu {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important; /* shift left */
    column-gap: 2px;
    row-gap: 6px;
  }

  .elementor.elementor-7494 .elementor-nav-menu--main .elementor-item {
    font-size: 13px !important;
    padding: 8px 10px !important;
    white-space: nowrap;
  }
}

/* Mobile: burger usable */
@media (max-width: 767px) {
  .elementor.elementor-7494 .elementor-nav-menu--main { display: none !important; }

  .elementor.elementor-7494 .elementor-menu-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 10;
  }

  .elementor.elementor-7494 nav.elementor-nav-menu--dropdown {
    right: 0 !important;
    left: auto !important;
    width: min(360px, 92vw) !important;
  }

  /* Flags: more spacing on mobile */
  .gtranslate_wrapper.ig-gt-in-header {
    gap: 28px !important;
    transform: none !important;
  }
}

/* Desktop: more spacing between menu items (scritte) */
@media (min-width: 1025px) {
  .elementor.elementor-7494 ul.elementor-nav-menu {
    column-gap: 6px !important;
  }
}


/* Services 4-column block (section e359ca8): align on tablet/mobile */
@media (max-width: 1024px) {
  section.elementor-element-e359ca8 .elementor-column {
    width: 50% !important;
  }
  section.elementor-element-e359ca8 .elementor-widget-wrap {
    display: flex;
    flex-direction: column;
    height: 100%;
    align-items: flex-start;
  }
  section.elementor-element-e359ca8 .elementor-widget-text-editor {
    text-align: left;
  }
}

@media (max-width: 767px) {
  section.elementor-element-e359ca8 .elementor-column {
    width: 100% !important;
  }
  section.elementor-element-e359ca8 .elementor-container {
    row-gap: 22px !important;
  }
}


/* Small laptops: keep desktop feel (undo overly small menu fonts) */
@media (min-width: 1025px) and (max-width: 1366px) {
  .elementor.elementor-7494 .elementor-nav-menu--main { display: block !important; }
  .elementor.elementor-7494 .elementor-menu-toggle { display: none !important; }

  .elementor.elementor-7494 ul.elementor-nav-menu {
    justify-content: flex-start !important; /* shift left */
  }

  .elementor.elementor-7494 .elementor-nav-menu--main .elementor-item {
    font-size: 16px !important;
    padding: 10px 12px !important;
  }

  .gtranslate_wrapper.ig-gt-in-header {
    transform: none !important;
  }
}

/* Ensure mobile burger is always clickable */
@media (max-width: 767px) {
  .elementor.elementor-7494 .elementor-menu-toggle {
    pointer-events: auto !important;
  }
}

/* Home: reduce gap above partner carousel */
.home .elementor-element-509d473 {
  margin-bottom: 0 !important;
  padding-bottom: 10px !important;
}

.home .elementor-element-74c3d84 {
  margin-top: 0 !important;
  padding-top: 10px !important;
}

/* Header menu: move it a bit lower */
.elementor.elementor-7494 .elementor-nav-menu--main {
  margin-top: 24px !important;
}

@media (max-width: 767px) {
  .elementor.elementor-7494 .elementor-menu-toggle {
    margin-top: 24px !important;
  }
}



/* IG_STICKY_CLOCK */
.ig-sticky-clock {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9999;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  border: 0;
  box-shadow: none;
  pointer-events: none;
}

.admin-bar .ig-sticky-clock {
  top: 46px;
}

.ig-sticky-clock-face {
  position: relative;
  width: 54px;
  height: 54px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, #ffffff 0%, #f6f6f6 70%, #ececec 100%);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.12);
}

.ig-sticky-clock-face::before {
  content: "";
  position: absolute;
  inset: 7px;
  border-radius: inherit;
  background: repeating-conic-gradient(from -90deg, rgba(0, 0, 0, 0.38) 0deg 1deg, transparent 1deg 6deg);
  opacity: 0.55;
}

.ig-sticky-clock-center {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 99px;
  transform: translate(-50%, -50%);
  background: #111;
}

.ig-sticky-clock-face .ig-hand {
  position: absolute;
  left: 50%;
  top: 50%;
  transform-origin: 50% 100%;
  border-radius: 99px;
}

.ig-sticky-clock-face .ig-hour {
  width: 4px;
  height: 16px;
  background: #111;
  transform: translate(-50%, -100%) rotate(0deg);
}

.ig-sticky-clock-face .ig-min {
  width: 3px;
  height: 22px;
  background: #111;
  transform: translate(-50%, -100%) rotate(0deg);
}

.ig-sticky-clock-face .ig-sec {
  width: 2px;
  height: 23px;
  background: #d21f2b;
  transform: translate(-50%, -100%) rotate(0deg);
}

.ig-sticky-clock-meta {
  display: flex;
  flex-direction: column;
  line-height: 1.05;
}

.ig-sticky-clock-time {
  display: none;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #111;
}

.ig-sticky-clock-date {
  font-size: 14px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.66);
  text-transform: capitalize;
}

@media (max-width: 1024px) {
  .ig-sticky-clock {
    display: none;
  }
}

/* Header: tighten top/bottom spacing so hero starts closer */
.elementor.elementor-7494 .elementor-element-61c9f12b {
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}


/* IG_FORCE_PIN_FLAGS */
.gtranslate_wrapper.ig-gt-in-header {
  position: fixed !important;
  top: 10px !important;
  right: 10px !important;
  left: auto !important;
  z-index: 100000 !important;
}

.gtranslate_wrapper.ig-gt-in-header .ig-gt-item {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  column-gap: 4px !important;
}

.gtranslate_wrapper.ig-gt-in-header .ig-gt-item a {
  display: inline-flex !important;
  align-items: center !important;
}



/* IG_DISABLE_CLOCK */
.ig-sticky-clock {
  display: none !important;
}


/* IG_DATE_BADGE */
.ig-date-badge {
  position: fixed;
  z-index: 100000;
  pointer-events: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #17324d;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.01em;
  text-transform: capitalize;
}

/* Disabled by request */
.ig-date-badge {
  display: none !important;
}

@media (max-width: 1024px) {
  .ig-date-badge { display: none !important; }
}

/* IG_GT_POLISH */
.gtranslate_wrapper.ig-gt-in-header {
  top: 8px !important;
  right: 12px !important;
}

.gtranslate_wrapper.ig-gt-in-header,
.gtranslate_wrapper.ig-gt-in-header * {
  line-height: 1 !important;
  box-sizing: border-box;
}

.gtranslate_wrapper.ig-gt-in-header a {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}

.gtranslate_wrapper.ig-gt-in-header a::before,
.gtranslate_wrapper.ig-gt-in-header a::after,
.gtranslate_wrapper.ig-gt-in-header .ig-gt-item::before,
.gtranslate_wrapper.ig-gt-in-header .ig-gt-item::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
}

.gtranslate_wrapper.ig-gt-in-header .ig-gt-item {
  align-items: center !important;
  column-gap: 5px !important;
}

.gtranslate_wrapper.ig-gt-in-header .ig-gt-item a {
  font-size: 18px !important;
  font-weight: 500 !important;
  color: #1f1f1f !important;
  letter-spacing: 0.01em !important;
}

.gtranslate_wrapper.ig-gt-in-header .ig-gt-item img {
  width: 18px !important;
  height: 12px !important;
  object-fit: cover;
  vertical-align: middle !important;
}

/* IG_DATE_TABLET_GUARD: hide date on touch tablets to avoid logo overlap */
@media (min-width: 768px) and (max-width: 1366px) and (hover: none) and (pointer: coarse) {
  .ig-date-badge {
    display: none !important;
  }
}

/* Contact page refresh (safe, no URL/SEO changes) */
body.page-id-8182 .sidebar-content.fullwidth {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  width: min(99vw, 1700px);
  margin: 0 auto;
}

body.page-id-8182 .inner-wrapper {
  max-width: none;
  width: 100%;
}

body.page-id-8182 .inner {
  width: min(99vw, 1700px) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.page-id-8182 .elementor.elementor-8182 {
  background: linear-gradient(160deg, #f7fbff 0%, #eef6ff 100%);
  border: 1px solid rgba(30, 83, 137, 0.14);
  border-radius: 20px;
  box-shadow: 0 14px 40px rgba(22, 69, 112, 0.12);
  overflow: hidden;
  width: 100%;
}

body.page-id-8182 .elementor.elementor-8182 .elementor-heading-title {
  font-size: clamp(2rem, 4vw, 3rem);
  letter-spacing: -0.02em;
  color: #0f2f4e;
}

body.page-id-8182 .elementor.elementor-8182 .elementor-element-921e960 {
  background: linear-gradient(135deg, rgba(11, 63, 108, 0.92) 0%, rgba(41, 122, 193, 0.88) 100%);
  --min-height: 130px;
  min-height: 130px !important;
  height: 130px !important;
  display: flex;
  align-items: flex-end;
}

body.page-id-8182 .elementor.elementor-8182 .elementor-element-921e960 > .e-con-inner {
  min-height: 130px !important;
  height: 130px !important;
  padding-top: 6px !important;
  padding-bottom: 12px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
}

body.page-id-8182 .elementor.elementor-8182 .elementor-element-921e960 .elementor-heading-title {
  color: #ffffff;
  margin: 0 !important;
  line-height: 1.1 !important;
  font-size: clamp(1.6rem, 3.4vw, 2.3rem) !important;
  transform: translateY(clamp(30px, 4vw, 42px));
}

body.page-id-8182 .elementor.elementor-8182 .elementor-element-921e960 .elementor-widget-heading,
body.page-id-8182 .elementor.elementor-8182 .elementor-element-921e960 .ig-contact-hero-title {
  margin: 0 !important;
  width: 100%;
  text-align: center;
}

body.page-id-8182 .wpforms-container {
  background: #ffffff;
  border: 1px solid rgba(18, 79, 132, 0.14);
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 8px 24px rgba(14, 62, 104, 0.10);
}

/* Keep recaptcha + submit side-by-side on desktop */
body.page-id-8182 form#wpforms-form-8188 {
  display: grid;
  grid-template-columns: minmax(280px, 410px) auto;
  column-gap: 16px;
  row-gap: 12px;
  align-items: end;
}

body.page-id-8182 form#wpforms-form-8188 .wpforms-field-container {
  width: 100%;
  grid-column: 1 / -1;
}

body.page-id-8182 form#wpforms-form-8188 .wpforms-recaptcha-container {
  grid-column: 1;
  margin: 0;
  clear: none !important;
}

body.page-id-8182 form#wpforms-form-8188 .wpforms-submit-container {
  grid-column: 2;
  display: flex;
  align-items: center;
  align-self: end;
  justify-self: start;
  margin: 0;
  height: auto !important;
  width: auto !important;
  clear: none !important;
}

body.page-id-8182 .wpforms-container .wpforms-field-label {
  font-weight: 600;
  color: #1b3f63;
}

body.page-id-8182 .wpforms-container input,
body.page-id-8182 .wpforms-container textarea,
body.page-id-8182 .wpforms-container select {
  border: 1px solid #c8d8e7;
  border-radius: 12px;
  background: #f9fcff;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

body.page-id-8182 .wpforms-container input:focus,
body.page-id-8182 .wpforms-container textarea:focus,
body.page-id-8182 .wpforms-container select:focus {
  border-color: #2f8dd7;
  box-shadow: 0 0 0 3px rgba(47, 141, 215, 0.16);
  background: #ffffff;
}

body.page-id-8182 .wpforms-submit {
  border-radius: 999px !important;
  background: linear-gradient(120deg, #0f4c83, #2f8dd7) !important;
  color: #fff !important;
  border: 0 !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  box-shadow: 0 10px 22px rgba(20, 88, 147, 0.22);
  transition: transform .18s ease, box-shadow .18s ease;
}

body.page-id-8182 .wpforms-submit:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 26px rgba(20, 88, 147, 0.26);
}

body.page-id-8182 .ig-wa-cta {
  position: static;
  width: auto;
  margin: 10px 0 0;
}

body.page-id-8182 .ig-wa-cta__inner {
  background: transparent;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
  color: inherit;
}

body.page-id-8182 .ig-wa-cta__title,
body.page-id-8182 .ig-wa-cta__text,
body.page-id-8182 .ig-wa-cta__inner a {
  color: #ffffff !important;
}

body.page-id-8182 .ig-wa-cta__inner > a:not(.ig-wa-cta__btn),
body.page-id-8182 .ig-wa-cta__title,
body.page-id-8182 .ig-wa-cta__text {
  display: none !important;
}

body.page-id-8182 .ig-wa-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
  padding: 10px 14px;
  border-radius: 999px;
  background: linear-gradient(120deg, #0f4c83, #2f8dd7);
  border: 1px solid rgba(15, 76, 131, 0.28);
  text-decoration: none;
  font-weight: 700;
  color: #ffffff !important;
  box-shadow: 0 10px 20px rgba(20, 88, 147, 0.24);
}

/* Where we are card (injected by JS) */
body.page-id-8182 .ig-location-card {
  width: min(100%, 760px);
  margin: 12px 0 0;
  background: #ffffff;
  border: 1px solid rgba(18, 79, 132, 0.16);
  border-radius: 14px;
  padding: 16px 18px;
  box-shadow: 0 10px 24px rgba(14, 62, 104, 0.10);
}

body.page-id-8182 .ig-location-card h4 {
  margin: 0 0 8px;
  color: #123d63;
  font-size: 1.05rem;
}

body.page-id-8182 .ig-location-card p {
  margin: 0;
  color: #234f77;
}

body.page-id-8182 .ig-location-links {
  margin-top: 12px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

body.page-id-8182 .ig-location-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 8px 12px;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid rgba(18, 79, 132, 0.24);
  color: #0f4c83;
  background: #f5faff;
}

@media (max-width: 1024px) {
  body.page-id-8182 .sidebar-content.fullwidth {
    grid-template-columns: 1fr;
    width: 100%;
  }
  body.page-id-8182 .ig-wa-cta {
    position: static;
    width: 100%;
  }
  body.page-id-8182 .ig-location-card {
    width: 100%;
  }
  body.page-id-8182 form#wpforms-form-8188 .wpforms-recaptcha-container,
  body.page-id-8182 form#wpforms-form-8188 .wpforms-submit-container {
    width: 100%;
    grid-column: 1 / -1;
    margin-bottom: 0;
  }
}
