/*
 Theme Name: Astra Child
 Template: astra
 Author: Your Name
 Description: Child theme for Astra
 Version: 1.0.0
*/
html{
	overflow-x:hidden;
}
.Rato{
    font-family: 'rato';
}
.text-black{
    color:#292929 !important;
}
.overflow-scroll{
	overflow-y:auto;
	overflow-x:hidden;
	height:400px !important;
}
.hfe-search-form__input{
    margin-top: 12px !important;
}

.rounded-pill{
    border-radius: 100px;
}
.bg-red{
    background-color: #ED1E24!important;
}
.bg-gray{
    background-color: #F4F4F4 !important;
}
.text-red{
    color:#FF0000 !important;
}
.bg-red{
    background-color:#FF0000 !important;
}
.doc-card{
    font-weight: 500;
}
.filters form input, .filters form select {
    width: 100%;
    box-sizing: border-box;
    border-radius: 5px;
}
.btn-primary {
    background-color: #FF0000 !important;
    color: #fff !important;
    border-color: #FF0000 !important;
}
.border-primary{
    border: 1px solid #FF0000 !important;
}
.whatsapp{
    position:fixed;
    right:20px;
    bottom:80px;
    z-index:999;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .3s ease-in-out;
    transition: .5s ease-in-out;
}
.whatsapp:hover {
    -webkit-transform: scale(1);
    transform: scale(1.2);
    transition: .5s ease-in-out;
}
a.doc-time-button{
    text-decoration: none !important;
    font-weight: 500;
    border-radius: 100px;
}
button.doc-icon{
    border-radius: 100px;
    background-color: #FF0000;
}
.doc-card-text{
    font-weight:500;
}
.heart-box{
    position: relative;
}
.heart-box .elementor-icon-box-icon{
    position: absolute;
    top:-15%;
    left: 0;
    right: 0;
    bottom: 0;
}
.heart-box .elementor-icon{
    box-shadow: 0 4px 6px rgba(0, 0, 0, .15); /* Shadow for the icon */
}
.gradient-border {
    display: inline-block;
    padding: 2px;
    background: white; /* Background color of the box */
    /* Optional for rounded corners */
    position: relative; /* Position context for the pseudo-element */
    z-index: 0; /* Ensures the element is above the pseudo-element */
}
.gradient-border::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background: linear-gradient(180deg, #ED1E24, #393939); /* Gradient with specified colors */
    z-index: -1; /* Sends the pseudo-element behind the main box */
}
/* Timeline Column Line */
.patient-box-icon .elementor-icon-box-icon {
    position: relative;
}

.patient-box-icon .elementor-icon-box-icon::after {
    content: '';
    position: absolute;
    top: 100%; /* Start from the bottom of the icon */
    left: 50%; /* Center the line */
    transform: translateX(-50%);
    width: 2px; /* Line thickness */
    height: calc(100% + 34px); /* Line height with padding adjustment */
    background-color: white; /* Line color */
    z-index: 0;

}

/* Remove the line for the last icon box */
.last-icon .elementor-icon-box-icon::after {
    display: none;
}
/* Responsive Bootstrap-based column adjustments */
.custom-col {
    flex: 0 0 20%;
    max-width: 20%;
}

/* Add border-radius to the entire card */
.card {
    border-radius: 15px !important;
    overflow: hidden;
}
a.text-none{
    text-decoration: none !important;
}
/* Animation for cards on hover */
.animate-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    transform: translateY(-10px);
    box-shadow: 0 8px 16px rgb(170 170 170 / 20%);
}

/* Card footer responsiveness */
.card-footer {
    padding: 0.5rem 1rem;
}
.doc-time-button {
    font-size: 0.9rem;
    background-color: #f8f9fa;
    color: #000;
}
.doc-icon img {
    display: block;
    margin: 0 auto;
}
 .custom-table {
     width: 100%;
     border-collapse: separate;
     border-spacing: 0;
     border: 1px solid #ddd;
     border-radius: 10px;
     overflow: hidden;
 }

.custom-table thead {
    background: #ED1E24;
    color: #fff;
}

.custom-table thead th {
    padding: 15px;
    text-align: center;
    font-weight: 500;
    border: none;
    width: 50%;
    font-size: 17px;
}

.custom-table tbody td {
    background: #fff;
    padding: 20px;
    text-align: center;
    border-right: 1px solid #ddd;
    color: black;
}
.border-radius50{
    border-radius: 50px !important;
}
.font-size15{
    font-size: 15px !important;
}
.font-size13{
    font-size: 13px !important;
}

.custom-table tbody td:last-child {
    border-right: none;
}

@media (max-width: 768px) {
    .elementor-icon-box-icon::after {
        display: none; /* Hides the vertical line on smaller screens */
    }
    span.icon-right-arrow{
        font-size:25px !important;
    }
}
@media (max-width: 1320px) {
    .custom-col {
        flex: 0 0 33.33%;
        max-width: 33.33%;
    }
}
@media (max-width: 767.98px) {
    .custom-col {
        flex: 0 0 50%;
        max-width: 50%;
    }
}
@media (max-width: 575.98px) {
    .custom-col {
        flex: 0 0 100%;
        max-width: 50%;
    }
    .card-title {
        font-size: 14px !important; /* Smaller title font for mobile */
    }
    .doc-card {
        font-size: 0.85rem; /* Adjusted size for tags on mobile */
    }
    .doc-card-text {
        font-size: 0.8rem; /* Smaller size for qualifications on mobile */
    }
    .doc-time-button {
        font-size: 0.8rem; /* Button text font size for mobile */
    }
    .card-footer .btn {
        font-size: 10px; /* Smaller font size for mobile */
        padding: 6px 10px !important; /* Adjust padding for smaller screens */
    }
    .card-footer img {
        width: 16px;
        height: 16px; /* Resize icon for better fit */
    }
}
