/* ==========================================================================
   REDESIGN.CSS — Modern Aesthetic Overhaul
   Dr. Ankit Kayal — Urologist, Jaipur
   Loaded LAST so it overrides every legacy rule.
   No HTML / content / link changes — pure visual redesign.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&family=Cormorant+Garamond:wght@500;600;700&display=swap');

/* ---------- Design tokens (logo-matched: gold + deep charcoal) ---------- */
:root{
  --rd-primary:        #1F2A3D;          /* deep charcoal-navy (matches logo text) */
  --rd-primary-dark:   #131A28;
  --rd-primary-soft:   #F1EEE4;          /* warm cream tint */
  --rd-accent:         #B8893B;          /* logo gold */
  --rd-accent-dark:    #946C25;
  --rd-accent-light:   #E0BD6E;
  --rd-text:           #1F2A3D;
  --rd-text-soft:      #5A6273;
  --rd-text-muted:     #8B92A0;
  --rd-bg:             #FBF8F1;          /* warm cream background (matches logo bg) */
  --rd-surface:        #FFFFFF;
  --rd-surface-2:      #F3EEE2;
  --rd-line:           #E8E0CE;
  --rd-shadow-sm:      0 1px 2px rgba(31,42,61,.04), 0 2px 6px rgba(31,42,61,.05);
  --rd-shadow-md:      0 6px 18px rgba(31,42,61,.07), 0 14px 40px rgba(31,42,61,.06);
  --rd-shadow-lg:      0 18px 50px rgba(31,42,61,.14), 0 30px 80px rgba(184,137,59,.10);
  --rd-radius:         16px;
  --rd-radius-sm:      10px;
  --rd-radius-lg:      24px;
  --rd-ease:           cubic-bezier(.22,.61,.36,1);
  --rd-font-sans:      'Plus Jakarta Sans','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --rd-font-serif:     'Cormorant Garamond', Georgia, serif;
}

/* ---------- Global reset & base ---------- */
html, body{
  background: var(--rd-bg) !important;
  color: var(--rd-text) !important;
  font-family: var(--rd-font-sans) !important;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

body{ overflow-x: hidden; }

*{ box-sizing: border-box; }

::selection{ background: var(--rd-primary); color: #fff; }

img{ max-width: 100%; height: auto; }

a{
  color: var(--rd-primary);
  text-decoration: none !important;
  transition: color .25s var(--rd-ease), background .25s var(--rd-ease), transform .25s var(--rd-ease);
}
a:hover{ color: var(--rd-accent) !important; }

p{
  color: var(--rd-text-soft) !important;
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 1rem;
}

h1, h2, h3, h4, h5, h6{
  font-family: var(--rd-font-sans) !important;
  color: var(--rd-text) !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em;
  line-height: 1.25;
  margin-bottom: .9rem;
}
h1{ font-size: clamp(1.75rem, 2.6vw, 2.6rem); }
h2{ font-size: clamp(1.5rem, 2.2vw, 2.15rem); }
h3{ font-size: clamp(1.2rem, 1.6vw, 1.55rem); }
h4{ font-size: 1.15rem; }

/* Decorative serif touch on key headings */
.welcome_docmed_info h1,
.welcome_docmed_info h2,
.business_info h2,
.section_title h3,
.bradcam_text h3{
  font-family: var(--rd-font-serif) !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em;
}

/* Smooth fade-in for everything */
@keyframes rdFadeUp{
  from{ opacity:0; transform: translateY(14px); }
  to  { opacity:1; transform: none; }
}

/* ==========================================================================
   HEADER
   ========================================================================== */
header{ position: relative; z-index: 100; }

.header-area{
  background: transparent;
}

.header-top_area{
  background: linear-gradient(90deg, var(--rd-primary) 0%, var(--rd-primary-dark) 100%) !important;
  color: #fff;
  padding: 10px 0;
  font-size: .88rem;
  border: 0;
}
.header-top_area a,
.header-top_area i,
.header-top_area li,
.header-top_area ul{
  color: rgba(255,255,255,.92) !important;
}
.header-top_area .social_media_links a{
  width: 32px; height: 32px;
  display: inline-flex; align-items:center; justify-content:center;
  border-radius: 50%;
  background: rgba(255,255,255,.10);
  margin-right: 6px;
  transition: all .3s var(--rd-ease);
}
.header-top_area .social_media_links a:hover{
  background: var(--rd-accent);
  transform: translateY(-2px);
}
.header-top_area .short_contact_list ul{
  display:flex; gap:24px; justify-content:flex-end;
  list-style:none; margin:0; padding:0; flex-wrap:wrap;
}
.header-top_area .short_contact_list i{ margin-right:6px; color: var(--rd-accent) !important; }

.main-header-area{
  background: rgba(255,255,255,.85) !important;
  backdrop-filter: saturate(180%) blur(14px);
  -webkit-backdrop-filter: saturate(180%) blur(14px);
  box-shadow: var(--rd-shadow-sm);
  padding: 14px 0;
  border-bottom: 1px solid var(--rd-line);
  transition: all .3s var(--rd-ease);
}
.main-header-area.sticky{
  background: rgba(255,255,255,.95) !important;
  box-shadow: var(--rd-shadow-md);
}

.logo img{ max-height: 64px; width:auto; }

.main-menu nav > ul{
  display:flex; gap: 6px; align-items:center;
  list-style:none; margin:0; padding:0;
}
.main-menu nav > ul > li{ position: relative; }
.main-menu nav > ul > li > a{
  display:inline-flex; align-items:center; gap:6px;
  padding: 10px 14px;
  font-weight: 600;
  color: var(--rd-text) !important;
  font-size: .96rem;
  border-radius: 999px;
  transition: all .25s var(--rd-ease);
}
.main-menu nav > ul > li > a:hover,
.main-menu nav > ul > li > a.active{
  color: var(--rd-primary) !important;
  background: var(--rd-primary-soft);
}
.main-menu .submenu{
  position: absolute; top: 100%; left: 0;
  min-width: 280px;
  background: #fff;
  border-radius: var(--rd-radius);
  box-shadow: var(--rd-shadow-lg);
  padding: 10px;
  list-style: none;
  margin: 8px 0 0;
  opacity: 0; visibility: hidden;
  transform: translateY(8px);
  transition: all .25s var(--rd-ease);
  z-index: 1000;
  border: 1px solid var(--rd-line);
}
.main-menu nav > ul > li:hover .submenu{
  opacity: 1; visibility: visible; transform: none;
}
.main-menu .submenu li a{
  display:block;
  padding: 10px 14px;
  border-radius: var(--rd-radius-sm);
  color: var(--rd-text) !important;
  font-size: .92rem;
  font-weight: 500;
}
.main-menu .submenu li a:hover{
  background: var(--rd-primary-soft);
  color: var(--rd-primary) !important;
}

/* Appointment CTA in header */
.Appointment{ display:flex; justify-content:flex-end; }
.book_btn a{
  display:inline-flex; align-items:center; gap:8px;
  padding: 12px 22px;
  background: linear-gradient(135deg, var(--rd-primary), var(--rd-primary-dark)) !important;
  color: #fff !important;
  border-radius: 999px;
  font-weight: 600;
  font-size: .92rem;
  letter-spacing: .01em;
  box-shadow: 0 8px 22px rgba(31,42,61,.28);
  transition: all .3s var(--rd-ease);
  border: 0;
}
.book_btn a:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(31,42,61,.36);
  background: linear-gradient(135deg, var(--rd-accent), var(--rd-accent-dark)) !important;
  color: #fff !important;
}

/* Mobile menu */
.mobile_menu .slicknav_menu{
  background: var(--rd-surface);
  padding: 8px 12px;
  border-radius: var(--rd-radius);
  margin-top: 8px;
  box-shadow: var(--rd-shadow-sm);
}
.slicknav_btn{ background: var(--rd-primary) !important; border-radius: 8px !important; }
.slicknav_nav a:hover{ background: var(--rd-primary-soft) !important; color: var(--rd-primary) !important; }

/* ==========================================================================
   HERO / SLIDER
   ========================================================================== */
#carouselExampleSlidesOnly{
  position: relative;
  overflow: hidden;
}
#carouselExampleSlidesOnly::after{
  content:"";
  position:absolute; inset: auto 0 0 0; height: 80px;
  background: linear-gradient(180deg, transparent, var(--rd-bg));
  pointer-events:none;
}
#carouselExampleSlidesOnly img{
  width:100%; height:auto; display:block;
  filter: saturate(1.05);
}

/* ==========================================================================
   STATS / SERVICE STRIP
   ========================================================================== */
.service_area{
  position: relative;
  margin-top: -80px;
  z-index: 5;
  padding: 0 16px;
}
.service_area .container{
  background: linear-gradient(135deg, #fff 0%, #fdfaf2 100%);
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-lg);
  padding: 36px 28px !important;
  border: 1px solid var(--rd-line);
}
.service_area .row{ align-items:center; }
.single_service{
  text-align: center;
  padding: 12px 8px;
  position: relative;
}
.single_service h3{
  font-family: var(--rd-font-serif) !important;
  color: var(--rd-primary) !important;
  font-size: clamp(1.6rem, 2.4vw, 2.2rem) !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
  letter-spacing: -0.02em;
}
.single_service p{
  font-size: .85rem !important;
  color: var(--rd-text-soft) !important;
  margin: 0 !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
}
.single_service:not(:last-child)::after{
  content:"";
  position:absolute; right:0; top:20%; bottom:20%; width:1px;
  background: var(--rd-line);
}
@media (max-width: 768px){
  .service_area{ margin-top: -30px; }
  .single_service::after{ display:none !important; }
}

/* ==========================================================================
   WELCOME / FOUNDER
   ========================================================================== */
.welcome_docmed_area{
  padding: 100px 0 80px;
  position: relative;
}
.welcome_docmed_area::before{
  content:"";
  position:absolute; top:80px; right:-120px; width:300px; height:300px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--rd-primary-soft) 0%, transparent 70%);
  z-index:0;
}
.welcome_docmed_info{
  position: relative;
  z-index: 1;
  padding-right: 20px;
  animation: rdFadeUp .8s var(--rd-ease) both;
}
.welcome_docmed_info h2{
  text-transform: uppercase;
  letter-spacing: .14em !important;
  font-size: .85rem !important;
  color: var(--rd-accent) !important;
  font-weight: 700 !important;
  margin-bottom: 14px !important;
  font-family: var(--rd-font-sans) !important;
}
.welcome_docmed_info h1{
  font-size: clamp(1.6rem, 2.6vw, 2.4rem) !important;
  margin: 0 0 18px !important;
  line-height: 1.2;
  color: var(--rd-text) !important;
  font-family: var(--rd-font-serif) !important;
  font-weight: 600 !important;
}
.welcome_docmed_info p{
  font-size: 1.02rem;
  margin-bottom: 18px;
}
.welcome_docmed_info ul{
  list-style: none; padding: 0;
  display:grid;
  gap: 10px;
  margin: 18px 0 28px;
}
.welcome_docmed_info ul li{
  display:flex; gap: 12px;
  padding: 12px 16px;
  background: var(--rd-surface);
  border-radius: var(--rd-radius-sm);
  border-left: 3px solid var(--rd-primary);
  font-size: .95rem;
  color: var(--rd-text);
  box-shadow: var(--rd-shadow-sm);
  transition: all .25s var(--rd-ease);
}
.welcome_docmed_info ul li:hover{
  transform: translateX(4px);
  border-left-color: var(--rd-accent);
}
.welcome_docmed_info ul li i{
  color: var(--rd-primary);
  font-size: 1rem;
  flex-shrink: 0;
}
.welcome_docmed_info ul li:hover i{ color: var(--rd-accent); }

.welcome_docmed_area img{
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-lg);
  position: relative; z-index: 1;
  transition: transform .6s var(--rd-ease);
}
.welcome_docmed_area img:hover{ transform: scale(1.015); }

.welcome_thumb .thumb_1 img,
.welcome_thumb img{
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-lg);
}

/* ==========================================================================
   BUTTONS
   ========================================================================== */
.boxed-btn3, .boxed-btn3-white-2, .boxed-btn3-white,
button[type="submit"].boxed-btn3{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding: 13px 28px !important;
  background: linear-gradient(135deg, var(--rd-primary), var(--rd-primary-dark)) !important;
  color: #fff !important;
  border-radius: 999px !important;
  font-weight: 600;
  font-size: .95rem;
  letter-spacing: .01em;
  border: 0 !important;
  box-shadow: 0 10px 26px rgba(31,42,61,.28);
  transition: all .3s var(--rd-ease);
  text-transform: none;
  cursor: pointer;
}
.boxed-btn3:hover, .boxed-btn3-white-2:hover, .boxed-btn3-white:hover,
button[type="submit"].boxed-btn3:hover{
  transform: translateY(-2px);
  background: linear-gradient(135deg, var(--rd-accent), var(--rd-accent-dark)) !important;
  color: #fff !important;
  box-shadow: 0 18px 34px rgba(200,155,60,.34);
}

/* "Read More" pill */
.learn_more{
  display:inline-flex; align-items:center; gap:6px;
  padding: 8px 18px;
  background: var(--rd-primary-soft);
  color: var(--rd-primary) !important;
  border-radius: 999px;
  font-size: .85rem;
  font-weight: 600;
  margin-top: 12px;
  transition: all .25s var(--rd-ease);
}
.learn_more::after{
  content: "→";
  transition: transform .25s var(--rd-ease);
}
.learn_more:hover{
  background: var(--rd-primary);
  color: #fff !important;
}
.learn_more:hover::after{ transform: translateX(4px); }

/* ==========================================================================
   BUSINESS / TABS
   ========================================================================== */
.business_expert_area{
  padding: 50px 0 80px;
  background: var(--rd-bg);
}
.business_tabs_area{ margin-bottom: 30px; }
.business_tabs_area .nav{
  display:flex; flex-wrap:wrap; gap:8px; justify-content:center;
  background: #fff;
  padding: 10px;
  border-radius: 999px;
  box-shadow: var(--rd-shadow-md);
  border: 1px solid var(--rd-line);
  list-style: none;
  margin: 0 auto;
  max-width: 900px;
}
.business_tabs_area .nav-item{ flex: 1 1 auto; text-align: center; }
.business_tabs_area .nav-link{
  display:block;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  color: var(--rd-text) !important;
  font-weight: 600;
  font-size: .85rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  border: 0 !important;
  cursor: pointer;
  transition: all .3s var(--rd-ease);
  background: transparent !important;
}
.business_tabs_area .nav-link.active,
.business_tabs_area .nav-link:hover{
  background: linear-gradient(135deg, var(--rd-primary), var(--rd-primary-dark)) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(31,42,61,.25);
}

.business_info{
  padding: 16px 20px 16px 0;
}
.business_info h2, .business_info h3{
  font-family: var(--rd-font-serif) !important;
  font-size: clamp(1.5rem, 2.2vw, 2rem) !important;
  font-weight: 600 !important;
  margin-bottom: 14px !important;
  color: var(--rd-text) !important;
}
.business_info p{ font-size: 1.02rem; }
.business_thumb img{
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-lg);
  width: 100%;
}
.border_bottom{ border: 0 !important; padding-bottom: 0 !important; }

/* ==========================================================================
   DEPARTMENT / TREATMENT CARDS
   ========================================================================== */
.our_department_area{
  padding: 80px 0 80px;
  background: var(--rd-surface-2);
  position: relative;
}
.section_title{
  text-align:center;
  max-width: 700px;
  margin: 0 auto 50px !important;
}
.section_title h3{
  font-family: var(--rd-font-serif) !important;
  font-size: clamp(1.8rem, 3vw, 2.6rem) !important;
  font-weight: 600 !important;
  color: var(--rd-text) !important;
  margin-bottom: 12px !important;
  position: relative;
  display: inline-block;
}
.section_title h3::after{
  content:"";
  display:block;
  width: 60px; height: 3px;
  background: linear-gradient(90deg, var(--rd-primary), var(--rd-accent));
  margin: 14px auto 0;
  border-radius: 999px;
}
.section_title p{
  color: var(--rd-text-soft) !important;
  font-size: 1rem;
}

.single_department{
  background: var(--rd-surface);
  border-radius: var(--rd-radius-lg);
  overflow: hidden;
  box-shadow: var(--rd-shadow-sm);
  transition: all .35s var(--rd-ease);
  margin-bottom: 30px;
  border: 1px solid var(--rd-line);
  display:flex; flex-direction:column;
  height: calc(100% - 30px);
}
.single_department:hover{
  transform: translateY(-6px);
  box-shadow: var(--rd-shadow-lg);
  border-color: rgba(31,42,61,.18);
}
.department_thumb{
  overflow:hidden;
  aspect-ratio: 16 / 10;
  background: var(--rd-surface-2);
}
.department_thumb img{
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .6s var(--rd-ease);
}
.single_department:hover .department_thumb img{ transform: scale(1.06); }

.department_content{
  padding: 24px 24px 26px;
  flex: 1;
  display:flex; flex-direction:column;
}
.department_content h3{
  font-size: 1.2rem !important;
  margin-bottom: 10px !important;
}
.department_content h3 a{
  color: var(--rd-text) !important;
  font-weight: 700;
}
.department_content h3 a:hover{ color: var(--rd-primary) !important; }
.department_content p{
  font-size: .94rem;
  color: var(--rd-text-soft) !important;
  flex: 1;
}

/* ==========================================================================
   BREADCRUMB
   ========================================================================== */
.bradcam_area{
  position: relative;
  padding: 130px 0 110px;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  text-align: center;
}
.bradcam_area::before{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(135deg, rgba(19,26,40,.85) 0%, rgba(31,42,61,.7) 100%);
}
.bradcam_text{
  position: relative; z-index: 2;
  color: #fff;
}
.bradcam_text h3{
  color: #fff !important;
  font-family: var(--rd-font-serif) !important;
  font-weight: 600 !important;
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  margin: 0 0 8px !important;
  letter-spacing: -0.01em;
}
.bradcam_text p, .bradcam_text a{
  color: rgba(255,255,255,.88) !important;
  font-size: 1rem;
}

/* ==========================================================================
   FORM / CONTACT
   ========================================================================== */
.contact-section{
  padding: 80px 0;
  background: var(--rd-bg);
}
.contact-title{
  font-family: var(--rd-font-serif) !important;
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
  font-weight: 600 !important;
  margin-bottom: 30px !important;
  color: var(--rd-text) !important;
}

.form-contact{
  background: var(--rd-surface);
  padding: 40px;
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-md);
  border: 1px solid var(--rd-line);
}
.form-contact h3{
  font-family: var(--rd-font-serif) !important;
  font-weight: 600 !important;
  margin-bottom: 20px !important;
  color: var(--rd-text) !important;
}

.form-group{ margin-bottom: 18px; }
.form-control,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
textarea,
.nice-select{
  width: 100%;
  background: #fff !important;
  border: 1.5px solid var(--rd-line) !important;
  border-radius: var(--rd-radius-sm) !important;
  padding: 14px 18px !important;
  font-size: .95rem !important;
  font-family: var(--rd-font-sans) !important;
  color: var(--rd-text) !important;
  transition: border-color .25s var(--rd-ease), box-shadow .25s var(--rd-ease), background .25s var(--rd-ease);
  height: auto !important;
  line-height: 1.5;
  box-shadow: none !important;
}
.form-control:focus,
input:focus, textarea:focus, .nice-select:focus{
  outline: none !important;
  border-color: var(--rd-primary) !important;
  box-shadow: 0 0 0 4px var(--rd-primary-soft) !important;
  background: #fff !important;
}
textarea.form-control{ min-height: 130px; resize: vertical; }
.nice-select{
  display:flex !important; align-items:center;
  height: 52px !important;
  line-height: 1.4 !important;
}
.nice-select .list{
  border-radius: var(--rd-radius-sm) !important;
  box-shadow: var(--rd-shadow-md) !important;
  border: 1px solid var(--rd-line) !important;
  margin-top: 6px;
  z-index: 99;
}
.nice-select .option{ padding: 10px 16px; }
.nice-select .option.selected{ color: var(--rd-primary); }

label{
  font-weight: 600;
  font-size: .88rem;
  color: var(--rd-text);
  margin-bottom: 6px;
  display: inline-block;
}

::placeholder{ color: var(--rd-text-muted) !important; opacity: 1; }

/* Contact info icons / cards */
.contact-info{
  display:flex; gap: 16px;
  background: #fff;
  padding: 22px;
  border-radius: var(--rd-radius);
  box-shadow: var(--rd-shadow-sm);
  border: 1px solid var(--rd-line);
  margin-bottom: 18px;
  transition: all .3s var(--rd-ease);
}
.contact-info:hover{
  transform: translateY(-3px);
  box-shadow: var(--rd-shadow-md);
}
.contact-info__icon{
  width: 48px; height: 48px;
  display: inline-flex; align-items:center; justify-content:center;
  border-radius: 50%;
  background: var(--rd-primary-soft);
  color: var(--rd-primary);
  font-size: 1.2rem;
  flex-shrink: 0;
}
.contact-info .media-body h3{ font-size: 1.05rem; margin-bottom: 4px; }
.contact-info .media-body p{ font-size: .9rem; margin: 0; }

/* ==========================================================================
   FOOTER
   ========================================================================== */
footer.footer, .footer{
  background: linear-gradient(180deg, #1F2A3D 0%, #0E1525 100%) !important;
  color: rgba(255,255,255,.78);
  padding: 80px 0 0 !important;
  position: relative;
  overflow: hidden;
}
footer.footer::before{
  content:"";
  position: absolute; top:-40px; right:-40px; width:240px; height:240px;
  border-radius:50%;
  background: radial-gradient(circle, rgba(200,155,60,.12), transparent 70%);
}
footer .footer_widget{
  margin-bottom: 40px;
  position: relative; z-index: 1;
}
footer .footer_logo img{
  max-height: 70px;
  filter: brightness(0) invert(1);
  margin-bottom: 18px;
}
footer .footer_title{
  color: #fff !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-bottom: 22px !important;
  position: relative;
  padding-bottom: 12px;
  font-family: var(--rd-font-sans) !important;
}
footer .footer_title::after{
  content:"";
  position:absolute; left:0; bottom:0;
  width: 36px; height: 2px;
  background: var(--rd-accent);
  border-radius: 999px;
}
footer p, footer li, footer a{
  color: rgba(255,255,255,.72) !important;
  font-size: .92rem;
}
footer ul{ list-style:none; padding:0; margin:0; }
footer ul li{ margin-bottom: 10px; }
footer ul li a{ transition: all .25s var(--rd-ease); }
footer ul li a:hover{ color: var(--rd-accent) !important; padding-left: 4px; }

footer .socail_links a, footer .social_links a{
  display: inline-flex; align-items:center; justify-content:center;
  width: 40px; height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,.08);
  color: #fff !important;
  margin-right: 8px;
  transition: all .3s var(--rd-ease);
}
footer .socail_links a:hover, footer .social_links a:hover{
  background: var(--rd-accent);
  color: #fff !important;
  transform: translateY(-2px);
}

.footer_border{
  border-top: 1px solid rgba(255,255,255,.12);
  margin-top: 30px;
}
.copy-right_text{
  padding: 24px 0;
  position: relative; z-index: 1;
}
.copy-right_text p, .copy-right_text a{
  color: rgba(255,255,255,.6) !important;
  font-size: .85rem;
  margin: 0;
}

/* ==========================================================================
   TESTIMONIALS / SWIPER / VIDEO
   ========================================================================== */
.testmonial_area{
  padding: 70px 0;
  background: var(--rd-bg);
}
.swiper-slide{
  background: #fff !important;
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-md);
  padding: 18px !important;
  border: 1px solid var(--rd-line);
}
.swiper-slide img{
  border-radius: var(--rd-radius);
  margin-bottom: 14px;
}
.swiper-slide h4{
  font-family: var(--rd-font-sans) !important;
  font-weight: 600;
  font-size: 1rem;
}
.swiper-slide a{ color: var(--rd-primary) !important; font-weight: 600; }
.swiper-pagination-bullet{ background: var(--rd-primary) !important; }

/* YouTube embeds */
iframe[src*="youtube"]{
  border-radius: var(--rd-radius);
  box-shadow: var(--rd-shadow-md);
  border: 1px solid var(--rd-line);
  width: 100%;
}

/* ==========================================================================
   STICKY CALL / WHATSAPP
   ========================================================================== */
.sticky-call-btn{
  position: fixed !important;
  right: 18px !important;
  bottom: 22px !important;
  z-index: 9999 !important;
  display: flex; flex-direction: column; gap: 18px;
}
/* Hide the legacy <br> spacing so flex gap works cleanly */
.sticky-call-btn br{ display: none; }

.sticky-call-btn a{
  position: relative;
  display:inline-flex;
  width: 56px; height: 56px;
  border-radius: 50%;
  align-items:center; justify-content:center;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
  transition: all .3s var(--rd-ease);
  overflow: hidden;
}
.sticky-call-btn a:hover{ transform: translateY(-3px) scale(1.06); }

/* Phone (first child) → blue with phone glyph */
.sticky-call-btn a:first-child{
  background: linear-gradient(135deg, #1A73E8 0%, #0B57D0 100%);
  animation: rdPulseBlue 2.2s infinite;
}
.sticky-call-btn a:first-child img{
  display: none !important;          /* hide old green PNG */
}
.sticky-call-btn a:first-child::before{
  content: "\f095";                  /* Font Awesome phone */
  font-family: "FontAwesome";
  color: #fff;
  font-size: 1.55rem;
  line-height: 1;
  transform: rotate(8deg);
}

/* WhatsApp (second child) → keep green, full circle PNG */
.sticky-call-btn a:nth-child(2),
.sticky-call-btn a:last-child{
  background: #25D366;
  animation: rdPulseGreen 2.2s infinite .4s;
}
.sticky-call-btn a:not(:first-child) img{
  width: 100% !important; height:100%; border-radius:50%;
  display:block;
}

@keyframes rdPulseBlue{
  0%   { box-shadow: 0 10px 24px rgba(11,87,208,.35), 0 0 0 0 rgba(26,115,232,.5); }
  70%  { box-shadow: 0 10px 24px rgba(11,87,208,.35), 0 0 0 16px rgba(26,115,232,0); }
  100% { box-shadow: 0 10px 24px rgba(11,87,208,.35), 0 0 0 0 rgba(26,115,232,0); }
}
@keyframes rdPulseGreen{
  0%   { box-shadow: 0 10px 24px rgba(37,211,102,.32), 0 0 0 0 rgba(37,211,102,.5); }
  70%  { box-shadow: 0 10px 24px rgba(37,211,102,.32), 0 0 0 16px rgba(37,211,102,0); }
  100% { box-shadow: 0 10px 24px rgba(37,211,102,.32), 0 0 0 0 rgba(37,211,102,0); }
}

/* ==========================================================================
   BLOG / NEWS / PHOTOS
   ========================================================================== */
.popular_post_area, .latest_news_area, .blog_area{
  padding: 80px 0;
  background: var(--rd-bg);
}

/* News & Updates page — newspaper clippings shouldn't be cropped.
   Override legacy .single-gallery-image (was 350px cover → cuts tall clippings). */
.whole-wrap{ padding: 60px 0 30px; background: var(--rd-bg); }
.whole-wrap .container{ max-width: 1240px; }
.whole-wrap .section-top-border{ border: 0 !important; padding-top: 0 !important; }

.gallery-item .col-md-4{ padding: 12px; }

.single-gallery-image{
  background-size: cover !important;            /* fill the tile, no whitespace */
  background-repeat: no-repeat !important;
  background-position: top center !important;   /* keep the masthead/header visible */
  background-color: transparent !important;
  height: auto !important;
  aspect-ratio: 3 / 4;                          /* uniform tile heights */
  margin-top: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: transform .35s var(--rd-ease), opacity .35s var(--rd-ease);
  cursor: zoom-in;
}
.single-gallery-image:hover{
  transform: translateY(-4px) scale(1.01);
  opacity: .92;
}

/* Older browsers without aspect-ratio: fall back to a tall min-height */
@supports not (aspect-ratio: 3 / 4){
  .single-gallery-image{ min-height: 480px; }
}

.gallery-item .img-pop-up{
  display: block;
}
.single_blog, .single_post, .latest_post_card{
  background: #fff;
  border-radius: var(--rd-radius-lg);
  overflow: hidden;
  box-shadow: var(--rd-shadow-sm);
  border: 1px solid var(--rd-line);
  transition: all .35s var(--rd-ease);
  margin-bottom: 30px;
}
.single_blog:hover, .single_post:hover, .latest_post_card:hover{
  transform: translateY(-6px);
  box-shadow: var(--rd-shadow-lg);
}

/* Photo gallery */
.gallery_area, .photo_area{
  padding: 80px 0;
  background: var(--rd-bg);
}
.gallery_area img, .photo_area img{
  border-radius: var(--rd-radius);
  box-shadow: var(--rd-shadow-sm);
  transition: all .3s var(--rd-ease);
  margin-bottom: 24px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery_area img:hover, .photo_area img:hover{
  transform: scale(1.02);
  box-shadow: var(--rd-shadow-lg);
}

/* ==========================================================================
   GENERIC CONTENT STYLING (treatment pages)
   ========================================================================== */
section, .section, .about_area, .about_us_area{
  padding: 70px 0;
}

article, .single_blog_content, .single_treatment_content,
.our_department_area .container > p,
.welcome_docmed_area .container,
.business_info{
  font-size: 1.02rem;
}

ul, ol{ padding-left: 1.4rem; }
ul li, ol li{ margin-bottom: 6px; color: var(--rd-text-soft); }

blockquote{
  background: var(--rd-primary-soft);
  border-left: 4px solid var(--rd-primary);
  padding: 18px 22px;
  border-radius: var(--rd-radius-sm);
  font-style: italic;
  margin: 22px 0;
  color: var(--rd-text);
}

table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: var(--rd-radius);
  overflow: hidden;
  box-shadow: var(--rd-shadow-sm);
  margin: 22px 0;
  background: #fff;
}
table th{
  background: var(--rd-primary);
  color: #fff;
  text-align:left;
  padding: 14px 18px;
  font-weight: 600;
  font-size: .92rem;
}
table td{
  padding: 12px 18px;
  border-top: 1px solid var(--rd-line);
  font-size: .94rem;
  color: var(--rd-text);
}
table tr:nth-child(even) td{ background: var(--rd-surface-2); }

/* Accordion / FAQ */
.accordion-button, .card-header button{
  background: #fff !important;
  color: var(--rd-text) !important;
  font-weight: 600;
  font-size: 1rem;
  padding: 16px 20px !important;
  border-radius: var(--rd-radius-sm) !important;
  border: 1px solid var(--rd-line) !important;
  box-shadow: var(--rd-shadow-sm) !important;
}
.accordion-button:not(.collapsed){
  background: var(--rd-primary-soft) !important;
  color: var(--rd-primary) !important;
}
.accordion-item, .card{
  border-radius: var(--rd-radius) !important;
  border: 0 !important;
  margin-bottom: 12px !important;
  overflow: hidden;
}
.accordion-body{
  padding: 18px 20px !important;
  background: #fff;
  color: var(--rd-text-soft);
  font-size: .95rem;
  line-height: 1.75;
  border: 1px solid var(--rd-line);
  border-top: 0;
  border-radius: 0 0 var(--rd-radius-sm) var(--rd-radius-sm);
}

/* ==========================================================================
   POPUP
   ========================================================================== */
.popup_inner{
  background: #fff;
  padding: 30px;
  border-radius: var(--rd-radius-lg);
  box-shadow: var(--rd-shadow-lg);
}

/* ==========================================================================
   CARDS / IMAGE CONTAINERS GENERIC
   ========================================================================== */
.welcome_thumb img,
.business_thumb img,
.single_department .department_thumb img,
.welcome_docmed_area > .container img,
.about_thumb img{
  border-radius: var(--rd-radius-lg);
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 1199px){
  .main-menu nav > ul > li > a{ padding: 8px 10px; font-size: .9rem; }
}
@media (max-width: 991px){
  .header-top_area{ display:none; }
  .main-header-area{ padding: 10px 0; }
  .Appointment{ display:none; }
  .welcome_docmed_area{ padding: 60px 0; }
  .welcome_docmed_info{ padding-right: 0; }
  .business_expert_area, .our_department_area, .contact-section, footer.footer{ padding-top: 60px; padding-bottom: 60px; }
  .form-contact{ padding: 24px; }
}
@media (max-width: 767px){
  .service_area .container{ padding: 22px 14px !important; }
  .single_service h3{ font-size: 1.4rem !important; }
  .business_tabs_area .nav{ flex-direction: column; border-radius: var(--rd-radius); padding: 6px; }
  .business_tabs_area .nav-link{ width: 100%; }
  .bradcam_area{ padding: 90px 0 70px; }
  .sticky-call-btn a{ width: 50px; height: 50px; }
}

/* ==========================================================================
   UTILITIES & FIXES
   ========================================================================== */
.alert{ border-radius: var(--rd-radius-sm); border: 0; padding: 14px 18px; }

/* Hide noisy "1" stray text from index page */
body > script + script + p, .stray_one { display:none; }

/* Bootstrap container max width tune */
@media (min-width: 1400px){
  .container, .container-lg, .container-md, .container-sm, .container-xl{ max-width: 1240px; }
}

/* Smooth scroll-up button — placed on the LEFT so it never overlaps the
   call/WhatsApp stack on the right. */
#scrollUp{
  background: var(--rd-primary) !important;
  color: #fff !important;
  border-radius: 50% !important;
  width: 44px !important;
  height: 44px !important;
  display:flex !important;
  align-items:center; justify-content:center;
  box-shadow: var(--rd-shadow-md) !important;
  bottom: 24px !important;
  left: 18px !important;
  right: auto !important;
  top: auto !important;
  font-size: 1rem !important;
  border: 0 !important;
  z-index: 9998 !important;
}
#scrollUp:hover{ background: var(--rd-accent) !important; }

/* Carousel indicators */
.carousel-indicators [data-bs-target]{
  background-color: var(--rd-accent) !important;
  border-radius: 999px;
  width: 22px; height: 4px;
}
.carousel-control-prev, .carousel-control-next{
  width: 8%;
}

/* Fade-in for cards */
.single_department, .single_blog, .single_post, .form-contact, .business_thumb, .welcome_thumb,
.swiper-slide{
  animation: rdFadeUp .6s var(--rd-ease) both;
}
