.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:#F5F5F5;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* FIX: Prevent horizontal overflow & ensure page fits all screens */

/* 1) Safe global resets */
html, body {
  width: 100%;
  overflow-x: hidden; /* prevents page horizontal scrolling caused by overflow */
  -webkit-overflow-scrolling: touch;
}

/* 2) Consistent box model */
*, *::before, *::after { box-sizing: border-box; }

/* 3) Make images, pictures and iframes responsive and not overflow */
img, picture, video, iframe {
  max-width: 100%;
  height: auto;
  display: block;
}

/* 4) Prevent flex / grid children from forcing width larger than container */
.gk-about-card,
.gk-left, .gk-right,
.gk-hero, .gk-wrap,
.gk-testimonials .nk-grid,
.gk-testimonials .nk-card,
.nk-grid, .nk-card,
.woocommerce ul.products li.product,
.woocommerce ul.products {
  min-width: 0;
}

/* 5) Remove accidental large horizontal paddings/margins that create overflow on small screens */
body, .site, .elementor-section, .elementor-column, .elementor-widget {
  margin-left: 0;
  margin-right: 0;
}

/* 6) If an element uses negative margins or wide shadows, clip overflow inside main wrappers */
.gk-about-wrap, .nk-wrap, .site {
  overflow-x: hidden;
}

/* 7) Keep large background images within their container (prevents bleed) */
.gk-hero img, .gk-hero picture, .gk-hero video {
  object-fit: cover;
  max-width: 100%;
  width: 100%;
}

/* 8) Specific: some Elementor widgets add transform: translateX which can cause visible gaps.
   This forces sections to respect container width. */
.elementor-section, .elementor-row, .elementor-column {
  max-width: 100%;
  box-sizing: border-box;
}

/* 9) Small-screen safety: reduce oversized paddings on very small devices */
@media (max-width:420px) {
  .gk-about { padding-left: 12px !important; padding-right: 12px !important; }
  .nk-testimonials { padding-left: 12px !important; padding-right: 12px !important; }
}

/* 10) Debug helper (temporary) - uncomment to show which element overflows */
/* * { outline: 0.5px dashed rgba(255,0,0,0.05) !important; } *//* End custom CSS */