.offer-grid {
    border: 1.5px solid transparent !important;
    background: linear-gradient(white, white) padding-box,
    linear-gradient(180deg, #A88442 0%, #FFFFFF 90%) border-box;
    border-radius: 25px;
}
.grid-offer-image.elementor-widget-image a{
    display: inline !important;
}
a {
    -webkit-tap-highlight-color: transparent;
}

.grid-title{
        display: block;
    width: 100% !important;
    white-space: nowrap;
    padding: 1.5px 0;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    -ms-text-overflow: ellipsis;
    -moz-binding: url(ellipsis.xml#ellipsis);
    
}
.grid-separator {
    mask: linear-gradient(to right,transparent,white 10% 90%,transparent);
}
.offer-normal-price:after {
    content: "";
    display: block;
    background: #fc1c03;
    height: 1px;
    transform: rotate(-5deg);
    position: absolute;
    top: 45%;
    right: 0;
    left: 0;
}
        .clinic-badge {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            background: rgba(212, 160, 95, 0.2);
            color: #FBF8F5;
            padding: 8px 18px;
            border-radius: 15px;
            font-size: 15px;
            font-weight: 500;
            border: 1px solid rgba(212, 160, 95, 0.3);
            width: fit-content;
            backdrop-filter: blur(5px);
        }


        .clinic-badge {
            position: relative;
            overflow: visible;
        }

        .clinic-badge::before {
            content: '';
            position: absolute;
            width: 12px;
            height: 12px;
               background: radial-gradient(
        circle,
        #ffffff 0%,
        #f0f0ff 20%,
        #e0e8ff 40%,
        rgba(200, 210, 255, 0.4) 70%,
        transparent 100%
    );
    border-radius: 50%;
    filter: blur(3.5px);
    box-shadow: 
        0 0 6px #ffffff,
        0 0 14px #e0e8ff,
        0 0 28px rgba(180, 200, 255, 0.8),
        0 0 45px rgba(150, 180, 255, 0.5);
            z-index: 10;
            animation: shinyOrbit 8s linear infinite;
        }

@keyframes shinyOrbit {
    0%    { top: -7px; left: -7px; }
    12.5% { top: -7px; left: calc(50% - 7px); }
    25%   { top: -7px; left: calc(100% - 7px); }
    37.5% { top: calc(50% - 7px); left: calc(100% - 7px); }
    50%   { top: calc(100% - 7px); left: calc(100% - 7px); }
    62.5% { top: calc(100% - 7px); left: calc(50% - 7px); }
    75%   { top: calc(100% - 7px); left: -7px; }
    87.5% { top: calc(50% - 7px); left: -7px; }
    100%  { top: -7px; left: -7px; }
}

.gold-line {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 80px;
    height: 4px;
    background: linear-gradient(to left, #a67c47, #e2c99c);
    border-radius: 4px;
    margin-top: 8px;
}
@media (max-width: 767px) {
	.hero-container {
    background: linear-gradient(135deg, #f8f4ed 0%, #fdfcfb 100%) !important; 
}
}
.elementor-counter .elementor-counter-number, .elementor-counter-number-suffix {

  font-weight: bold;
  background: linear-gradient(to bottom, #ad8b49, rgb(212, 175, 55) 30%, rgb(212, 175, 55) 70%, transparent);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent; /* fallback برای مرورگرهای قدیمی */
}
.count-border-sec, .count-border-sec-mob{
    border-right: 2px solid;
  border-image: linear-gradient(to bottom, transparent, rgb(212, 175, 55) 30%, rgb(212, 175, 55) 70%, transparent) 1;
}
@media (max-width: 768px) {
    .count-border-sec{
        border-right: 2px solid;
  border-image: linear-gradient(to bottom, transparent, rgb(212, 175, 55) 30%, rgb(212, 175, 55) 70%, transparent) 1;
    }
    .count-border-sec.mob{
        border-right: 0;
    }

}
.scroll-arrow-block{
    display: flex;
    flex-direction: column;
  justify-content: center;
  align-items: center;
}
.scroll-arrow {
  width: 12px;
  height: 12px;
  transform: rotate(45deg);
  border-right: 2px solid #b69d74;
  border-bottom: 2px solid #b69d74;
  animation: arrow-wave 1s infinite;
  animation-direction: alternate;
}
.scroll-arrow:nth-child(1) {
  animation-delay: 0.1s;
}
.scroll-arrow:nth-child(2) {
  animation-delay: 0.2s;
}
.scroll-arrow:nth-child(3) {
  animation-delay: 0.3s;
}
.main-title .highlight-name {
    color: rgb(198, 167, 105);
}
@keyframes arrow-wave {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
.fade-eng-title{
    opacity: .9;
    mask: linear-gradient(#fff, transparent);
    -webkit-mask: linear-gradient(#fff, transparent);
}
.service-hp-icon{
    line-height: 0;
}


.hero-container {
    padding: 5rem 0 3.5rem  0;
}
.elementor-swiper-button.elementor-swiper-button-next, .elementor-swiper-button.elementor-swiper-button-prev {
    background: #ffffff3b;
    backdrop-filter: blur(3px);
    padding: 5px;
    border-radius: 50px;
    box-shadow: 0 0 8px -3px rgb(17 17 17 / 15%);
    opacity: 0;
}
@media screen and (max-width: 767px) {
		.elementor-swiper-button.elementor-swiper-button-next, .elementor-swiper-button.elementor-swiper-button-prev {
		display: none !important;
		}
		.hero-slogan div{
		color: #A88442 !important;
		}
		.main-title h1{
		color: #3e3e3e !important;
		}
		.clinic-badge{
		color: #4d4d4d !important;
		}
}
.offer-carousel .elementor-grid{
    padding-bottom: 10px !important;
}
@media screen and (max-width: 767px) {
	.elementor-swiper-button.elementor-swiper-button-next, .elementor-swiper-button.elementor-swiper-button-prev {
	display: none !important;
	}
}

.offer-carousel:hover .elementor-swiper-button.elementor-swiper-button-next,.offer-carousel:hover .elementor-swiper-button.elementor-swiper-button-prev{
    opacity: 1;
}
/* .offer-carousel { */
    /* overflow-x: clip; */
/* } */
/* .offer-carousel :is(.swiper, .swiper-slide) { */
    /* overflow: visible; */
/* } */


.davinci-btn2 .elementor-button, .davinci-btn1 .elementor-button {
    position: relative;
    display: flex;
    text-transform: uppercase;
    z-index: 0;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.02, 0.01, 0.47, 1);
}

.davinci-btn2 .elementor-button:hover span, .davinci-btn1 .elementor-button:hover span {
    animation: storm 0.7s ease-in-out both;
    animation-delay: 0.06s;
}
 .davinci-btn1 .elementor-button::before, .davinci-btn1 .elementor-button::after{
	 background: #a98644 !important;
 }
.davinci-btn2 .elementor-button::before, .davinci-btn2 .elementor-button::after, .davinci-btn1 .elementor-button::before, .davinci-btn1 .elementor-button::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #fff;
    opacity: 0;
    transition: transform 0.15s cubic-bezier(0.02, 0.01, 0.47, 1), opacity 0.15s cubic-bezier(0.02, 0.01, 0.47, 1);
    z-index: -1;
    transform: translate(100%, -25%) translate3d(0, 0, 0);
}

.davinci-btn2 .elementor-button:hover::before, .davinci-btn2 .elementor-button:hover::after, .davinci-btn1 .elementor-button:hover::before, .davinci-btn1 .elementor-button:hover::after {
    opacity: 0.15;
    transition: transform 0.2s cubic-bezier(0.02, 0.01, 0.47, 1), opacity 0.2s cubic-bezier(0.02, 0.01, 0.47, 1);
}

.davinci-btn2 .elementor-button:hover::before, .davinci-btn1 .elementor-button:hover::before {
    transform: translate3d(50%, 0, 0) scale(0.9);
}

.davinci-btn2 .elementor-button:hover::after, .davinci-btn1 .elementor-button:hover::after {
    transform: translate(50%, 0) scale(1.1);
}
/*==========countdown styles=========*/
.countdown {
    display: flex;
    justify-content: center;
    align-items: center;
    transform: scale(0.4);
    pointer-events: none;
    height: 50px;
    top: 10px;
}

body.elementor-page-594 :is(.flip, .flip-clock-divider) {
    flex-shrink: 0;
}

body.elementor-page-594 .flip-clock-wrapper ul li {
    line-height: 100px;
}

body.elementor-page-594 .flip-clock-wrapper ul li a div div.inn {
    color: #ffffff;
    text-shadow: 0 1px 2px #090909;
    background-color: #A88442 ;
    font-size: 80px
}

body.elementor-page-594 .flip-clock-divider .flip-clock-label {
    /* top: -1em !important; */
    font-size: 32px !important;
}
.flip-clock-wrapper .flip {
    box-shadow: 0 2px 5px rgb(112 91 48) !important;
}
.flip-clock-wrapper ul {
    background: #b8954e !important;
}
/*==========countdown styles=========*/


/*==========portfolio styles=========*/
.portfolio-grid{
    background: linear-gradient(white, white) padding-box padding-box, linear-gradient(rgb(168, 132, 66) 0%, rgb(255, 255, 255) 90%) border-box border-box;
    border-radius: 25px;
    border-width: 1.5px !important;
    border-style: solid !important;
    border-color: transparent !important;
    border-image: initial !important;
}
.portfolio-after-img:after{
    content: 'AFTER';
    color: #FFF;
    position: absolute;
    width: 100%;
    bottom: 8px;
    left: 8px;
    text-align: left;
}
.portfolio-before-img:after{
    content: 'BEFORE';
    color: #FFF;
    position: absolute;
    width: 100%;
    bottom: 8px;
    left: 8px;
    text-align: left;
}
.portfolio-brand .before{
    color: #757575 !important;
}
.contactus-icon i:before{
    color: #C6A769;
}
.map-btn{
    cursor: pointer;
}
.elementor-message {
    text-align: center;
    font-weight: 500;
}
#cta{
    cursor: pointer;
}
a.dialog-close-button.dialog-lightbox-close-button:focus {
    outline: none;
}
.table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 2rem 0;
}

.table-responsive table {
  width: 100%;
  border-collapse: collapse;
  min-width: 600px;
}

.table-responsive th,
.table-responsive td {
  padding: 10px;
  text-align: center;
  border: 1px solid #ccc;
  white-space: nowrap;
  background-color: #fff;
}

.table-responsive caption {
  caption-side: top;
  font-weight: bold;
  margin-bottom: 10px;
}