/** 
  @ Service Page Styles
  -------------------------------
*/

.wdt-service-archive-wrapper { display: flex; flex-wrap: wrap; --ser-gap: 30px; gap: var(--ser-gap); }

.wdt-service-archive-wrapper.wdt-columns-5 > .wdt-service-item { flex: 0 0 calc(20% - calc(var(--ser-gap) / 1.25)); }
.wdt-service-archive-wrapper.wdt-columns-4 > .wdt-service-item { flex: 0 0 calc(25% - calc(var(--ser-gap) / 1.333)); }
.wdt-service-archive-wrapper.wdt-columns-3 > .wdt-service-item { flex: 0 0 calc(33.3333% - calc(var(--ser-gap) / 1.5)); }
.wdt-service-archive-wrapper.wdt-columns-2 > .wdt-service-item { flex: 0 0 calc(50% - calc(var(--ser-gap) / 2)); }
.wdt-service-archive-wrapper.wdt-columns-1 > .wdt-service-item { flex: 0 0 100%; }


/* ---------------------------------------------------------------------
 === Service Single ===
--------------------------------------------------------------------- */

.wdt_services_single-wrapper > div:last-child { margin-top: 30px; }

.wdt_services_single-wrapper .featured_image_wrap .services-featured-image img {
    width: 100%; max-width: 100%; min-height: 350px; object-fit: cover; object-position: center; aspect-ratio: 16 / 9; }

.wdt_services_single-wrapper .wdt-service-meta-wrap {
  width: 100%; background-color: rgba(var(--wdtSecondaryColorRgb), 1); color: var(--wdtAccentTxtColor); 
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; 
  padding: clamp(1.25rem, 1.1388rem + 0.6135vw, 1.875rem); /*30px - 20px*/ gap: 15px 30px; 
  backdrop-filter: blur(4px); margin-bottom: 0; }

.wdt_services_single-wrapper .featured_image_wrap ~ .wdt-service-meta-wrap {     
  position: absolute; left: 0; background-color: rgba(var(--wdtSecondaryColorRgb), 0.65); 
  -webkit-transform: translateY(-100%); transform: translateY(-100%); }

.wdt_services_single-wrapper .wdt-service-meta-wrap label {
  display: block; font-family: var(--wdtFontTypo_Alt); font-size: clamp(1.125rem, 1.1028rem + 0.1227vw, 1.25rem); /*20px - 18px*/ 
  font-weight: var(--wdtFontWeight_Alt); line-height: normal; text-transform: capitalize; margin-bottom: 10px; }


/** Social Icons */

.wdt_services_single-wrapper .wdt-service-meta-wrap .wdt-service-social-icons h4 {
  font-family: var(--wdtFontTypo_Alt); font-size: clamp(1.125rem, 1.1028rem + 0.1227vw, 1.25rem); /*20px - 18px*/ 
  font-weight: var(--wdtFontWeight_Alt); text-transform: capitalize; color: var(--wdtAccentTxtColor); margin: 0 0 12px 0; }

.wdt_services_single-wrapper .wdt-service-meta-wrap .wdt-service-social-icons ul.wdt-social-list {
  display: flex; align-items: center; justify-content: center; gap: 6px; padding: 0; list-style: none; margin: 0; }

.wdt_services_single-wrapper .wdt-service-meta-wrap .wdt-service-social-icons ul.wdt-social-list li { padding: 0; }

.wdt_services_single-wrapper .wdt-service-meta-wrap .wdt-service-social-icons ul.wdt-social-list li a {
  width: 32px; height: 32px; background-color: var(--wdtPrimaryColor); color: var(--wdtAccentTxtColor); 
  display: flex; align-items: center; justify-content: center; -webkit-transition: var(--wdt-Livi-Transition); 
  transition: var(--wdt-Livi-Transition); }

.wdt_services_single-wrapper .wdt-service-meta-wrap .wdt-service-social-icons ul.wdt-social-list li a:hover {
  background-color: var(--wdtAccentTxtColor); color: var(--wdtHeadAltColor); }


/** Image Element */

.wdt-service-item .wdt-service-media-group { position: relative; }

.wdt-service-item .wdt-service-image,
.wdt-service-item .wdt-service-image > a { display: inline-flex; }

.wdt-service-item .wdt-service-image > a > img { height: inherit; align-self: start; -webkit-border-radius: inherit; border-radius: inherit; }


/** Icon Element */

.wdt-service-item .wdt-service-type-icon { display: inline-flex; justify-content: center; align-items: center; 
    font-size: 2rem; height: 1em; line-height: 1; padding: 5px; position: relative; text-align: center; vertical-align: top; width: 1em; z-index: 0; 
    color: inherit; font-size: inherit; height: 1em; width: 1em; }

.wdt-service-item .wdt-service-type-icon svg { fill: currentColor; height: 1em; width: 1em; }
.wdt-service-item .wdt-service-type-icon img { object-fit: contain; object-position: center center; height: 1em; width: 1em; }


/** Title & Title Element Group */

.wdt-service-item .wdt-service-title h5 { 
    display: block; font-family: var(--wdtFontTypo_Alt); font-size: clamp(1.5rem, 1.4333rem + 0.3681vw, 1.875rem); /*30px - 24px*/ 
    font-weight: var(--wdtFontWeight_Alt); text-transform: capitalize; margin-top: 0px; margin-bottom: 0; text-transform: none; }

.wdt-service-item .wdt-service-title h5, 
.wdt-service-item .wdt-service-title h5 a { color: var(--wdt-elementor-color-primary); }
.wdt-service-item .wdt-service-title h5 a:hover { color: var(--wdt-elementor-color-accent); }


/** Content & Description Element */

.wdt-service-item .wdt-service-detail-group { position: relative; }
.wdt-service-item .wdt-service-description { 
    position: relative; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; 
    line-clamp: 2; -webkit-box-orient: vertical; z-index: 0; }


/** Button Element */

.wdt-service-item .wdt-service-button { position: relative; z-index: 0; }

.wdt-service-item .wdt-service-button > a { border: 1px solid transparent; background-color: var(--wdt-elementor-color-accent); 
    color: var(--wdt-elementor-color-white); fill: var(--wdt-elementor-color-white); display: inline-block; line-height: 1; 
    font-size: 1em; padding: 0.75em 1.5em; text-align: center; -webkit-border-radius: var(--wdtRadius_Zero); border-radius: var(--wdtRadius_Zero); }

.wdt-service-item .wdt-service-button > a:hover { background-color: var(--wdtSecondaryColor); }


/* ---------------------------------------------------------------------
 === Default Structure Style ===
--------------------------------------------------------------------- */

/* Common Styles */

.wdt-service-item { position: relative; overflow: hidden; display: grid; align-items: end; }
.wdt-service-item .wdt-service-media-group {     
    grid-area: 1 / -1; position: relative; overflow: hidden; 
    display: inline-grid; align-content: end; margin-top: 1px; }
.wdt-service-item > div:not(:last-child) { margin-bottom: 0; }

/* Media Group Styles */

/* .wdt-service-item .wdt-service-media-group,
.wdt-service-item .wdt-service-media-group .wdt-service-image,
.wdt-service-item .wdt-service-media-group .wdt-service-image a,
.wdt-service-item .wdt-service-media-group .wdt-service-image a img {
    height: 100%; max-height: 100%; min-height: 100%; object-fit: cover; object-position: center; } */

.wdt-service-item .wdt-service-media-group .wdt-service-image a img {
    -webkit-transform: scale(1); transform: scale(1); 
    -webkit-transition: var(--wdt-Livi-Transition); transition: var(--wdt-Livi-Transition);
    backface-visibility: hidden; will-change: transform; isolation: isolate; }

.wdt-service-item:hover .wdt-service-media-group .wdt-service-image a img {
    -webkit-transform: scale(1.1); transform: scale(1.1); }

/* Detail Group Styles */

.wdt-service-item .wdt-service-detail-group {     
    grid-area: 1 / -1; align-content: end; padding: clamp(1.25rem, 1.1388rem + 0.6135vw, 1.875rem); /*30px - 20px*/ 
    color: var(--wdtAccentTxtColor); filter: drop-shadow(0px 0px 0 rgba(var(--wdtHeadAltColorRgb), 1)); }
    
.wdt-service-item .wdt-service-detail-group > div:not(:last-child),
.wdt-service-item .wdt-service-detail-group > div.wdt-service-top-group > div:not(:last-child) {
    margin-bottom: 8px; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group > div:not(:last-child) {
    margin-right: 20px; }

.wdt-service-item .wdt-service-detail-group::before {
    content: ''; position: absolute; width: 100%; height: 100%; top: auto; right: 0; bottom: 0; left: 0;
    background-color: rgba(var(--wdtSecondaryColorRgb), 0.75); backdrop-filter: blur(4px);
    -webkit-transform: translateY(var(--height)); transform: translateY(var(--height)); transform-origin: center bottom; 
    -webkit-transition: var(--wdt-Livi-Transition); transition: var(--wdt-Livi-Transition); 
    opacity: 1; backface-visibility: hidden; will-change: transform; z-index: 0; margin: auto; }

.wdt-service-item:hover .wdt-service-detail-group::before {
    -webkit-transform: translateY(0); transform: translateY(0); 
    transform-origin: center bottom; opacity: 1; transition-delay: .08s; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-top-group .wdt-service-type-price-group,
.wdt-service-item .wdt-service-detail-group > div.wdt-service-top-group .wdt-service-type-price-group .wdt-service-type-price-wrapper {
    display: inline-flex; flex-wrap: wrap; align-items: center; font-family: var(--wdtFontTypo_Base); 
    font-size: clamp(0.875rem, 0.8528rem + 0.1227vw, 1rem); /*16px - 14px*/ font-weight: var(--wdtFontWeight_Base); 
    letter-spacing: 0; text-transform: uppercase; gap: 5px; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-top-group .wdt-service-type-price-group .wdt-service-type-price del {
    opacity: 0.7; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group {
    display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--wdtBorderColor); 
    padding-top: clamp(0.9375rem, 0.8819rem + 0.3067vw, 1.25rem); /*20px - 15px*/ 
    margin-top: clamp(0.9375rem, 0.8819rem + 0.3067vw, 1.25rem); /*20px - 15px*/ }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group .wdt-service-excerpt p { margin-bottom: 0; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group .wdt-service-button a { 
    width: 60px; height: 60px; font-size: var(--wdtFontSize_H4); padding: 10px; 
    display: flex; align-items: center; justify-content: center; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group .wdt-service-button a:hover {
    background-color: var(--wdtAccentTxtColor); color: var(--wdtHeadAltColor); }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group .wdt-service-button a .wdticon-angle-double-right:before {
    content: '\e800'; font-family: "common-right-arrow"; margin: auto; }


/* Top & Bottom Group Hover Styles */

.wdt-service-item .wdt-service-detail-group > div { position: relative; z-index: 1; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-top-group:not(:last-child) { margin: 0; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-top-group {
    -webkit-transform: translateY(var(--height)); transform: translateY(var(--height)); 
    -webkit-transition: var(--wdt-Livi-Transition); transition: var(--wdt-Livi-Transition);
    backface-visibility: hidden; will-change: transform; }

.wdt-service-item:hover .wdt-service-detail-group > div.wdt-service-top-group {
    -webkit-transform: translateY(0); transform: translateY(0); transition-delay: .16s; }

.wdt-service-item .wdt-service-detail-group > div.wdt-service-bottom-group {
    -webkit-transform: translateY(var(--height)); transform: translateY(var(--height)); 
    -webkit-transition: var(--wdt-Livi-Transition); transition: var(--wdt-Livi-Transition); 
    opacity: 0; backface-visibility: hidden; will-change: transform; }

.wdt-service-item:hover .wdt-service-detail-group > div.wdt-service-bottom-group {
    -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; transition-delay: .24s; }


/* Colors */

.wdt-service-item .wdt-service-title h5, 
.wdt-service-item .wdt-service-title h5 a { color: var(--wdtAccentTxtColor); }
.wdt-service-item .wdt-service-title h5 a:hover { color: var(--wdtLinkHoverColor); }


/*--------------------------------------------------------------
    Responsive
--------------------------------------------------------------*/

@media only screen and (max-width: 1540px) {
    .wdt-service-archive-wrapper.wdt-columns-4 > .wdt-service-item { flex: 0 0 calc(33.3333% - calc(var(--ser-gap) / 1.333)); }
}

@media only screen and (max-width: 1024px) {
    .wdt-service-archive-wrapper.wdt-columns-4 > .wdt-service-item { flex: 0 0 calc(50% - calc(var(--ser-gap) / 1.333)); }
}

@media only screen and (max-width: 767px) {
    .wdt-service-archive-wrapper.wdt-columns-4 > .wdt-service-item { flex: 0 0 100%; }
}