.elementor-15 .elementor-element.elementor-element-728de3f{--display:flex;--min-height:400px;--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-15 .elementor-element.elementor-element-728de3f:not(.elementor-motion-effects-element-type-background), .elementor-15 .elementor-element.elementor-element-728de3f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mistyrose-echidna-863805.hostingersite.com/wp-content/uploads/2026/08/Platinum-Roof-Restoration-Banner.png");background-position:center center;}.elementor-15 .elementor-element.elementor-element-728de3f::before, .elementor-15 .elementor-element.elementor-element-728de3f > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-728de3f > .e-con-inner > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-728de3f > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-728de3f > .e-con-inner > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-728de3f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.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-15 .elementor-element.elementor-element-7f6c48e{text-align:center;}.elementor-15 .elementor-element.elementor-element-7f6c48e .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:50px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-049499d{--display:flex;--overlay-opacity:0.7;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-15 .elementor-element.elementor-element-049499d:not(.elementor-motion-effects-element-type-background), .elementor-15 .elementor-element.elementor-element-049499d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mistyrose-echidna-863805.hostingersite.com/wp-content/uploads/2026/08/Roof-Restoration-Service.png");background-repeat:no-repeat;background-size:cover;}.elementor-15 .elementor-element.elementor-element-049499d::before, .elementor-15 .elementor-element.elementor-element-049499d > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-049499d > .e-con-inner > .elementor-background-video-container::before, .elementor-15 .elementor-element.elementor-element-049499d > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-049499d > .e-con-inner > .elementor-background-slideshow::before, .elementor-15 .elementor-element.elementor-element-049499d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-primary );--background-overlay:'';}.elementor-15 .elementor-element.elementor-element-c6ccea5{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-15 .elementor-element.elementor-element-c6ccea5 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-b59ccc6{text-align:center;}.elementor-15 .elementor-element.elementor-element-b59ccc6 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-4205dbb{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-widget-image-box .elementor-image-box-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-widget-image-box:has(:hover) .elementor-image-box-title,
					 .elementor-widget-image-box:has(:focus) .elementor-image-box-title{color:var( --e-global-color-primary );}.elementor-widget-image-box .elementor-image-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-15 .elementor-element.elementor-element-d290948:hover{--e-transform-translateX:3px;--e-transform-translateY:-3px;box-shadow:2px 2px 10px 2px rgba(255, 255, 255, 0.5);}.elementor-15 .elementor-element.elementor-element-d290948{border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-15 .elementor-element.elementor-element-d290948 .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-15 .elementor-element.elementor-element-d290948 .elementor-image-box-img img{height:250px;object-fit:cover;object-position:center center;transition-duration:0.3s;}.elementor-15 .elementor-element.elementor-element-d290948 .elementor-image-box-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-d290948:has(:hover) .elementor-image-box-title,
					 .elementor-15 .elementor-element.elementor-element-d290948:has(:focus) .elementor-image-box-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-d290948 .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-6d84428:hover{--e-transform-translateX:3px;--e-transform-translateY:-3px;box-shadow:2px 2px 10px 2px rgba(255, 255, 255, 0.5);}.elementor-15 .elementor-element.elementor-element-6d84428{border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-15 .elementor-element.elementor-element-6d84428 .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-15 .elementor-element.elementor-element-6d84428 .elementor-image-box-img img{height:250px;object-fit:cover;object-position:center center;transition-duration:0.3s;}.elementor-15 .elementor-element.elementor-element-6d84428 .elementor-image-box-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-6d84428:has(:hover) .elementor-image-box-title,
					 .elementor-15 .elementor-element.elementor-element-6d84428:has(:focus) .elementor-image-box-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-6d84428 .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-312b0ae:hover{--e-transform-translateX:3px;--e-transform-translateY:-3px;box-shadow:2px 2px 10px 2px rgba(255, 255, 255, 0.5);}.elementor-15 .elementor-element.elementor-element-312b0ae{border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-15 .elementor-element.elementor-element-312b0ae .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-15 .elementor-element.elementor-element-312b0ae .elementor-image-box-img img{height:250px;object-fit:cover;object-position:center center;transition-duration:0.3s;}.elementor-15 .elementor-element.elementor-element-312b0ae .elementor-image-box-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-312b0ae:has(:hover) .elementor-image-box-title,
					 .elementor-15 .elementor-element.elementor-element-312b0ae:has(:focus) .elementor-image-box-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-312b0ae .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-49e52ec:hover{--e-transform-translateX:3px;--e-transform-translateY:-3px;box-shadow:2px 2px 10px 2px rgba(255, 255, 255, 0.5);}.elementor-15 .elementor-element.elementor-element-49e52ec{border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-15 .elementor-element.elementor-element-49e52ec .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-15 .elementor-element.elementor-element-49e52ec .elementor-image-box-img img{height:250px;object-fit:cover;object-position:center center;transition-duration:0.3s;}.elementor-15 .elementor-element.elementor-element-49e52ec .elementor-image-box-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-49e52ec:has(:hover) .elementor-image-box-title,
					 .elementor-15 .elementor-element.elementor-element-49e52ec:has(:focus) .elementor-image-box-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-49e52ec .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-a1134e9:hover{--e-transform-translateX:3px;--e-transform-translateY:-3px;box-shadow:2px 2px 10px 2px rgba(255, 255, 255, 0.5);}.elementor-15 .elementor-element.elementor-element-a1134e9{border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-15 .elementor-element.elementor-element-a1134e9 .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-15 .elementor-element.elementor-element-a1134e9 .elementor-image-box-img img{height:250px;object-fit:cover;object-position:center center;transition-duration:0.3s;}.elementor-15 .elementor-element.elementor-element-a1134e9 .elementor-image-box-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-a1134e9:has(:hover) .elementor-image-box-title,
					 .elementor-15 .elementor-element.elementor-element-a1134e9:has(:focus) .elementor-image-box-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-a1134e9 .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-2e9dabb:hover{--e-transform-translateX:3px;--e-transform-translateY:-3px;box-shadow:2px 2px 10px 2px rgba(255, 255, 255, 0.5);}.elementor-15 .elementor-element.elementor-element-2e9dabb{border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-15 .elementor-element.elementor-element-2e9dabb .elementor-image-box-wrapper .elementor-image-box-img{width:100%;}.elementor-15 .elementor-element.elementor-element-2e9dabb .elementor-image-box-img img{height:250px;object-fit:cover;object-position:center center;transition-duration:0.3s;}.elementor-15 .elementor-element.elementor-element-2e9dabb .elementor-image-box-title{font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-2e9dabb:has(:hover) .elementor-image-box-title,
					 .elementor-15 .elementor-element.elementor-element-2e9dabb:has(:focus) .elementor-image-box-title{color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-2e9dabb .elementor-image-box-description{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:400;color:var( --e-global-color-secondary );}.elementor-15 .elementor-element.elementor-element-d5d1406{--display:flex;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-15 .elementor-element.elementor-element-4205dbb{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-15 .elementor-element.elementor-element-728de3f{--min-height:350px;}.elementor-15 .elementor-element.elementor-element-4205dbb{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}@media(min-width:768px){.elementor-15 .elementor-element.elementor-element-049499d{--content-width:1200px;}.elementor-15 .elementor-element.elementor-element-d5d1406{--content-width:1200px;}}/* Start custom CSS for container, class: .elementor-element-4205dbb *//* PREMIUM SERVICE CARDS — lean version */

.customservices .elementor-widget-image-box,
.customservices .elementor-widget-image-box .elementor-widget-container {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
}

.customservices .elementor-image-box-wrapper {
  position: relative;
  min-height: 300px; /* was fixed height + overflow:hidden — that clipped taller titles */
  display: flex;
  flex-direction: column;
  padding: 12px;
  box-sizing: border-box;
  background: linear-gradient(145deg, rgba(255,255,255,0.10), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.08);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: transform 0.45s cubic-bezier(.2,.8,.2,1), box-shadow 0.45s ease;
}

.customservices .elementor-image-box-wrapper:hover {
  transform: translateY(-7px);
  box-shadow: 0 22px 50px rgba(0,0,0,0.38);
}

/* Image */

.customservices .elementor-image-box-img {
  position: relative;
  overflow: hidden;
  border-radius: 13px;
}

.customservices .elementor-image-box-img img {
  width: 100%;
  height: 220px !important;
  display: block;
  object-fit: cover;
  border-radius: 13px;
  filter: brightness(0.88) saturate(0.95);
  transition: transform 0.8s cubic-bezier(.2,.8,.2,1), filter 0.6s ease;
}

.customservices .elementor-image-box-wrapper:hover .elementor-image-box-img img {
  transform: scale(1.08);
  filter: brightness(0.55) saturate(1.05);
}

.customservices .elementor-image-box-img::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 13px;
  background: linear-gradient(180deg, rgba(0,0,0,0.02) 20%, rgba(0,0,0,0.18) 55%, rgba(0,0,0,0.65) 100%);
  pointer-events: none;
}

/* Title */

.customservices .elementor-image-box-title {
  margin: 14px 5px 0;
  font-size: 17px;
  font-weight: 600;
  color: #fff;
  transition: opacity 0.3s ease, transform 0.4s ease;
}

.customservices .elementor-image-box-title a {
  color: inherit;
  text-decoration: none;
}

.customservices .elementor-image-box-wrapper:hover .elementor-image-box-title {
  opacity: 0;
  transform: translateY(-12px);
}

/* Description (shows on hover) */

.customservices .elementor-image-box-description {
  position: absolute;
  inset: 0;
  z-index: 10;
  margin: 0;
  padding: 35px 28px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 14px;
  line-height: 1.65;
  color: rgba(255,255,255,0.92);
  background: linear-gradient(145deg, rgba(6,18,31,0.94), rgba(6,18,31,0.82));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 18px;
  opacity: 0;
  transform: scale(0.92);
  transition: opacity 0.4s ease, transform 0.45s cubic-bezier(.2,.8,.2,1);
  pointer-events: none; /* clicks pass through to the stretched link */
}

.customservices .elementor-image-box-wrapper:hover .elementor-image-box-description {
  opacity: 1;
  transform: scale(1);
}

/* Whole-card click target — real link is only around the title text,
   so we stretch an invisible pseudo-element off it over the full card.
   Title text itself stays untouched/visible. */

.customservices .elementor-image-box-title a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 20;
}

/* Mobile */

@media (max-width: 767px) {
  .customservices .elementor-image-box-wrapper {
    height: 280px;
    border-radius: 15px;
  }
  .customservices .elementor-image-box-img img {
    height: 185px;
  }
  .customservices .elementor-image-box-title {
    font-size: 15px;
  }
  .customservices .elementor-image-box-description {
    padding: 25px 20px;
    font-size: 13px;
    line-height: 1.55;
  }
}/* End custom CSS */