@import url('fonts/fonts.css');
body,input,textarea,select,button,.elementor-heading-title,.elementor-widget-text-editor{font-family:'Be Vietnam Pro',sans-serif}
.elementor-433 .elementor-element-daac124,.sg-lift{transition:transform .28s ease,box-shadow .28s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.elementor-433 .elementor-element-daac124:hover,.sg-lift:hover{transform:translateY(-6px);box-shadow:0 12px 24px #0002}}
.elementor-popup-modal .dialog-widget-content{max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
.elementor-popup-modal .dialog-message{max-height:calc(100dvh - 70px);overflow-y:auto}
.elementor-popup-modal .dialog-close-button{padding:10px;z-index:10}
@media(max-width:1024px){
.elementor .e-con{min-width:0}
.elementor-14 .elementor-element-442025c{width:100%}
.elementor-14 .elementor-element-undefined-d04c7eb{width:100%;gap:24px}
.elementor-14 .elementor-element-0421622{width:100%;padding-inline:16px;gap:24px}
.elementor-1592 .elementor-widget-button{margin-inline:0!important}
}
@media(max-width:767px){
.elementor-14 .elementor-element-undefined-d04c7eb,.elementor-14 .elementor-element-0421622{flex-direction:column}
.elementor-14 .elementor-element-700aeb1,.elementor-14 .elementor-element-undefined-67af4c4,.elementor-14 .elementor-element-c4f3ac4,.elementor-14 .elementor-element-89c485a{width:100%;margin-inline:0}
.elementor-14 .elementor-element-442025c{flex-wrap:wrap;padding-inline:16px;gap:16px}
.elementor-14 .elementor-element-442025c>.e-con{width:calc(50% - 8px)}
.elementor-1592 .elementor-widget-button{align-self:center}
.elementor .elementor-heading-title{overflow-wrap:break-word}
.elementor-popup-modal input,.elementor-popup-modal textarea,.elementor-popup-modal select{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.sg-lift,.elementor-433 .elementor-element-daac124{transition:none!important;transform:none!important}}

@media(max-width:1024px){.elementor-14 .elementor-swiper-button-next{right:0!important}.elementor-14 .elementor-swiper-button-prev{left:0!important}}
@media(max-width:767px){
.elementor-627 .elementor-element-b7eeb49{width:100%;margin:0;flex-direction:column}
.elementor-627 .elementor-element-b7884b6,.elementor-627 .elementor-element-b4b95d1{width:100%;margin-inline:0;min-width:0}
.elementor-1592 .e-con{max-width:100%;min-width:0}
.elementor-1592 .e-grid{grid-template-columns:minmax(0,1fr)}
}

@media(max-width:767px){.elementor-1592 .e-con.e-child{margin-inline:0!important;width:100%;max-width:100%}.elementor-1592 .e-grid{grid-template-columns:minmax(0,1fr)!important}}

.elementor-popup-modal{z-index:1000000!important}
@media(max-width:767px){
.elementor-887 .elementor-element-39e536e{flex-direction:column}
.elementor-887 .elementor-element-12bb344{width:100%;max-width:100%;padding:48px 20px 24px;gap:20px}
.elementor-887 .elementor-widget-theme-site-logo img,.elementor-887 .elementor-widget-image img{max-height:100px;width:auto}
.elementor-887 .elementor-widget-image,.elementor-887 .elementor-widget-theme-site-logo{padding:16px;min-height:0}
.elementor-popup-modal .dialog-close-button{top:4px!important;right:4px!important;background:white;border-radius:50%}
}

@media(max-width:767px){#elementor-popup-modal-887 .elementor-element-12bb344{width:100%!important;max-width:100%!important;--width:100%;box-sizing:border-box}#elementor-popup-modal-887 .elementor-element-39e536e{width:100%!important;max-width:100%!important;--width:100%}}

@media(max-width:767px){#elementor-popup-modal-887 .dialog-message{width:calc(100vw - 32px)!important;max-width:100%!important}#elementor-popup-modal-887 .elementor{width:100%;max-width:100%;min-width:0}}

/* Homepage card interactions; preserve Swiper's own slide transforms. */
.elementor-14 :is(.elementor-element-ecaca55,.elementor-element-1b0cf49,.elementor-element-5381081,.elementor-element-072052d),.elementor-14 .elementor-532>.e-con,.elementor-element-1b2cae7 .swiper-slide-inner{transition:transform .28s ease,box-shadow .28s ease}
.elementor-14 :is(.elementor-433,.elementor-532) .elementor-widget-image{overflow:hidden;border-radius:12px 12px 0 0}
.elementor-14 :is(.elementor-433,.elementor-532) .elementor-widget-image img{transition:transform .4s ease}
.elementor-element-5534f2c .elementor-thumbnails-swiper .elementor-carousel-image{box-sizing:border-box;border:3px solid transparent;border-radius:8px;transition:border-color .2s ease,filter .2s ease;cursor:pointer}
.elementor-element-5534f2c .elementor-thumbnails-swiper :is(.swiper-slide-thumb-active,.swiper-slide-active) .elementor-carousel-image{border-color:#eca701;filter:brightness(1.08)}
.elementor-14 .elementor-532 .elementor-button{transition:color .2s ease}
.elementor-14 .elementor-532 .elementor-button-icon{transition:transform .2s ease}
.elementor-14 .elementor-532 .elementor-button:is(:hover,:focus-visible){color:#b87800!important;text-decoration:underline;text-underline-offset:4px}
.elementor-14 .elementor-532 .elementor-button:is(:hover,:focus-visible) .elementor-button-icon{transform:translateX(5px)}
.elementor-element-5534f2c .elementor-thumbnails-swiper .swiper-slide:is(:hover,:focus-within) .elementor-carousel-image{border-color:#eca701;filter:brightness(1.08)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
.elementor-14 :is(.elementor-element-ecaca55,.elementor-element-1b0cf49,.elementor-element-5381081,.elementor-element-072052d):hover,.elementor-14 .elementor-532>.e-con:is(:hover,:focus-within){transform:translateY(-6px);box-shadow:0 12px 24px #0002}
.elementor-14 :is(.elementor-433,.elementor-532):is(:hover,:focus-within) .elementor-widget-image img{transform:scale(1.06)}
.elementor-element-1b2cae7 .swiper-slide-inner:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 8px 18px #0002}
}
.elementor-element-9d00e37 .swiper{padding-top:10px;padding-bottom:24px}
.elementor-element-1b2cae7 .swiper{padding-top:8px;padding-bottom:18px}
@media(prefers-reduced-motion:reduce){
.elementor-14 :is(.elementor-433,.elementor-532) img,.elementor-14 .elementor-532>.e-con,.elementor-14 :is(.elementor-element-ecaca55,.elementor-element-1b0cf49,.elementor-element-5381081,.elementor-element-072052d),.elementor-element-1b2cae7 .swiper-slide-inner,.elementor-14 .elementor-532 .elementor-button-icon{transition:none;transform:none!important}
}

/* Product benefits, contact submit, recruitment detail badges. */
:is(.elementor-element-3a4d2e3,.elementor-element-2b36eef,.elementor-element-0b8b244,.elementor-element-466900e),.elementor-2 button[type="submit"]{transition:transform .28s ease,box-shadow .28s ease,background-color .2s ease}
.elementor-2 button[type="submit"]:is(:hover,:focus-visible){background-color:#b87800!important;box-shadow:0 8px 18px #0002}
@media(hover:hover) and (prefers-reduced-motion:no-preference){:is(.elementor-element-3a4d2e3,.elementor-element-2b36eef,.elementor-element-0b8b244,.elementor-element-466900e):hover,.elementor-2 button[type="submit"]:hover{transform:translateY(-6px);box-shadow:0 12px 24px #0002}}
.elementor-1592 .elementor-element-c1cf29c,.elementor-1592 .elementor-element-cbb42b9,.elementor-1592 .elementor-element-4a1d281,.elementor-1592 .elementor-element-a31ae24,.elementor-1592 .elementor-element-c34d3d0,.elementor-1592 .elementor-element-2d07c16{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important}
:is(.elementor-1592 .elementor-element-c1cf29c,.elementor-1592 .elementor-element-cbb42b9,.elementor-1592 .elementor-element-4a1d281,.elementor-1592 .elementor-element-a31ae24,.elementor-1592 .elementor-element-c34d3d0,.elementor-1592 .elementor-element-2d07c16) > .e-con{min-width:0;width:100%!important;margin:0!important}
:is(.elementor-1592 .elementor-element-c1cf29c,.elementor-1592 .elementor-element-cbb42b9,.elementor-1592 .elementor-element-4a1d281,.elementor-1592 .elementor-element-a31ae24,.elementor-1592 .elementor-element-c34d3d0,.elementor-1592 .elementor-element-2d07c16) > .e-con > .e-grid{display:flex!important;flex-direction:column!important;align-items:flex-start;gap:4px!important;padding:10px 14px!important;width:100%!important;min-width:0}
:is(.elementor-1592 .elementor-element-c1cf29c,.elementor-1592 .elementor-element-cbb42b9,.elementor-1592 .elementor-element-4a1d281,.elementor-1592 .elementor-element-a31ae24,.elementor-1592 .elementor-element-c34d3d0,.elementor-1592 .elementor-element-2d07c16) .elementor-widget-text-editor{width:100%!important;margin:0!important;min-width:0}
:is(.elementor-1592 .elementor-element-c1cf29c,.elementor-1592 .elementor-element-cbb42b9,.elementor-1592 .elementor-element-4a1d281,.elementor-1592 .elementor-element-a31ae24,.elementor-1592 .elementor-element-c34d3d0,.elementor-1592 .elementor-element-2d07c16) p{margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
@media(prefers-reduced-motion:reduce){:is(.elementor-element-3a4d2e3,.elementor-element-2b36eef,.elementor-element-0b8b244,.elementor-element-466900e),.elementor-2 button[type="submit"]{transition:none;transform:none!important}}

/* Job cards must grow with the two-row detail grid. */
.elementor-1592 .elementor-element-75d0616 > .e-grid,
.elementor-1592 .elementor-element-75d0616 > .e-grid .e-con{height:auto!important;min-height:0!important;max-height:none!important;grid-template-rows:auto!important;grid-auto-rows:auto!important;align-self:stretch}
.elementor-1592 .elementor-element-75d0616 > .e-grid{grid-template-columns:minmax(0,1fr)!important;align-items:center;gap:24px!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid > .e-con > .e-grid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid .elementor-widget-text-editor{margin-bottom:0!important}
@media(max-width:767px){.elementor-1592 .elementor-element-75d0616 > .e-grid{grid-template-columns:minmax(0,1fr)!important}}

/* Four equal detail badges, one row; label above value. */
.elementor-1592 .elementor-element-75d0616 > .e-grid :is(.elementor-element-c1cf29c,.elementor-element-cbb42b9,.elementor-element-4a1d281,.elementor-element-a31ae24,.elementor-element-c34d3d0,.elementor-element-2d07c16){grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid :is(.elementor-element-c1cf29c,.elementor-element-cbb42b9,.elementor-element-4a1d281,.elementor-element-a31ae24,.elementor-element-c34d3d0,.elementor-element-2d07c16) > .e-con > .e-grid{padding:12px 10px!important;align-items:center;text-align:center;border-radius:12px}
.elementor-1592 .elementor-element-75d0616 > .e-grid :is(.elementor-element-c1cf29c,.elementor-element-cbb42b9,.elementor-element-4a1d281,.elementor-element-a31ae24,.elementor-element-c34d3d0,.elementor-element-2d07c16) p{font-size:14px;line-height:1.5}
@media(max-width:767px){
.elementor-1592 .elementor-element-75d0616 > .e-grid :is(.elementor-element-c1cf29c,.elementor-element-cbb42b9,.elementor-element-4a1d281,.elementor-element-a31ae24,.elementor-element-c34d3d0,.elementor-element-2d07c16){gap:6px!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid :is(.elementor-element-c1cf29c,.elementor-element-cbb42b9,.elementor-element-4a1d281,.elementor-element-a31ae24,.elementor-element-c34d3d0,.elementor-element-2d07c16) > .e-con > .e-grid{padding:10px 3px!important;border-radius:8px}
.elementor-1592 .elementor-element-75d0616 > .e-grid :is(.elementor-element-c1cf29c,.elementor-element-cbb42b9,.elementor-element-4a1d281,.elementor-element-a31ae24,.elementor-element-c34d3d0,.elementor-element-2d07c16) p{font-size:11px!important;line-height:1.5}
}

/* Remove legacy negative margins and percentage widths in recruitment cards. */
.elementor-1592 .elementor-element-75d0616 > .e-grid{padding:24px!important;row-gap:24px!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid .e-con{width:100%!important;max-width:100%!important;margin:0!important;box-sizing:border-box}
.elementor-1592 .elementor-element-75d0616 > .e-grid > .e-con{padding:0!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid > .e-con > .e-grid{padding:0!important;gap:20px!important}
.elementor-1592 .elementor-element-75d0616 > .e-grid .elementor-widget-button{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;text-align:center;justify-self:stretch}
@media(max-width:767px){.elementor-1592 .elementor-element-75d0616 > .e-grid{padding:16px!important;row-gap:24px!important}}

/* Mobile homepage stats: keep values intact and align four cells. */
@media (max-width: 767px) {
  .elementor-14 .elementor-element-442025c {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 28px 16px 32px !important;
    box-sizing: border-box !important;
  }
  .elementor-14 .elementor-element-442025c > .e-con {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .elementor-14 .elementor-element-442025c .elementor-heading-title {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    line-height: 1.15 !important;
  }
  .elementor-14 .elementor-element-be1d62e .elementor-heading-title,
  .elementor-14 .elementor-element-b40fdab .elementor-heading-title,
  .elementor-14 .elementor-element-5ac883e .elementor-heading-title,
  .elementor-14 .elementor-element-16b05aa .elementor-heading-title {
    font-size: clamp(24px, 8vw, 34px) !important;
  }
  .elementor-14 .elementor-element-07ec55a .elementor-heading-title,
  .elementor-14 .elementor-element-5997946 .elementor-heading-title,
  .elementor-14 .elementor-element-e0a6d84 .elementor-heading-title,
  .elementor-14 .elementor-element-730358f .elementor-heading-title {
    font-size: 13px !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
  }
}

/* Preserve original image ratio for homepage event photo. */
.elementor-14 .elementor-element-96d4e79 img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1774 / 1072 !important;
  object-fit: contain !important;
  display: block !important;
}
@media (max-width: 767px) {
  .elementor-14 .elementor-element-700aeb1,
  .elementor-14 .elementor-element-96d4e79 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .elementor-14 .elementor-element-96d4e79 img {
    height: auto !important;
    max-width: 100% !important;
    border-radius: 15px !important;
  }
}

/* Mobile fixes: products, recruitment, quote popup. */
@media (max-width: 767px) {
  /* Products page intro: use full content width. */
  .elementor-1394 .elementor-element-0d3729d {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
  .elementor-1394 .elementor-element-0d3729d p {
    width: 100% !important;
    margin: 0 !important;
    line-height: 1.55 !important;
  }

  /* Product group card: title and quote button stay readable and aligned. */
  .elementor-1394 .elementor-element-64fa0a6 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    align-items: center !important;
    text-align: center !important;
    gap: 8px !important;
  }
  .elementor-1394 .elementor-element-df746fc,
  .elementor-1394 .elementor-element-2c61c98,
  .elementor-1394 .elementor-element-02b40ff {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
  }
  .elementor-1394 .elementor-element-df746fc p,
  .elementor-1394 .elementor-element-2c61c98 p {
    margin: 0 !important;
    line-height: 1.35 !important;
  }
  .elementor-1394 .elementor-element-2c61c98 p {
    font-size: 22px !important;
    font-weight: 700 !important;
  }
  .elementor-1394 .elementor-element-02b40ff .elementor-button {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    justify-content: center !important;
    white-space: nowrap !important;
    padding: 11px 18px !important;
    line-height: 1.2 !important;
  }

  /* Quote popup close icon. */
  #elementor-popup-modal-887 .dialog-close-button svg {
    color: #1f2124 !important;
    fill: #1f2124 !important;
    stroke: #1f2124 !important;
  }
  #elementor-popup-modal-887 .dialog-close-button svg * {
    fill: #1f2124 !important;
    stroke: #1f2124 !important;
  }

  /* Recruitment badges: equal-height cards, no label/value collision. */
  .elementor-1592 .elementor-element-c1cf29c,
  .elementor-1592 .elementor-element-cbb42b9,
  .elementor-1592 .elementor-element-4a1d281,
  .elementor-1592 .elementor-element-a31ae24,
  .elementor-1592 .elementor-element-c34d3d0,
  .elementor-1592 .elementor-element-2d07c16 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
  .elementor-1592 .elementor-element-c1cf29c > .e-con,
  .elementor-1592 .elementor-element-cbb42b9 > .e-con,
  .elementor-1592 .elementor-element-4a1d281 > .e-con,
  .elementor-1592 .elementor-element-a31ae24 > .e-con,
  .elementor-1592 .elementor-element-c34d3d0 > .e-con,
  .elementor-1592 .elementor-element-2d07c16 > .e-con {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }
  .elementor-1592 .elementor-element-c1cf29c .e-grid,
  .elementor-1592 .elementor-element-cbb42b9 .e-grid,
  .elementor-1592 .elementor-element-4a1d281 .e-grid,
  .elementor-1592 .elementor-element-a31ae24 .e-grid,
  .elementor-1592 .elementor-element-c34d3d0 .e-grid,
  .elementor-1592 .elementor-element-2d07c16 .e-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 4px !important;
    min-height: 104px !important;
    height: 100% !important;
    padding: 10px 14px !important;
    box-sizing: border-box !important;
  }
  .elementor-1592 .elementor-element-c1cf29c .elementor-widget-text-editor,
  .elementor-1592 .elementor-element-cbb42b9 .elementor-widget-text-editor,
  .elementor-1592 .elementor-element-4a1d281 .elementor-widget-text-editor,
  .elementor-1592 .elementor-element-a31ae24 .elementor-widget-text-editor,
  .elementor-1592 .elementor-element-c34d3d0 .elementor-widget-text-editor,
  .elementor-1592 .elementor-element-2d07c16 .elementor-widget-text-editor {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow-wrap: anywhere !important;
  }
  .elementor-1592 .elementor-element-c1cf29c .elementor-widget-text-editor p,
  .elementor-1592 .elementor-element-cbb42b9 .elementor-widget-text-editor p,
  .elementor-1592 .elementor-element-4a1d281 .elementor-widget-text-editor p,
  .elementor-1592 .elementor-element-a31ae24 .elementor-widget-text-editor p,
  .elementor-1592 .elementor-element-c34d3d0 .elementor-widget-text-editor p,
  .elementor-1592 .elementor-element-2d07c16 .elementor-widget-text-editor p {
    margin: 0 !important;
    white-space: normal !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 767px) {
  .elementor-1394 .elementor-element-e395429 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 100% !important;
    margin: 0 !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
  }
  .elementor-1394 .elementor-element-6321a87,
  .elementor-1394 .elementor-element-6321a87 img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
  .elementor-1394 .elementor-element-c6b431d .elementor-heading-title {
    font-size: 30px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
  html, body { overflow-x: hidden !important; }
}

@media (max-width: 767px) {
  /* Remove Elementor desktop flex widths from product page. */
  .elementor-1394,
  .elementor-1394 .e-con,
  .elementor-1394 .e-con-inner,
  .elementor-1394 .elementor-widget {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .elementor-1394 .e-con-boxed > .e-con-inner {
    width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .elementor-1394 .elementor-element-c6b431d,
  .elementor-1394 .elementor-element-0d3729d {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    overflow-wrap: anywhere !important;
  }
  .elementor-1394 .elementor-element-c6b431d .elementor-heading-title,
  .elementor-1394 .elementor-element-0d3729d,
  .elementor-1394 .elementor-element-0d3729d p {
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
  .elementor-1394 .elementor-element-e395429,
  .elementor-1394 .elementor-element-64fa0a6 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Follow-up mobile layout: all product groups, recruitment spacing, homepage headings. */
@media (max-width: 767px) {
  /* Apply same card layout to every product group, not only first card. */
  .elementor-1394 .elementor-element-36a064a .e-con {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .elementor-1394 .elementor-element-36a064a .elementor-widget-text-editor,
  .elementor-1394 .elementor-element-36a064a .elementor-widget-button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
  }
  .elementor-1394 .elementor-element-36a064a .elementor-widget-text-editor p {
    margin: 0 !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
  }
  .elementor-1394 .elementor-element-36a064a .elementor-widget-button .elementor-button {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    justify-content: center !important;
    padding: 11px 18px !important;
  }

  /* Recruitment: readable text and consistent section spacing. */
  .elementor-1592 .elementor-element-656b91f {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 24px 16px !important;
    box-sizing: border-box !important;
  }
  .elementor-1592 .elementor-element-656b91f .e-con-inner,
  .elementor-1592 .elementor-element-dfb1f1b,
  .elementor-1592 .elementor-element-7012fb2 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  .elementor-1592 .elementor-element-7cd6c50 {
    width: 100% !important;
    margin: 0 0 12px !important;
    text-align: center !important;
  }
  .elementor-1592 .elementor-element-7cd6c50 .elementor-heading-title {
    font-size: 26px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
  }
  .elementor-1592 .elementor-element-b7c269a,
  .elementor-1592 .elementor-element-37db6d1 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 14px !important;
    text-align: center !important;
  }
  .elementor-1592 .elementor-element-b7c269a img {
    width: 100% !important;
    max-width: 300px !important;
    height: auto !important;
    margin: 0 auto !important;
  }
  .elementor-1592 .elementor-element-37db6d1 p {
    margin: 0 !important;
    line-height: 1.55 !important;
    overflow-wrap: anywhere !important;
  }

  /* Homepage: tighten hero-to-about gap and reduce headings to 28px. */
  .elementor-14 .elementor-element-undefined-d04c7eb {
    gap: 12px !important;
    row-gap: 12px !important;
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
  .elementor-14 .elementor-element-undefined-0bbf194 .elementor-heading-title,
  .elementor-14 .elementor-element-undefined-0bbf194 .elementor-heading-title span,
  .elementor-14 .elementor-element-82e0d22 .elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
  .elementor-14 .elementor-element-96d698c {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }
}

/* Final mobile corrections: remaining product cards, recruitment hero, homepage gap. */
@media (max-width: 767px) {
  /* Product cards: target each actual card wrapper, including cards outside first grid. */
  .elementor-1394 .elementor-element-3182687,
  .elementor-1394 .elementor-element-16d2b6f,
  .elementor-1394 .elementor-element-0592e35,
  .elementor-1394 .elementor-element-64fa0a6 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    align-items: center !important;
    text-align: center !important;
    gap: 8px !important;
  }
  .elementor-1394 .elementor-element-3182687 > *,
  .elementor-1394 .elementor-element-16d2b6f > *,
  .elementor-1394 .elementor-element-0592e35 > *,
  .elementor-1394 .elementor-element-64fa0a6 > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
  }
  .elementor-1394 .elementor-element-3182687 p,
  .elementor-1394 .elementor-element-16d2b6f p,
  .elementor-1394 .elementor-element-0592e35 p,
  .elementor-1394 .elementor-element-64fa0a6 p {
    margin: 0 !important;
    line-height: 1.35 !important;
  }
  .elementor-1394 .elementor-element-3182687 .elementor-button,
  .elementor-1394 .elementor-element-16d2b6f .elementor-button,
  .elementor-1394 .elementor-element-0592e35 .elementor-button,
  .elementor-1394 .elementor-element-64fa0a6 .elementor-button {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    padding: 11px 18px !important;
  }

  /* Recruitment top text: remove desktop spacing and force readable mobile flow. */
  .elementor-1592 .elementor-element-acd37af,
  .elementor-1592 .elementor-element-75d0616 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 20px 16px !important;
    box-sizing: border-box !important;
  }
  .elementor-1592 .elementor-element-9b5ef1a,
  .elementor-1592 .elementor-element-96bbb73,
  .elementor-1592 .elementor-element-37db6d1 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    text-align: center !important;
  }
  .elementor-1592 .elementor-element-9b5ef1a .elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
  .elementor-1592 .elementor-element-96bbb73 p,
  .elementor-1592 .elementor-element-37db6d1 p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  .elementor-1592 .elementor-element-37db6d1 { margin-bottom: 20px !important; }
  .elementor-1592 .elementor-element-656b91f {
    padding-top: 16px !important;
    padding-bottom: 20px !important;
  }
  .elementor-1592 .elementor-element-7cd6c50 {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
  }

  /* Homepage: eliminate hero's fixed height and section gap. */
  .elementor-14 .elementor-element-700aeb1 {
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor-14 .elementor-element-96d4e79,
  .elementor-14 .elementor-element-96d4e79 img {
    height: auto !important;
    max-height: none !important;
  }
  .elementor-14 .elementor-element-undefined-d04c7eb {
    margin-top: 0 !important;
    padding-top: 8px !important;
    gap: 8px !important;
    row-gap: 8px !important;
  }
}

/* Mobile final pass: popup scroll, footer logo, recruitment/contact/home sections. */
@media (max-width: 767px) {
  /* Keep popup opening at current document position. */
  #elementor-popup-modal-887 { overscroll-behavior: contain; }
  body.elementor-popup-modal-open { overflow: hidden !important; }

  /* Footer logo: larger readable mark. */
  .elementor-237 .elementor-element-b3e494a img,
  .elementor-237 .elementor-element-081c782 img {
    width: 180px !important;
    max-width: 75vw !important;
    height: auto !important;
    max-height: none !important;
  }
  .elementor-237 .elementor-element-b3e494a,
  .elementor-237 .elementor-element-081c782 { width: 100% !important; text-align: center !important; }

  /* Product cards: identical inner spacing/button alignment. */
  .elementor-1394 .elementor-element-3182687,
  .elementor-1394 .elementor-element-16d2b6f,
  .elementor-1394 .elementor-element-0592e35,
  .elementor-1394 .elementor-element-64fa0a6 { gap: 10px !important; padding: 16px !important; }
  .elementor-1394 .elementor-element-3182687 .elementor-button,
  .elementor-1394 .elementor-element-16d2b6f .elementor-button,
  .elementor-1394 .elementor-element-0592e35 .elementor-button,
  .elementor-1394 .elementor-element-64fa0a6 .elementor-button { margin-top: 4px !important; }

  /* Recruitment hero and intro text. */
  .elementor-1592 .elementor-element-ba32f77,
  .elementor-1592 .elementor-element-a59d1c8,
  .elementor-1592 .elementor-element-0d3729d { width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; }
  .elementor-1592 .elementor-element-0d3729d { padding: 0 16px !important; margin: 0 0 14px !important; text-align: center !important; }
  .elementor-1592 .elementor-element-0d3729d p { margin: 0 !important; font-size: 16px !important; line-height: 1.5 !important; white-space: normal !important; }
  .elementor-1592 .elementor-element-cabc5ba { margin-top: 0 !important; padding-top: 12px !important; }
  .elementor-1592 .elementor-element-75d0616 { margin-top: 0 !important; margin-bottom: 20px !important; }
  .elementor-1592 .elementor-element-75d0616 > .e-con-inner { gap: 12px !important; }

  /* Contact: page/section headings. */
  .elementor-2 h1.elementor-heading-title,
  .elementor-2 h2.elementor-heading-title,
  .elementor-2 h3.elementor-heading-title { font-size: 28px !important; line-height: 1.25 !important; }
  .elementor-2 .elementor-widget-heading { margin-top: 0 !important; margin-bottom: 16px !important; }

  /* Homepage section headings and manufacturing cards full width. */
  .elementor-14 .elementor-widget-heading .elementor-heading-title { font-size: 28px !important; line-height: 1.25 !important; }
  .elementor-14 .elementor-element-0421622,
  .elementor-14 .elementor-element-0421622 > .e-con,
  .elementor-14 .elementor-element-0421622 .e-con { width: 100% !important; max-width: 100% !important; min-width: 0 !important; margin-left: 0 !important; margin-right: 0 !important; box-sizing: border-box !important; }
  .elementor-14 .elementor-element-0421622 { padding-left: 16px !important; padding-right: 16px !important; gap: 16px !important; }
  .elementor-14 .elementor-element-0421622 img { width: 100% !important; height: auto !important; max-width: 100% !important; }
  .elementor-14 .elementor-element-0421622 .elementor-widget-text-editor p { margin: 0 !important; line-height: 1.5 !important; }
}

@media (max-width: 767px) {
  /* Footer logo widget: Elementor container width 50%. */
  .elementor-237 .elementor-element-b3e494a,
  .elementor-237 .elementor-element-081c782 {
    width: 50% !important;
    max-width: 50% !important;
    --container-widget-width: 50% !important;
    --container-widget-flex-grow: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .elementor-237 .elementor-element-b3e494a img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

@media (max-width: 767px) {
  /* Footer logo: target Elementor footer widget, not header logo. */
  .elementor-location-footer .elementor-widget-theme-site-logo,
  .elementor-location-footer .elementor-widget-theme-site-logo.elementor-widget-image {
    width: 50% !important;
    max-width: 50% !important;
    --container-widget-width: 50% !important;
    --container-widget-flex-grow: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .elementor-location-footer .elementor-widget-theme-site-logo img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}

@media (max-width: 767px) {
  /* Recruitment hero: remove desktop offsets/overlap. */
  .elementor-1592 .elementor-element-ba32f77,
  .elementor-1592 .elementor-element-a59d1c8 {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    height:auto !important; min-height:0 !important; margin:0 !important;
    padding:24px 16px !important; box-sizing:border-box !important;
    display:flex !important; flex-direction:column !important;
    gap:10px !important;
  }
  .elementor-1592 .elementor-element-e31a36d { display:none !important; }
  .elementor-1592 .elementor-element-c6b431d,
  .elementor-1592 .elementor-element-0d3729d {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    margin:0 !important; padding:0 !important; box-sizing:border-box !important;
    position:static !important; transform:none !important;
    text-align:center !important;
  }
  .elementor-1592 .elementor-element-c6b431d .elementor-heading-title {
    font-size:28px !important; line-height:1.25 !important; margin:0 !important;
  }
  .elementor-1592 .elementor-element-0d3729d p {
    margin:0 !important; padding:0 !important; font-size:16px !important;
    line-height:1.55 !important; white-space:normal !important;
    overflow-wrap:anywhere !important; color:#333 !important;
  }
  /* Recruitment-process section: no negative image margins or giant gaps. */
  .elementor-1592 .elementor-element-656b91f,
  .elementor-1592 .elementor-element-dfb1f1b,
  .elementor-1592 .elementor-element-7012fb2 {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    height:auto !important; min-height:0 !important; margin:0 !important;
    padding:16px !important; box-sizing:border-box !important;
    gap:12px !important;
  }
  .elementor-1592 .elementor-element-7cd6c50 {
    width:100% !important; margin:0 !important; padding:0 !important;
    text-align:center !important;
  }
  .elementor-1592 .elementor-element-7cd6c50 .elementor-heading-title {
    font-size:28px !important; line-height:1.25 !important; margin:0 !important;
  }
  .elementor-1592 .elementor-element-b7c269a,
  .elementor-1592 .elementor-element-37db6d1 {
    width:100% !important; max-width:100% !important; min-width:0 !important;
    margin:0 !important; padding:0 !important; text-align:center !important;
  }
  .elementor-1592 .elementor-element-b7c269a img {
    width:100% !important; max-width:280px !important; height:auto !important;
    margin:0 auto !important; display:block !important;
  }
  .elementor-1592 .elementor-element-37db6d1 p {
    margin:0 !important; font-size:15px !important; line-height:1.55 !important;
    white-space:normal !important; overflow-wrap:anywhere !important;
  }
  .elementor-1592 .elementor-element-cabc5ba,
  .elementor-1592 .elementor-element-cb95f8d {
    height:auto !important; min-height:0 !important; margin:0 !important;
    padding:0 !important; gap:12px !important;
  }
}
@media (max-width:767px){
.elementor-1592 .elementor-element-cabc5ba,.elementor-1592 .elementor-element-cb95f8d{width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:12px 16px!important;display:flex!important;flex-direction:column!important;gap:16px!important;box-sizing:border-box!important;}
.elementor-1592 .elementor-element-b62846b,.elementor-1592 .elementor-element-3eb279b,.elementor-1592 .elementor-element-e14419d{width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;gap:8px!important;}
.elementor-1592 .elementor-element-85b0924,.elementor-1592 .elementor-element-a7268d2,.elementor-1592 .elementor-element-1cfeab8,.elementor-1592 .elementor-element-caa9510{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;text-align:center!important;box-sizing:border-box!important;position:static!important;transform:none!important;}
.elementor-1592 .elementor-element-85b0924 img{width:100%!important;max-width:280px!important;height:auto!important;margin:0 auto!important;}
.elementor-1592 .elementor-element-a7268d2,.elementor-1592 .elementor-element-a7268d2 *{font-size:25px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important;}
.elementor-1592 .elementor-element-1cfeab8 p,.elementor-1592 .elementor-element-caa9510 p{margin:0!important;font-size:15px!important;line-height:1.55!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important;}
.elementor-1592 .elementor-element-3eb279b .elementor-widget-text-editor,.elementor-1592 .elementor-element-e14419d .elementor-widget-text-editor{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;}
}@media (max-width:767px){
html,body{overflow-x:hidden!important}.elementor-1592{width:100%!important;max-width:100%!important;overflow-x:hidden!important}.elementor-1592 .e-con,.elementor-1592 .e-con-inner,.elementor-1592 .elementor-widget{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
.elementor-1592 .elementor-element-0d3729d,.elementor-1592 .elementor-element-0d3729d p{width:100%!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;}
.elementor-1592 .elementor-element-cabc5ba,.elementor-1592 .elementor-element-cb95f8d{display:block!important;height:auto!important;min-height:0!important;max-height:none!important;padding:12px 16px!important;margin:0!important;}
.elementor-1592 .elementor-element-cabc5ba .e-con,.elementor-1592 .elementor-element-cb95f8d .e-con{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;}
.elementor-1592 .elementor-element-b62846b,.elementor-1592 .elementor-element-3eb279b,.elementor-1592 .elementor-element-e14419d{display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0 0 16px!important;padding:0!important;}
.elementor-1592 .elementor-element-b62846b img,.elementor-1592 .elementor-element-85b0924 img{display:block!important;width:100%!important;max-width:260px!important;height:auto!important;max-height:180px!important;object-fit:contain!important;margin:0 auto 12px!important;}
.elementor-1592 .elementor-element-3eb279b,.elementor-1592 .elementor-element-e14419d{position:static!important;transform:none!important;text-align:center!important;}
.elementor-1592 .elementor-element-a7268d2,.elementor-1592 .elementor-element-1cfeab8,.elementor-1592 .elementor-element-caa9510{width:100%!important;max-width:100%!important;margin:0 0 8px!important;padding:0!important;position:static!important;transform:none!important;text-align:center!important;}
.elementor-1592 .elementor-element-a7268d2 *{font-size:24px!important;line-height:1.3!important;white-space:normal!important;overflow-wrap:anywhere!important;}
.elementor-1592 .elementor-element-1cfeab8 p,.elementor-1592 .elementor-element-caa9510 p{font-size:15px!important;line-height:1.55!important;margin:0!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important;}
.elementor-1592 .elementor-element-7012fb2{display:none!important}
}

/* Hide recruitment process decorative icon on mobile; Elementor preview fallback. */
@media (max-width: 767px) {
  .elementor-1592 .elementor-element-95aeb16,
  .elementor-1592 .elementor-element-b7c269a { display:none !important; }
}

/* Recruitment mobile: remove top margin from page content/first section. */
@media (max-width: 767px) {
  body.page-id-1592 .elementor-location-single,
  body.page-id-1592 .elementor.elementor-1592,
  body.page-id-1592 .elementor-1592 > .elementor-element:first-child,
  body.page-id-1592 .elementor-1592 > .e-con:first-child {
    margin-top: 0 !important;
  }
}

/* Recruitment mobile: hide decorative hero icon/image. */
@media (max-width: 767px) {
  .elementor-1592 .elementor-element-85b0924 {
    display: none !important;
  }
}

/* Recruitment mobile: benefits spacing and heading size. */
@media (max-width: 767px) {
  .elementor-1592 .elementor-element.elementor-element-f7cb9bd {
    margin: -36px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px !important;
    text-align: center;
  }
  .elementor-1592 .elementor-element.elementor-element-f7cb9bd .elementor-heading-title {
    font-size: 28px !important;
  }
}
