/* =============================================
   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: linear-gradient(180deg, #FFFFFF 0%, #FEF9F3 8%, #FEF9F3 92%, #FEFDFC 100%);
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 100px !important;
    /* Fix for fixed header overlap */
}

/* 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: 140px 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: 'Noto Serif SC', 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;
}

.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;
    transform: scaleX(-1);
}

.pd-watermark-right {
    right: -80px;
    top: -60px;
}

.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-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: 'Noto Serif SC', 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: 500px 1fr;
    gap: 36px;
    align-items: start;
}

.pd-deps-main-image {
    position: relative;
    position: sticky;
    top: 140px;
}

.pd-deps-main-image img {
    width: 100%;
    max-width: 527px;
    height: auto;
    max-height: 517px;
    object-fit: cover;
    border-radius: 8px;
}

/* Department cards in 2-col grid */
.pd-deps-list-v2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.pd-dep-card-v2 {
    padding: 18px 16px 18px 0;
    border-bottom: 1px solid rgba(175, 196, 162, 0.4);
}

.pd-dep-card-v2:nth-child(odd) {
    padding-right: 18px;
    border-right: 1px solid rgba(175, 196, 162, 0.4);
}

.pd-dep-card-v2:nth-child(even) {
    padding-left: 18px;
    padding-right: 0;
}

.pd-dep-card-v2:nth-last-child(-n+2) {
    border-bottom: none;
}

.pd-dep-card-v2 h3 {
    font-family: 'Noto Serif SC', serif;
    font-weight: 900;
    font-size: 15px;
    line-height: 104%;
    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: #1E1E1E;
    margin-bottom: 12px;
}

/* 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: 260px;
    height: 36px;
    background: #AFC4A2;
    border: none;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 18px;
    color: #FFFFFF !important;
    transition: all 0.3s;
    margin-top: 12px;
}

.pd-dep-card-v2 .pd-btn-sage-v2:hover {
    background: #BDD2B2;
    color: #FFFFFF !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(175, 196, 162, 0.3);
}

.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: linear-gradient(179.61deg, #FFFFFF 0.33%, #FEF9F3 23.77%, #FEF9F3 85.8%, #FFFFFF 101.44%) !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: 'Noto Serif SC', 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: flex-start;
}

.pd-doc-card-v3 {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 32px 38px;
    gap: 16px;
    background: #FFFFFF;
    border: 1px solid #AFC4A2;
    border-radius: 16px;
    width: 100%;
    max-width: 281px;
    height: auto;
    min-height: min-content;
    overflow: visible;
    position: relative;
    isolation: isolate;
    transition: all 0.3s;
    text-align: center;
    margin: 0 auto;
}

.pd-doc-card-v3:hover {
    border-width: 2px;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(175, 196, 162, 0.15);
}

/* Doctor Image & Mask Wrapper */
.pd-doc-mask-wrapper {
    position: relative;
    width: 118px;
    height: 118px;
    margin-bottom: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
    /* ABOVE the card logo */
}

/* This is the beige circle behind the photo in Figma */
.pd-doc-bg-mask {
    position: absolute;
    width: 118px;
    height: 118px;
    background: #D0E3CC;
    border-radius: 50%;
    z-index: -1;
    pointer-events: none;
}

.pd-doc-circle-mask {
    width: 118px;
    height: 118px;
    border-radius: 50%;
    overflow: hidden;
    position: relative;
    background: #f5f5f5;
    z-index: 1;
}

.pd-doc-circle-mask img {
    width: 143.16px;
    height: 123.5px;
    object-fit: contain;
}

/* Doctor Info */
.pd-doc-text-frame {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    width: 100%;
}

.pd-doc-name {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 20px;
    color: #1E1E1E;
}

.pd-doc-spec {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    color: #1E1E1E;
}

.pd-doc-meta {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    color: #5A5A5A;
}

/* Doctor Buttons */
.pd-doc-book-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    width: 207px;
    height: 36px;
    background: #AFC4A2;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 12px;
    line-height: 16px;
    text-align: center;
    color: #FFFFFF;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s;
}

.pd-doc-book-btn:hover {
    background: #9AB38D;
    color: #FFFFFF;
}

.pd-doc-view-link {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 16px;
    color: #1E1E1E;
    text-decoration: none;
    transition: color 0.3s;
}

.pd-doc-view-link:hover {
    color: #AFC4A2;
}

/* 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: 'Noto Serif SC', 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 #1E1E1E;
    border-radius: 8px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    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: #1E1E1E;
    color: #FFFFFF;
}

/* =========================================================
   PROGRAMMES SECTION
   ========================================================= */
.pd-home-programmes {
    padding: 60px 0;
    background-color: transparent !important;
}

.pd-section-header {
    margin-bottom: 32px;
}

.pd-section-label {
    display: inline-block;
    border: 1px solid #AFC4A2;
    border-radius: 4px;
    font-family: 'Open Sans', 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: 'Noto Serif SC', serif;
    font-weight: 600;
    font-size: 42px;
    line-height: 112%;
    color: #1E1E1E;
    margin-bottom: 10px;
}

.pd-section-desc {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    color: #1E1E1E;
    max-width: 520px;
}

.pd-programmes-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.pd-prog-card {
    background: #FDFDFD;
    border: 1px solid #AFC4A2;
    border-radius: 0 0 16px 16px;
    padding: 24px 18px;
    display: flex;
    flex-direction: column;
}

.pd-prog-card.pd-prog-green {
    background: linear-gradient(180.59deg, #FFFFFF 41.9%, #E9F4E2 99.48%);
}

.pd-prog-header {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 11px;
    line-height: 15px;
    color: #AFC4A2;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.pd-prog-card h3 {
    font-family: 'Noto Serif SC', serif;
    font-weight: 500;
    font-size: 26px;
    line-height: 100%;
    color: #1E1E1E;
    margin-bottom: 10px;
}

.pd-prog-card p {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 18px;
    color: #5A5A5A;
    margin-bottom: 14px;
}

.pd-prog-tags {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 18px;
}

@media (min-width: 992px) {
    .pd-prog-tags {
        flex-wrap: nowrap !important;
        gap: 4px !important;
    }
    .pd-prog-tags li {
        font-size: 9.5px !important;
        padding: 3px 5px !important;
        white-space: nowrap !important;
        text-align: center !important;
    }
}

.pd-prog-tags li {
    background: transparent;
    border: 1px solid #AFC4A2;
    border-radius: 4px;
    font-family: 'Open Sans', sans-serif;
    font-size: 11px;
    line-height: 15px;
    color: #1E1E1E;
    padding: 4px 10px;
}

.pd-mt-auto {
    margin-top: auto;
}

/* =========================================================
   PATIENT STORIES / REVIEWS
   ========================================================= */
.pd-home-reviews {
    padding: 100px 0 !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    position: relative !important;
}

.pd-reviews-slider {
    overflow: hidden;
    position: relative;
    padding-bottom: 20px;
}

.pd-reviews-grid {
    display: flex !important; /* Flex for Swiper */
    gap: 0 !important; /* Swiper handles gap */
    margin-bottom: 30px;
}

.pd-review-card {
    background: #FEF9F3;
    border: none;
    border-radius: 8px;
    padding: 24px 28px 25px;
    height: auto !important; /* Allow variable height */
    box-sizing: border-box !important;
}

/* 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;
}

.pd-reviewer {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.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: transparent !important;
}

.pd-tech-layout-v2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.pd-tech-brand-img {
    max-width: 100%;
    height: auto;
    opacity: 0.9;
}

.pd-tech-list-v2 {
    margin-top: 40px;
    display: flex;
    flex-direction: column;
}

.pd-tech-item-v2 {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 24px 0;
    border-bottom: 1px solid rgba(175, 196, 162, 0.4);
}

.pd-tech-img-box {
    width: 94px;
    height: 94px;
    min-width: 94px;
    background: #FFFFFF;
    border: 1px solid #AFC4A2;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    box-sizing: border-box;
}

.pd-tech-img-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.pd-tech-info h3 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 120%;
    color: #1E1E1E;
    margin-bottom: 4px;
}

.pd-tech-info p {
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    line-height: 140%;
    color: #5A5A5A;
}

.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;
    }
    .pd-tech-img-box {
        width: 80px;
        height: 80px;
        min-width: 80px;
    }
    .pd-tech-footer-v2 {
        text-align: center;
    }
}


/* =========================================================
   JOURNAL
   ========================================================= */
.pd-home-journal {
    padding: 60px 0;
    background: transparent !important;
}

.pd-journal-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}

.pd-journal-card {
    border-bottom: 1px solid rgba(175, 196, 162, 0.3);
    padding-bottom: 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pd-journal-image-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    border-radius: 12px;
    overflow: hidden;
    background: #FEF9F3;
    border: 1px solid rgba(175, 196, 162, 0.4);
    display: block;
}

.pd-journal-image {
    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 h3 {
    font-family: 'Noto Serif SC', serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 140%;
    color: #1E1E1E;
    margin: 8px 0;
    transition: color 0.3s;
}

.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: 'Open Sans', sans-serif;
    font-size: 13px;
    color: #5A5A5A;
    margin-bottom: 12px;
}

/* =========================================================
   FAQ SECTION
   ========================================================= */
.pd-home-faq {
    padding: 60px 0;
    background: transparent !important;
}

/* =========================================================
   INSURANCE & FAQ V2
   ========================================================= */
.pd-insurance-box-v2 {
    background: #FEF9F3;
    border: 1px solid #AFC4A2;
    border-radius: 16px;
    padding: 60px;
    margin-bottom: 60px;
}

.pd-insurance-title-v2 {
    font-family: 'Noto Serif SC', serif;
    font-weight: 400;
    font-size: 36px;
    line-height: 120%;
    color: #1E1E1E;
    margin-bottom: 40px;
}

.pd-insurance-grid-v2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.pd-ins-logo-v2 {
    flex: 1;
    display: flex;
    justify-content: center;
    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;
}

.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: #FDF6EE;
    border: 1px solid #AFC4A2;
    border-radius: 8px;
    padding: 30px 40px;
    color: #1E1E1E;
    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: #1E1E1E;
}

.pd-info-icon-v2 svg {
    width: 24px;
    height: 24px;
}

.pd-wa-icon-wrapper {
    background: #AFC4A2;
    border-radius: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pd-btn-wa-v2 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: #EAD5C2; /* Subtle darker beige from figma */
    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:hover {
    background: #AFC4A2 !important;
    color: #FFFFFF !important;
}

.pd-btn-wa-v2:hover .pd-wa-icon-wrapper {
    background: #FFFFFF !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 rgba(0,0,0,0.1);
    padding-bottom: 20px;
}

.pd-card-header-v2 h3 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 28px;
    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: 10px 16px !important;
    border: 1px solid #AFC4A2 !important;
    border-radius: 8px !important;
    background: #FFFFFF !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 14px !important;
    box-sizing: border-box;
}

.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 #AFC4A2;
    border-radius: 8px;
    background: #FFFFFF;
    font-weight: 600;
    color: #1E1E1E;
    transition: all 0.3s;
}

.pd-lang-tab input:checked + span {
    background: #AFC4A2;
    color: #FFFFFF;
}

.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: 8px;
    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;
    }

    .pd-deps-main-image img {
        max-width: 100%;
        max-height: 400px;
    }

    /* 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: 86px 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: Noto Serif SC 600 26px/120% */
    .pd-hero-title-v2 {
        font-family: 'Noto Serif SC', 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: Noto Serif SC 600 24px/115%
       Desc: Open Sans 400 14px/130%
       Card titles: Noto Serif SC 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 {
        padding: 16px 0;
        border-bottom: 1px solid #AFC4A2;
    }

    .pd-dep-card-v2:nth-child(odd) {
        padding-right: 0;
        border-right: none;
    }

    .pd-dep-card-v2:nth-child(even) {
        padding-left: 0;
    }

    .pd-dep-card-v2:last-child {
        border-bottom: 1px solid #AFC4A2;
    }

    .pd-dep-card-v2 h3 {
        font-family: 'Noto Serif SC', serif;
        font-weight: 700;
        font-size: 15px;
        line-height: 130%;
        color: #1E1E1E;
    }

    .pd-dep-card-v2 p {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 13px;
        line-height: 18px;
        color: #1E1E1E;
        margin-bottom: 10px;
    }

    /* Dep button — Figma: 350×36px, solid green */
    .pd-dep-card-v2 .pd-btn-sage-v2 {
        width: 100%;
        max-width: 350px;
        height: 36px;
        padding: 10px 16px;
        background: #AFC4A2;
        border: none;
        border-radius: 4px;
        color: #FFFFFF !important;
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 12px;
        line-height: 16px;
    }

    /* 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: Noto Serif SC 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: linear-gradient(180.49deg, #FEF9F3 0.55%, #FFFFFF 7.04%, #FFFFFF 37.97%, #FEF9F3 44.2%, #FEF9F3 71.39%, #FEFDFC 88.57%);
    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: 'Noto Serif SC', 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;
    }

    .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: flex-start;
        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: visible !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: #D0E3CC !important;
        z-index: 1 !important;
        border-radius: 8px 8px 0 0 !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: 'Noto Serif SC', 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: visible !important;
        padding-bottom: 80px; /* Space for buttons below */
        margin: 0 15px; /* Add margin to allow arrows to breathe */
    }

    .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: Noto Serif SC 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: none;
        border-radius: 4px;
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 14px;
        line-height: 19px;
        color: #1E1E1E;
    }

    /* === PROGRAMMES — Mobile (Figma exact) ===
       Label: border: 1px solid #AFC4A2, border-radius: 2px
       h2: Noto Serif SC 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: Noto Serif SC 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;
    }

    .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: Noto Serif SC 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: Noto Serif SC 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 {
        border: 1px solid #AFC4A2;
        border-radius: 8px;
        padding: 16px;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .pd-journal-image-wrapper {
        border-radius: 6px;
    }

    .pd-journal-card h3 {
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 14px;
        line-height: 130%;
        margin: 4px 0;
    }

    .pd-journal-card h3 a {
        color: #1E1E1E;
        text-decoration: none;
    }

    .pd-journal-meta {
        font-size: 12px;
        line-height: 115%;
        color: #5A5A5A;
        margin-bottom: 4px;
    }

    .pd-journal-card .pd-btn-link {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 33px;
        background: #AFC4A2;
        border-radius: 4px;
        color: #FFFFFF;
        font-weight: 600;
        font-size: 12px;
        padding: 0;
        margin-top: 8px;
    }

    /* === 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-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: Noto Serif SC 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: #FDF6EE;
        border: 1px solid #AFC4A2;
        color: #1E1E1E;
        padding: 30px 20px;
        margin-top: 20px;
    }

    .pd-info-item-v2 {
        font-size: 14px;
        color: #1E1E1E;
    }

    .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: linear-gradient(179.61deg, #FFFFFF 0.33%, #FEF9F3 23.77%, #FEF9F3 85.8%, #FFFFFF 101.44%);
    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: 'Noto Serif SC', 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: visible;
        padding: 0 40px;
        margin: 0 -40px;
    }
    .pd-doctors-grid-v3 {
        display: flex !important;
        flex-wrap: nowrap !important;
    }
    .pd-doctors-grid-v3 .swiper-slide {
        width: calc(33.333% - 16px) !important; /* 3 Slides for spacious high-fidelity layout */
        margin-right: 24px !important;
    }
    .pd-reviews-grid {
        display: flex !important;
        flex-wrap: nowrap !important;
    }
    .pd-reviews-grid .pd-review-card {
        width: calc(33.333% - 13.33px) !important;
        margin-right: 20px !important;
    }
    .pd-reviews-grid .pd-review-card:last-child {
        margin-right: 0 !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: url('../../../Png-Logo/PRO-DERMA-CLINIC-LOGO-Black.png') !important;
    background-repeat: no-repeat !important;
    background-position: right -30px top -30px !important;
    background-size: 240px !important;
    border: 1px solid #AFC4A2 !important;
    border-radius: 16px !important;
    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: visible !important;
    transition: all 0.3s !important;
    min-height: 520px !important;
    height: 100% !important;
    box-sizing: border-box !important;
}

.pd-doc-card-v2:hover {
    border: 1px 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: #FFFFFF !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: 'Noto Serif SC', 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 40px;
        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;
    }
}