
/* ===== Service List ===== */

.dt-services-list .dt-sc-service-item .dt-sc-content-elements-group { display: grid; }
.dt-services-list .dt-sc-service-item .dt-sc-content-elements-group .dt-sc-service-list-image,
.dt-services-list .dt-sc-service-item .dt-sc-content-elements-group .dt-sc-service-price-item { grid-area: 1/-1;  }

.dt-services-list .dt-sc-service-item .dt-sc-content-elements-group .dt-sc-service-price-item { place-self: end; 
    padding: 8px 14px; margin: 10px; background: var(--wdt_Booking_PrimaryColor); color: var(--wdt_Booking_AccentTxtColor);
    font-weight: var(--wdtFontWeight_Base); }



/* ===== Service Type - I ===== */

.dt-sc-service-item.type1{position: relative; padding: 50px 50px 70px; background-color: var(--wdtPrimaryColor); transition:var(--wdtBaseTransition); border:1px solid var(--wdtBorderColor); }
.dt-sc-service-item.type1:hover{ padding:50px 50px; background:transparent; }
.dt-sc-service-item.type1 .service-details { height: 100%; width: 100%; display: flex; align-items: start; justify-content: center; flex-direction: column; background-color: transparent; border: none; padding: 0; transition: var(--wdt-Ad-Transition); -webkit-transition: var(--wdt-Ad-Transition); position: static; }

.dt-sc-service-item.type1 .service-details > div:not(:last-child) { margin: 0; }
.dt-sc-service-item.type1:hover .service-details { border-color: var(--wdtBorderColor); }

.dt-sc-service-item.type1 .service-details .dt-sc-content-title { width: 100%; }
.dt-sc-service-item.type1 .service-details .dt-sc-content-title .dt-sc-service-title { font-size: clamp(1.375rem, 1.25rem + 0.625vw, 2rem); /* Min-22 & Max-32 */ text-transform: capitalize; margin-bottom: clamp(0.625rem, 0.5rem + 0.625vw, 1.25rem); /* 20 - 10 */ }
.dt-sc-service-item.type1 .service-details .dt-sc-content-title .dt-sc-service-title a { display: inline; color: var(--wdtHeadAltColor); background: linear-gradient(90deg,currentColor,currentColor); background-position: bottom center; background-repeat: no-repeat; background-size: 0% 1px; transition: var(--wdt-Ad-Transition); -webkit-transition: var(--wdt-Ad-Transition); transition-property: background-size; -webkit-transition-property: background-size; }
.dt-sc-service-item.type1 .service-details .dt-sc-content-title .dt-sc-service-title a:hover,
.dt-sc-service-item.type1 .service-details .dt-sc-content-title .dt-sc-service-title a:focus { background-position: bottom center; background-size: 100% 1px; }

.dt-sc-service-item.type1 .service-details .dt-sc-content-button{ margin-top: clamp(0.625rem, 0.2092rem + 0.8673vw, 1.25rem);/*20 - 10*/ }
.dt-sc-service-item.type1 .service-details .dt-sc-content-button > a {
    font-size: var(--wdtFontTypo_Base);
    padding: 0;
    font-family: var(--wdtFontTypo_Base);
    font-weight: var(--wdtFontWeight_Ext);
    line-height: 1;
    text-transform: capitalize;
    transition: var(--wdt-Ad-Transition);
    -webkit-transition: var(--wdt-Ad-Transition);
    position: relative;
    background-image: none;
    display: flex;
    align-items: center;
    background-color: transparent;
    color: var(--wdtLinkColor);
    }
.dt-sc-service-item.type1 .service-details .dt-sc-content-button > a:hover{
    color: var(--wdtLinkColor);
}
.dt-sc-service-item.type1 .service-details .dt-sc-content-button > a::before {
    content: '';
    position: absolute;
    width: 8px;
    height: 2px;
    background-color: currentColor;
    top: 50%;
    right: 10px;
    transition: var(--wdt-Ad-Transition);
    -webkit-transition: var(--wdt-Ad-Transition);
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    opacity: 0;
    margin-top: 1px;
}
.dt-sc-service-item.type1 .service-details .dt-sc-content-button > a::after {
    content: '';
    width: 10px;
    height: 10px;
    background-color: currentColor;
    border-radius: var(--wdtRadius_Full);
    border: 5px solid transparent;
    transition: var(--wdt-Ad-Transition);
    -webkit-transition: var(--wdt-Ad-Transition);
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    display: flex;
    margin-left: 10px;
    margin-top: 2px;
}
.dt-sc-service-item.type1 .service-details .dt-sc-content-button > a:hover:before {
    opacity: 1;
    transform: translateY(-50%) translateX(7px);
    -webkit-transform: translateY(-50%) translateX(7px);
}
.dt-sc-service-item.type1 .service-details .dt-sc-content-button > a:hover:after {
    border-width: 3px 3px 0px 0px;
    border-color: currentColor;
    border-bottom-color: transparent;
    border-left-color: transparent;
    border-radius: 0;
    transform: rotate(45deg) scale(0.8);
    -webkit-transform: rotate(45deg) scale(0.8);
    background-color: transparent;
}

.dt-sc-service-item.type1 > .image { margin: 0 0 30px; width:100%; }
.dt-sc-service-item.type1 > .image img { width:100%;; height: 150px; object-fit: cover; object-position: center; transition:var(--wdtBaseTransition); }
.dt-sc-service-item.type1:hover > .image img { height:170px; }

@media screen and (min-width:1281px){
    .wdt-cus-h2-service-01 .dt-column:nth-child(2){ margin-top:50px; }
    .wdt-cus-h2-service-01 .dt-column:nth-child(2n-1){ margin-top:-50px }
    .wdt-cus-h2-service-01 .dt-column:nth-child(1){ margin-top:0 }
}

@media screen and (max-width:1280px){
    .dt-sc-service-item.type1{
        padding:40px 30px 60px;
    }
    .dt-sc-service-item.type1:hover{
        padding:30px 30px 40px
    }
    .dt-sc-service-item.type1 > .image img {
        height: 120px;
    }
    .dt-sc-service-item.type1:hover > .image img {
        height:150px;
    }
}

@media screen and (max-width:1024px){
    .dt-sc-service-item.type1{
        padding:30px 25px 30px
    }
    .dt-sc-service-item.type1:hover{
        padding:30px 25px 30px
    }
    .dt-sc-service-item.type1:hover > .image img {
        height:120px;
    }
}

/* ===== Service Type - II ===== */

.dt-sc-service-item.type2 { border: 1px solid var(--wdt_Booking_BorderColor); padding: 10px; }

.dt-sc-service-item.type2 .service-details { padding: 30px 10px 10px; }

.dt-sc-service-item.type2 .service-details .dt-sc-content-group { display: grid; align-items: start; text-align: center; 
    grid-template-columns: repeat( auto-fit, minmax(150px, 1fr) ); gap: 10px; margin-top: 20px; }
.dt-sc-service-item.type2 .service-details .dt-sc-content-group > a { margin: 0px; padding-left: 1em; padding-right: 1em; }



/* ===== Booking Form - Popup ===== */

.dt-sc-service-items-container .dt-sc-service-item-type2 .dt-sc-service-item-form-wrapper { padding: 60px;
    border-radius: var(--wdt-booking-Radius_Zero); border: none; background-color: var(--wdt_Booking_BodyBGColor);
    height: fit-content; max-height: calc(100vh - 2*1.5em); position: relative; width: 100%; margin: auto; max-width: 620px; }

.dt-sc-service-items-container .dt-sc-service-item-type2 { position: fixed; top: 50%; left: 50%; 
    -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); z-index: 99999;
    -webkit-transition: var(--wdt_Booking_Ad-Transition); transition: var(--wdt_Booking_Ad-Transition);
    width: 100vw; height: 100vh; background-color: rgba(0, 0, 0, 0.18); display: flex; align-items: center; justify-content: center; }


.dt-sc-service-item-type2 .dt-sc-service-item-type2-close { display: block; clear: both; 
    position: absolute; top: -22px; right: -22px; transition: var(--wdt_Booking_Ad-Transition);}

.dt-sc-service-item-type2 .dt-sc-service-item-type2-close span { position: relative; width: 45px; height: 45px;
    background-color: var(--wdt_Booking_PrimaryColor); border-radius: var(--wdt_Booking_Radius_Zero); cursor: pointer;
    border: 0 solid var(--wdt_Booking_BorderColor); display: flex; padding: 5px; align-items: center; justify-content: center;
    -webkit-transition: var(--wdt_Booking_Ad-Transition); transition: var(--wdt_Booking_Ad-Transition); }

.dt-sc-service-item-type2 .dt-sc-service-item-type2-close span:hover { 
    background-color: var(--wdt_Booking_SecondaryColor); border-color: var(--wdt_Booking_SecondaryColor); }


.dt-sc-service-item-type2 .dt-sc-service-item-type2-close i:after,
.dt-sc-service-item-type2 .dt-sc-service-item-type2-close i:before { content: "" !important; width: 20px; height: 1px;
    background-color: var(--wdt_Booking_AccentTxtColor); position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto;
    -webkit-transition: var(--wdt_Booking_Ad-Transition); transition: var(--wdt_Booking_Ad-Transition); }

.dt-sc-service-item-type2 .dt-sc-service-item-type2-close i:before { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
.dt-sc-service-item-type2 .dt-sc-service-item-type2-close i:after { -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.dt-sc-service-item-type2 .dt-sc-service-item-type2-close span:hover i:before { 
    -webkit-transform: rotate(-135deg); transform: rotate(-135deg); background-color: var(--wdt_Booking_AccentTxtColor); }

.dt-sc-service-item-type2 .dt-sc-service-item-type2-close span:hover i:after { 
    -webkit-transform: rotate(135deg); transform: rotate(135deg); background-color: var(--wdt_Booking_AccentTxtColor); }  

