
/* =========================
    Service Styles
========================== */
.dt-sc-content-item { background-color: var(--wdtTertiaryColor); border: 1px solid transparent; transition: var(--wdtAltTransition); }
.dt-sc-content-item:hover { border-color: var(--wdtPrimaryColor); }

.dt-sc-service-item .service-details { 
	text-align: center; width: 100%; padding-top: clamp(1.25rem, 1.1058rem + 0.641vw, 1.875rem) /* 20px - 30px */; }
.dt-sc-service-item .service-details > div:not(:last-child) { margin: 0 0 20px; }
.dt-sc-service-item .service-details > div:not(:last-child) { padding: 0 20px; }

.dt-sc-service-item .service-details .dt-sc-content-title .dt-sc-service-title { font-size: 20px; font-weight: normal; margin: 0px; color: var(--wdtHeadAltColor); }
.dt-sc-service-item .service-details .dt-sc-button { width: 100%; background-color: rgba(var(--wdtPrimaryColorRgb), .5); color: var(--wdtHeadAltColor); transition: var(--wdtAltTransition); }
.dt-sc-service-item:hover .service-details .dt-sc-button { width: 100%; background-color: rgba(var(--wdtPrimaryColorRgb), 1); color: var(--wdtAccentTxtColor); text-indent: 0; }
.dt-sc-service-item .service-details .dt-sc-button:after {content: '\f105'; transition: var(--wdtAltTransition);
    font-family: "Dental-ele Icons"; margin-left: .25em; opacity: 0; transform: translateX(-10px); display: inline-block; }
.dt-sc-service-item .service-details .dt-sc-button:hover:after { opacity: 1; transform: translateX(0px); }

.dt-sc-service-duration-item:has(+ .dt-sc-service-price-item) { padding-bottom: 10px; border-bottom: 1px dashed var(--wdt_Booking_BorderColor); }


.dt-sc-service-meta ul { padding: 0px; margin: 0px; list-style-type: none; }


.dt-sc-service-meta ul .dt-sc-service-meta-item { line-height: normal; padding: 8px 0px; }
.dt-sc-service-meta ul .dt-sc-service-meta-item:not(:last-child) { border-bottom: 1px dashed var(--wdt_Booking_BorderColor); }

.dt-sc-service-meta ul .dt-sc-service-meta-item .dt-sc-service-meta-title { font-weight: 600; margin-right: 10px; }

/* =========================
    Service Archives
========================== */

.dt-sc-service-container[class*="dt-column-"] { display: grid; gap: 30px; }
.dt-sc-service-container.dt-column-4 { grid-template-columns: repeat(4, 1fr); }
.dt-sc-service-container.dt-column-3 { grid-template-columns: repeat(3, 1fr); }
.dt-sc-service-container.dt-column-2 { grid-template-columns: repeat(2, 1fr); }

.dt-sc-service-container .dt-sc-service-item .dt-sc-content-elements-group { display: grid; }
.dt-sc-service-container .dt-sc-service-item .dt-sc-content-elements-group .dt-sc-service-list-image,
.dt-sc-service-container .dt-sc-service-item .dt-sc-content-elements-group .dt-sc-service-price-item { grid-area: 1/-1;  }

.dt-sc-service-container .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); }


/* =========================
    Staff Styles
========================== */

.dt-sc-staff-item { width: 100%; display: inline-block; transition: var(--wdt_Booking_Ad-Transition); 
	-moz-transition: var(--wdt_Booking_Ad-Transition); -webkit-transition: var(--wdt_Booking_Ad-Transition); }

.dt-sc-staff-item .image { display: grid; place-items: end; }

.dt-sc-staff-item .image img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }

.dt-sc-staff-item .image > a,
.dt-sc-staff-item .image > .dt-sc-staff-overlay { grid-area: 1/-1; width: 100%; height: 100%; }
.dt-sc-staff-item .image > .dt-sc-staff-overlay { align-content: end; text-align: center; padding: 24px; position: relative; }

.dt-sc-staff-item .dt-sc-staff-details { text-align: center; width: 100%; padding-top: clamp(1.25rem, 1.1058rem + 0.641vw, 1.875rem) /* 20px - 30px */; }
.dt-sc-staff-item .dt-sc-staff-details > div:not(:last-child) { margin: 0 0 10px; }

.dt-sc-staff-item .dt-sc-staff-details .dt-sc-content-title .dt-sc-staff-title { margin: 0px; }
.dt-sc-staff-item .dt-sc-staff-details .dt-sc-staff-role { text-transform: uppercase; font-size: 14px; color: var(--wdt_Booking_PrimaryColor); }

/* Type - I */
.dt-sc-staff-item.type1 { background-color: transparent; border: 1px solid transparent; height: 100%; -webkit-transition: var(--wdtBaseTransition); transition: var(--wdtBaseTransition); }
.dt-sc-staff-item.type1:hover { background-color: var(--wdtTertiaryColor); border-color: var(--wdt-elementor-color-primary); }
.dt-sc-staff-item.type1 .dt-sc-staff-details { padding: 30px 10px; }
.dt-sc-staff-item.type1 .dt-sc-staff-details .dt-sc-content-title-wrapper { display: flex; flex-wrap: wrap; align-items: center; justify-content: center;  }
.dt-sc-staff-item.type1 .dt-sc-staff-details h4 { margin: 0; font-weight: normal; }
.dt-sc-staff-item.type1 .dt-sc-staff-details .dt-sc-staff-role { transition: var(--wdtAltTransition);
	font-size: var(--wdtFontSize_Base); font-weight: normal; margin-left: 10px; color: var(--wdt-elementor-color-secondary); }
.dt-sc-staff-item.type1:hover .dt-sc-staff-details .dt-sc-staff-role { color: var(--wdt-elementor-color-primary); }
.dt-sc-staff-item.type1 .dt-sc-staff-details > div.dt-sc-staff-department-container:not(:last-child) { margin-bottom: 20px; }
.dt-sc-staff-item.type1 .dt-sc-staff-details p.staff-department { margin-bottom: 0; }
.dt-sc-staff-item.type1 .dt-sc-staff-details .staff-department > a { color: var(--wdt-elementor-color-text); }
.dt-sc-staff-item.type1 .dt-sc-staff-details .dt-sc-staff-social-container .staff-opt-title { display: none; }
.dt-sc-staff-item.type1 .dt-sc-staff-details .dt-sc-team-social li a { font-size: var(--wdtFontSize_Base); color: var(--wdt-elementor-color-text); }
.dt-sc-staff-item.type1:hover .dt-sc-staff-details .dt-sc-team-social li a:hover { color: var(--wdt-elementor-color-secondary); }
.dt-sc-staff-item.type1:hover .dt-sc-staff-details .dt-sc-team-social li a { color: var(--wdt-elementor-color-primary); }
.dt-sc-staff-item.type1 .dt-sc-staff-details .dt-sc-content-button a { font-size: var(--wdtFontSize_Base); font-weight: normal; 
	padding: 0; background-color: transparent; color: var(--wdt-elementor-color-secondary); opacity: 0; transition: var(--wdtAltTransition); }
.dt-sc-staff-item.type1:hover .dt-sc-staff-details .dt-sc-content-button a:hover { color: var(--wdt-elementor-color-primary); }
.dt-sc-staff-item.type1:hover .dt-sc-staff-details .dt-sc-content-button a { opacity: 1; }

.dt-sc-staff-item.type1 .image > .dt-sc-staff-overlay .dt-sc-team-social { background-color: var(--wdt_Booking_BodyBGColor);
    margin: 0px auto; max-width: fit-content; padding: 8px 18px; transition: var(--wdt_Booking_Ad-Transition); }


/* Type - II */

.dt-sc-staff-item.type2 .image { aspect-ratio: 1; border-radius: 50%; padding: 20px; 
	background-color: var(--wdt_Booking_TertiaryColor); will-change: transform; }

.dt-sc-staff-item.type2 .image > a,
.dt-sc-staff-item.type2 .image > .dt-sc-staff-overlay { border-radius: 50%; overflow: hidden; will-change: transform; }

.dt-sc-staff-item.type2 .image > .dt-sc-staff-overlay .dt-sc-staff-social-container { 
	-webkit-transform: translateY(-100%); transform: translateY(-100%); }

.dt-sc-staff-item.type2 .image > .dt-sc-staff-overlay .dt-sc-team-social { transition: var(--wdt_Booking_Ad-Transition);
	-webkit-transform: translateX(-10px); transform: translateX(-10px); opacity: 0; visibility: hidden; }

.dt-sc-staff-item.type2:hover .image > .dt-sc-staff-overlay .dt-sc-team-social {
	-webkit-transform: translateX(0px); transform: translateX(0px); opacity: 1; visibility: visible; }

.dt-sc-staff-item.type2 .image > .dt-sc-staff-overlay:before { content: ""; width: 100%; height: 100%; opacity: 0; visibility: hidden;
	display: inline-block; top: 0; left: 0; position: absolute; background: linear-gradient(0deg, var(--wdt_Booking_PrimaryColor), transparent);
	pointer-events: none; transition: var(--wdt_Booking_Ad-Transition); }

.dt-sc-staff-item.type2:hover .image > .dt-sc-staff-overlay:before { opacity: 1; visibility: visible; }

.dt-sc-staff-item.type2:hover .image .dt-sc-team-social li a { color: var(--wdt_Booking_LinkColor); }
.dt-sc-staff-item.type2:hover .image .dt-sc-team-social li a:hover { color: var(--wdt_Booking_AccentTxtColor); }


/* =========================
    Staff Archives
========================== */

.dt-sc-staff-container[class*="dt-column-"] { display: grid; gap: 30px; }
.dt-sc-staff-container.dt-column-4 { grid-template-columns: repeat(4, 1fr); }
.dt-sc-staff-container.dt-column-3 { grid-template-columns: repeat(3, 1fr); }
.dt-sc-staff-container.dt-column-2 { grid-template-columns: repeat(2, 1fr); }



/* =========================  
	Social Icon - Common  
========================= */

.dt-sc-team-social { margin: 0px; padding: 0px; }

.dt-sc-team-social li { display: inline-flex; margin: 0px 5px; padding: 0px; line-height: normal; }
.dt-sc-team-social li a { width: 20px; height: 20px; font-size: 0.9rem; line-height: 1em; 
	display: inline-flex; align-items: center; justify-content: center; }

.dt-sc-team.hide-social-show-on-hover.rounded .dt-sc-team-social li { margin: 5px; }


/*=========================   
	AT Media Rules - Responsive
========================= */

@media only screen and (max-width: 1280px) { 

	.dt-sc-service-container.dt-column-4, 
	.dt-sc-staff-container.dt-column-4 { grid-template-columns: repeat(3, 1fr); }
}

@media only screen and (min-width: 1025px) {

    .dt-sc-staff-item.type1 .image > .dt-sc-staff-overlay .dt-sc-team-social { 
        -webkit-transform: translateX(-10px); transform: translateX(-10px); opacity: 0; visibility: hidden; }
    
    .dt-sc-staff-item.type1:hover .image > .dt-sc-staff-overlay .dt-sc-team-social {
        -webkit-transform: translateX(0px); transform: translateX(0px); opacity: 1; visibility: visible; }
    
}

@media only screen and (max-width: 1024px) { 

	.dt-sc-service-container[class*="dt-column-"],
	.dt-sc-staff-container[class*="dt-column-"] { grid-template-columns: repeat(2, 1fr); }

}

@media only screen and (min-width:768px) { }

@media only screen and (max-width: 767px) { }

@media only screen and (min-width: 480px) { }	

@media only screen and (max-width: 479px) {

	.dt-sc-service-container[class*="dt-column-"],
	.dt-sc-staff-container[class*="dt-column-"] { grid-template-columns: repeat(1, 1fr); }
}