/**
* Theme Name: Cardioly Child
* Description: This is a child theme of Cardioly.
* Author: <a href="https://designervily.com/">Designervily</a>
* Template: cardioly
* Version: 1.0
*/
/* This file is intentionally left blank. All custom styles are now in assets/css/style.css */
/* Custom override for slider area */
.dsvy-slider-area {
    background-color: transparent !important;
}

/* Add vector image before and after dsvy-element-title text */
.dsvy-element-title {
    position: relative;
    display: block;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    align-items: center;
}
.dsvy-element-title::before,
.dsvy-element-title::after {
    content: '';
    display: inline-block;
    width: 45px;
    height: 32px;
    background-image: url('images/Vector.png');
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0px 2px -6px 0px;
}
.dsvy-team-style-1 .designervily-box-team-position {
    background-color: transparent !important;
    color: #273353 !important;
}

.slider-container { display: flex; align-items: center; justify-content: center; position: relative; }
.slider { display: flex; gap: 20px; overflow-x: auto; scroll-behavior: smooth; width: 90%; max-width: 1000px; }
.card {
    flex: 0 0 272px;
    background: #fff;
    border-radius: 10px;
    padding: 0px 20px 20px 20px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}
.date { color: #ff5722; font-weight: bold; }
.name { color: #0a1f44; margin: 10px 0; }
.stars { color: gold; }
.text { font-size: 0.9rem; margin: 15px 0; color: #555; }
.reviewer { font-weight: bold; }
.prev, .next { background: #ff3d00; border: none; color: white; font-size: 24px; padding: 10px 14px; border-radius: 50%; cursor: pointer; position: absolute; }
.prev { left: -50px; }
.next { right: -50px; }
@media(max-width: 768px) {
    .slider { flex-direction: column; align-items: center; overflow: hidden; }
    .card { width: 90%; }
    .prev, .next { top: auto; bottom: -60px; position: static; margin: 5px; }
}

@media (min-width: 1201px) {
    .dsvy-header-style-4 .navigation-top {
        margin-left: unset !important;
    }
}

.designervily-gap-30px .dsvy-element-posts-wrapper.row {
    margin-left: -15px;
    margin-right: -15px;
    justify-content: center;
}
/*****************************/
.elementor-element-371a00ae .designervily-gap-30px .dsvy-element-posts-wrapper.row .dsvy-ele {
    /* padding-right: 15px; */
    /* padding-left: 15px; */
    margin-bottom: 30px !important;
    /* background: red; */
    padding: 15px !important;
    justify-content: center !important;
}
.elementor-element-371a00ae .designervily-post-item {
    background: #FFFFFF !important;
    box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.1) !important;
    border-radius: 15px !important;
}
.elementor-element-371a00ae .dsvy-featured-wrapper {
    padding: 15px !important;
    /* background: red; */
}
h3.dsvy-team-title, .designervily-box-team-position{
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #273353 !important;
}

.dsvy-team-style-2 .designervily-box-content {
    text-align: center !important;
    padding-bottom: 30px !important;
    line-height: 36px !important;
}
.dsvy-team-style-2:hover .designervily-box-social-links ul {
    right: 0;
    display: none !important;
}

h3.dsvy-team-title, .dsvy-team-title {
    margin-bottom: 0 !important;
    line-height: 48px !important;
}
/* Make team member image clickable when wrapped in anchor */
a > .dsvy-featured-wrapper > img {
    pointer-events: auto !important;
    cursor: pointer !important;
}
/* Ensure team member image is clickable when wrapped in anchor */
.designervily-team-image-box a > .dsvy-featured-wrapper > img {
    pointer-events: auto !important;
    cursor: pointer !important;
}
/* Testimonial Grid Styles */
.testimonial-grid-container {
  width: 100%;
  margin: 0 auto 40px auto;
}
.testimonial-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 32px;
  padding: 20px 0;
}
.testimonial-grid .custom-testimonial-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07);
  padding: 24px 40px; 
  display: flex;
  flex-direction: column;
  min-height: 220px;
  transition: box-shadow 0.2s;
}
.testimonial-grid .custom-testimonial-card:hover {
  box-shadow: 0 4px 24px rgba(0,0,0,0.13);
}
.testimonial-grid .title-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.testimonial-grid .name {
  font-weight: bold;
  color: #0a1f44;
  margin: 0;
  font-size: 1.1em;
}
.testimonial-grid .rating {
  display: flex;
  align-items: center;
}
.testimonial-grid .stars {
  color: gold;
  font-size: 1.2em;
  margin-right: 2px;
}
.testimonial-grid .stars_white {
  color: #e0e0e0;
  font-size: 1.2em;
  margin-right: 2px;
}
.testimonial-grid .content-row {
  margin-top: 8px;
  flex: 1;
}
.testimonial-grid-container .testimonial-grid {
    align-items: flex-start !important; 
}
/* Testimonial Slider Styles */
.testimonial-read-more { color: #ff3d00; text-decoration: underline; font-weight: bold; margin-left: 6px; }
.custom-testimonial-slider { display: flex; align-items: center; /*justify-content: center;*/ position: relative; }
.custom-testimonial-slider .slider { display: flex; gap: 2%; overflow-x: hidden; scroll-behavior: smooth; width: 100%; max-width: 1466px; }
.custom-testimonial-card { flex: 0 0 32%; background: #fff; border-radius: 0px; padding: 40px; box-shadow: 0 4px 16px rgba(0,0,0,0.13); }
.custom-testimonial-card .date-rating-row { margin-bottom: 8px; }
.custom-testimonial-card .title-row { margin-bottom: 8px; }
.custom-testimonial-card .content-row { margin-bottom: 12px; }
.custom-testimonial-card .reviewer-row { margin-bottom: 4px; }
.custom-testimonial-card .google-row { margin-bottom: 0; }
.stars_white{
    color: #c9c9c9;
}
.custom-testimonial-slider .prev, .custom-testimonial-slider .next { background: #C3473F; border: none; color: white; font-size: 24px; padding: 14px 14px; border-radius: 50%; cursor: pointer; position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; }
.custom-testimonial-slider .prev { left: -80px; }
.custom-testimonial-slider .next { right: -80px; }
@media(max-width: 900px) {
    .custom-testimonial-slider .slider { max-width: 100vw; }
    .custom-testimonial-card { min-width: 90vw; }
    .custom-testimonial-slider .prev, .custom-testimonial-slider .next { position: static; top: auto; transform: none; margin: 5px; }
}
.dsvy-pre-header-wrapper{
    font-weight: unset !important;
}
.dsvy-heading-subheading.center-align .dsvy-heading-desc {
    max-width: unset !important;
}
@media (min-width: 1201px) {
    .dsvy-header-style-4 .dsvy-header-button a {
        font-weight: 500 !important;
    }
}

.elementor-element-33770b9 .dsvy-element-title::before,.elementor-element-33770b9 .dsvy-element-title::after{
    display:none !important;
}
.dsvy-team-style-2 .designervily-team-image-box img { 
    border-radius: 15px !important;
}
/**********Payment sticky button styles**********/
.sticky-bill-btn {
  position: fixed;
  top: 35%;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  flex-direction: row;
  align-items: center;
  background-color: #b5453c; /* red background */
  color: white;
  text-decoration: none;
  padding: 30px 8px;
  font-family: Arial, sans-serif;
  font-weight: bold;
  writing-mode: vertical-rl; /* vertical text */
  text-orientation: mixed;
  border-radius: 4px 0 0 4px;
  z-index: 1000;
}

.sticky-bill-btn .bill-icon {
  background-color: #1a1a2d; /* dark circle */
  border: 2px solid white;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px;
}

.sticky-bill-btn svg {
  width: 20px;
  height: 20px;
}

.sticky-bill-btn span {
    font-family: Poppins, sans-serif;
    font-size: 16px;
    font-weight: 500;
}
.sticky-bill-btn:hover {
  color: #fff !important;
}
/****************Services after************/
.elementor-element-56c809c .designervily-box-content {
    position: relative;
}
.elementor-element-56c809c .designervily-box-content::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 90px;
    height: 90px;
    background-image: url(/wp-content/uploads/2025/08/Vector.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    pointer-events: none;
}
.elementor-element-56c809c h3.dsvy-service-title{
    font-weight: 600 !important;
    margin-top: 35px !important;
}
.dsvy-service-title {
  min-height: 94px;
}
.elementor-element-56c809c .dsvy-service-style-1 .designervily-box-content {
    padding: 0 0 40px 0 !important;
}
.elementor-element-56c809c .designervily-gap-15px .dsvy-element-posts-wrapper.row .dsvy-ele {
    padding-right: 20px !important;
    padding-left: 20px !important;
}

.elementor-element-56c809c .dsvy-service-style-1 .dsvy-featured-wrapper img {
    width: 100%;
    border-radius: 10px;
    max-height: 225px;
    object-fit: cover;           /* crop while filling */
    object-position: top center; /* keep top center in view */
}


/*************************/

.office-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  justify-content: center;
  justify-items: center;
}
/* Card styling (optional) */
.custom-office-card {
    margin: 10px 0px !important;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.office-contact-box{
    margin-top:18px;
    margin-bottom:10px;
}
.office-details.office-call{
    margin-bottom:8px;
}
.office-call-link{
    text-decoration: none !important;
    font-weight: 400 !important;
    color: rgb(10, 31, 68) !important;
}

/* Responsive breakpoints */
@media (max-width: 1024px) {
  .office-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 columns on tablets */
  }
}

@media (max-width: 600px) {
  .office-grid {
    grid-template-columns: 1fr; /* 1 column on mobile */
  }
}

.elementor-element-ea6d4cb .dsvy-element-title{
    text-align: left !important;
}

.elementor-element-ea6d4cb .dsvy-element-title::after,.elementor-element-ea6d4cb .dsvy-element-title::before{
    display: none !important;
}

.elementor-element-ea6d4cb .dsvy-heading-subheading .dsvy-element-title {
    font-size: 52px !important;
    line-height: 68px !important;
}
.dsvy-header-style-4 .dsvy-header-button {
    border-left:4px solid #fff !important;
}
.dsvy-header-style-4 .dsvy-header-button > *:first-child {
  border-radius: unset !important;
}

.dsvy-footer-logo::after{
    display: none !important;
}

/* .dsvy-header-style-4 .dsvy-header-button:nth-child(2)::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url("/wp-content/uploads/2025/08/users.png") no-repeat center / contain;
} */

.dsvy-header-style-4 .dsvy-header-button:nth-child(3)::after {
    content: "";
    display: inline-block;
    width: 32px;
    height: 32px;
    background-color: #192136;
    background-image: url(/wp-content/uploads/2025/08/users.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px 16px;
    border-radius: 50%;
    vertical-align: middle;
}

.elementor-element-33770b9 .dsvy-ihbox-contents {
    align-items: flex-start;
    display: flex;
    justify-content: center;
    flex-direction: column;
}


.site-footer .dsvy-float-menu.widget_nav_menu.widget ul>li {
    float: unset !important;
    width: 100%;
}
.dsvy-bg-color-light{
    background-color: #F8F7F4 !important;
}
.wpcf7-form .main-form .wpcf7-submit{
    width:unset !important
}
.site-footer,.site-footer li a{
    font-size: 20px !important;
    font-size: 400 !important;
}
/* .site-footer h2.widget-title{
    font-size: 600 !important;
} */
 .site-footer .widget.widget_nav_menu ul li>a,.site-footer .cardioly_recent_posts_widget .dsvy-rpw-content .dsvy-rpw-title a{
    font-size: 20px !important;
    font-weight: 400 !important;

}
.site-footer ul.dsvy-timelist-list,.dsvy-footer-copyright-text-area{
    font-size: 20px !important;
    font-weight: 400 !important;
}

/* Ensure team member image and link are clickable */
.dsvy-featured-wrapper a,
.dsvy-featured-wrapper img {
    pointer-events: auto !important;
    z-index: 10;
    position: relative;
}

/*make the map address link not decorable*/
.address-link {
    text-decoration: none !important;
    color: inherit !important;
}

div#offices-heading {
    width: 70%;
    margin: 0 auto;
}
.custom-testimonial-slider .slider {
    align-items: flex-start !important;
}
.custom-testimonial-slider .prev, .custom-testimonial-slider .next {
    position: absolute;
    top: 20%;
    transform: translateY(-50%);
}

/*amending the changes for member details page*/
.content-area:has(.member-details){
    margin-top:135px;
}

.dsvy-imgbox{
    text-align: center;
}
/* Removed static banner background so parent theme's dynamic banner logic is used */
.dsvy-featured-wrapper img{
    z-index:0 !important;
}

/*member details*/
.quality-one .dsvy-ihbox-icon-wrapper{
    text-align: center;
}
.quality-one .dsvy-ihbox-contents{
    padding-right: 0px !important;
}

.semi-footer-widget-area .row .dsvy-footer-widget:nth-child(3){
	display:none!important;
}