/* =============================================
   PRODERMA FIGMA-EXACT HOME STYLES
   Pixel-perfect match to Figma screenshots
   Desktop (1440px) + Mobile (390px)
   ============================================= */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Noto+Serif+SC:wght@400;600;900&family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;1,400&display=swap');

/* ===== RESET & BASE ===== */
/* Force edge-to-edge full width for all theme layout wrappers on first load */
body.home .site-content,
body.home .content-area,
body.home .container,
body.home .post-inner,
body.home main,
body.home .entry-content {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.pd-luxury-home-container {
    font-family: 'Open Sans', sans-serif;
    color: #1E1E1E;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background: var(--pd-bg-gradient) !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

/* Screen Reader Text - Accessibility Utility */
.pd-screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.pd-luxury-home-container *,
.pd-luxury-home-container *::before,
.pd-luxury-home-container *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* Hide Edubin theme footer ONLY when ProDerma home is rendered */
.pd-luxury-home-container~footer#colophon,
.pd-luxury-home-container~footer.site-footer {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Kill random wpautop spacing at end of shortcode */
.pd-luxury-home-container~p,
.pd-luxury-home-container~br,
.pd-luxury-home-container~span,
.pd-luxury-home-container~div:not(.pd-luxury-global-footer) {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pd-home-container {
    width: 100%;
    max-width: 1140px;
    /* Standard boxed width */
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* ===== COMMON BUTTONS (Figma exact) ===== */
.pd-btn-sage {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 14px 34px;
    background: #AFC4A2;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 19px;
    color: #FFFFFF;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
}

.pd-btn-sage:hover {
    background: #9AB28C;
    color: #FFFFFF;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(154, 178, 140, 0.3);
}

.pd-btn-link {
    display: inline-block;
    color: #1E1E1E;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    padding: 12px 10px;
    transition: color 0.3s ease;
}

.pd-btn-link:hover {
    color: #AFC4A2;
}

.pd-btn-outline-sage {
    display: inline-block;
    color: #AFC4A2;
    border: 1px solid #AFC4A2;
    padding: 10px 24px;
    border-radius: 6px;
    font-weight: 500;
    font-size: 13px;
    text-decoration: none;
    transition: all 0.3s ease;
    background: transparent;
}

.pd-btn-outline-sage:hover {
    background: #AFC4A2;
    color: #FFFFFF;
}

/* Desktop/Mobile visibility */
.mobile-only {
    display: none !important;
}

.desktop-only {
    display: block !important;
}

/* =========================================================
   HERO SECTION — Figma Exact (Desktop Screenshot Match)
   ========================================================= */
.pd-home-hero-v2 {
    position: relative;
    padding: 80px 0 50px;
    overflow: hidden;
    min-height: auto;
    display: block;
    z-index: 1;
    background: transparent;
}

.pd-hero-gradient-overlay {
    display: none;
}

.pd-hero-grid-v2 {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center;
    position: relative;
}

/* Hero Label - small caps above title */
.pd-hero-label-v2 {
    display: block;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 11px;
    line-height: 15px;
    letter-spacing: 0.02em;
    color: #5A5A5A;
    margin-bottom: 8px !important;
    text-transform: uppercase;
}

/* Green decorative line */
.pd-hero-line-v2 {
    display: block !important;
    width: 170px !important;
    height: 1px !important;
    background-color: #AFC4A2 !important; /* Elegant Sage Green */
    margin: 8px 0 20px 0 !important;
}

/* Hero Title - Figma exact */
.pd-hero-title-v2 {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 48px;
    line-height: 100%;
    color: #1E1E1E;
    margin-bottom: 20px;
    max-width: 580px;
}

/* Hero Description — Figma: 17px/23px */
.pd-hero-desc-v2 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 17px;
    line-height: 23px;
    color: #1E1E1E;
    margin-bottom: 40px;
    max-width: 400px;
}

/* Hero Actions - buttons row */
.pd-hero-actions-v2 {
    display: flex;
    align-items: center;
    gap: 48px;
}

.pd-spacer-v2 {
    display: none;
}

/* Hero CTA Button - Sage green */
.pd-btn-sage-v2 {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 14px 40px;
    gap: 8px;
    min-width: 200px;
    width: fit-content;
    height: 52px;
    background: #AFC4A2 !important;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 15px;
    line-height: 19px;
    text-align: center;
    color: #FFFFFF !important;
    text-decoration: none !important;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease !important;
    white-space: nowrap;
}

.pd-btn-sage-v2:hover {
    background: #9eb092 !important; /* The "beautiful" darker shade */
    color: #FFFFFF !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(175, 196, 162, 0.4);
}

/* Hero secondary link */
.pd-btn-link-v2 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 19px;
    text-align: center;
    color: #1E1E1E;
    text-decoration: none;
    transition: color 0.3s;
}

.pd-btn-link-v2:hover {
    color: #AFC4A2;
}

/* Hero Image — Desktop (right side) */
.pd-hero-image-v2 {
    position: relative;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: transparent !important;
}

.pd-hero-image-v2.mobile-only {
    display: none !important;
}

.pd-hero-image-v2.desktop-only {
    display: block !important;
}

.pd-hero-img-main {
    width: 100%;
    max-width: 568px;
    height: 378px;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

/* =========================================================
   STATS BAR — Figma Exact
   ========================================================= */
.pd-home-stats-v2 {
    position: relative;
    padding: 40px 0;
    margin-top: 0;
    margin-bottom: 0;
}

.pd-home-stats-v2 .pd-home-container {
    position: relative;
}

.pd-stats-row-v2 {
    position: relative;
    width: 100%;
    min-height: 204px;
    background: transparent !important;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 90px;
    overflow: hidden;
    padding: 40px 20px;
}

/* Watermarks */
.pd-watermark {
    position: absolute;
    width: 400px;
    height: 380px;
    opacity: 0.3;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.pd-watermark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.pd-watermark-left {
    left: -80px;
    top: -60px;
}

.pd-watermark-right {
    right: -80px;
    top: -60px;
    transform: scaleX(-1);
}

.pd-stat-item-v2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    position: relative;
    z-index: 1;
}

.pd-stat-num-v2 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 32px;
    line-height: 44px;
    text-align: center;
    color: #1E1E1E;
}

.pd-stat-text-v2 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    text-align: center;
    color: #1E1E1E;
    white-space: nowrap;
}

.pd-stat-divider-v2 {
    display: none;
}

/* =========================================================
   DEPARTMENTS SECTION — Figma Exact
   ========================================================= */
.pd-home-departments {
    padding: 60px 0 50px;
    background: transparent;
}

.pd-home-departments .pd-home-container {
    max-width: 1320px !important;
}

.pd-deps-header {
    margin-bottom: 32px;
}

.pd-deps-label {
    display: inline-block;
    background: #AFC4A2;
    border-radius: 4px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 11px;
    line-height: 15px;
    color: #FFFFFF;
    padding: 5px 16px;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.pd-deps-title {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 112%;
    color: #1E1E1E;
    margin-bottom: 12px;
    max-width: 600px;
}

.pd-deps-desc {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    color: #5A5A5A;
    max-width: 650px;
    margin-bottom: 0;
}

/* Departments Grid: left image (527px) + right cards */
.pd-deps-grid-v2 {
    display: grid;
    grid-template-columns: 527px 1fr; /* Exact Figma width of 527px to show the full image */
    gap: 36px;
    align-items: stretch; /* Stretch image to match height of cards column */
}

.pd-deps-main-image {
    position: relative;
    overflow: hidden;
    border-radius: 20px !important;
    height: 100% !important;
}

.pd-deps-main-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: none !important; /* Zoom out back to normal scale */
    display: block !important;
    border-radius: 20px !important;
}

/* Department cards in 2-col grid */
.pd-deps-list-v2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.pd-dep-card-v2 {
    position: relative;
    padding: 16px 20px; /* Reduced vertical padding to form compact rectangular rows */
    border-bottom: 1px solid rgba(175, 196, 162, 0.4);
    transition: all 0.3s ease;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    box-sizing: border-box;
}

.pd-dep-card-v2::before {
    content: '';
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: 8px;
    right: 8px;
    background: linear-gradient(180deg, #f1f7ef 0%, #deebd5 100%) !important;
    opacity: 0;
    border-radius: 12px;
    z-index: -1;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.pd-dep-card-v2:nth-child(odd) {
    border-right: 1px solid rgba(175, 196, 162, 0.4);
}

.pd-dep-card-v2:nth-last-child(-n+2) {
    border-bottom: 1px solid rgba(175, 196, 162, 0.4);
}

.pd-dep-card-v2 h3 {
    font-family: 'Inter', 'Outfit', sans-serif; /* Clean sans-serif matching Figma design */
    font-weight: 700;
    font-size: 16px; /* 16px exact Figma styling */
    line-height: 130%;
    color: #1E1E1E;
    margin-bottom: 6px;
}

.pd-dep-card-v2 p {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    color: #333333;
    margin-bottom: 16px;
    flex-grow: 1;
}

/* Department "Explore" Button — outline style */
.pd-dep-card-v2 .pd-btn-sage-v2 {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 16px;
    width: 100%;
    max-width: 299px;
    height: 36px;
    background: #FFFFFF !important;
    border: 1px solid #AFC4A2 !important;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 18px;
    color: #1E1E1E !important;
    transition: all 0.3s ease;
}

.pd-dep-card-v2 .pd-btn-sage-v2:hover {
    background: #AFC4A2 !important;
    border-color: #AFC4A2 !important;
    color: #FFFFFF !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(175, 196, 162, 0.3);
}

/* Hover effect on desktop cards */
@media (hover: hover) {
    .pd-dep-card-v2:hover::before {
        opacity: 1;
    }
    
    .pd-dep-card-v2:hover .pd-btn-sage-v2 {
        background: #AFC4A2 !important;
        border-color: #AFC4A2 !important;
        color: #FFFFFF !important;
    }
}

.pd-dep-card-v2 .pd-dep-icon-v2 {
    display: none;
}

/* Mobile bottom image */
.pd-deps-mobile-image {
    margin-top: 24px;
}

.pd-deps-mobile-image img {
    width: 100%;
    height: auto;
    border-radius: 4px;
}

/* Hide helpers */
.pd-hide-mobile {
    display: block;
}

.pd-hide-desktop {
    display: none;
}

/* =========================================================
   SPECIALISTS SECTION — Figma Exact
   ========================================================= */
.pd-home-section {
    /* Section wrapper — styling handled by individual section classes */
    position: relative;
}

.pd-home-specialists {
    padding: 60px 0;
    background: transparent !important;
}

.pd-section-header-left {
    margin-bottom: 24px;
}

.pd-section-label-specialist {
    display: inline-block;
    background: #AFC4A2;
    border-radius: 4px;
    /* Desktop: 4px */
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 11px;
    line-height: 15px;
    color: #FFFFFF;
    padding: 5px 16px;
    margin-bottom: 34px;
    text-transform: uppercase;
    text-align: center;
}

.pd-specialist-title {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 112%;
    color: #1E1E1E;
    margin-bottom: 12px;
}

.pd-specialist-desc {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    color: #1E1E1E;
    max-width: 650px;
    margin-bottom: 40px;
}

/* Search Bar */
.pd-spec-search-wrap {
    margin-bottom: 24px;
    width: 100%;
}

.pd-spec-search-inner {
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 1020px;
    background: #FFFFFF;
    border: 1px solid #000000;
    border-radius: 8px;
    overflow: hidden;
    height: 52px;
}

.pd-spec-search-inner input {
    flex: 1;
    border: none;
    outline: none;
    padding: 16px 33px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 15px;
    line-height: 20px;
    color: #5A5A5A;
    background: transparent;
}

.pd-spec-search-inner input::placeholder {
    color: #5A5A5A;
}

.pd-spec-search-btn {
    border: none;
    background: none;
    border-left: 1px solid #5A5A5A;
    padding: 0 40px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 18px;
    color: #1E1E1E;
    cursor: pointer;
    height: 100%;
    white-space: nowrap;
    transition: background 0.3s;
}

.pd-spec-search-btn:hover {
    background: #f5f5f5;
}

/* Filter Bar */
.pd-spec-filter-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.pd-spec-filter-title {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 12px;
    line-height: 16px;
    color: #5A5A5A;
    text-transform: uppercase;
    margin-right: 8px;
}

.pd-spec-filter-pills {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.pd-spec-pill {
    box-sizing: border-box;
    padding: 7px 44px;
    min-width: 150px;
    height: 32px;
    background: #FFFFFF;
    border: 1px solid #5A5A5A;
    border-radius: 4px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    text-align: center;
    color: #1E1E1E;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pd-spec-pill.active-pill {
    background: #FDF6EE;
    border: 1px solid #5A5A5A;
    justify-content: center;
    padding: 7px 25px 7px 31px;
}

/* Doctor Cards Grid — 4 across */
.pd-doctors-grid-v3 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

/* When Swiper is active (mobile/tablet), change to flex */
.pd-doctors-swiper-v2.swiper-initialized .pd-doctors-grid-v3 {
    display: flex;
    gap: 0;
}

.pd-doctors-swiper-v2 .swiper-slide {
    height: auto;
    display: flex;
    justify-content: center;
    align-items: stretch;
}

.pd-doc-card-v3 {
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 24px 16px !important;
    gap: 12px !important;
    background: #FFFFFF !important;
    border: 1px solid #AFC4A2 !important;
    border-radius: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: min-content !important;
    overflow: hidden !important;
    position: relative !important;
    isolation: isolate !important;
    transition: all 0.3s !important;
    text-align: center !important;
    margin: 0 auto !important;
}

.pd-doc-card-v3 .pd-doc-card-watermark {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100px !important;
    height: 120px !important;
    background-image: url('../../../Png-Logo/New/logo%20home%2000.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: top left !important;
    opacity: 0.25 !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.pd-doc-card-v3:hover {
    border-width: 2px !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 24px rgba(175, 196, 162, 0.15) !important;
}

/* Doctor Image & Mask Wrapper */
.pd-doc-mask-wrapper {
    position: relative !important;
    width: 100px !important;
    height: 100px !important;
    margin-bottom: 6px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    z-index: 2 !important;
}

/* This is the beige circle behind the photo in Figma */
.pd-doc-bg-mask {
    position: absolute !important;
    width: 100px !important;
    height: 100px !important;
    background: #F4DFCD !important;
    border-radius: 50% !important;
    z-index: -1 !important;
    pointer-events: none !important;
}

.pd-doc-circle-mask {
    width: 92px !important;
    height: 92px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    position: relative !important;
    background: #f5f5f5 !important;
    z-index: 1 !important;
}

.pd-doc-circle-mask img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
}

/* Doctor Info */
.pd-doc-text-frame {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 4px !important;
    width: 100% !important;
}

.pd-doc-name {
    font-family: 'Outfit', 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    line-height: 18px !important;
    color: #1E1E1E !important;
    margin: 0 0 2px 0 !important;
}

.pd-doc-spec {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 400 !important;
    font-size: 11px !important;
    line-height: 15px !important;
    color: #1E1E1E !important;
    margin: 0 !important;
}

.pd-doc-meta {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 400 !important;
    font-size: 11px !important;
    line-height: 15px !important;
    color: #5A5A5A !important;
    margin: 4px 0 0 0 !important;
}

/* Doctor Buttons */
.pd-doc-book-btn {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 8px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    height: 32px !important;
    background: #AFC4A2 !important;
    border-radius: 6px !important;
    font-family: 'Outfit', 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    line-height: 15px !important;
    text-align: center !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
}

.pd-doc-book-btn:hover {
    background: #9AB38D !important;
    color: #FFFFFF !important;
}

.pd-doc-view-link {
    font-family: 'Outfit', 'Open Sans', sans-serif !important;
    font-weight: 400 !important;
    font-size: 11px !important;
    line-height: 15px !important;
    color: #1E1E1E !important;
    text-decoration: none !important;
    transition: color 0.3s !important;
}

.pd-doc-view-link:hover {
    color: #AFC4A2 !important;
}

/* Swiper Navigation Arrows — hidden on desktop */
.pd-doctors-swiper-v2 .pd-swiper-nav-v2 {
    display: none !important;
}

/* View All Link */
.pd-spec-all-link {
    text-align: center;
    margin-top: 8px;
}

.pd-spec-all-link a {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 19px;
    color: #1E1E1E;
    text-decoration: none;
    transition: color 0.3s;
}

.pd-spec-all-link a:hover {
    color: #AFC4A2;
}

/* =========================================================
   TRUST / WHY SECTION — Figma Exact
   ========================================================= */
.pd-home-trust-v3 {
    position: relative;
    padding: 60px 0;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    min-height: 460px;
    display: flex;
    align-items: center;
}

.pd-trust-content-v3 {
    max-width: 600px;
}

.pd-trust-label-v3 {
    display: inline-block;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 11px;
    line-height: 15px;
    color: #5A5A5A;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.pd-trust-title-v3 {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 112%;
    color: #1E1E1E;
    margin-bottom: 14px;
}

.pd-trust-desc-v3 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    color: #1E1E1E;
    margin-bottom: 28px;
}

.pd-trust-actions-v3 {
    margin-top: 0;
}

.pd-btn-white-v3 {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 14px 44px;
    gap: 8px;
    background: #FFFFFF;
    border: 1px solid #AFC4A2;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 18px;
    text-align: center;
    color: #1E1E1E;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s;
}

.pd-btn-white-v3:hover {
    background: #AFC4A2;
    border-color: #AFC4A2;
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(175, 196, 162, 0.3);
}

/* =========================================================
   PROGRAMMES SECTION
   ========================================================= */
.pd-home-programmes {
    padding: 60px 0;
    background-color: transparent !important;
}

.pd-home-programmes .pd-section-header {
    margin-bottom: 40px;
    text-align: left !important;
}

.pd-home-programmes .pd-section-header * {
    text-align: left !important;
}

.pd-home-programmes .pd-section-header h2::after {
    margin-left: 0 !important;
    margin-right: auto !important;
    background: linear-gradient(90deg, #AFC4A2, transparent) !important;
}

.pd-home-programmes .pd-section-desc {
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
}

.pd-section-label {
    display: inline-block;
    border: 1px solid #AFC4A2;
    border-radius: 4px;
    font-family: 'Outfit', sans-serif;
    font-weight: 700;
    font-size: 11px;
    line-height: 15px;
    color: #5A5A5A;
    padding: 5px 16px;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.pd-section-title {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 112%;
    color: #1E1E1E;
    margin-bottom: 10px;
}

.pd-section-desc {
    font-family: 'Outfit', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    color: #5A5A5A;
    max-width: 520px;
}

.pd-programmes-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.pd-prog-card {
    background: #FFFFFF;
    border: 1px solid #ECEEEB;
    border-radius: 12px;
    padding: 30px 24px;
    display: flex;
    flex-direction: column;
    box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.02);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.pd-prog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0px 10px 30px rgba(175, 196, 162, 0.12);
    border-color: #AFC4A2;
}

/* Border top color codes */
.pd-prog-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: #F4DFCD; /* default peach */
    z-index: 10;
}

.pd-prog-card.pd-prog-green::before {
    background: #AFC4A2; /* sage green for membership card */
}

.pd-prog-card.pd-prog-white::before {
    background: #F4DFCD; /* peach for skin passport */
}

.pd-prog-card.pd-prog-starter::before {
    background: #EED4C2; /* medium peach */
}

.pd-prog-header {
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    font-size: 11px;
    line-height: 15px;
    color: #AFC4A2;
    text-transform: uppercase;
    margin-bottom: 12px;
    border-left: 2px solid #AFC4A2;
    padding-left: 8px;
}

.pd-prog-card h3 {
    font-family: 'Playfair Display', serif;
    font-weight: 500;
    font-size: 26px;
    line-height: 115%;
    color: #1E1E1E;
    margin-bottom: 14px;
}

.pd-prog-card p {
    font-family: 'Outfit', sans-serif;
    font-weight: 400;
    font-size: 13.5px;
    line-height: 1.5;
    color: #5A5A5A;
    margin-bottom: 20px;
}

.pd-prog-tags {
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    margin-bottom: 24px;
    margin-top: auto;
    overflow-x: auto;
    scrollbar-width: none;
    padding: 0;
}

.pd-prog-tags::-webkit-scrollbar {
    display: none;
}

@media (min-width: 992px) {
    .pd-prog-tags {
        flex-wrap: nowrap !important;
        gap: 12px !important;
    }
    .pd-prog-tags li {
        font-size: 11px !important;
        padding: 0px 4px 3px 6px !important;
        white-space: nowrap !important;
    }
}

.pd-prog-tags li {
    background: transparent;
    border: none;
    border-left: 1px solid #707070;
    border-bottom: 1px solid #707070;
    border-radius: 0;
    font-family: 'Outfit', sans-serif;
    font-size: 11px;
    line-height: 13px;
    color: #707070;
    padding: 0px 4px 3px 6px;
    transition: all 0.2s ease;
}

.pd-prog-card:hover .pd-prog-tags li {
    border-color: #AFC4A2;
    color: #AFC4A2;
}

.pd-mt-auto {
    margin-top: auto;
}

/* =========================================================
   PATIENT STORIES / REVIEWS (Figma Slider Layout)
   ========================================================= */
.pd-home-reviews {
    padding: 100px 0 !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    position: relative !important;
    overflow: visible !important;
}

.pd-home-reviews .pd-section-label {
    background-color: #AFC4A2 !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 4px !important;
}

.pd-reviews-header-layout {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 40px;
    width: 100%;
}

.pd-section-header-left-v2 {
    text-align: left;
}

.pd-section-header-left-v2 .pd-section-title {
    margin-top: 10px;
    font-size: 42px;
    line-height: 120%;
    margin-bottom: 0;
}

.pd-reviews-nav {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

.pd-slider-btn {
    width: 36px;
    height: 36px;
    border-radius: 4px;
    background: #AFC4A2;
    color: #FFFFFF;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.pd-slider-btn:hover {
    background: #8FA482;
}

.pd-slider-btn svg {
    display: block;
}

.pd-reviews-slider {
    overflow: hidden;
    position: relative;
    padding-bottom: 20px;
}

/* Force Swiper wrapper to stretch all slides equally */
.pd-reviews-slider .swiper-wrapper {
    align-items: stretch !important;
}

/* Override Swiper's internal .swiper-slide height */
.pd-reviews-slider .swiper-slide {
    height: auto !important;
    align-self: stretch !important;
    display: flex !important;
}

.pd-reviews-slider-wrapper {
    position: relative;
    width: 100%;
}

.pd-mobile-only-nav {
    display: none !important;
}

.pd-desktop-only-nav {
    display: flex !important;
}

.pd-review-card {
    background: #FEF9F3 !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 32px 30px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    min-height: 0 !important;
    box-shadow: none !important;
    transition: all 0.3s ease;
}

.pd-review-card:hover {
    transform: translateY(-5px);
}

.pd-review-card p {
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 18px;
    color: #1E1E1E;
    margin-bottom: 0;
    flex-grow: 1 !important;
}

.pd-reviewer-divider {
    height: 1px;
    background: #E5DDD3;
    margin: 20px 0 15px 0;
    width: 100%;
}

.pd-reviewer {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: auto !important;
}

.pd-reviews-cta-container {
    display: flex;
    justify-content: center;
    margin-top: 40px;
    width: 100%;
}

.pd-btn-reviews-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #FFFFFF;
    border: 1px solid #AFC4A2;
    color: #5A5A5A;
    padding: 12px 35px;
    border-radius: 30px;
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
}

.pd-btn-reviews-cta:hover {
    background: #AFC4A2;
    color: #FFFFFF;
    box-shadow: 0 10px 25px rgba(154, 168, 146, 0.2);
}

@media (max-width: 991px) {
    .pd-desktop-only-nav {
        display: none !important;
    }
    .pd-mobile-only-nav {
        display: flex !important;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background: transparent !important;
        border: none !important;
        color: #1E1E1E !important;
        width: 36px !important;
        height: 36px !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        z-index: 10;
        padding: 0 !important;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.3s ease;
    }
    .pd-mobile-only-nav svg {
        width: 10px !important;
        height: 18px !important;
        stroke-width: 2.5 !important;
    }
    .pd-mobile-only-nav:hover {
        color: #5A5A5A !important;
        background: transparent !important;
    }
    .pd-slider-prev.pd-mobile-only-nav {
        left: 2px !important;
    }
    .pd-slider-next.pd-mobile-only-nav {
        right: 2px !important;
    }
    .pd-reviews-slider-wrapper {
        padding: 0 40px;
        box-sizing: border-box;
    }
    /* Hide pagination dots on mobile */
    .pd-reviews-pagination {
        display: none !important;
    }
    /* Bigger review card text on mobile */
    .pd-review-card {
        padding: 28px 24px !important;
    }
    .pd-stars {
        font-size: 24px !important;
        margin-bottom: 14px !important;
    }
    .pd-review-card h4 {
        font-size: 18px !important;
        line-height: 120% !important;
        margin-bottom: 10px !important;
    }
    .pd-review-card p {
        font-size: 14px !important;
        line-height: 150% !important;
    }
    .pd-reviewer strong {
        font-size: 14px !important;
        color: #1E1E1E !important;
    }
    .pd-reviewer span {
        font-size: 12px !important;
    }
}

@media (max-width: 767px) {
    .pd-reviews-header-layout {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
    .pd-section-header-left-v2 .pd-section-title {
        font-size: 32px;
    }
    .pd-slider-prev.pd-mobile-only-nav {
        left: 0 !important;
    }
    .pd-slider-next.pd-mobile-only-nav {
        right: 0 !important;
    }
    .pd-reviews-slider-wrapper {
        padding: 0 32px;
    }
}

/* Pagination Dots */
.pd-reviews-pagination {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
}

.pd-reviews-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #AFC4A2 !important;
    opacity: 0.3;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
}

.pd-reviews-pagination .swiper-pagination-bullet-active {
    opacity: 1;
    transform: scale(1.2);
}

.pd-stars {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    color: #D9B906;
    font-size: 18px;
    line-height: 25px;
    margin-bottom: 16px;
    letter-spacing: 0;
}

.pd-review-card h4 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 104%;
    color: #1E1E1E;
    margin-bottom: 8px;
}

.pd-review-card p {
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 18px;
    color: #1E1E1E;
    margin-bottom: 14px;
    flex-grow: 1 !important;
}

.pd-reviewer {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: auto !important;
}

.pd-reviewer strong {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 13px;
    line-height: 18px;
    color: #5A5A5A;
}

.pd-reviewer span {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 11px;
    line-height: 15px;
    color: #5A5A5A;
}

/* =========================================================
   TECHNOLOGIES V2
   ========================================================= */
.pd-home-tech {
    padding: 100px 0;
    background: linear-gradient(135deg, #FFFDFB 0%, #F7EFE5 100%) !important;
    position: relative;
    overflow: hidden;
}

.pd-tech-layout-v2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.pd-home-tech .pd-section-header {
    text-align: left !important;
    margin-bottom: 40px;
}

.pd-home-tech .pd-section-header * {
    text-align: left !important;
}

.pd-home-tech .pd-section-label {
    background-color: #AFC4A2 !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 4px !important;
}

.pd-home-tech .pd-section-header h2::after {
    display: none !important;
}

.pd-home-tech .pd-section-title {
    margin-bottom: 8px !important;
    font-size: 42px !important;
    line-height: 120% !important;
}

.pd-home-tech .pd-section-desc {
    margin-top: 0 !important;
    font-size: 14px !important;
    line-height: 140% !important;
    color: #5A5A5A !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
}

.pd-tech-visual-v2 {
    display: flex;
    justify-content: center;
    align-items: center;
}

.pd-tech-brand-img {
    max-width: 100%;
    height: auto;
    pointer-events: none;
    user-select: none;
}

.pd-tech-list-v2 {
    margin-top: 40px;
    display: flex;
    flex-direction: column;
}

.pd-tech-item-v2 {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 20px 0 !important;
    border-bottom: 1px solid #AFC4A2 !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    background: transparent;
    cursor: pointer;
    border-radius: 0 !important;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
}

.pd-tech-item-v2:first-child {
    border-top: 1px solid #AFC4A2 !important;
}

.pd-tech-item-v2::before {
    display: none !important;
}

.pd-tech-item-v2:hover,
.pd-tech-item-v2.active {
    background: transparent !important;
    padding-left: 0 !important;
}

.pd-tech-img-box {
    width: 64px;
    height: 64px;
    min-width: 64px;
    background: #FFFFFF;
    border: 1px solid #AFC4A2 !important;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    box-sizing: border-box;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), border-color 0.4s ease;
}

.pd-tech-item-v2:hover .pd-tech-img-box,
.pd-tech-item-v2.active .pd-tech-img-box {
    transform: scale(1.05);
}

.pd-tech-img-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.pd-tech-info h3 {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
    color: #1E1E1E;
    margin: 0 0 6px 0;
    transition: color 0.3s ease;
}

.pd-tech-item-v2:hover .pd-tech-info h3,
.pd-tech-item-v2.active .pd-tech-info h3 {
    color: #AFC4A2;
}

.pd-tech-info p {
    font-family: 'Outfit', sans-serif;
    font-size: 12px;
    line-height: 140%;
    color: #707070;
    margin: 0;
}

.pd-tech-footer-v2 {
    margin-top: 32px;
}

@media (max-width: 1024px) {
    .pd-home-tech { padding: 60px 0; }
    .pd-tech-layout-v2 {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .pd-tech-visual-v2 {
        display: none;
    }
    .pd-tech-item-v2 {
        gap: 16px;
        padding: 16px 0 !important;
    }
    .pd-tech-item-v2:hover,
    .pd-tech-item-v2.active {
        padding-left: 0 !important;
    }
    .proderma-rtl .pd-tech-item-v2:hover,
    .proderma-rtl .pd-tech-item-v2.active {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }
    .pd-tech-img-box {
        width: 80px;
        height: 80px;
        min-width: 80px;
    }
    .pd-tech-footer-v2 {
        text-align: center;
    }
}


/* =========================================================
   JOURNAL
   ========================================================= */
.pd-home-journal .pd-section-header {
    margin-bottom: 40px;
    text-align: left !important;
}

.pd-home-journal .pd-section-header * {
    text-align: left !important;
}

.pd-home-journal .pd-section-label {
    background: #AFC4A2;
    color: #FFFFFF !important;
    border: none;
}

.pd-home-journal .pd-section-desc {
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
}

.pd-journal-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

.pd-journal-card {
    background: #FFFFFF;
    border: 1px solid #ECEEEB;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.02);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}

.pd-journal-card:hover {
    transform: translateY(-5px);
    box-shadow: 0px 10px 30px rgba(175, 196, 162, 0.12);
    border-color: #AFC4A2;
}

.pd-journal-image-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    display: block;
}

.pd-journal-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.pd-journal-image-wrapper:hover .pd-journal-image {
    transform: scale(1.05);
}

.pd-journal-card > br,
.pd-journal-card > p {
    display: none !important;
}

.pd-journal-text-wrap {
    padding: 8px 20px 16px !important;
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
}

.pd-journal-text-wrap p:empty,
.pd-journal-text-wrap br {
    display: none !important;
}

.pd-journal-card h3 {
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    font-size: 15px;
    line-height: 130%;
    color: #1E1E1E;
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
}

.pd-journal-card h3 a {
    color: #1E1E1E;
    text-decoration: none;
    transition: color 0.3s;
}

.pd-journal-card h3 a:hover {
    color: #AFC4A2;
}

.pd-journal-meta {
    font-family: 'Outfit', sans-serif;
    font-size: 11px;
    color: #707070;
    margin: 0;
}

.pd-journal-read-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #AFC4A2;
    color: #FFFFFF !important;
    border: none;
    padding: 11px 20px;
    border-radius: 0 0 12px 12px;
    font-family: 'Outfit', sans-serif;
    font-weight: 600;
    font-size: 12px;
    line-height: 1.4;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    width: 100%;
    box-sizing: border-box;
}

.pd-journal-read-btn:hover {
    background: #9AB28C;
}

/* =========================================================
   FAQ SECTION
   ========================================================= */
.pd-home-faq {
    padding: 60px 0;
    background: transparent !important;
}

/* =========================================================
   INSURANCE & FAQ V2
   ========================================================= */
.pd-insurance-box-v2 {
    background: transparent;
    border: none;
    border-bottom: 1px solid #5A5A5A;
    border-radius: 0;
    padding: 60px 0;
    margin-bottom: 60px;
}

.pd-insurance-title-v2 {
    font-family: 'Playfair Display', serif;
    font-weight: 400;
    font-size: 36px;
    line-height: 120%;
    color: #1E1E1E;
    margin-bottom: 40px;
    text-align: left;
}

.pd-insurance-grid-v2 {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 60px;
    flex-wrap: wrap;
}

.pd-ins-logo-v2 {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.pd-ins-logo-v2 img {
    max-height: 55px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    mix-blend-mode: multiply;
}

.pd-faq-grid-v2 {
    margin-top: 40px;
}

.pd-faq-full {
    width: 100%;
}

.pd-faq-list {
    list-style: none;
}

@media (min-width: 1024px) {
    .pd-faq-list {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 0 40px !important;
    }
}

.pd-faq-list li {
    border-bottom: 1px solid #5A5A5A;
}

.pd-faq-q {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 0;
    cursor: pointer;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
    color: #1A1A1A;
    transition: color 0.3s;
}

.pd-faq-q:hover {
    color: #AFC4A2;
}

.pd-faq-q span {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 24px;
    color: #000000;
    flex-shrink: 0;
    margin-left: 14px;
}

.pd-faq-a {
    padding: 0 0 14px;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 18px;
    color: #5A5A5A;
}

/* =========================================================
   BOOKING SECTION V2
   ========================================================= */
.pd-home-book {
    padding: 100px 0;
    background: transparent !important;
}

.pd-book-grid {
    display: grid !important;
    grid-template-columns: 1.1fr 1fr !important;
    gap: 80px;
    align-items: start;
}

.pd-section-desc-left {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    line-height: 140%;
    color: #1E1E1E;
    max-width: 420px;
    margin-bottom: 30px;
}

.pd-info-card-v2 {
    background: #AFC4A2;
    border: none;
    border-radius: 8px;
    padding: 30px 40px;
    color: #FFFFFF;
    margin-top: 40px;
}

.pd-info-list-v2 {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 30px;
}

.pd-info-item-v2 {
    display: flex;
    align-items: center;
    gap: 15px;
    font-family: 'Open Sans', sans-serif;
    font-size: 20px;
    color: #FFFFFF;
}

.pd-info-icon-v2 svg {
    width: 24px;
    height: 24px;
    stroke: #FFFFFF !important;
}

.pd-wa-icon-wrapper {
    background: transparent !important;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pd-btn-wa-v2 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #FFFDFB;
    color: #1E1E1E !important;
    padding: 12px 16px;
    border-radius: 8px;
    text-decoration: none;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 18px;
    transition: all 0.3s;
}

.pd-btn-wa-v2 .pd-wa-icon-wrapper svg {
    fill: #AFC4A2 !important;
    width: 20px;
    height: 20px;
}

.pd-btn-wa-v2:hover {
    background: #EDE7DF !important;
    color: #1E1E1E !important;
}

.pd-btn-wa-v2:hover .pd-wa-icon-wrapper svg {
    fill: #AFC4A2 !important;
}

.pd-booking-card-v2 {
    background: #FDF6EE;
    border-radius: 16px;
    padding: 40px;
}

.pd-card-header-v2 {
    text-align: center;
    margin-bottom: 25px;
    border-bottom: 1px solid #EDE7DF;
    padding-bottom: 20px;
}

.pd-card-header-v2 h3 {
    font-family: 'Playfair Display', serif !important;
    font-weight: 400;
    font-size: 32px !important;
    color: #1E1E1E;
    margin-bottom: 5px;
}

.pd-card-header-v2 p {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    color: #5A5A5A;
}

.pd-booking-form-v2 .pd-form-group {
    margin-bottom: 15px;
}

.pd-booking-form-v2 label {
    display: block;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    color: #5A5A5A;
    margin-bottom: 6px;
}

.pd-booking-form-v2 input,
.pd-booking-form-v2 select,
.pd-booking-form-v2 textarea {
    width: 100% !important;
    padding: 12px 16px !important;
    border: 1px solid #EDE7DF !important;
    border-radius: 4px !important;
    background: #FFFFFF !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    box-sizing: border-box;
    color: #1E1E1E !important;
    transition: border-color 0.3s;
}

.pd-booking-form-v2 input:focus,
.pd-booking-form-v2 select:focus,
.pd-booking-form-v2 textarea:focus {
    border-color: #AFC4A2 !important;
    outline: none;
}

.pd-lang-tabs-v2 {
    display: flex;
    gap: 10px;
}

.pd-lang-tab {
    flex: 1;
    cursor: pointer;
}

.pd-lang-tab input {
    display: none;
}

.pd-lang-tab span {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    border: 1px solid #EDE7DF !important;
    border-radius: 4px !important;
    background: #FFFFFF !important;
    font-weight: 600;
    color: #5A5A5A !important;
    transition: all 0.3s;
}

.pd-lang-tab input:checked + span {
    background: #AFC4A2 !important;
    color: #FFFFFF !important;
    border-color: #AFC4A2 !important;
}

.pd-form-check {
    margin: 15px 0;
}

.pd-checkbox-v2 {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}

.pd-checkbox-v2 input {
    width: 16px !important;
    height: 16px !important;
    margin-top: 2px !important;
}

.pd-label-text {
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    color: #5A5A5A;
    line-height: 1.4;
}

.pd-btn-submit-v2 {
    width: 100%;
    background: #AFC4A2 !important;
    color: #FFFFFF !important;
    padding: 14px;
    border: none;
    border-radius: 4px !important;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
    transition: all 0.3s !important;
}

.pd-btn-submit-v2:hover {
    background: #9eb092 !important; /* Slightly darker sage */
    color: #FFFFFF !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(175, 196, 162, 0.3);
}

.pd-form-footer-v2 {
    text-align: center;
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    color: #5A5A5A;
    margin-top: 15px;
    line-height: 1.4;
}

.pd-booking-form-real input:focus,
.pd-booking-form-real select:focus,
.pd-booking-form-real textarea:focus {
    border-color: #AFC4A2;
}

.pd-booking-form-real textarea {
    min-height: 90px;
    resize: vertical;
}

.pd-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.pd-lang-tabs {
    display: flex;
    gap: 6px;
}

.pd-lang-tabs label {
    cursor: pointer;
}

.pd-lang-tabs span {
    display: inline-block;
    padding: 7px 14px;
    border: 1px solid #D8D8D8;
    border-radius: 6px;
    font-size: 12px;
    text-align: center;
    transition: all 0.3s;
}

.pd-lang-tabs input:checked+span {
    background: #AFC4A2;
    color: #FFFFFF;
    border-color: #AFC4A2;
}

.pd-lang-tabs input {
    display: none;
}

.pd-form-terms {
    margin-bottom: 14px;
}

.pd-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    color: #5A5A5A;
    cursor: pointer;
}

.pd-checkbox-label input[type="checkbox"] {
    margin-top: 2px;
    accent-color: #AFC4A2;
}

.pd-btn-sage-full {
    display: block;
    width: 100%;
    padding: 12px;
    background: #AFC4A2;
    border: none;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #FFFFFF;
    cursor: pointer;
    transition: all 0.3s;
    text-align: center;
}

.pd-btn-sage-full:hover {
    background: #9AB38D;
}

.pd-form-footer {
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    color: #5A5A5A;
    text-align: center;
    margin-top: 10px;
}

.pd-center-link {
    text-align: center;
    margin-top: 16px;
}

/* =========================================================
   RESPONSIVE — TABLET (768px - 1024px)
   ========================================================= */
@media (max-width: 1024px) {
    .pd-home-container {
        padding: 0 32px;
    }

    /* Hero */
    .pd-hero-grid-v2 {
        gap: 32px;
    }

    .pd-hero-title-v2 {
        font-size: 36px;
    }

    .pd-hero-img-main {
        max-width: 100%;
        height: 280px;
    }

    /* Stats */
    .pd-stats-row-v2 {
        gap: 40px;
        padding: 30px 16px;
    }

    .pd-stat-num-v2 {
        font-size: 26px;
        line-height: 36px;
    }

    /* Departments */
    .pd-deps-title,
    .pd-specialist-title,
    .pd-trust-title-v3,
    .pd-section-title {
        font-size: 32px;
    }

    .pd-deps-grid-v2 {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        align-items: stretch;
    }

    .pd-deps-main-image {
        min-height: 400px !important;
        height: 100% !important;
    }

    .pd-deps-main-image img {
        width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        object-fit: cover !important;
        transform: none !important;
        border-radius: 20px !important;
    }

    /* Specialists */
    .pd-doctors-grid-v3 {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Programmes, Reviews, Tech, Journal */
    .pd-programmes-grid,
    .pd-reviews-grid,
    .pd-tech-grid,
    .pd-journal-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .pd-faq-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .pd-book-grid {
        grid-template-columns: 1fr !important;
        gap: 32px;
    }
}

/* =========================================================
   RESPONSIVE — MOBILE (max-width: 767px)
   Pixel-perfect match to Figma mobile design (390px)
   ========================================================= */
@media (max-width: 767px) {

    /* === BASE — Mobile === */
    .pd-luxury-home-container {
        background: linear-gradient(180.49deg, #FEF9F3 0.55%, #FFFFFF 7.04%, #FFFFFF 37.97%, #FEF9F3 44.2%, #FEF9F3 51.4%, #FFFFFF 69.48%, #FEFDFC 88.57%);
    }

    .pd-home-container {
        padding: 0 15px;
        max-width: 100%;
    }

    /* Visibility toggles */
    .mobile-only {
        display: block !important;
    }

    .desktop-only {
        display: none !important;
    }

    .pd-hide-mobile {
        display: none !important;
    }

    .pd-hide-desktop {
        display: block !important;
    }

    .desktop-only {
        display: none !important;
    }

    /* === HERO — Mobile (Figma exact: 390px width) === */
    .pd-home-hero-v2 {
        padding: 20px 0 16px;
        background: transparent;
    }

    .pd-hero-grid-v2 {
        grid-template-columns: 1fr;
        gap: 0;
    }

    /* Show label on mobile */
    .pd-hero-label-v2 {
        display: block !important;
        font-size: 10px !important;
        line-height: 14px !important;
        color: #5A5A5A !important;
        margin-bottom: 8px !important;
        text-transform: uppercase !important;
        letter-spacing: 0.05em !important;
    }

    .pd-hero-line-v2 {
        display: block !important;
        width: 170px !important;
        height: 1px !important;
        background-color: #AFC4A2 !important;
        margin: 8px 0 20px 0 !important;
    }

    /* h1 mobile — Figma: Playfair Display 600 26px/120% */
    .pd-hero-title-v2 {
        font-family: 'Playfair Display', serif;
        font-weight: 600;
        font-size: 26px;
        line-height: 120%;
        color: #1E1E1E;
        margin-bottom: 8px;
        max-width: 100%;
    }

    /* Image between title and description — Figma: 349×233px, border-radius: 4px */
    .pd-hero-image-v2.mobile-only {
        display: block !important;
        margin-bottom: 16px;
    }

    .pd-hero-img-main {
        width: 100%;
        max-width: 349px;
        height: 233px;
        object-fit: cover;
        border-radius: 4px;
        display: block;
        margin: 0 auto;
    }

    /* Description — Figma: Open Sans 400 15px/130% */
    .pd-hero-desc-v2 {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 15px;
        line-height: 130%;
        color: #1E1E1E;
        max-width: 100%;
        margin-bottom: 24px;
    }

    /* Actions — Figma: CTA 350×48px, border-radius: 4px */
    .pd-hero-actions-v2 {
        flex-direction: column;
        gap: 8px;
        align-items: stretch;
    }

    .pd-btn-sage-v2 {
        width: 100%;
        max-width: 350px;
        height: 48px;
        padding: 17px 55px;
        border-radius: 4px;
        font-family: 'Open Sans', sans-serif;
        font-weight: 700;
        font-size: 14px;
        line-height: 19px;
        margin: 0 auto;
    }

    .pd-btn-link-v2 {
        text-align: center;
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 14px;
        line-height: 19px;
        color: #1E1E1E;
        padding: 8px 0;
    }

    /* === STATS — Mobile (Figma exact) ===
       Layout: 2 rows — AURA+MOH top, Specialties+Expert Doctors+Languages bottom
       Numbers: Open Sans 400 26px/35px, Text: 12px/16px
       Dividers: 1px solid #AFC4A2 */
    .pd-home-stats-v2 {
        padding: 40px 0;
        background: transparent;
    }

    .pd-stats-row-v2 {
        display: grid !important;
        grid-template-columns: repeat(6, 1fr) !important;
        gap: 40px 0 !important;
        background: transparent !important; /* Made transparent as requested */
        border-radius: 12px !important;
        padding: 40px 10px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        min-height: auto !important;
        position: relative !important;
        overflow: hidden !important;
        box-shadow: 0 4px 20px rgba(0,0,0,0.03) !important;
    }

    .pd-stat-item-v2 {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        border-right: 1px solid rgba(175, 196, 162, 0.4) !important;
        box-sizing: border-box !important;
        padding: 0 5px !important;
    }

    /* 2 columns for all (2+2+1) */
    .pd-stat-item-v2:nth-child(1),
    .pd-stat-item-v2:nth-child(3),
    .pd-stat-item-v2:nth-child(5),
    .pd-stat-item-v2:nth-child(7) { 
        grid-column: span 3 !important; 
    }
    
    .pd-stat-item-v2:nth-child(9) { 
        grid-column: span 6 !important; 
        border-right: none !important;
    }

    /* Borders for 2-col layout */
    .pd-stat-item-v2:nth-child(3),
    .pd-stat-item-v2:nth-child(7) { border-right: none !important; }

    .pd-stat-num-v2 {
        font-family: 'Open Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 32px !important; /* Back to larger size as we have more space */
        line-height: 1.1 !important;
        color: #1E1E1E !important;
        margin-bottom: 8px !important;
    }

    .pd-stat-text-v2 {
        font-family: 'Open Sans', sans-serif !important;
        font-weight: 400 !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        color: #5A5A5A !important;
        white-space: normal !important;
        max-width: 120px !important; /* More width allowed now */
        margin: 0 auto !important;
    }

    .pd-stat-divider-v2 {
        display: none !important;
    }

    .pd-watermark {
        width: 80px;
        height: 80px;
        opacity: 0.2;
    }

    .pd-watermark-left {
        left: 0;
        bottom: 0;
        top: auto;
    }

    .pd-watermark-right {
        right: 0;
        bottom: 0;
        left: auto;
        top: auto;
    }

    /* === DEPARTMENTS — Mobile (Figma exact) ===
       Label: #AFC4A2 bg, border-radius: 2px, Open Sans 600 11px
       h2: Playfair Display 600 24px/115%
       Desc: Open Sans 400 14px/130%
       Card titles: Playfair Display 700 15px/130%
       Card desc: Open Sans 400 13px/18px
       Buttons: 350×36px, bg #AFC4A2, border-radius: 4px, Open Sans 600 12px, white
       Dividers: 1px solid #AFC4A2 */
    .pd-home-departments {
        padding: 24px 0;
    }

    .pd-deps-label {
        border-radius: 2px;
        font-weight: 600;
        padding: 5px 14px;
    }

    .pd-deps-title {
        font-size: 24px;
        line-height: 115%;
        max-width: 100%;
    }

    .pd-deps-desc {
        font-size: 14px;
        line-height: 130%;
        color: #1E1E1E;
        max-width: 100%;
    }

    .pd-deps-grid-v2 {
        grid-template-columns: 1fr;
    }

    .pd-deps-list-v2 {
        grid-template-columns: 1fr;
    }

    .pd-dep-card-v2 {
        position: relative;
        padding: 20px 8px;
        border-bottom: 1px solid rgba(175, 196, 162, 0.4);
    }

    .pd-dep-card-v2:nth-child(odd) {
        padding-right: 8px;
        border-right: none;
    }

    .pd-dep-card-v2:nth-child(even) {
        padding-left: 8px;
    }

    .pd-dep-card-v2:last-child {
        border-bottom: 1px solid rgba(175, 196, 162, 0.4);
    }

    .pd-dep-card-v2 h3 {
        font-family: 'Inter', 'Outfit', sans-serif;
        font-weight: 700;
        font-size: 16px;
        line-height: 130%;
        color: #1E1E1E;
        margin-bottom: 6px;
    }

    .pd-dep-card-v2 p {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 13px;
        line-height: 18px;
        color: #333333;
        margin-bottom: 14px;
    }

    /* Dep button — outline style */
    .pd-dep-card-v2 .pd-btn-sage-v2 {
        width: 100%;
        max-width: 350px;
        height: 36px;
        padding: 10px 16px;
        background: #FFFFFF !important;
        border: 1px solid #AFC4A2 !important;
        border-radius: 8px;
        color: #1E1E1E !important;
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 12px;
        line-height: 16px;
        transition: all 0.3s ease;
    }

    /* Mobile bottom image — Figma: 351×132px, border-radius: 4px */
    .pd-deps-mobile-image img {
        width: 100%;
        max-width: 351px;
        height: 132px;
        object-fit: cover;
        border-radius: 4px;
    }

    /* Show department icons on mobile */
    .pd-dep-card-v2 .pd-dep-icon-v2 {
        display: none;
        /* Icons handled by separate elements in Figma */
    }

    /* === SPECIALISTS — Mobile (Figma exact) ===
       Label: bg #AFC4A2, border-radius: 2px
       h2: Playfair Display 600 24px/115%
       Desc: Open Sans 400 14px/130%
       Search: 350×39px, border: 1px solid #000000, border-radius: 4px
       Search text: Open Sans 400 12px/115%, color: #5A5A5A
       Filter pills: 75×28px, border: 1px solid #5A5A5A, border-radius: 2px
       Active pills: background: #FDF6EE, 167×28px
       Doctor card: 281×337px, centered, border-radius: 8px, padding: 32px 38px
       Doctor name: Open Sans 700 15px/20px
}

/* Global Specialists Styles */
.pd-home-specialists {
    background: transparent !important;
    padding: 40px 0 60px;
    overflow: visible;
    width: 100%;
}

    .pd-doctors-swiper-v2 {
        padding: 0;
        margin: 0;
        width: 100%;
        overflow: hidden;
        position: relative;
    }

    .pd-section-label-specialist {
        background: #AFC4A2;
        border-radius: 2px;
        width: 136px;
        height: 26px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 11px;
        line-height: 15px;
        color: #FFFFFF;
        padding: 0;
        margin-bottom: 8px;
        text-transform: uppercase;
    }

    .pd-specialist-title {
        font-family: 'Playfair Display', serif;
        font-weight: 600;
        font-size: 24px;
        line-height: 115%;
        color: #1E1E1E;
        margin-bottom: 12px;
    }

    .pd-doc-actions-mobile-v2 {
        display: none;
    }

    .pd-specialist-desc {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 14px;
        line-height: 130%;
        color: #1E1E1E;
        max-width: 250px;
        /* Matching Figma text wrap */
        margin-bottom: 24px;
    }

    .pd-spec-search-wrap {
        width: 350px;
        height: 39px;
        margin: 0 auto 20px;
        position: relative;
    }

    .pd-spec-search-inner {
        height: 39px;
        width: 100%;
        border: 1px solid #000000;
        border-radius: 4px;
        display: flex;
        align-items: center;
        background: #FFFFFF;
        padding: 0 !important;
        overflow: hidden;
    }

    .pd-spec-search-inner input {
        flex: 1;
        height: 100%;
        padding: 0 26px !important;
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 12px;
        line-height: 115%;
        color: #5A5A5A;
        border: none !important;
        outline: none !important;
    }

    .pd-spec-search-btn {
        width: 48px;
        height: 100%;
        background: transparent;
        border: none !important;
        border-left: 1px solid #1E1E1E !important;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Unified Search & Filter Bar V2 */
    .pd-filter-bar-v2 {
        margin: 40px 0 !important;
        background: transparent !important;
        padding: 0 !important;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .pd-search-v2 {
        display: flex !important;
        align-items: center !important;
        background: #FFFFFF !important;
        border: 1px solid #000000 !important;
        border-radius: 8px !important;
        height: 52px !important;
        padding: 0 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

    .pd-search-v2 input {
        flex: 1 !important;
        border: none !important;
        background: none !important;
        font-family: 'Open Sans', sans-serif !important;
        font-size: 15px !important;
        color: #5A5A5A !important;
        outline: none !important;
        height: 100%;
    }

    .pd-search-sep {
        width: 1px !important;
        height: 32px !important;
        background: #5A5A5A !important;
        margin: 0 20px !important;
    }

    .pd-search-v2 button {
        background: none !important;
        border: none !important;
        font-family: 'Open Sans', sans-serif !important;
        font-weight: 600 !important;
        font-size: 13px !important;
        color: #1E1E1E !important;
        cursor: pointer !important;
    }

    .pd-filter-controls {
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
        flex-wrap: wrap;
    }

    .pd-filter-label {
        font-family: 'Open Sans', sans-serif !important;
        font-weight: 300 !important;
        font-size: 12px !important;
        color: #5A5A5A !important;
        text-transform: uppercase !important;
        order: 1 !important;
    }

    .pd-filter-controls #pdFilterSpecV2 {
        order: 2 !important;
    }

    .pd-filter-controls #pdFilterLangV2 {
        order: 3 !important;
    }

    .pd-filter-controls #pdFilterGenderV2 {
        order: 4 !important;
    }

    .pd-filter-select-v2 {
        background: #FFFFFF !important;
        border: 1px solid #5A5A5A !important;
        border-radius: 4px !important;
        height: 36px !important;
        padding: 0 12px !important;
        font-family: 'Open Sans', sans-serif !important;
        font-size: 13px !important;
        color: #1E1E1E !important;
        cursor: pointer !important;
    }

    /* Doctor card — Figma: 281×337px, centered inside slide, border-radius: 8px */
    .pd-doctors-grid-v3 {
        display: flex;
        grid-template-columns: none;
    }

    .pd-doctors-swiper-v2 .swiper-slide {
        display: flex !important;
        justify-content: center !important;
        align-items: stretch !important;
        height: auto;
        padding-bottom: 24px;
    }

    /* Doctor card mobile - match desktop precisely and avoid overlap */
    .pd-doc-card-v2 {
        width: 100% !important;
        max-width: 380px !important;
        min-height: 520px !important;
        padding: 193px 16px 24px 16px !important;
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        align-items: stretch !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        margin: 0 auto !important;
    }

    .pd-doc-card-v2 .color-backdrop-badge {
        position: absolute !important;
        width: 100% !important;
        height: 181px !important;
        left: 0 !important;
        top: 0 !important;
        background: #AFC4A2 !important; /* Sage green backdrop matching Elen's card */
        z-index: 1 !important;
    }

    .pd-doc-img-wrap {
        box-sizing: border-box !important;
        position: absolute !important;
        width: 137px !important;
        height: 137px !important;
        left: calc(50% - 68.5px) !important;
        top: 58px !important;
        background: #FDF6EE !important;
        border: 1px solid #AFC4A2 !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        z-index: 3 !important;
        padding: 4px !important;
        margin: 0 !important;
    }

    .pd-doc-info {
        position: relative !important;
        z-index: 5 !important;
        margin-top: 16px !important;
        flex-grow: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        width: 100% !important;
    }

    .pd-doc-name-v2 {
        font-family: 'Playfair Display', serif !important;
        font-weight: 900 !important;
        font-size: 17px !important;
        color: #1E1E1E !important;
        margin: 0 0 4px 0 !important;
        text-align: center !important;
    }

    .pd-doc-title-v2 {
        font-size: 11px !important;
        font-weight: 700 !important;
        color: #5A5A5A !important;
        margin: 0 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .pd-doc-bio-v2 {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 11px !important;
        line-height: 15px !important;
        color: #5A5A5A !important;
        margin: 0 0 10px 0 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .pd-doc-years {
        font-family: 'Open Sans', sans-serif !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        color: #5A5A5A !important;
        margin: 4px 0 0 0 !important;
        text-align: center !important;
        width: 100% !important;
    }

    .pd-doc-card-v2 .pd-doc-actions-v2 {
        position: relative !important;
        z-index: 5 !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        gap: 12px !important;
        margin-top: 16px !important;
    }

    .pd-doc-profile-link {
        font-family: 'Open Sans', sans-serif !important;
        font-weight: 600 !important;
        font-size: 12px !important;
        color: #1E1E1E !important;
        text-decoration: none !important;
        transition: 0.3s !important;
        white-space: nowrap !important;
    }


    /* View all — Figma: Open Sans 400 14px/19px */
    .pd-spec-all-link {
        text-align: center;
        margin-top: 30px;
    }

    .pd-spec-all-link a {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 14px;
        line-height: 19px;
        color: #1E1E1E;
        text-decoration: none;
    }

    /* Navigation Arrows — Figma mobile: HIDDEN as requested */
    .pd-doctors-swiper-v2 .pd-swiper-nav-v2 {
        display: none !important;
    }
    .swiper-button-prev.pd-swiper-nav-v2 {
        left: -15px !important;
    }
    .swiper-button-next.pd-swiper-nav-v2 {
        right: -15px !important;
    }
    
    .pd-doctors-swiper-v2 {
        overflow: hidden !important;
        padding-bottom: 40px; /* Space for pagination dots */
        margin: 0; /* No side margins to avoid peeking */
    }

    .pd-doctors-swiper-v2 .pd-swiper-nav-v2::after {
        font-size: 16px !important;
        font-weight: 900;
        color: #000000;
    }

    .pd-doctors-swiper-v2 .swiper-button-prev.pd-swiper-nav-v2 {
        left: 20px !important;
    }

    .pd-doctors-swiper-v2 .swiper-button-next.pd-swiper-nav-v2 {
        right: 20px !important;
    }

    /* === TRUST / WHY SECTION — Mobile (Figma exact) ===
       Image (IMG_5200): 390×293px background
       Label: border: 1px solid #AFC4A2, bg: rgba(255,255,255,0.5), border-radius: 2px
       h2: Playfair Display 600 24px/115%
       Desc: Open Sans 400 13px/18px
       Button: 350×48px, bg: #FFFFFF, border-radius: 4px, Open Sans 400 14px */
    .pd-home-trust-v3 {
        min-height: auto;
        padding: 20px 0 24px;
        background-size: cover !important;
        background-position: center !important;
    }

    .pd-trust-label-v3 {
        background: rgba(255, 255, 255, 0.5);
        border: 1px solid #AFC4A2;
        border-radius: 2px;
        padding: 5px 12px;
        font-weight: 600;
        font-size: 11px;
    }

    .pd-trust-title-v3 {
        font-size: 24px;
        line-height: 115%;
    }

    .pd-trust-desc-v3 {
        font-size: 13px;
        line-height: 18px;
        color: #1E1E1E;
    }

    .pd-btn-white-v3 {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 350px;
        height: 48px;
        padding: 17px 55px;
        background: #FFFFFF;
        border: 1px solid #AFC4A2;
        border-radius: 8px;
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 14px;
        line-height: 19px;
        color: #1E1E1E;
        transition: all 0.3s;
    }

    .pd-btn-white-v3:hover {
        background: #AFC4A2 !important;
        border-color: #AFC4A2 !important;
        color: #FFFFFF !important;
    }

    /* === PROGRAMMES — Mobile (Figma exact) ===
       Label: border: 1px solid #AFC4A2, border-radius: 2px
       h2: Playfair Display 600 24px/115%
       Desc: Open Sans 400 14px/130%
       Cards: 350×240px, bg #FDFDFD, border: 1px solid #AFC4A2, border-radius: 0 0 8px 8px
       Card label: Open Sans 600 12px, color: #AFC4A2
       Card title: Playfair Display 600 14px/130%
       Card desc: Open Sans 400 12px/115%, color: #5A5A5A
       Tags: Open Sans 400 10px, border: 1px solid #AFC4A2
       Button: 341×36px, bg #AFC4A2, border-radius: 4px */
    .pd-home-programmes {
        padding: 24px 0;
    }

    .pd-section-label {
        border-radius: 2px;
        font-weight: 600;
    }

    .pd-section-title {
        font-size: 24px;
        line-height: 115%;
    }

    .pd-section-desc {
        font-size: 14px;
        line-height: 130%;
        color: #1E1E1E;
    }

    .pd-programmes-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .pd-prog-card {
        border: 1px solid #AFC4A2;
        border-radius: 0 0 8px 8px;
        padding: 16px 20px 16px;
        background: #FDFDFD;
    }

    .pd-prog-header {
        font-size: 12px;
        line-height: 110%;
    }

    .pd-prog-card h3 {
        font-size: 14px;
        line-height: 130%;
    }

    .pd-prog-card p {
        font-size: 12px;
        line-height: 115%;
        color: #5A5A5A;
    }

    .pd-prog-tags {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        gap: 4px !important;
        width: 100% !important;
        padding: 0 !important;
        margin-bottom: 18px !important;
    }

    .pd-prog-tags li {
        font-size: 8px !important;
        line-height: 110% !important;
        padding: 3px 4px !important;
        border: 1px solid #AFC4A2 !important;
        background: transparent !important;
        border-radius: 4px !important;
        white-space: nowrap !important;
        text-align: center !important;
        letter-spacing: -0.2px !important;
    }

    .pd-btn-sage.pd-mt-auto {
        width: 100%;
        max-width: 341px;
        height: 36px;
        padding: 9px 28px;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 600;
        line-height: 16px;
    }

    /* === PATIENT STORIES — Mobile (Figma exact) ===
       Card: bg #FDF6EE, border-radius: 4px, padding: 24px 26px
       Stars: Open Sans 400 18px/25px, color: #D9B906
       Review title: Open Sans 700 14px/130%
       Review text: Open Sans 400 12px/115%
       Reviewer name: Open Sans 700 10px/14px, color: #5A5A5A
       Reviewer meta: Open Sans 400 10px/14px, color: #5A5A5A
       "Read all reviews" button: 180×36px, bg: rgba(255,255,255,0.63), backdrop-filter */
    .pd-home-reviews {
        padding: 24px 0;
    }

    .pd-reviews-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .pd-review-card {
        background: #FDF6EE;
        border: none;
        border-radius: 4px;
        padding: 24px 26px 20px;
        display: flex !important;
        flex-direction: column !important;
    }

    .pd-review-card p {
        font-size: 12px;
        line-height: 115%;
        color: #1E1E1E;
        flex-grow: 1 !important;
    }

    .pd-stars {
        font-size: 18px;
        line-height: 25px;
        color: #D9B906;
        letter-spacing: 0;
    }

    .pd-review-card h4 {
        font-family: 'Open Sans', sans-serif;
        font-weight: 700;
        font-size: 14px;
        line-height: 130%;
        color: #1E1E1E;
    }

    .pd-review-card p {
        font-size: 12px;
        line-height: 115%;
        color: #1E1E1E;
    }

    .pd-reviewer strong {
        font-size: 10px;
        line-height: 14px;
        color: #5A5A5A;
    }

    .pd-reviewer span {
        font-size: 10px;
        line-height: 14px;
        color: #5A5A5A;
    }

    .pd-center-link .pd-btn-link {
        font-weight: 400;
        font-size: 14px;
        line-height: 19px;
    }

    /* === TECHNOLOGIES — Mobile (Figma exact) ===
       Label: bg #AFC4A2, border-radius: 2px
       h2: Playfair Display 600 24px/115%
       Equipment name: Open Sans 700 14px/19px
       Equipment desc: Open Sans 400 11px/15px
       Dividers: 1px solid #AFC4A2 */
    .pd-home-tech {
        padding: 24px 0;
    }

    .pd-section-header-center {
        text-align: left;
    }

    .pd-section-desc-center {
        margin: 0;
        text-align: left;
        font-size: 14px;
        line-height: 130%;
        color: #1E1E1E;
    }

    .pd-tech-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .pd-tech-card {
        border: none;
        border-bottom: 1px solid #AFC4A2;
        border-radius: 0;
        padding: 14px 0;
    }

    .pd-tech-card h3 {
        font-family: 'Open Sans', sans-serif;
        font-weight: 700;
        font-size: 14px;
        line-height: 19px;
    }

    .pd-tech-card p {
        font-size: 11px;
        line-height: 15px;
        color: #1E1E1E;
    }

    /* === JOURNAL — Mobile (Figma exact) ===
       Label: bg #AFC4A2, border-radius: 2px
       h2: Playfair Display 600 24px/115%
       Card: border: 1px solid #AFC4A2, border-radius: 4px
       Article title: Open Sans 600 13px/120%
       Date: Open Sans 400 12px/115%
       Read button: 309×33px, bg #AFC4A2, border-radius: 4px */
    .pd-home-journal {
        padding: 24px 0;
    }

    .pd-journal-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .pd-journal-card {
        background: #FFFFFF;
        border: 1px solid #ECEEEB;
        border-radius: 12px;
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 0;
        box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.02);
    }

    .pd-journal-image-wrapper {
        border-radius: 12px 12px 0 0;
        aspect-ratio: 16 / 9;
        overflow: hidden;
        display: block;
    }

    .pd-journal-image {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .pd-journal-text-wrap {
        padding: 16px;
        flex-grow: 1;
        display: flex;
        flex-direction: column;
    }

    .pd-journal-card h3 {
        font-family: 'Outfit', sans-serif;
        font-weight: 600;
        font-size: 14px;
        line-height: 130%;
        color: #1E1E1E;
        margin: 0 0 6px 0;
    }

    .pd-journal-card h3 a {
        color: #1E1E1E;
        text-decoration: none;
    }

    .pd-journal-meta {
        font-family: 'Outfit', sans-serif;
        font-size: 11px;
        color: #707070;
        margin: 0;
    }

    .pd-journal-read-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        background: #AFC4A2;
        color: #FFFFFF !important;
        border: none;
        padding: 12px 0;
        border-radius: 0 0 12px 12px;
        font-family: 'Outfit', sans-serif;
        font-weight: 600;
        font-size: 12px;
        line-height: 1.4;
        text-decoration: none;
        width: 100%;
        box-sizing: border-box;
    }

    /* === FAQ — Mobile (Figma exact) ===
       Insurance card: border: 1px solid #AFC4A2, border-radius: 8px
       FAQ questions: Open Sans 400 13px/115%, color: #1A1A1A
       FAQ + icon: Inter 400 20px/24px
       FAQ answer: Open Sans 300 12px/115%, color: #000
       Dividers: 1px solid #5A5A5A */
    .pd-home-faq {
        padding: 40px 0;
    }

    .pd-insurance-box-v2 {
        padding: 40px 20px;
        margin-bottom: 30px;
        border-radius: 8px;
    }

    .pd-insurance-title-v2 {
        font-size: 24px;
        text-align: center;
        margin-bottom: 30px;
    }

    .pd-insurance-grid-v2 {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        justify-items: center;
    }

    .pd-insurance-grid-v2 .pd-ins-logo-v2:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        justify-self: center;
    }

    .pd-ins-logo-v2 img {
        max-height: 40px;
    }

    .pd-faq-grid-v2 {
        margin-top: 20px;
    }

    .pd-faq-full {
        width: 100%;
    }

    .pd-faq-q {
        font-size: 13px;
        line-height: 115%;
        color: #1A1A1A;
        padding: 12px 0;
    }

    .pd-faq-q span {
        font-family: 'Inter', sans-serif;
        font-weight: 400;
        font-size: 20px;
        line-height: 24px;
        color: #000000;
    }

    .pd-faq-a {
        font-weight: 300;
        font-size: 12px;
        line-height: 115%;
        color: #000000;
    }

    .pd-faq-list li {
        border-bottom: 1px solid #5A5A5A;
    }

    /* === BOOKING — Mobile (Figma exact) ===
       Label: border: 1px solid #AFC4A2, border-radius: 2px
       h2: Playfair Display 600 24px/115%
       Desc: Open Sans 400 14px/130%
       Form card: bg #FDF6EE, border: 1px solid #FDF6EE, border-radius: 4px
       Form title: Open Sans 400 18px/25px
       Form subtitle: Open Sans 400 13px/18px, color: #5A5A5A
       Labels: Open Sans 400 13px/18px, color: #5A5A5A
       Inputs: border: 1px solid #5A5A5A, border-radius: 4px, height: 40px
       Input placeholder: Open Sans 400 12px/16px, color: #828282
       Language tabs: 78×40px, active bg #AFC4A2, border-radius: 4px
       Submit: 341×36px, bg #AFC4A2, font: Open Sans 600 12px
       Footer: Open Sans 400 10px/14px
       Info card: bg #FDF6EE, border: 1px solid #AFC4A2, border-radius: 4px
       WhatsApp: 268×36px, bg #F4DFCD, border-radius: 4px */
    .pd-home-book {
        padding: 40px 0;
    }

    .pd-book-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 30px;
    }

    .pd-book-form-col {
        order: 1 !important; /* Form on top */
    }

    .pd-book-content-col {
        order: 3 !important; /* Info box at bottom */
    }

    .pd-info-card-v2 {
        background: #AFC4A2;
        border: none;
        color: #FFFFFF;
        padding: 30px 20px;
        margin-top: 20px;
    }

    .pd-info-item-v2 {
        font-size: 14px;
        color: #FFFFFF;
    }

    .pd-btn-wa-v2 {
        margin-top: 20px;
        width: 100%;
        max-width: 280px;
        margin-left: auto;
        margin-right: auto;
    }

    .pd-lang-tabs-v2 {
        gap: 8px;
    }

    .pd-lang-tab span {
        height: 38px;
        font-size: 13px;
    }
}

/* =========================================================
   OUR SPECIALISTS (Figma Exact - Desktop + Mobile Carousel)
   ========================================================= */

.pd-home-specialists {
    background: transparent !important;
    padding: 80px 0;
    overflow: hidden;
}

.pd-section-header-left {
    text-align: left;
    margin-bottom: 24px;
}

.pd-section-label-specialist {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #AFC4A2;
    border-radius: 4px;
    height: 26px;
    padding: 0 20px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 11px;
    color: #FFFFFF;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.pd-specialist-title {
    font-family: 'Playfair Display', serif;
    font-weight: 600;
    font-size: 42px;
    color: #1E1E1E;
    margin-bottom: 12px;
    line-height: 1.12;
}

.pd-specialist-desc {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #1E1E1E;
    max-width: 650px;
    margin-bottom: 30px;
    line-height: 1.3;
}

/* Enhauched Search */
.pd-spec-search-wrap {
    margin-bottom: 24px;
    max-width: 1020px;
}

.pd-spec-search-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #FFFFFF;
    border: 1px solid #000000;
    border-radius: 8px;
    height: 52px;
    padding: 0 24px;
}

#pd-doc-search {
    border: none !important;
    background: transparent !important;
    flex: 1;
    font-family: 'Open Sans', sans-serif;
    font-size: 15px;
    color: #1E1E1E;
    box-shadow: none !important;
    padding: 0 !important;
}

#pd-doc-search::placeholder {
    color: #5A5A5A;
}

#pd-doc-search:focus {
    outline: none !important;
    box-shadow: none !important;
}

.pd-spec-search-btn {
    background: transparent;
    border: none;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 13px;
    color: #1E1E1E;
    cursor: pointer;
    padding-left: 20px;
    border-left: 1px solid #5A5A5A;
    line-height: 1;
}

/* Filter Bar */
.pd-spec-filter-bar {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 40px;
}

.pd-spec-filter-title {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    font-size: 12px;
    color: #5A5A5A;
    text-transform: uppercase;
}

.pd-spec-filter-pills {
    display: flex;
    gap: 12px;
}

.pd-spec-pill {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    padding: 0 16px;
    background: #FFFFFF;
    border: 1px solid #5A5A5A;
    border-radius: 4px;
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    color: #1E1E1E;
    cursor: pointer;
    transition: 0.3s ease;
}

.pd-spec-pill.active-pill,
.pd-spec-pill:hover {
    background: #FDF6EE;
}

/* Grid & Cards */
.pd-doctors-grid-v3 {
    display: flex;
}

/* Desktop: disable swiper, show as grid */
@media (min-width: 992px) {
    .pd-doctors-swiper-v2 {
        overflow: hidden;
        padding: 0;
        margin: 0;
    }
    .pd-doctors-grid-v3 {
        display: flex !important;
        flex-wrap: nowrap !important;
    }
    .pd-doctors-grid-v3 .swiper-slide {
        width: calc(25% - 12px) !important; /* 4 Slides on desktop */
        margin-right: 16px !important;
    }
    .pd-reviews-slider {
        overflow: hidden !important;
    }
    .pd-reviews-slider .swiper-wrapper {
        align-items: stretch !important;
    }
    .pd-reviews-slider .swiper-slide {
        height: auto !important;
        align-self: stretch !important;
        display: flex !important;
    }
    .pd-swiper-nav-v2 {
        display: flex !important;
        width: 48px !important;
        height: 48px !important;
        background: #FFFFFF !important;
        border: 1px solid #AFC4A2 !important;
        border-radius: 50% !important;
        color: #164E3D !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    }
    .swiper-button-prev.pd-swiper-nav-v2 {
        left: -10px !important;
    }
    .swiper-button-next.pd-swiper-nav-v2 {
        right: -10px !important;
    }
}

.pd-doc-card-v2 {
    background-color: #FFFFFF !important;
    background-image: none !important;
    background-repeat: no-repeat !important;
    background-position: right -30px top -30px !important;
    background-size: 240px !important;
    border: 3px solid #AFC4A2 !important; /* 3px Green border matching Elen's card */
    border-radius: 8px !important; /* 8px border-radius matching Elen's card */
    padding: 32px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    width: 100% !important;
    position: relative !important;
    overflow: hidden !important;
    transition: all 0.3s !important;
    min-height: 520px !important;
    box-sizing: border-box !important;
}

.pd-doc-card-v2:hover {
    border: 3px solid #AFC4A2 !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 32px rgba(175, 196, 162, 0.18) !important;
}

.pd-doc-img-wrap {
    width: 137px !important;
    height: 137px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    margin: 40px auto 24px auto !important; /* Centered top portrait */
    background: #F4DFCD !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    border: 1px solid #AFC4A2 !important;
    padding: 4px !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 2 !important;
}

.pd-doc-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    border-radius: 50% !important;
}

.pd-doc-info {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
    margin-bottom: 20px !important;
    position: relative !important;
    z-index: 2 !important;
}

.pd-doc-name-v2 {
    font-family: 'Playfair Display', serif !important;
    font-weight: 700 !important;
    font-size: 19px !important;
    color: #1E1E1E !important;
    margin-bottom: 8px !important;
    text-align: left !important;
}

.pd-doc-title-v2 {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    color: #5A5A5A !important;
    margin-bottom: 12px !important;
    text-align: left !important;
    width: 100% !important;
    border-bottom: 1.5px solid rgba(175, 196, 162, 0.4) !important;
    padding-bottom: 12px !important;
}

.pd-doc-bio-v2 {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    color: #1E1E1E !important;
    margin: 0 0 12px 0 !important;
    text-align: left !important;
}

.pd-doc-years {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #8C8C8C !important;
    margin: 0 0 10px 0 !important;
    text-align: left !important;
}

.pd-doc-tag {
    position: absolute !important;
    top: 24px !important;
    left: 24px !important;
    background: #FFFFFF !important;
    border: 1px solid #AFC4A2 !important;
    border-radius: 4px !important;
    padding: 6px 12px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #5A5A5A !important;
    z-index: 4 !important;
    text-transform: none !important;
}

.pd-doc-flags {
    position: absolute !important;
    top: 24px !important;
    right: 24px !important;
    display: flex !important;
    gap: 6px !important;
    z-index: 4 !important;
}

.pd-doc-actions-v2 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin-top: auto !important;
    gap: 12px !important;
    position: relative !important;
    z-index: 2 !important;
}

.pd-doc-book-btn-v2 {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: auto !important;
    flex-grow: 1 !important;
    height: 40px !important;
    background: #AFC4A2 !important;
    border-radius: 4px !important;
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    margin-bottom: 0 !important;
    transition: 0.3s !important;
    border: 1px solid #AFC4A2 !important;
    white-space: nowrap !important;
}

.pd-doc-book-btn-v2:hover {
    background: #9DB490 !important;
    color: #FFFFFF !important;
    border-color: #9DB490 !important;
}

.pd-doc-profile-link {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    color: #1E1E1E !important;
    text-decoration: none !important;
    transition: 0.3s !important;
    white-space: nowrap !important;
}

.pd-doc-profile-link:hover {
    color: #AFC4A2 !important;
}

@media (max-width: 360px) {
    .pd-doc-actions-v2 {
        flex-direction: column !important;
        gap: 8px !important;
        align-items: stretch !important;
    }
    .pd-doc-book-btn-v2 {
        width: 100% !important;
        text-align: center !important;
    }
    .pd-doc-profile-link {
        text-align: center !important;
        margin-top: 4px !important;
    }
}

.pd-spec-all-link {
    text-align: center;
    margin-top: 40px;
}

.pd-spec-all-link a {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #1E1E1E;
    text-decoration: none;
    transition: 0.3s;
}

.pd-spec-all-link a:hover {
    color: #AFC4A2;
}

/* =========================================================
   OUR SPECIALISTS - Swiper Navigation Arrows
   ========================================================= */

.pd-doctors-swiper-v2 {
    position: relative;
    overflow: hidden;
}

.pd-swiper-nav {
    color: #1E1E1E !important;
    width: 32px !important;
    height: 32px !important;
    background: rgba(255, 255, 255, 0.85) !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.pd-swiper-nav::after {
    font-size: 14px !important;
    font-weight: 900;
}

/* Mobile: show nav arrows, single card centered */
@media (max-width: 991px) {
    .pd-doctors-swiper-v2 {
        padding: 0;
        overflow: hidden;
    }

    .swiper-button-prev.pd-swiper-nav {
        left: 5px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        color: #164E3D !important;
    }

    .swiper-button-next.pd-swiper-nav {
        right: 5px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        color: #164E3D !important;
    }

    .pd-doc-card-v2 {
        width: 100%;
        padding: 24px 30px;
        box-sizing: border-box;
    }

    .pd-doc-book-btn-v2 {
        width: 100%;
        max-width: 220px;
    }
}


/* =========================================================
   OUR SPECIALISTS - Responsive Settings
   ========================================================= */

@media (max-width: 991px) {
    .pd-home-specialists {
        padding: 50px 0;
    }

    .pd-specialist-title {
        font-size: 28px;
    }

    .pd-specialist-desc {
        font-size: 16px;
    }

    .pd-spec-filter-pills {
        flex-wrap: wrap;
    }
}

@media (max-width: 767px) {
    .pd-home-specialists {
        padding: 40px 0;
    }

    .pd-specialist-title {
        font-size: 24px;
    }

    .pd-specialist-desc {
        font-size: 14px;
    }

    .pd-spec-search-wrap,
    .pd-spec-filter-bar {
        display: block;
    }

    .pd-spec-filter-bar {
        margin-top: 20px;
    }

    .pd-spec-filter-title {
        display: block;
        margin-bottom: 12px;
    }
}

/* =========================================================
   DOCTOR CARDS - Bio Generic Styling
   ========================================================= */

.pd-doc-bio-generic {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    color: #8C8C8C !important;
    margin: 0 0 8px 0 !important;
    font-weight: 400 !important;
}

/* =========================================================
   RTL SUPPORT — Doctor Cards & Specialists Section
   ========================================================= */

.proderma-rtl.pd-luxury-home-container .pd-doc-card-v2 {
    text-align: right !important;
    align-items: flex-end !important;
}

.proderma-rtl.pd-luxury-home-container .pd-doc-info {
    text-align: right !important;
    align-items: flex-end !important;
}

.proderma-rtl .pd-doc-name-v2 {
    text-align: right !important;
}

.proderma-rtl .pd-doc-title-v2 {
    text-align: right !important;
}

.proderma-rtl .pd-doc-bio-v2,
.proderma-rtl .pd-doc-bio-generic {
    text-align: right !important;
}

.proderma-rtl .pd-doc-years {
    text-align: right !important;
}

/* Badge & Flags position flip */
.proderma-rtl .pd-doc-tag {
    left: auto !important;
    right: 24px !important;
}

.proderma-rtl .pd-doc-flags {
    right: auto !important;
    left: 24px !important;
    background-image: none !important;
}

/* Action buttons RTL */
.proderma-rtl .pd-doc-actions-v2 {
    flex-direction: row-reverse !important;
}

/* Section header RTL */
.proderma-rtl .pd-section-header-left {
    text-align: right;
}

/* Search bar RTL */
.proderma-rtl .pd-spec-search-inner {
    flex-direction: row-reverse;
}

.proderma-rtl #pd-doc-search {
    text-align: right;
}

.proderma-rtl .pd-spec-search-btn {
    padding-left: 0;
    padding-right: 20px;
    border-left: none;
    border-right: 1px solid #5A5A5A;
}

/* Filter bar RTL */
.proderma-rtl .pd-spec-filter-bar {
    flex-direction: row-reverse;
}

.proderma-rtl .pd-spec-filter-pills {
    flex-direction: row-reverse;
}

/* Specialists "View all" link RTL */
.proderma-rtl .pd-spec-all-link {
    text-align: center;
}

/* Desktop swiper slides RTL */
@media (min-width: 992px) {
    .proderma-rtl .pd-doctors-grid-v3 .swiper-slide {
        margin-right: 0 !important;
        margin-left: 24px !important;
    }
    .proderma-rtl .swiper-button-prev.pd-swiper-nav-v2 {
        left: auto !important;
        right: -10px !important;
    }
    .proderma-rtl .swiper-button-next.pd-swiper-nav-v2 {
        right: auto !important;
        left: -10px !important;
    }
}

/* =========================================================
   RTL SUPPORT — General Home Page Sections
   ========================================================= */

.proderma-rtl .pd-section-header {
    text-align: center;
}

.proderma-rtl .pd-section-label {
    direction: rtl;
}

/* Programmes section RTL */
.proderma-rtl .pd-prog-card {
    text-align: right;
}

/* Reviews RTL — consolidated */
.proderma-rtl .pd-review-card {
    text-align: right !important;
    direction: rtl !important;
    padding: 20px 22px 20px !important;
}
.proderma-rtl .pd-review-card h4 {
    text-align: right !important;
    font-size: 14px !important;
    line-height: 130% !important;
    margin-bottom: 8px !important;
}
.proderma-rtl .pd-review-card p {
    text-align: right !important;
    font-size: 11.5px !important;
    line-height: 16px !important;
}
.proderma-rtl .pd-stars {
    text-align: right !important;
    direction: rtl !important;
}
.proderma-rtl .pd-reviewer {
    text-align: right !important;
    align-items: flex-end !important;
}
.proderma-rtl .pd-reviewer strong {
    text-align: right !important;
    font-size: 11px !important;
}
.proderma-rtl .pd-reviewer span {
    text-align: right !important;
    font-size: 10px !important;
}

/* Technologies RTL */
.proderma-rtl .pd-tech-card {
    text-align: right;
}

/* Journal RTL */
.proderma-rtl .pd-journal-text-wrap {
    text-align: right;
}

/* Booking section RTL */
.proderma-rtl .pd-book-form-card label,
.proderma-rtl .pd-book-form-card input,
.proderma-rtl .pd-book-form-card select,
.proderma-rtl .pd-book-form-card textarea {
    text-align: right;
}

/* Info card RTL */
.proderma-rtl .pd-info-card-v2 {
    text-align: right;
}

.proderma-rtl .pd-info-item-v2 {
    text-align: right;
}

/* FAQ RTL */
.proderma-rtl .pd-faq-q {
    flex-direction: row-reverse;
    text-align: right;
}

/* Center link RTL */
.proderma-rtl .pd-center-link {
    text-align: center;
}

/* Trust bar RTL */
.proderma-rtl .pd-trust-card-v2 {
    text-align: right;
}

/* Department cards RTL */
.proderma-rtl .pd-dept-title,
.proderma-rtl .pd-dept-text {
    text-align: right;
}

.proderma-rtl .pd-btn-link {
    direction: rtl;
}

/* =========================================================
   RTL SUPPORT — Home Page Section Headers (override left !important)
   ========================================================= */

/* Programmes section */
.proderma-rtl .pd-home-programmes .pd-section-header {
    text-align: right !important;
}
.proderma-rtl .pd-home-programmes .pd-section-header * {
    text-align: right !important;
}
.proderma-rtl .pd-home-programmes .pd-section-header h2::after {
    margin-right: 0 !important;
    margin-left: auto !important;
    background: linear-gradient(270deg, #AFC4A2, transparent) !important;
}
.proderma-rtl .pd-home-programmes .pd-section-desc {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

/* Technologies section */
.proderma-rtl .pd-home-tech .pd-section-header {
    text-align: right !important;
}
.proderma-rtl .pd-home-tech .pd-section-header * {
    text-align: right !important;
}
.proderma-rtl .pd-home-tech .pd-section-desc {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}
.proderma-rtl .pd-tech-item-v2 {
    padding: 20px 0 !important;
}
.proderma-rtl .pd-tech-item-v2:hover,
.proderma-rtl .pd-tech-item-v2.active {
    padding-right: 0 !important;
    padding-left: 0 !important;
}
.proderma-rtl .pd-tech-item-v2::before {
    display: none !important;
}

/* Journal section */
.proderma-rtl .pd-home-journal .pd-section-header {
    text-align: right !important;
}
.proderma-rtl .pd-home-journal .pd-section-header * {
    text-align: right !important;
}
.proderma-rtl .pd-home-journal .pd-section-desc {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}
.proderma-rtl .pd-journal-text-wrap {
    text-align: right !important;
}
.proderma-rtl .pd-journal-meta {
    text-align: right !important;
}

/* Reviews section header — RTL */
.proderma-rtl .pd-reviews-header-layout {
    flex-direction: row-reverse !important;
}
.proderma-rtl .pd-section-header-left-v2 {
    text-align: right !important;
}
.proderma-rtl .pd-reviews-nav {
    flex-direction: row-reverse !important;
}
.proderma-rtl .pd-review-card {
    text-align: right !important;
}
.proderma-rtl .pd-reviewer {
    text-align: right !important;
}
.proderma-rtl .pd-slider-prev.pd-mobile-only-nav {
    right: 5px !important;
    left: auto !important;
}
.proderma-rtl .pd-slider-next.pd-mobile-only-nav {
    left: 5px !important;
    right: auto !important;
}
@media (max-width: 991px) {
    .proderma-rtl .pd-desktop-only-nav {
        display: none !important;
    }
}
@media (max-width: 767px) {
    .proderma-rtl .pd-reviews-header-layout {
        flex-direction: column-reverse !important;
        align-items: flex-end !important;
    }
}

/* Booking section */
.proderma-rtl .pd-home-book .pd-section-header {
    text-align: right !important;
}
.proderma-rtl .pd-home-book .pd-section-header * {
    text-align: right !important;
}
.proderma-rtl .pd-home-book .pd-section-desc {
    text-align: right !important;
}
.proderma-rtl .pd-book-form-card {
    text-align: right !important;
}
.proderma-rtl .pd-book-form-card label,
.proderma-rtl .pd-book-form-card input,
.proderma-rtl .pd-book-form-card select,
.proderma-rtl .pd-book-form-card textarea {
    text-align: right !important;
}
.proderma-rtl .pd-info-card-v2 {
    text-align: right !important;
}

/* FAQ section */
.proderma-rtl .pd-home-faq .pd-section-header {
    text-align: right !important;
}
.proderma-rtl .pd-home-faq .pd-section-header * {
    text-align: right !important;
}
.proderma-rtl .pd-faq-q {
    text-align: right !important;
    flex-direction: row-reverse !important;
}
.proderma-rtl .pd-faq-q span {
    margin-left: 0 !important;
    margin-right: 14px !important;
}
.proderma-rtl .pd-faq-a {
    text-align: right !important;
}
.proderma-rtl .pd-section-title {
    text-align: right !important;
}

/* Specialists section */
.proderma-rtl .pd-home-specialists .pd-section-header-left {
    text-align: right !important;
}
.proderma-rtl .pd-specialist-title {
    text-align: right !important;
}
.proderma-rtl .pd-specialist-desc {
    text-align: right !important;
}

/* Department cards */
.proderma-rtl .pd-dept-card {
    text-align: right !important;
}
.proderma-rtl .pd-dept-title {
    text-align: right !important;
}
.proderma-rtl .pd-dept-text {
    text-align: right !important;
}

/* Trust bar */
.proderma-rtl .pd-trust-card-v2 {
    text-align: right !important;
}

/* Hero section */
.proderma-rtl .pd-hero-content {
    text-align: right !important;
}

/* Insurance box */
.proderma-rtl .pd-insurance-box-v2 {
    text-align: right !important;
}
.proderma-rtl .pd-insurance-title-v2 {
    text-align: right !important;
}
.proderma-rtl .pd-insurance-grid-v2 {
    justify-content: flex-end !important;
    flex-direction: row-reverse !important;
}
.proderma-rtl .pd-ins-logo-v2 {
    justify-content: flex-end !important;
}

/* Programme cards */
.proderma-rtl .pd-prog-card {
    text-align: right !important;
}
.proderma-rtl .pd-prog-tags {
    justify-content: flex-end !important;
}

/* Center link override */
.proderma-rtl .pd-center-link {
    text-align: center !important;
}
.proderma-rtl .pd-spec-all-link {
    text-align: center !important;
}

/* Booking grid RTL */
.proderma-rtl .pd-book-grid {
    direction: rtl !important;
}
.proderma-rtl .pd-section-desc-left {
    text-align: right !important;
}

/* Hero section RTL */
.proderma-rtl .pd-hero-subtitle {
    text-align: right !important;
}
.proderma-rtl .pd-hero-desc {
    text-align: right !important;
}
.proderma-rtl .pd-hero-cta-wrap {
    justify-content: flex-end !important;
}
.proderma-rtl .pd-hero-find-link {
    text-align: right !important;
}

/* Department section RTL */
.proderma-rtl .pd-dept-grid {
    direction: rtl !important;
}
.proderma-rtl .pd-deps-header {
    text-align: right !important;
}
.proderma-rtl .pd-deps-label {
    text-align: right !important;
}
.proderma-rtl .pd-deps-title {
    text-align: right !important;
}
.proderma-rtl .pd-deps-desc {
    text-align: right !important;
}
.proderma-rtl .pd-deps-grid-v2 {
    direction: rtl !important;
}
.proderma-rtl .pd-deps-list-v2 {
    direction: rtl !important;
}
.proderma-rtl .pd-dep-card-v2 {
    text-align: right !important;
}
.proderma-rtl .pd-dep-card-v2 h3 {
    text-align: right !important;
}
.proderma-rtl .pd-dep-card-v2 p {
    text-align: right !important;
}
.proderma-rtl .pd-dep-card-v2 .pd-btn-sage-v2 {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}
.proderma-rtl .pd-dep-card-v2:nth-child(odd) {
    border-right: none !important;
    border-left: 1px solid rgba(175, 196, 162, 0.4) !important;
}

/* (Review RTL consolidated above) */

/* Force Playfair Display on all headings to prevent theme overrides */
.pd-luxury-home-container h1,
.pd-luxury-home-container h2,
.pd-hero-title-v2,
.pd-dep-title-v2,
.pd-specialist-title,
.pd-trust-title-v3,
.pd-prog-title-v2,
.pd-prog-card-v2 h3,
.pd-tech-title-v2,
.pd-about-title-v2 {
    font-family: 'Playfair Display', serif !important;
}

/* =========================================================
   TOP GAP REMOVAL & HERO VERTICAL POSITIONING
   ========================================================= */
/* Reset parent theme wrappers specifically when they contain our container */
.site-content:has(.pd-luxury-home-container),
.content-area:has(.pd-luxury-home-container),
.container:has(.pd-luxury-home-container),
.post-inner:has(.pd-luxury-home-container),
main:has(.pd-luxury-home-container),
.entry-content:has(.pd-luxury-home-container) {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Hide empty theme titles and spacing on home page */
body:has(.pd-luxury-home-container) .entry-header,
body:has(.pd-luxury-home-container) .page-header,
body:has(.pd-luxury-home-container) .entry-title,
body:has(.pd-luxury-home-container) #masthead,
body:has(.pd-luxury-home-container) .site-header:not(#pdMainHeader),
body:has(.pd-luxury-home-container) .header-area,
body:has(.pd-luxury-home-container) .theme-header {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
}

/* Hide empty paragraphs and line breaks generated by WordPress around shortcodes */
body:has(.pd-luxury-home-container) .entry-content > p:not(:has(.pd-header-wrapper)):not(:has(.pd-luxury-home-container)),
body:has(.pd-luxury-home-container) .entry-content > br {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Reset any theme body/page paddings */
body:has(.pd-luxury-home-container),
body:has(.pd-luxury-home-container) #page,
body:has(.pd-luxury-home-container) #wrapper {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Align Hero Section Top Padding with Fixed Header heights */
.pd-home-hero-v2 {
    padding-top: 130px !important;
}

@media (max-width: 1024px) {
    .pd-home-hero-v2 {
        padding-top: 95px !important;
    }
}

/* =========================================================
   PATIENT STORIES / REVIEWS — Figma Match (Image 2)
   ========================================================= */
.pd-home-reviews {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    padding: 100px 0 !important;
}

.pd-review-card {
    background: #FFFFFF !important;
    border: 1px solid rgba(30, 30, 30, 0.06) !important;
    border-radius: 8px !important;
    padding: 40px 36px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.3s ease !important;
    height: auto !important;
}

.pd-review-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05) !important;
}

.pd-stars {
    color: #F2B827 !important; /* Gold */
    font-size: 22px !important;
    margin-bottom: 12px !important;
    letter-spacing: 2px !important;
    line-height: 1 !important;
}

.pd-review-card h4 {
    font-family: 'Playfair Display', serif !important;
    font-weight: 600 !important;
    font-size: 20px !important;
    line-height: 130% !important;
    color: #1E1E1E !important;
    margin: 0 0 12px 0 !important;
}

.pd-review-card p {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    line-height: 160% !important;
    color: #5A5A5A !important;
    margin: 0 !important;
    flex-grow: 1 !important;
}

.pd-reviewer-divider {
    height: 1px !important;
    background: rgba(30, 30, 30, 0.08) !important;
    margin: 20px 0 16px 0 !important;
    width: 100% !important;
}

.pd-reviewer {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    margin-top: auto !important;
}

.pd-reviewer strong {
    font-family: 'Outfit', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #1E1E1E !important;
}

.pd-reviewer span {
    font-family: 'Outfit', sans-serif !important;
    font-size: 12px !important;
    color: #8A8A8A !important;
}

/* Button style matching Image 2 */
.pd-btn-reviews-cta {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.8) !important;
    border: 1px solid rgba(30, 30, 30, 0.15) !important;
    color: #1E1E1E !important;
    padding: 12px 35px !important;
    border-radius: 30px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    backdrop-filter: blur(4px) !important;
}

.pd-btn-reviews-cta:hover {
    background: #1E1E1E !important;
    color: #FFFFFF !important;
    border-color: #1E1E1E !important;
}

/* Hide pagination dots completely on all screens */
.pd-reviews-pagination {
    display: none !important;
}

/* Mobile specific styling for reviews section matching Image 2 */
@media (max-width: 991px) {
    .pd-home-reviews {
        padding: 60px 0 !important;
    }
    
    .pd-reviews-slider-wrapper {
        padding: 0 40px !important;
        box-sizing: border-box !important;
    }
    
    .pd-review-card {
        padding: 30px 24px !important;
        background: #FFFFFF !important;
        border-radius: 8px !important;
    }
    
    .pd-stars {
        font-size: 20px !important;
        margin-bottom: 10px !important;
    }
    
    .pd-review-card h4 {
        font-size: 18px !important;
        margin-bottom: 10px !important;
    }
    
    .pd-review-card p {
        font-size: 13px !important;
        line-height: 155% !important;
    }
    
    .pd-reviewer-divider {
        margin: 18px 0 14px 0 !important;
    }
}

@media (max-width: 767px) {
    .pd-reviews-slider-wrapper {
        padding: 0 24px !important; /* Make card wider on small mobile screens */
    }
    
    .pd-review-card {
        padding: 24px 16px !important; /* Maximize text space inside the card */
    }
    
    .pd-slider-prev.pd-mobile-only-nav {
        left: -10px !important; /* Move left chevron out */
    }
    
    .pd-slider-next.pd-mobile-only-nav {
        right: -10px !important; /* Move right chevron out */
    }
    
    .pd-section-header-left-v2 .pd-section-title {
        font-size: 28px !important; /* Prevent title wrapping issues on small mobile screens */
        line-height: 120% !important;
    }
}







