.elementor-28 .elementor-element.elementor-element-157ce50a{--display:flex;--min-height:65vh;--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;--justify-content:center;--align-items:stretch;--gap:90px 90px;--row-gap:90px;--column-gap:90px;--overlay-opacity:0.75;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:5%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-28 .elementor-element.elementor-element-157ce50a:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F5F8;background-image:url("https://abundantvillage.world/wp-content/uploads/2025/11/South-Africa-School-Maze.jpg");background-position:0px -306px;background-repeat:no-repeat;background-size:cover;}.elementor-28 .elementor-element.elementor-element-157ce50a::before, .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-157ce50a > .e-con-inner > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-157ce50a > .e-con-inner > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(199deg, #000000 0%, #00000026 100%);}.elementor-28 .elementor-element.elementor-element-7f243a72{--display:flex;--justify-content:center;}.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-28 .elementor-element.elementor-element-142b47d4{width:100%;max-width:100%;text-align:center;}.elementor-28 .elementor-element.elementor-element-142b47d4 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:43px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;word-spacing:0em;color:var( --e-global-color-8556594 );}.elementor-28 .elementor-element.elementor-element-6a866820{text-align:center;}.elementor-28 .elementor-element.elementor-element-6a866820 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:500;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:var( --e-global-color-8556594 );}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-62d3d9d8 .elementor-icon-wrapper{text-align:center;}.elementor-28 .elementor-element.elementor-element-62d3d9d8.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-8556594 );}.elementor-28 .elementor-element.elementor-element-62d3d9d8.elementor-view-framed .elementor-icon, .elementor-28 .elementor-element.elementor-element-62d3d9d8.elementor-view-default .elementor-icon{color:var( --e-global-color-8556594 );border-color:var( --e-global-color-8556594 );}.elementor-28 .elementor-element.elementor-element-62d3d9d8.elementor-view-framed .elementor-icon, .elementor-28 .elementor-element.elementor-element-62d3d9d8.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-8556594 );}.elementor-28 .elementor-element.elementor-element-62d3d9d8 .elementor-icon{font-size:41px;}.elementor-28 .elementor-element.elementor-element-62d3d9d8 .elementor-icon svg{height:41px;}.elementor-28 .elementor-element.elementor-element-62d3d9d8 .elementor-icon i, .elementor-28 .elementor-element.elementor-element-62d3d9d8 .elementor-icon svg{transform:rotate(0deg);}.elementor-28 .elementor-element.elementor-element-2fd6d577{--display:flex;--padding-top:5rem;--padding-bottom:5rem;--padding-left:0rem;--padding-right:0rem;}.elementor-28 .elementor-element.elementor-element-40e4758c{text-align:center;}.elementor-28 .elementor-element.elementor-element-40e4758c .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:36px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;}.elementor-28 .elementor-element.elementor-element-5248f5ad{text-align:center;}.elementor-28 .elementor-element.elementor-element-5248f5ad .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;color:#838383;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );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-28 .elementor-element.elementor-element-e82fc76{text-align:center;font-family:"Poppins", Sans-serif;font-size:14px;font-weight:400;}.elementor-28 .elementor-element.elementor-element-947c285{text-align:center;font-family:"Poppins", Sans-serif;font-size:14px;font-weight:400;}body.elementor-page-28:not(.elementor-motion-effects-element-type-background), body.elementor-page-28 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-28 .elementor-element.elementor-element-157ce50a{--content-width:750px;}}@media(min-width:1025px){.elementor-28 .elementor-element.elementor-element-157ce50a:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}@media(max-width:1024px){.elementor-28 .elementor-element.elementor-element-157ce50a{--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:5%;--padding-bottom:5%;--padding-left:8%;--padding-right:8%;}.elementor-28 .elementor-element.elementor-element-157ce50a:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}.elementor-28 .elementor-element.elementor-element-142b47d4 .elementor-heading-title{font-size:45px;}.elementor-28 .elementor-element.elementor-element-6a866820 .elementor-heading-title{font-size:14px;}.elementor-28 .elementor-element.elementor-element-40e4758c .elementor-heading-title{font-size:45px;}.elementor-28 .elementor-element.elementor-element-5248f5ad .elementor-heading-title{font-size:45px;}}@media(max-width:767px){.elementor-28 .elementor-element.elementor-element-157ce50a{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:30px 30px;--row-gap:30px;--column-gap:30px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:040%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}.elementor-28 .elementor-element.elementor-element-157ce50a:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-157ce50a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}.elementor-28 .elementor-element.elementor-element-142b47d4{text-align:center;}.elementor-28 .elementor-element.elementor-element-142b47d4 .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-28 .elementor-element.elementor-element-6a866820 .elementor-heading-title{font-size:14px;line-height:1.1em;}.elementor-28 .elementor-element.elementor-element-2fd6d577{--padding-top:10%;--padding-bottom:10%;--padding-left:5%;--padding-right:5%;}.elementor-28 .elementor-element.elementor-element-40e4758c .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-28 .elementor-element.elementor-element-5248f5ad .elementor-heading-title{font-size:14px;line-height:1.1em;}.elementor-28 .elementor-element.elementor-element-e82fc76{text-align:center;font-size:12px;}.elementor-28 .elementor-element.elementor-element-947c285{text-align:center;font-size:12px;}}/* Start custom CSS for shortcode, class: .elementor-element-6370f8c0 *//* ================================
   Gravity Forms – “Clean Contact” Theme (Abundant Village Green)
   ================================= */

:root {
  --gf-bg: #ffffff !important;
  --gf-text: #3D442F !important;
  --gf-muted: #3D442F !important;
  --gf-border: #e5e7eb !important;
  --gf-focus: #3D442F !important;
  --gf-focus-soft: rgba(61, 68, 47, 0.18) !important;
  --gf-shadow: 0 8px 24px rgba(17, 24, 39, 0.06) !important;
  --gf-radius: 5px !important;
  --gf-radius-lg: 16px !important;
  --gf-pad: 16px !important;
  --gf-gap: 24px !important;
}

/* Form container */
.gform_wrapper {
  max-width: 1080px !important;
  margin: 0 auto !important;
}

.gform_wrapper .gform_heading .gform_title {
  font-size: clamp(28px, 3.6vw, 48px) !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  color: var(--gf-text) !important;
  text-align: center !important;
  margin: 12px 0 8px !important;
}

.gform_wrapper .gform_heading .gform_description {
  text-align: center !important;
  color: var(--gf-muted) !important;
  font-size: 16px !important;
  max-width: 720px !important;
  margin: 0 auto 28px !important;
}

/* Grid layout */
.gform_wrapper .gform_body .gform_fields {
  gap: var(--gf-gap) !important;
}

/* Labels */
.gform_wrapper .gfield_label {
  display: block !important;
  font-weight: 600 !important;
  color: var(--gf-text) !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.1px !important;
}

/* Inputs + Textareas */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="url"],
.gform_wrapper select,
.gform_wrapper textarea {
  width: 100% !important;
  background: var(--gf-bg) !important;
  border: 1px solid var(--gf-border) !important;
  border-radius: var(--gf-radius) !important;
  padding: 14px 16px !important;
  font-size: 16px !important;
  color: var(--gf-text) !important;
  box-shadow: var(--gf-shadow) !important;
  outline: none !important;
  transition: border-color .2s ease, box-shadow .2s ease, transform .04s ease !important;
}

/* Focus states */
.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
  border-color: var(--gf-focus) !important;
  box-shadow:
    0 8px 24px rgba(17,24,39,0.06) !important,
    0 0 0 6px var(--gf-focus-soft) !important;
  transform: translateZ(0) !important;
}

/* Submit button */
.gform_wrapper .gform_button,
.gform_wrapper .button.gform_next_button,
.gform_wrapper .button.gform_previous_button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: #3D442F !important;
  color: #fff !important;
  border: none !important;
  border-radius: 11px !important;
  padding: 14px 22px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  box-shadow: 0 8px 20px rgba(61, 68, 47, 0.35) !important;
  transition: transform .08s ease, box-shadow .2s ease, opacity .2s ease !important;
}

.gform_wrapper .gform_button:hover {
  box-shadow: 0 12px 26px rgba(61, 68, 47, 0.45) !important;
}/* End custom CSS */