.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-3455 .elementor-element.elementor-element-f20a1ab{text-align:center;}.elementor-3455 .elementor-element.elementor-element-f20a1ab .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:500;line-height:22px;color:var( --e-global-color-ac991d1 );}.elementor-3455 .elementor-element.elementor-element-5a38b34 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3455 .elementor-element.elementor-element-5a38b34{text-align:center;}.elementor-3455 .elementor-element.elementor-element-5a38b34 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:42px;font-weight:700;color:var( --e-global-color-3f0bee7 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-3455 .elementor-element.elementor-element-09e89c4{text-align:center;font-family:"Montserrat", Sans-serif;font-size:14px;font-weight:400;line-height:22px;color:#000000;}.elementor-3455 .elementor-element.elementor-element-09e89c4 a{color:#000000;}.elementor-3455 .elementor-element.elementor-element-9e50874{--spacer-size:50px;}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-3455 .elementor-element.elementor-element-9e50874{--spacer-size:3px;}}/* Start custom CSS *//* ============================================
   MOBILE RESPONSIVE FIXES (375px-768px)
   ============================================ */

@media (max-width: 768px) {

  /* 1. Columns - stack vertically */
  .elementor-column {
    width: 100% !important;
    margin-bottom: 20px;
  }

  /* 2. Text - scale headings and body */
  .elementor-heading-title {
    font-size: clamp(1.4rem, 5vw, 2rem) !important;
  }
  .elementor-widget-text-editor p {
    font-size: 1rem !important;
    line-height: 1.6 !important;
  }

  /* 3. Images - full width, no overflow */
  .elementor-widget-image img {
    width: 100% !important;
    height: auto !important;
    display: block;
  }

  /* 4. Buttons - full width, easy tap target */
  .elementor-button {
    width: 100% !important;
    text-align: center !important;
    padding: 14px !important;
    font-size: 1rem !important;
  }
  .elementor-button-wrapper {
    width: 100% !important;
  }

  /* 5. Sections - comfortable padding */
  .elementor-section {
    padding: 30px 16px !important;
  }

  /* Flexbox Container equivalents (Elementor's newer layout) */
  .e-con-inner,
  .e-con > .e-con-inner {
    flex-direction: column !important;
  }
  .e-con.e-flex > .e-child {
    width: 100% !important;
    margin-bottom: 20px;
  }
  .e-con {
    padding: 30px 16px !important;
    max-width: 100vw !important;
  }
}

/* 6. Kill horizontal overflow / side-scroll */
body, html {
  overflow-x: hidden !important;
}
.elementor-section {
  max-width: 100vw !important;
}/* End custom CSS */