.elementor-371 .elementor-element.elementor-element-75a016fc{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-371 .elementor-element.elementor-element-23563e32{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-371 .elementor-element.elementor-element-75a016fc{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-23563e32 *//* ===============================
   GLOBAL FULL-WIDTH FIXES
================================ */

/* Make all Elementor sections and containers full width */
.elementor-section,
.elementor-container,
.elementor-row,
.elementor-column,
.elementor-widget-container,
.elementor-widget-html {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Remove theme container restrictions */
.page .container,
.page .content-area,
.site-content,
.site-main {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Ensure HTML widget content spans fully */
.elementor-widget-html > .elementor-widget-container {
    max-width: 100% !important;
    width: 100% !important;
}

/* Ensure images scale properly */
img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}


/* ===============================
   TYPOGRAPHY & SPACING (DESKTOP)
================================ */

h1, h2, h3, h4 {
    line-height: 1.3;
}

p {
    line-height: 1.7;
    font-size: 17px;
}


/* ===============================
   MOBILE OPTIMISATION
================================ */

@media (max-width: 768px) {

  /* Better readable headings */
  h1 { font-size: 32px !important; }
  h2 { font-size: 26px !important; }
  h3 { font-size: 22px !important; }

  /* Better paragraphs on mobile */
  p {
      font-size: 17px !important;
      line-height: 1.8 !important;
  }

  /* Reduce spacing for sections */
  .section,
  .elementor-section {
      padding: 30px 15px !important;
  }

  /* Improve spacing between elements */
  .section *:not(:last-child),
  .elementor-widget-container *:not(:last-child) {
      margin-bottom: 22px;
  }

  /* Mobile-friendly buttons */
  .btn,
  .cta-btn,
  a.button,
  button {
      width: 100% !important;
      text-align: center;
      padding: 16px !important;
      font-size: 18px !important;
      border-radius: 10px !important;
      box-sizing: border-box;
  }

  /* Stacking columns properly */
  .elementor-column,
  .elementor-col-50,
  .hero-flex,
  .section-flex {
      width: 100% !important;
      max-width: 100% !important;
      display: block !important;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-75a016fc *//* Remove Hello Theme page padding */
.site-main,
.site-content,
.page .entry-content,
body.elementor-page .entry-content {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Force Elementor containers to stretch */
.elementor-section,
.elementor-container,
.elementor-widget-wrap,
.elementor-column {
    max-width: 100% !important;
    width: 100% !important;
}

/* Ensure HTML widget expands full width */
.elementor-widget-html {
    width: 100% !important;
}/* End custom CSS */