/* ==========================================================================
   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;
}

html,
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);
}

/* The col-12 wrapper around .mobile_menu creates an empty 100%-wide flex line
   in the navbar row, which renders as a white box below the logo. Take it out
   of layout flow on every viewport. */
.main-header-area .row>.col-12 {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: auto;
  padding: 0;
  display: flex;
  align-items: center;
}

.main-header-area .row {
  position: relative;
}

.mobile_menu {
  position: relative !important;
  right: 0 !important;
  width: auto !important;
}

.slicknav_btn {
  margin: 0 !important;
}

.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: 40px;
  background: linear-gradient(180deg, transparent, var(--rd-bg));
  pointer-events: none;
  opacity: .6;
}

#carouselExampleSlidesOnly img {
  width: 100%;
  height: auto;
  display: block;
  filter: saturate(1.05);
}

/* carousel button */
#carouselExampleSlidesOnly .desktop-caption-pos {
  bottom: 1%;
}

#carouselExampleSlidesOnly .btn-desktop-brown {
  display: inline-block;
  background: #825428;
  color: #ffffff;
  text-decoration: none;
  font-size: 22px;
  font-weight: bold;
  letter-spacing: 8px;
  padding: 17px 45px;
  border-radius: 100px;
  box-shadow: 0 5px 8px #825428;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
}



/* carousel button */
#carouselExampleSlidesOnly .mobile-caption-pos {
  text-align: left;
  left: 5%;
  right: auto;
  bottom: 3.5%;
}

#carouselExampleSlidesOnly .btn-mobile-brown {
  display: inline-block;
  background: #825428;
  color: #ffffff;
  text-decoration: none;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 5px;
  padding: 10px 18px;
  border-radius: 100px;
  box-shadow: 0 5px 8px #825428;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.3s ease;
}




/* ==========================================================================
   STATS / SERVICE STRIP
   ========================================================================== */
.service_area {
  position: relative;
  margin-top: 24px;
  z-index: 5;
  padding: 10px 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: 39px;
  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: 8px 0;
  }

  #carouselExampleSlidesOnly .carousel-inner img {
    display: block;
  }

  .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) {

  /* Hero: don't let stats card overlap the appointment button */
  #carouselExampleSlidesOnly::after {
    display: none;
  }

  .service_area {
    margin-top: 16px !important;
    padding: 0 12px;
  }

  .service_area .container {
    padding: 20px 12px !important;
    border-radius: var(--rd-radius);
  }

  .service_area .row {
    --bs-gutter-x: 0.5rem;
  }

  /* Stats: prevent right-edge text clipping ("UROLOGICAL PUBLICATION") */
  .single_service {
    padding: 10px 4px;
  }

  .single_service h3 {
    font-size: 1.3rem !important;
  }

  .single_service p {
    font-size: .7rem !important;
    letter-spacing: .04em;
    line-height: 1.35;
    word-break: break-word;
  }

  .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;
}

/* ==========================================================================
   NEW NAVBAR (rd-*) — replaces legacy .header-area / .main-header-area
   ========================================================================== */
.rd-header {
  position: relative;
  z-index: 1000;
}

/* Top bar */
.rd-topbar {
  background: linear-gradient(90deg, var(--rd-primary) 0%, var(--rd-primary-dark) 100%);
  color: #fff;
  font-size: .85rem;
  padding: 8px 0;
}

.rd-topbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.rd-topbar__social {
  display: flex;
  gap: 8px;
}

.rd-topbar__social a {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, .10);
  color: #fff !important;
  transition: all .25s var(--rd-ease);
}

.rd-topbar__social a:hover {
  background: var(--rd-accent);
  transform: translateY(-1px);
  color: #fff !important;
}

.rd-topbar__contact {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}

.rd-topbar__contact a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: rgba(255, 255, 255, .92) !important;
}

.rd-topbar__contact a:hover {
  color: #fff !important;
}

.rd-topbar__contact a i {
  color: var(--rd-accent);
}

/* Main bar */
.rd-nav {
  background: rgba(255, 255, 255, .95);
  -webkit-backdrop-filter: saturate(180%) blur(14px);
  backdrop-filter: saturate(180%) blur(14px);
  box-shadow: var(--rd-shadow-sm);
  border-bottom: 1px solid var(--rd-line);
  position: sticky;
  top: 0;
  z-index: 999;
  transition: box-shadow .3s var(--rd-ease);
}

.rd-nav.is-stuck {
  box-shadow: var(--rd-shadow-md);
}

.rd-nav__inner {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 76px;
  padding: 8px 0;
}

.rd-nav__logo {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.rd-nav__logo img {
  display: block;
  max-height: 60px;
  width: auto;
}

.rd-nav__menu {
  flex: 1;
  display: flex;
  justify-content: center;
}

.rd-nav__menu>ul {
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.rd-nav__menu>ul>li {
  position: relative;
}

.rd-nav__menu>ul>li>a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 14px;
  font-weight: 600;
  font-size: .96rem;
  color: var(--rd-text) !important;
  border-radius: 999px;
  transition: all .25s var(--rd-ease);
}

.rd-nav__menu>ul>li>a:hover,
.rd-nav__menu>ul>li.is-active>a {
  color: var(--rd-primary) !important;
  background: var(--rd-primary-soft);
}

.rd-nav__menu .rd-submenu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  min-width: 280px;
  background: #fff;
  border-radius: var(--rd-radius);
  box-shadow: var(--rd-shadow-lg);
  border: 1px solid var(--rd-line);
  padding: 8px;
  margin: 0;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: all .25s var(--rd-ease);
}

.rd-nav__menu>ul>li:hover>.rd-submenu,
.rd-nav__menu>ul>li:focus-within>.rd-submenu {
  opacity: 1;
  visibility: visible;
  transform: none;
}

.rd-nav__menu .rd-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;
}

.rd-nav__menu .rd-submenu li a:hover {
  background: var(--rd-primary-soft);
  color: var(--rd-primary) !important;
}

/* CTA */
.rd-nav__cta {
  display: inline-flex;
  align-items: center;
  padding: 11px 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;
  white-space: nowrap;
  box-shadow: 0 8px 22px rgba(31, 42, 61, .25);
  transition: all .3s var(--rd-ease);
}

.rd-nav__cta:hover {
  transform: translateY(-2px);
  background: linear-gradient(135deg, var(--rd-accent), var(--rd-accent-dark)) !important;
  color: #fff !important;
  box-shadow: 0 14px 30px rgba(184, 137, 59, .35);
}

/* Hamburger */
.rd-nav__toggle {
  display: none;
  width: 44px;
  height: 44px;
  background: var(--rd-primary);
  border: 0;
  border-radius: 10px;
  padding: 0;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  margin-left: auto;
  transition: background .2s var(--rd-ease);
}

.rd-nav__toggle:hover {
  background: var(--rd-primary-dark);
}

.rd-nav__toggle span {
  width: 22px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  display: block;
  transition: transform .3s var(--rd-ease), opacity .2s var(--rd-ease);
}

/* Off-canvas drawer */
.rd-drawer {
  position: fixed;
  inset: 0;
  z-index: 10000;
  visibility: hidden;
  pointer-events: none;
  overflow: hidden;
}

.rd-drawer.is-open {
  visibility: visible;
  pointer-events: auto;
}

.rd-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 21, 32, .55);
  opacity: 0;
  transition: opacity .3s var(--rd-ease);
}

.rd-drawer.is-open .rd-drawer__backdrop {
  opacity: 1;
}

.rd-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(86%, 360px);
  background: #fff;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform .35s var(--rd-ease);
  box-shadow: -16px 0 40px rgba(15, 21, 32, .18);
}

.rd-drawer.is-open .rd-drawer__panel {
  transform: none;
}

.rd-drawer__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 18px;
  border-bottom: 1px solid var(--rd-line);
  flex-shrink: 0;
}

.rd-drawer__logo img {
  display: block;
  max-height: 48px;
  width: auto;
}

.rd-drawer__close {
  background: var(--rd-primary-soft);
  color: var(--rd-primary);
  border: 0;
  cursor: pointer;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  font-size: 24px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all .2s var(--rd-ease);
}

.rd-drawer__close:hover {
  background: var(--rd-primary);
  color: #fff;
}

.rd-drawer__nav {
  flex: 1;
  overflow-y: auto;
  padding: 8px 12px;
  -webkit-overflow-scrolling: touch;
}

.rd-drawer__nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.rd-drawer__nav>ul>li {
  border-bottom: 1px solid var(--rd-line);
}

.rd-drawer__nav>ul>li:last-child {
  border-bottom: 0;
}

.rd-drawer__nav a,
.rd-drawer__nav .sub-toggle {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 14px 12px;
  background: transparent;
  border: 0;
  font: inherit;
  text-align: left;
  color: var(--rd-text) !important;
  font-weight: 600;
  font-size: .98rem;
  cursor: pointer;
}

.rd-drawer__nav a:hover,
.rd-drawer__nav .sub-toggle:hover {
  color: var(--rd-primary) !important;
}

.rd-drawer__nav .sub-toggle {
  justify-content: space-between;
}

.rd-drawer__nav .sub-toggle i {
  color: var(--rd-text-soft);
  transition: transform .3s var(--rd-ease);
}

.rd-drawer__nav .has-sub.is-open .sub-toggle i {
  transform: rotate(180deg);
  color: var(--rd-primary);
}

.rd-drawer__submenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height .35s var(--rd-ease);
  padding-left: 12px !important;
  border-left: 2px solid var(--rd-primary-soft);
  margin: 0 0 10px 6px !important;
}

.rd-drawer__nav .has-sub.is-open .rd-drawer__submenu {
  max-height: 1200px;
}

.rd-drawer__submenu li {
  border-bottom: 0 !important;
}

.rd-drawer__submenu li a {
  font-weight: 500;
  font-size: .9rem;
  padding: 9px 12px;
  color: var(--rd-text-soft) !important;
}

.rd-drawer__translate-item {
  border-bottom: 1px solid var(--rd-line) !important;
  padding: 14px 12px 16px;
}

.rd-drawer__translate-label {
  display: block;
  margin: 0 0 10px;
  font-size: .88rem;
  font-weight: 600;
  color: var(--rd-text-soft);
}

.rd-drawer__translate {
  display: block;
}

.rd-drawer__translate .goog-te-gadget {
  font-size: 0 !important;
}

.rd-drawer__translate .goog-te-gadget span,
.rd-drawer__translate .goog-te-gadget a {
  display: none !important;
}

.rd-drawer__translate .goog-te-combo {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 9px 12px !important;
  font-size: .92rem !important;
}

.rd-drawer__cta {
  display: block;
  flex-shrink: 0;
  margin: 14px 18px 22px;
  padding: 13px 22px;
  background: linear-gradient(135deg, var(--rd-primary), var(--rd-primary-dark)) !important;
  color: #fff !important;
  border-radius: 999px;
  font-weight: 600;
  text-align: center;
  box-shadow: 0 10px 26px rgba(31, 42, 61, .28);
}

.rd-drawer__cta:hover {
  background: linear-gradient(135deg, var(--rd-accent), var(--rd-accent-dark)) !important;
  color: #fff !important;
}

body.rd-drawer-open {
  overflow: hidden;
}

/* Responsive switch — desktop > 991, mobile ≤ 991 */
@media (max-width: 991px) {
  .rd-topbar {
    display: none;
  }

  .rd-nav__menu {
    display: none;
  }

  .rd-nav__cta {
    display: none;
  }

  .rd-nav__translate {
    display: none !important;
  }

  .rd-nav__toggle {
    display: flex;
    flex-shrink: 0;
    flex: 0 0 44px;
    margin-left: auto;
    position: relative;
    z-index: 2;
    order: 3;
  }

  .rd-nav__inner {
    min-height: 64px;
    gap: 6px;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }

  .rd-nav__logo {
    flex-shrink: 1 !important;
    min-width: 0;
    order: 1;
  }

  .rd-nav__logo img {
    max-height: 42px;
    width: auto;
    object-fit: contain;
  }
}

@media (max-width: 576px) {
  .rd-nav__logo img {
    max-height: 34px;
  }
}






/* =========================================================
   GOOGLE TRANSLATE - CLEAN FINAL VERSION
========================================================= */

#google_translate_element {
  display: inline-flex;
  align-items: center;
}

/* Hide Google branding */
.goog-te-gadget {
  font-size: 0 !important;
  color: transparent !important;
}

.goog-te-gadget span,
.goog-te-gadget a {
  display: none !important;
}

/* Translate dropdown */
.goog-te-combo {
  background: #fff !important;
  border: 1.5px solid var(--rd-line) !important;
  border-radius: 999px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--rd-text) !important;
  cursor: pointer !important;
  min-width: 120px;
  transition: all 0.25s ease !important;
}

.goog-te-combo:hover,
.goog-te-combo:focus {
  border-color: var(--rd-accent) !important;
  background: var(--rd-primary-soft) !important;
}

/* Hide Google popup/banner */
.goog-te-banner-frame,
iframe.goog-te-banner-frame,
.goog-te-balloon-frame,
#goog-gt-tt {
  display: none !important;
  visibility: hidden !important;
}

body {
  top: 0 !important;
}

/* Remove highlight */
.goog-text-highlight {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}


/* =========================================================
   LANGUAGE DROPDOWN (CUSTOM UI ONLY)
========================================================= */

.language-dropdown {
  position: relative;
}

/* button */
.language-dropdown .lang-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 600;
  color: #222;
  cursor: pointer;
  transition: 0.3s;
}

.language-dropdown .lang-badge:hover {
  background: #f2f2f2;
}

.language-dropdown .flag-icon img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
}

/* dropdown */
.language-dropdown .rd-submenu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 120px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.1);
  display: none;
  padding: 6px 0;
  z-index: 999;
}

/* open state */
.language-dropdown.is-open .rd-submenu {
  display: block;
}

/* items */
.language-dropdown .rd-submenu li a {
  display: block;
  padding: 10px 12px;
  font-size: 14px;
  text-align: center;
  color: #333;
  text-decoration: none;
}

.language-dropdown .rd-submenu li a:hover {
  background: #f5f5f5;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 991px) {

  .language-dropdown {
    width: 100%;
  }

  .language-dropdown .lang-badge {
    width: 100%;
    justify-content: flex-start;
    padding: 12px 16px;
    border-radius: 0;
  }

  .language-dropdown .rd-submenu {
    position: static;
    width: 100%;
    box-shadow: none;
    border-radius: 0;
  }

  .language-dropdown .rd-submenu li a {
    text-align: left;
    padding: 12px 16px;
    border-top: 1px solid #eee;
  }
}



