.elementor-29 .elementor-element.elementor-element-449b323{--display:flex;--min-height:650px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--overlay-opacity:0.5;}.elementor-29 .elementor-element.elementor-element-449b323:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-449b323 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://keyfuturehomes.co.uk/wp-content/uploads/2026/01/premium_photo-1723291333623-ab3150b19799.avif");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-29 .elementor-element.elementor-element-449b323::before, .elementor-29 .elementor-element.elementor-element-449b323 > .elementor-background-video-container::before, .elementor-29 .elementor-element.elementor-element-449b323 > .e-con-inner > .elementor-background-video-container::before, .elementor-29 .elementor-element.elementor-element-449b323 > .elementor-background-slideshow::before, .elementor-29 .elementor-element.elementor-element-449b323 > .e-con-inner > .elementor-background-slideshow::before, .elementor-29 .elementor-element.elementor-element-449b323 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(249deg, #FFFFFF00 0%, var( --e-global-color-af11f32 ) 100%);}.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-29 .elementor-element.elementor-element-61ddfe5{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;}.elementor-29 .elementor-element.elementor-element-61ddfe5.elementor-element{--align-self:flex-start;}.elementor-29 .elementor-element.elementor-element-61ddfe5 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:76px;font-weight:500;line-height:74px;color:#FFFFFF;}.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-29 .elementor-element.elementor-element-92517ef{width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;font-family:"Poppins", Sans-serif;font-size:18px;font-weight:400;color:#FFFFFF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-29 .elementor-element.elementor-element-a7324c5 .elementor-button{background-color:var( --e-global-color-af11f32 );font-family:"Poppins", Sans-serif;font-size:18px;font-weight:500;padding:16px 32px 16px 32px;}.elementor-29 .elementor-element.elementor-element-a7324c5 .elementor-button:hover, .elementor-29 .elementor-element.elementor-element-a7324c5 .elementor-button:focus{background-color:var( --e-global-color-25cdae1 );}.elementor-29 .elementor-element.elementor-element-a7324c5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-29 .elementor-element.elementor-element-7e5a4b1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-7e5a4b1:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-7e5a4b1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-05e0e4a{--display:flex;--min-height:0px;--justify-content:flex-end;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-29 .elementor-element.elementor-element-ac5842f{--display:flex;--min-height:0px;--justify-content:center;}.elementor-29 .elementor-element.elementor-element-6792321{--display:flex;--min-height:550px;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:-100px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-29 .elementor-element.elementor-element-6792321:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-6792321 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-29 .elementor-element.elementor-element-d039cec{text-align:start;}.elementor-29 .elementor-element.elementor-element-d039cec .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-25cdae1 );}.elementor-29 .elementor-element.elementor-element-83473a1 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-ce54672{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-d7a1352 .elementor-button{background-color:var( --e-global-color-af11f32 );font-family:"Poppins", Sans-serif;font-size:18px;font-weight:500;padding:16px 32px 16px 32px;}.elementor-29 .elementor-element.elementor-element-d7a1352 .elementor-button:hover, .elementor-29 .elementor-element.elementor-element-d7a1352 .elementor-button:focus{background-color:var( --e-global-color-25cdae1 );}.elementor-29 .elementor-element.elementor-element-d7a1352{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-29 .elementor-element.elementor-element-fa00016{--display:flex;--min-height:500px;--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:center;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-fa00016:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-fa00016 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F9F9;}.elementor-29 .elementor-element.elementor-element-3ba3490{--display:flex;--min-height:350px;--border-radius:16px 16px 16px 16px;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.13);--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-29 .elementor-element.elementor-element-3ba3490:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-3ba3490 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#BACE62;}.elementor-29 .elementor-element.elementor-element-3ba3490:hover{border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-af11f32 );--border-color:var( --e-global-color-af11f32 );box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.13);}.elementor-29 .elementor-element.elementor-element-3ba3490, .elementor-29 .elementor-element.elementor-element-3ba3490::before{--border-transition:0.3s;}.elementor-29 .elementor-element.elementor-element-73e9b19{text-align:center;}.elementor-29 .elementor-element.elementor-element-73e9b19 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;color:#005982;}.elementor-29 .elementor-element.elementor-element-f5c82f9{text-align:center;font-family:"Poppins", Sans-serif;font-size:18px;font-weight:400;text-shadow:0px 0px 10px rgba(0, 0, 0, 0.1);color:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-558af2f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-02dc83b{text-align:center;}.elementor-29 .elementor-element.elementor-element-02dc83b .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;color:var( --e-global-color-4a25bd8 );}.elementor-29 .elementor-element.elementor-element-68bd2f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-29 .elementor-element.elementor-element-07fe9a7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-29 .elementor-element.elementor-element-07fe9a7 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;color:#005982;}.elementor-29 .elementor-element.elementor-element-780ecae{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 40px) 0px;text-align:center;}.elementor-29 .elementor-element.elementor-element-780ecae .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;color:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-26bd1e6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--flex-wrap:wrap;}.elementor-29 .elementor-element.elementor-element-39eaf01{--display:flex;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{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-29 .elementor-element.elementor-element-9cabaa8 .elementor-icon-box-wrapper{gap:0px;}.elementor-29 .elementor-element.elementor-element-9cabaa8 .elementor-icon-box-title{margin-block-end:20px;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-9cabaa8 .elementor-icon-box-title, .elementor-29 .elementor-element.elementor-element-9cabaa8 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:600;}.elementor-29 .elementor-element.elementor-element-9cabaa8:has(:hover) .elementor-icon-box-title,
					 .elementor-29 .elementor-element.elementor-element-9cabaa8:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-9cabaa8 .elementor-icon-box-description{font-family:"Poppins", Sans-serif;font-weight:400;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-30149a5{--display:flex;}.elementor-29 .elementor-element.elementor-element-f0e2601 .elementor-icon-box-wrapper{gap:0px;}.elementor-29 .elementor-element.elementor-element-f0e2601 .elementor-icon-box-title{margin-block-end:20px;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-f0e2601 .elementor-icon-box-title, .elementor-29 .elementor-element.elementor-element-f0e2601 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:600;}.elementor-29 .elementor-element.elementor-element-f0e2601:has(:hover) .elementor-icon-box-title,
					 .elementor-29 .elementor-element.elementor-element-f0e2601:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-f0e2601 .elementor-icon-box-description{font-family:"Poppins", Sans-serif;font-weight:400;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-4fc6024{--display:flex;}.elementor-29 .elementor-element.elementor-element-a2c6db5 .elementor-icon-box-wrapper{gap:0px;}.elementor-29 .elementor-element.elementor-element-a2c6db5 .elementor-icon-box-title{margin-block-end:20px;color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-a2c6db5 .elementor-icon-box-title, .elementor-29 .elementor-element.elementor-element-a2c6db5 .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:28px;font-weight:600;}.elementor-29 .elementor-element.elementor-element-a2c6db5:has(:hover) .elementor-icon-box-title,
					 .elementor-29 .elementor-element.elementor-element-a2c6db5:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-af11f32 );}.elementor-29 .elementor-element.elementor-element-a2c6db5 .elementor-icon-box-description{font-family:"Poppins", Sans-serif;font-weight:400;color:var( --e-global-color-af11f32 );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-29 .elementor-element.elementor-element-92517ef{font-size:17px;}.elementor-29 .elementor-element.elementor-element-a7324c5 .elementor-button{padding:14px 28px 14px 28px;}.elementor-29 .elementor-element.elementor-element-7e5a4b1{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-29 .elementor-element.elementor-element-ac5842f{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:20px;}.elementor-29 .elementor-element.elementor-element-6792321{--min-height:370px;}.elementor-29 .elementor-element.elementor-element-83473a1 .elementor-heading-title{font-size:28px;}.elementor-29 .elementor-element.elementor-element-ce54672{font-size:17px;}.elementor-29 .elementor-element.elementor-element-d7a1352 .elementor-button{padding:14px 28px 14px 28px;}.elementor-29 .elementor-element.elementor-element-3ba3490{--justify-content:center;}.elementor-29 .elementor-element.elementor-element-73e9b19 .elementor-heading-title{font-size:28px;}.elementor-29 .elementor-element.elementor-element-f5c82f9{font-size:17px;}.elementor-29 .elementor-element.elementor-element-780ecae .elementor-heading-title{font-size:28px;}.elementor-29 .elementor-element.elementor-element-39eaf01{--min-height:0px;}}@media(max-width:767px){.elementor-29 .elementor-element.elementor-element-92517ef{--container-widget-width:376px;--container-widget-flex-grow:0;width:var( --container-widget-width, 376px );max-width:376px;text-align:center;font-size:16px;}.elementor-29 .elementor-element.elementor-element-92517ef.elementor-element{--align-self:center;}.elementor-29 .elementor-element.elementor-element-7e5a4b1{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-29 .elementor-element.elementor-element-6792321{--width:100%;--margin-top:0px;--margin-bottom:0px;--margin-left:10px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:10px;--padding-right:10px;}.elementor-29 .elementor-element.elementor-element-ce54672{font-size:16px;}.elementor-29 .elementor-element.elementor-element-fa00016{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-29 .elementor-element.elementor-element-3ba3490{--padding-top:30px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}}@media(min-width:768px){.elementor-29 .elementor-element.elementor-element-6792321{--width:532px;}.elementor-29 .elementor-element.elementor-element-3ba3490{--width:50%;}.elementor-29 .elementor-element.elementor-element-39eaf01{--width:32%;}.elementor-29 .elementor-element.elementor-element-30149a5{--width:32%;}.elementor-29 .elementor-element.elementor-element-4fc6024{--width:32%;}}@media(max-width:1024px) and (min-width:768px){.elementor-29 .elementor-element.elementor-element-3ba3490{--width:589px;}.elementor-29 .elementor-element.elementor-element-39eaf01{--width:45%;}.elementor-29 .elementor-element.elementor-element-30149a5{--width:45%;}.elementor-29 .elementor-element.elementor-element-4fc6024{--width:50%;}}@media(min-width:1025px){.elementor-29 .elementor-element.elementor-element-449b323:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-449b323 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}/* Start custom CSS for heading, class: .elementor-element-d039cec *//* Dot + line under eyebrow text */
/* Works with heading alignment: left / center / right */
.eyebrow-divider .elementor-heading-title,
.eyebrow-divider .jkit-heading-title {
  position: relative;
  display: inline-block;      /* moves as one block when you align the heading */
  padding-bottom: 20px;       /* space for the decoration */
}

/* Small dot */
.eyebrow-divider .elementor-heading-title::before,
.eyebrow-divider .jkit-heading-title::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #BACE62;        /* accent color */
}

/* Short line */
.eyebrow-divider .elementor-heading-title::after,
.eyebrow-divider .jkit-heading-title::after {
  content: "";
  position: absolute;
  left: 14px;                 /* distance from dot to line */
  bottom: 2px;                /* align with center of dot */
  width: 28px;                /* length of line */
  height: 2px;
  background: #BACE62;        /* same accent color */
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-02dc83b *//* Full-width quote band */
.quote-band {
  background: linear-gradient(135deg, #0f5c7d 0%, #005982 50%, #003550 100%);
  text-align: center;
  color: #ffffff;
}

.quote-band .elementor-heading-title {
  position: relative;
  max-width: 820px;
  margin: 0 auto;
  font-size: 26px;
  font-weight: 500;
  font-style: italic;
  line-height: 1.5;
  color: #ffffff !important;   /* force strong white text */
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.35); /* improves readability */
}

/* Soft quote marks */
.quote-band .elementor-heading-title::before,
.quote-band .elementor-heading-title::after {
  content: "“";
  position: absolute;
  font-size: 52px;
  opacity: 0.18;
  top: -6px;
  color: rgba(255, 255, 255, 0.6);
}

.quote-band .elementor-heading-title::before {
  left: -32px;
}

.quote-band .elementor-heading-title::after {
  content: "”";
  right: -32px;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-07fe9a7 *//* Dot + line under eyebrow text */
/* Works with heading alignment: left / center / right */
.eyebrow-divider .elementor-heading-title,
.eyebrow-divider .jkit-heading-title {
  position: relative;
  display: inline-block;      /* moves as one block when you align the heading */
  padding-bottom: 20px;       /* space for the decoration */
}

/* Small dot */
.eyebrow-divider .elementor-heading-title::before,
.eyebrow-divider .jkit-heading-title::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #005982;        /* accent color */
}

/* Short line */
.eyebrow-divider .elementor-heading-title::after,
.eyebrow-divider .jkit-heading-title::after {
  content: "";
  position: absolute;
  left: 14px;                 /* distance from dot to line */
  bottom: 2px;                /* align with center of dot */
  width: 28px;                /* length of line */
  height: 2px;
  background: #005982;        /* same accent color */
}

/* Layout for service cards row */
.service-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 24px; /* space between cards */
}

/* Desktop: 3 cards per row */
.service-col {
  flex: 0 0 32%;
}

/* Tablet: 2 cards per row */
@media (max-width: 1024px) {
  .service-col {
    flex: 0 0 48%;
  }
}

/* Mobile: 1 card per row, centered */
@media (max-width: 767px) {
  .service-row {
    justify-content: center;
  }

  .service-col {
    flex: 0 0 100%;
    max-width: 480px;
    margin-bottom: 20px;
  }

  /* Slightly reduce padding/height on mobile */
  .service-card .elementor-icon-box-wrapper {
    min-height: 0;
    padding: 24px 20px 26px;
  }

  .service-card .elementor-icon {
    font-size: 26px;
  }
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-9cabaa8 *//* Clean, high‑contrast service cards */

.service-card .elementor-icon-box-wrapper {
  background: #ffffff;
  border-radius: 18px;
  padding: 28px 24px 30px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
  min-height: 340px; /* make all cards at least this tall */
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background 0.25s ease;
}

/* Icon in a soft colored circle */
.service-card .elementor-icon-box-icon {
  margin-bottom: 18px;
}

.service-card .elementor-icon {
  background: rgba(0, 89, 130, 0.10);   /* light blue circle */
  border-radius: 50%;
  padding: 14px;
  font-size: 32px;
  color: #005982;                        /* main blue for icon */
  transition:
    background 0.25s ease,
    color 0.25s ease,
    transform 0.25s ease;
}

/* Title & text – dark for readability */
.service-card .elementor-icon-box-title {
  margin-bottom: 10px;
  font-weight: 600;
  color: #005982;                        /* your main blue */
}

.service-card .elementor-icon-box-description {
  color: #005982;                        /* dark teal, on-brand, not black */
  line-height: 1.7;
  font-size: 14px;
}

/* Hover effect */
.service-card:hover .elementor-icon-box-wrapper {
  transform: translateY(-8px);
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.18);
  background: #ffffff;
}

.service-card:hover .elementor-icon {
  background: #005982;
  color: #ffffff;
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-f0e2601 *//* Clean, high‑contrast service cards */

.service-card .elementor-icon-box-wrapper {
  background: #ffffff;
  border-radius: 18px;
  padding: 28px 24px 30px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background 0.25s ease;
}

/* Icon in a soft colored circle */
.service-card .elementor-icon-box-icon {
  margin-bottom: 18px;
}

.service-card .elementor-icon {
  background: rgba(0, 89, 130, 0.10);   /* light blue circle */
  border-radius: 50%;
  padding: 14px;
  font-size: 32px;
  color: #005982;                        /* main blue for icon */
  transition:
    background 0.25s ease,
    color 0.25s ease,
    transform 0.25s ease;
}

/* Title & text – dark for readability */
.service-card .elementor-icon-box-title {
  margin-bottom: 10px;
  font-weight: 600;
  color: #005982;                        /* your main blue */
}

.service-card .elementor-icon-box-description {
  color: #005982;                        /* dark teal, on-brand, not black */
  line-height: 1.7;
  font-size: 14px;
}

/* Hover effect */
.service-card:hover .elementor-icon-box-wrapper {
  transform: translateY(-8px);
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.18);
  background: #ffffff;
}

.service-card:hover .elementor-icon {
  background: #005982;
  color: #ffffff;
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for icon-box, class: .elementor-element-a2c6db5 *//* Clean, high‑contrast service cards */

.service-card .elementor-icon-box-wrapper {
  background: #ffffff;
  border-radius: 18px;
  padding: 28px 24px 30px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    background 0.25s ease;
}

/* Icon in a soft colored circle */
.service-card .elementor-icon-box-icon {
  margin-bottom: 18px;
}

.service-card .elementor-icon {
  background: rgba(0, 89, 130, 0.10);   /* light blue circle */
  border-radius: 50%;
  padding: 14px;
  font-size: 32px;
  color: #005982;                        /* main blue for icon */
  transition:
    background 0.25s ease,
    color 0.25s ease,
    transform 0.25s ease;
}

/* Title & text – dark for readability */
.service-card .elementor-icon-box-title {
  margin-bottom: 10px;
  font-weight: 600;
  color: #005982;                        /* your main blue */
}

.service-card .elementor-icon-box-description {
  color: #005982;                        /* dark teal, on-brand, not black */
  line-height: 1.7;
  font-size: 14px;
}

/* Hover effect */
.service-card:hover .elementor-icon-box-wrapper {
  transform: translateY(-8px);
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.18);
  background: #ffffff;
}

.service-card:hover .elementor-icon {
  background: #005982;
  color: #ffffff;
  transform: scale(1.08);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-68bd2f1 *//* Reusable gradient background for sections with class "gradient-bg" */
.gradient-bg {
  background-image: linear-gradient(
    135deg,
    #bace62 0%,
    #64a6d5 50%,
    #0f5c7d 100%
  );
  background-size: cover;
  background-repeat: no-repeat;
}/* End custom CSS */