
      /* ─── Reset ──────────────────────────────────────────────────────────────── */
      *,
      *::before,
      *::after {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }
      html {
        scroll-behavior: smooth;
      }
      body {
        font-family: "Inter", sans-serif;
        font-weight: 400;
        color: #1a2e3b;
        background: #f8f6f1;
        line-height: 1.6;
        -webkit-font-smoothing: antialiased;
      }
      img {
        display: block;
        max-width: 100%;
      }
      a {
        color: inherit;
        text-decoration: none;
      }
      button {
        cursor: pointer;
        border: none;
        background: none;
        font: inherit;
        color: inherit;
      }
      ul {
        list-style: none;
      }

      /* ─── Utilities ──────────────────────────────────────────────────────────── */
      .serif {
        font-family: "Playfair Display", serif;
      }
      .container {
        max-width: 1280px;
        margin: 0 auto;
        padding: 0 24px;
      }

      /* Lucide icon defaults (set after createIcons) */
      svg.lucide {
        width: 20px;
        height: 20px;
        stroke-width: 1.75;
        display: inline-block;
        vertical-align: middle;
      }

      /* WhatsApp SVG helper */
      .wa-svg {
        display: inline-block;
        vertical-align: middle;
        flex-shrink: 0;
      }

      /* ─── Navbar ─────────────────────────────────────────────────────────────── */
      .nav {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 100;
        background: rgba(248, 246, 241, 0.96);
        backdrop-filter: blur(6px);
        border-bottom: 1px solid #d9d3c7;
      }
      .nav-inner {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 64px;
        max-width: 1280px;
        margin: 0 auto;
        padding: 0 24px;
      }
      .nav-logo {
        display: flex;
        align-items: center;
        gap: 0;
      }
      .nav-logo img {
        height: 36px;
        width: auto;
      }
      .nav-logo svg {
        height: 36px;
        width: 36px;
      }
      .nav-links {
        display: flex;
        align-items: center;
        gap: 28px;
      }
      .nav-links a {
        font-size: 0.875rem;
        color: #5c5248;
        transition: color 0.2s;
      }
      .nav-links a:hover {
        color: #1a2e3b;
      }
      .nav-actions {
        display: flex;
        align-items: center;
        gap: 12px;
      }
      .nav-phone {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        font-size: 0.875rem;
        color: #0d4f68;
        font-weight: 500;
        transition: opacity 0.2s;
      }
      .nav-phone:hover {
        opacity: 0.8;
      }
      .nav-phone .lucide {
        width: 14px;
        height: 14px;
      }
      .btn-wa {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: #25d366;
        color: #fff;
        font-size: 0.875rem;
        font-weight: 500;
        padding: 8px 16px;
        border-radius: 6px;
        transition: background 0.2s;
        white-space: nowrap;
      }
      .btn-wa:hover {
        background: #1ebe5d;
      }
      .btn-wa .wa-svg {
        width: 16px;
        height: 16px;
      }
      .nav-toggle {
        display: none;
        align-items: center;
        justify-content: center;
        padding: 8px;
        color: #1a2e3b;
      }
      .nav-toggle .lucide {
        width: 20px;
        height: 20px;
      }
      .nav-toggle .icon-x {
        display: none;
      }
      .nav-toggle.open .icon-menu {
        display: none;
      }
      .nav-toggle.open .icon-x {
        display: block;
      }
      .nav-mobile {
        display: none;
        flex-direction: column;
        gap: 16px;
        border-top: 1px solid #d9d3c7;
        background: #f8f6f1;
        padding: 16px 24px;
      }
      .nav-mobile.open {
        display: flex;
      }
      .nav-mobile a {
        font-size: 0.875rem;
        color: #1a2e3b;
      }
      .nav-mobile .btn-wa {
        justify-content: center;
      }

      /* ─── Hero ───────────────────────────────────────────────────────────────── */
      .hero {
        padding-top: 64px;
        min-height: 100vh;
        display: flex;
        align-items: center;
        background: #f8f6f1;
        position: relative;
        overflow: hidden;
      }
      .hero::before {
        content: "";
        position: absolute;
        inset: 0;
        opacity: 0.03;
        pointer-events: none;
        background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23000' fill-opacity='1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
      }
      .hero-inner {
        max-width: 1280px;
        margin: 0 auto;
        padding: 80px 24px;
        display: grid;
        grid-template-columns: 1fr 1.1fr;
        gap: 64px;
        align-items: center;
        width: 100%;
      }
      .hero-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: rgba(13, 79, 104, 0.1);
        color: #0d4f68;
        font-size: 0.7rem;
        font-weight: 500;
        padding: 6px 12px;
        border-radius: 999px;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        margin-bottom: 24px;
      }
      .hero-eyebrow .lucide {
        width: 14px;
        height: 14px;
      }
      .hero-h1 {
        font-family: "Playfair Display", serif;
        font-size: clamp(2.4rem, 5vw, 3.8rem);
        font-weight: 600;
        line-height: 1.1;
        color: #1a2e3b;
        margin-bottom: 20px;
      }
      .hero-h1 em {
        color: #0d4f68;
        font-style: normal;
      }
      .hero-desc {
        font-size: 1.1rem;
        line-height: 1.7;
        color: #5c5248;
        font-weight: 300;
        margin-bottom: 32px;
        max-width: 480px;
      }
      .hero-ctas {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-bottom: 40px;
      }
      .btn-primary {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: #25d366;
        color: #fff;
        padding: 12px 24px;
        border-radius: 6px;
        font-weight: 500;
        font-size: 0.9375rem;
        transition: background 0.2s;
      }
      .btn-primary:hover {
        background: #1ebe5d;
      }
      .btn-primary .wa-svg {
        width: 20px;
        height: 20px;
      }
      .btn-secondary {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: #fff;
        color: #1a2e3b;
        border: 1px solid #d9d3c7;
        padding: 12px 24px;
        border-radius: 6px;
        font-weight: 500;
        font-size: 0.9375rem;
        transition: background 0.2s;
      }
      .btn-secondary:hover {
        background: #eee9df;
      }
      .hero-meta {
        display: flex;
        flex-wrap: wrap;
        gap: 24px;
        font-size: 0.875rem;
        color: #5c5248;
      }
      .hero-meta a,
      .hero-meta span {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        transition: color 0.2s;
      }
      .hero-meta a:hover {
        color: #1a2e3b;
      }
      .hero-meta .lucide {
        width: 16px;
        height: 16px;
        color: #0d4f68;
      }

      /* Photo panel */
      .hero-photo {
        position: relative;
      }
      .photo-wrap {
        position: relative;
        border-radius: 16px;
        overflow: hidden;
      }
      .photo-wrap img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: top;
      }
      .photo-wrap .gradient-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(
          to top,
          rgba(13, 79, 104, 0.4),
          transparent
        );
        pointer-events: none;
      }
      .photo-wrap .upload-overlay {
        position: absolute;
        inset: 0;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        padding-bottom: 28px;
        opacity: 0;
        transition: opacity 0.25s;
        cursor: pointer;
        z-index: 2;
      }
      .photo-wrap:hover .upload-overlay {
        opacity: 1;
      }
      .upload-overlay .overlay-btn {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: rgba(255, 255, 255, 0.92);
        color: #1a2e3b;
        font-size: 0.8125rem;
        font-weight: 500;
        padding: 9px 18px;
        border-radius: 6px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
        pointer-events: none;
      }
      .upload-overlay .overlay-btn svg {
        width: 14px;
        height: 14px;
      }
      .upload-overlay input[type="file"] {
        display: none;
      }
      .hero-photo-aspect {
        aspect-ratio: 4/5;
        background: #eee9df;
      }
      .hero-photo-gradient {
        position: absolute;
        inset: 0;
        background: linear-gradient(
          to top,
          rgba(13, 79, 104, 0.4),
          transparent
        );
        pointer-events: none;
      }
      .hero-badge-patients {
        position: absolute;
        bottom: -16px;
        left: -16px;
        background: #fff;
        border-radius: 12px;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
        padding: 16px;
        border: 1px solid #d9d3c7;
        z-index: 3;
      }
      .hero-badge-patients .badge-eyebrow {
        font-size: 0.6rem;
        text-transform: uppercase;
        letter-spacing: 0.12em;
        color: #7a6f63;
        margin-bottom: 4px;
      }
      .hero-badge-patients .badge-val {
        font-family: "Playfair Display", serif;
        font-size: 1.875rem;
        color: #0d4f68;
        font-weight: 700;
        line-height: 1;
      }
      .hero-badge-patients .badge-sub {
        font-size: 0.7rem;
        color: #7a6f63;
        margin-top: 4px;
      }
      .hero-badge-cert {
        position: absolute;
        top: 24px;
        right: -12px;
        background: #eee9df;
        color: #1a2e3b;
        border-radius: 8px;
        padding: 8px 12px;
        font-size: 0.7rem;
        font-weight: 500;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
        z-index: 3;
      }

      /* ─── Stats ──────────────────────────────────────────────────────────────── */
      .stats {
        background: #0d4f68;
        padding: 56px 0;
      }
      .stats-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 32px;
      }
      .stat {
        text-align: center;
      }
      .stat-val {
        font-family: "Playfair Display", serif;
        font-size: clamp(1.8rem, 4vw, 2.6rem);
        font-weight: 600;
        color: #fff;
        line-height: 1;
        margin-bottom: 4px;
      }
      .stat-label {
        font-size: 0.875rem;
        color: rgba(255, 255, 255, 0.6);
      }

      /* ─── Services ───────────────────────────────────────────────────────────── */
      .services {
        padding: 96px 0;
        background: #f8f6f1;
      }
      .services-layout {
        display: grid;
        gap: 48px;
      }
      .services-sidebar {
      }
      .section-eyebrow {
        display: block;
        font-size: 0.7rem;
        text-transform: uppercase;
        letter-spacing: 0.12em;
        color: #9a6d3a;
        font-weight: 500;
        margin-bottom: 12px;
      }
      .section-h2 {
        font-family: "Playfair Display", serif;
        font-size: clamp(1.8rem, 3.5vw, 2.6rem);
        font-weight: 600;
        color: #1a2e3b;
        line-height: 1.2;
        margin-bottom: 16px;
      }
      .section-p {
        font-size: 0.875rem;
        color: #5c5248;
        line-height: 1.7;
      }
      .section-h3 {
        font-family: "Playfair Display", serif;
        font-size: clamp(1.6rem, 3vw, 2.2rem);
        font-weight: 600;
        color: #1a2e3b;
        line-height: 1.2;
        margin-bottom: 16px;
      }
      .wa-link {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: #25d366;
        font-size: 0.875rem;
        font-weight: 500;
        margin-top: 24px;
        transition: gap 0.2s;
      }
      .wa-link:hover {
        gap: 12px;
      }
      .wa-link .wa-svg {
        width: 16px;
        height: 16px;
      }
      .wa-link .lucide {
        width: 16px;
        height: 16px;
      }
      .services-grid {
        display: grid;
        gap: 16px;
      }
      .svc-card {
        background: #fff;
        border-radius: 12px;
        padding: 20px;
        border: 1px solid #d9d3c7;
        transition:
          border-color 0.2s,
          box-shadow 0.2s;
        cursor: default;
      }
      .svc-card:hover {
        border-color: rgba(13, 79, 104, 0.3);
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
      }
      .svc-icon {
        width: 40px;
        height: 40px;
        border-radius: 8px;
        background: rgba(13, 79, 104, 0.1);
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 12px;
        transition: background 0.2s;
      }
      .svc-card:hover .svc-icon {
        background: rgba(13, 79, 104, 0.15);
      }
      .svc-icon .lucide {
        width: 20px;
        height: 20px;
        color: #0d4f68;
      }
      .svc-title {
        font-family: "Playfair Display", serif;
        font-size: 1rem;
        color: #1a2e3b;
        font-weight: 600;
        margin-bottom: 6px;
      }
      .svc-desc {
        font-size: 0.75rem;
        color: #5c5248;
        line-height: 1.6;
      }

      /* ─── Team ───────────────────────────────────────────────────────────────── */
      .team {
        padding: 96px 0;
        background: #eee9df;
      }
      .team-header {
        text-align: center;
        margin-bottom: 56px;
      }
      .team-header .section-p {
        max-width: 640px;
        margin: 12px auto 0;
      }
      .team-scroll {
        display: flex;
        gap: 20px;
        overflow-x: auto;
        padding-bottom: 16px;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        margin: 0 -24px;
        padding-left: 24px;
        padding-right: 24px;
      }
      .team-scroll::-webkit-scrollbar {
        height: 4px;
      }
      .team-scroll::-webkit-scrollbar-track {
        background: transparent;
      }
      .team-scroll::-webkit-scrollbar-thumb {
        background: rgba(13, 79, 104, 0.25);
        border-radius: 2px;
      }
      .team-scroll:after {
        content: "";
        flex: none;
        width: 8px;
      }
      .doc-card {
        flex: none;
        width: 240px;
        background: #fff;
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid #d9d3c7;
        display: flex;
        flex-direction: column;
        scroll-snap-align: start;
        transition: box-shadow 0.2s;
      }
      .doc-card:hover {
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
      }
      .doc-photo {
        aspect-ratio: 3/4;
        background: #eee9df;
        overflow: hidden;
        position: relative;
      }
      .doc-photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: top;
        transition: transform 0.5s;
        display: block;
      }
      .doc-card:hover .doc-photo img {
        transform: scale(1.02);
      }
      .doc-photo .upload-overlay {
        padding-bottom: 12px;
      }
      .doc-info {
        padding: 16px;
        flex: 1;
        display: flex;
        flex-direction: column;
      }
      .doc-creds {
        font-size: 0.625rem;
        color: #9a6d3a;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-weight: 500;
        margin-bottom: 4px;
      }
      .doc-name {
        font-family: "Playfair Display", serif;
        font-size: 0.9375rem;
        color: #1a2e3b;
        font-weight: 600;
        line-height: 1.3;
        margin-bottom: 2px;
      }
      .doc-title {
        font-size: 0.75rem;
        color: #5c5248;
        margin-bottom: 4px;
      }
      .doc-college {
        font-size: 0.6875rem;
        color: rgba(122, 111, 99, 0.7);
        font-style: italic;
        margin-bottom: 8px;
      }
      .doc-divider {
        border-top: 1px solid #d9d3c7;
        padding-top: 8px;
        margin-top: auto;
      }
      .doc-specialty {
        font-size: 0.6875rem;
        color: rgba(26, 46, 59, 0.7);
        line-height: 1.5;
      }
      .doc-years {
        font-size: 0.6875rem;
        color: #5c5248;
        margin-top: 4px;
        font-weight: 500;
      }

      /* ─── About ──────────────────────────────────────────────────────────────── */
      .about {
        background: #fff;
      }
      .about-part1 {
        padding: 96px 0;
      }
      .about-grid {
        display: grid;
        gap: 64px;
        align-items: start;
      }
      .timeline {
        position: relative;
        padding-left: 24px;
        border-left: 2px solid #d9d3c7;
      }
      .tl-item {
        position: relative;
        margin-bottom: 24px;
      }
      .tl-item:last-child {
        margin-bottom: 0;
      }
      .tl-dot {
        position: absolute;
        left: -33px;
        top: 4px;
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background: #0d4f68;
        border: 2px solid #fff;
      }
      .tl-year {
        font-size: 0.625rem;
        color: #9a6d3a;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        margin-bottom: 2px;
      }
      .tl-text {
        font-size: 0.875rem;
        color: rgba(26, 46, 59, 0.8);
      }
      .tl-title {
        font-family: "Playfair Display", serif;
        font-size: 1.1rem;
        color: #1a2e3b;
        font-weight: 600;
        margin-bottom: 24px;
      }
      .about-cards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
        margin-top: 32px;
      }
      .about-card {
        background: #f8f6f1;
        border-radius: 8px;
        padding: 16px;
        border: 1px solid #d9d3c7;
      }
      .about-card-val {
        font-family: "Playfair Display", serif;
        font-size: 1.25rem;
        color: #0d4f68;
        font-weight: 700;
        line-height: 1;
        margin-bottom: 4px;
      }
      .about-card-label {
        font-size: 0.75rem;
        color: #5c5248;
      }

      /* Founders */
      .about-founders {
        background: #f8f6f1;
        padding: 80px 0;
        border-top: 1px solid #d9d3c7;
        border-bottom: 1px solid #d9d3c7;
      }
      .about-center {
        text-align: center;
        margin-bottom: 48px;
      }
      .about-center .section-p {
        max-width: 640px;
        margin: 12px auto 0;
      }
      .founders-grid {
        display: grid;
        gap: 32px;
        max-width: 896px;
        margin: 0 auto;
      }
      .founder-card {
        background: #fff;
        border-radius: 16px;
        border: 1px solid #d9d3c7;
        overflow: hidden;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      }
      .founder-photo-pad {
        padding: 24px 24px 0;
      }

      /* Upload slot (portrait cards) */
      .upload-slot {
        position: relative;
        width: 100%;
        aspect-ratio: 3/4;
        border-radius: 12px;
        overflow: hidden;
        background: #eee9df;
        border: 2px dashed rgba(13, 79, 104, 0.3);
      }
      .upload-slot img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
      }
      .upload-slot .upload-overlay {
        border-radius: 0;
      }

      /* Founders/directors: show upload prompt always visible when empty */
      .upload-slot[data-empty] img {
        opacity: 0.15;
      }
      .upload-slot[data-empty] .upload-empty-msg {
        display: flex;
      }
      .upload-slot:not([data-empty]) .upload-empty-msg {
        display: none;
      }
      .upload-empty-msg {
        position: absolute;
        inset: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8px;
        color: rgba(13, 79, 104, 0.5);
        pointer-events: none;
      }
      .upload-empty-msg svg {
        width: 48px;
        height: 48px;
        stroke: rgba(13, 79, 104, 0.4);
        fill: none;
        stroke-width: 1.5;
      }
      .upload-empty-msg span {
        font-size: 0.75rem;
        font-weight: 500;
        color: rgba(13, 79, 104, 0.6);
      }
      .upload-slot-btn {
        position: absolute;
        bottom: 12px;
        left: 50%;
        transform: translateX(-50%);
        display: inline-flex;
        align-items: center;
        gap: 4px;
        background: rgba(13, 79, 104, 0.1);
        color: #0d4f68;
        font-size: 0.6875rem;
        font-weight: 500;
        padding: 6px 14px;
        border-radius: 6px;
        cursor: pointer;
        transition: background 0.2s;
        white-space: nowrap;
        z-index: 3;
      }
      .upload-slot-btn:hover {
        background: rgba(13, 79, 104, 0.2);
      }
      .upload-slot-btn svg {
        width: 12px;
        height: 12px;
      }
      .upload-slot-btn input[type="file"] {
        display: none;
      }

      .founder-details {
        padding: 24px;
      }
      .founder-name {
        font-family: "Playfair Display", serif;
        font-size: 1.05rem;
        color: #1a2e3b;
        font-weight: 600;
        margin-bottom: 4px;
      }
      .founder-role {
        font-size: 0.6875rem;
        color: #9a6d3a;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-weight: 500;
        margin-bottom: 12px;
      }
      .founder-bio {
        font-size: 0.875rem;
        color: #5c5248;
        line-height: 1.7;
      }

      /* Directors */
      .about-directors {
        padding: 80px 0;
      }
      .directors-grid {
        display: grid;
        gap: 32px;
      }
      .dir-card {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        background: #f8f6f1;
        border-radius: 16px;
        border: 1px solid #d9d3c7;
        overflow: hidden;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      }
      .dir-photo-pad {
        width: 100%;
        padding: 32px 32px 0;
      }
      .dir-details {
        padding: 24px;
        width: 100%;
      }
      .dir-creds-badge {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        background: rgba(13, 79, 104, 0.1);
        color: #0d4f68;
        font-size: 0.625rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        padding: 5px 10px;
        border-radius: 999px;
        margin-bottom: 12px;
      }
      .dir-creds-badge .lucide {
        width: 12px;
        height: 12px;
      }
      .dir-name {
        font-family: "Playfair Display", serif;
        font-size: 1rem;
        color: #1a2e3b;
        font-weight: 600;
        margin-bottom: 4px;
      }
      .dir-role {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        font-size: 0.6875rem;
        color: #9a6d3a;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-weight: 500;
        margin-bottom: 12px;
      }
      .dir-role .lucide {
        width: 12px;
        height: 12px;
      }
      .dir-desc {
        font-size: 0.75rem;
        color: #5c5248;
        line-height: 1.6;
      }

      /* Facilities */
      .about-facilities {
        padding: 48px 0 96px;
        border-top: 1px solid #d9d3c7;
      }
      .facilities-grid {
        display: grid;
        gap: 16px;
      }
      .facility-item {
        display: flex;
        align-items: center;
        gap: 12px;
        background: #f8f6f1;
        border-radius: 8px;
        padding: 16px;
        border: 1px solid #d9d3c7;
        font-size: 0.875rem;
        color: rgba(26, 46, 59, 0.8);
      }
      .facility-item .lucide {
        width: 16px;
        height: 16px;
        color: #0d4f68;
        flex-shrink: 0;
      }

      /* ─── Testimonials ───────────────────────────────────────────────────────── */
      .testimonials {
        padding: 96px 0;
        background: #f8f6f1;
      }
      .testimonials-header {
        text-align: center;
        margin-bottom: 56px;
      }
      .testimonials-grid {
        display: grid;
        gap: 24px;
      }
      .testimonial-card {
        background: #fff;
        border-radius: 12px;
        padding: 28px;
        border: 1px solid #d9d3c7;
        display: flex;
        flex-direction: column;
      }
      .stars {
        display: flex;
        gap: 2px;
        margin-bottom: 16px;
      }
      .stars svg {
        width: 16px;
        height: 16px;
        fill: #9a6d3a;
        color: #9a6d3a;
      }
      .testimonial-body {
        font-size: 0.875rem;
        color: rgba(26, 46, 59, 0.8);
        line-height: 1.7;
        font-style: italic;
        flex: 1;
        margin-bottom: 24px;
      }
      .testimonial-name {
        font-size: 0.875rem;
        color: #1a2e3b;
        font-weight: 500;
      }
      .testimonial-loc {
        font-size: 0.75rem;
        color: #7a6f63;
      }

      /* ─── Resources / FAQ ────────────────────────────────────────────────────── */
      .resources {
        padding: 96px 0;
        background: #fff;
      }
      .resources-layout {
        display: grid;
        gap: 64px;
        align-items: start;
      }
      .resources-sidebar {
      }
      .faq-list {
        display: flex;
        flex-direction: column;
        gap: 8px;
      }
      .faq-item {
        border: 1px solid #d9d3c7;
        border-radius: 8px;
        overflow: hidden;
      }
      .faq-btn {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 16px 20px;
        text-align: left;
        font-size: 0.875rem;
        font-weight: 500;
        color: #1a2e3b;
        transition: background 0.2s;
        gap: 16px;
      }
      .faq-btn:hover {
        background: rgba(248, 246, 241, 0.5);
      }
      .faq-chevron {
        width: 16px;
        height: 16px;
        color: #7a6f63;
        flex-shrink: 0;
        transition: transform 0.3s;
      }
      .faq-item.open .faq-chevron {
        transform: rotate(180deg);
      }
      .faq-answer {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.35s ease;
      }
      .faq-item.open .faq-answer {
        max-height: 400px;
      }
      .faq-answer-inner {
        padding: 0 20px 20px;
        font-size: 0.875rem;
        color: #5c5248;
        line-height: 1.7;
        background: rgba(248, 246, 241, 0.3);
      }

      /* ─── CTA ────────────────────────────────────────────────────────────────── */
      .cta {
        padding: 96px 0;
        background: #eee9df;
      }
      .cta-inner {
        max-width: 896px;
        margin: 0 auto;
        padding: 0 24px;
        text-align: center;
      }
      .cta-wa-btn {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        background: #25d366;
        color: #fff;
        padding: 16px 32px;
        border-radius: 12px;
        font-weight: 600;
        font-size: 1.125rem;
        margin: 0 0 48px;
        box-shadow: 0 4px 16px rgba(37, 211, 102, 0.3);
        transition:
          background 0.2s,
          box-shadow 0.2s;
      }
      .cta-wa-btn:hover {
        background: #1ebe5d;
        box-shadow: 0 6px 20px rgba(37, 211, 102, 0.4);
      }
      .cta-wa-btn .wa-svg {
        width: 24px;
        height: 24px;
      }
      .cta-wa-btn .lucide {
        width: 20px;
        height: 20px;
      }
      .cta-cards {
        display: grid;
        gap: 16px;
      }
      .cta-card {
        background: #fff;
        border-radius: 12px;
        padding: 20px;
        border: 1px solid #d9d3c7;
        text-align: left;
        transition: box-shadow 0.2s;
      }
      .cta-card:hover {
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
      }
      .cta-card-icon {
        width: 36px;
        height: 36px;
        border-radius: 8px;
        background: rgba(13, 79, 104, 0.1);
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 12px;
      }
      .cta-card-icon .lucide {
        width: 16px;
        height: 16px;
        color: #0d4f68;
      }
      .cta-card-title {
        font-size: 0.875rem;
        font-weight: 500;
        color: #1a2e3b;
        margin-bottom: 4px;
      }
      .cta-card-text {
        font-size: 0.75rem;
        color: #5c5248;
        line-height: 1.5;
      }
      .cta-phone {
        color: #0d4f68;
        font-weight: 500;
        font-size: 0.875rem;
      }

      /* ─── Footer ─────────────────────────────────────────────────────────────── */
      .footer {
        background: #1a2e3b;
        color: rgba(255, 255, 255, 0.7);
      }
      .footer-top {
        padding: 64px 0 48px;
      }
      .footer-grid {
        display: grid;
        gap: 40px;
        margin-bottom: 48px;
      }
      .footer-brand-row {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 16px;
      }
      .footer-brand-name {
        font-family: "Playfair Display", serif;
        font-weight: 600;
        color: #fff;
        display: block;
        line-height: 1.3;
      }
      .footer-brand-sub {
        font-size: 0.6rem;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: rgba(255, 255, 255, 0.4);
      }
      .footer-brand-desc {
        font-size: 0.875rem;
        line-height: 1.6;
        color: rgba(255, 255, 255, 0.5);
        max-width: 260px;
      }
      .footer-col-title {
        font-size: 0.875rem;
        font-weight: 500;
        color: #fff;
        margin-bottom: 16px;
      }
      .footer-links {
        display: flex;
        flex-direction: column;
        gap: 10px;
      }
      .footer-links a {
        font-size: 0.875rem;
        transition: color 0.2s;
      }
      .footer-links a:hover {
        color: #fff;
      }
      .footer-contact-list {
        display: flex;
        flex-direction: column;
        gap: 12px;
      }
      .footer-contact-item {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        font-size: 0.875rem;
        transition: color 0.2s;
      }
      .footer-contact-item:hover {
        color: #fff;
      }
      .footer-contact-item .lucide {
        width: 16px;
        height: 16px;
        flex-shrink: 0;
        margin-top: 2px;
        color: rgba(255, 255, 255, 0.4);
      }
      .footer-wa-item {
        color: #25d366 !important;
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .footer-wa-item:hover {
        color: #1ebe5d !important;
      }
      .footer-wa-item .wa-svg {
        width: 16px;
        height: 16px;
      }
      .footer-bottom {
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        padding: 24px 0 0;
        display: flex;
        flex-direction: column;
        gap: 12px;
        align-items: center;
        font-size: 0.7rem;
        color: rgba(255, 255, 255, 0.35);
      }
      .footer-legal {
        display: flex;
        gap: 20px;
      }
      .footer-legal a {
        transition: color 0.2s;
      }
      .footer-legal a:hover {
        color: rgba(255, 255, 255, 0.6);
      }

      /* ─── Floating WhatsApp ──────────────────────────────────────────────────── */
      .floating-wa {
        position: fixed;
        bottom: 24px;
        right: 24px;
        z-index: 50;
        width: 56px;
        height: 56px;
        border-radius: 50%;
        background: #25d366;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
        transition:
          transform 0.2s,
          background 0.2s;
      }
      .floating-wa:hover {
        background: #1ebe5d;
        transform: scale(1.1);
      }
      .floating-wa .wa-svg {
        width: 28px;
        height: 28px;
      }

      /* ─── Responsive ─────────────────────────────────────────────────────────── */
      @media (min-width: 640px) {
        .stats-grid {
          grid-template-columns: repeat(4, 1fr);
        }
        .services-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .founders-grid {
          grid-template-columns: 1fr 1fr;
        }
        .directors-grid {
          grid-template-columns: repeat(3, 1fr);
        }
        .facilities-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .testimonials-grid {
          grid-template-columns: repeat(3, 1fr);
        }
        .cta-cards {
          grid-template-columns: repeat(3, 1fr);
        }
        .footer-grid {
          grid-template-columns: 1fr 1fr;
        }
        .footer-bottom {
          flex-direction: row;
          justify-content: space-between;
        }
      }
      @media (min-width: 1024px) {
        .nav-links,
        .nav-actions {
          display: flex;
        }
        .nav-toggle {
          display: none !important;
        }
        .hero-inner {
          grid-template-columns: 1fr 1.1fr;
        }
        .services-layout {
          grid-template-columns: 1fr 2fr;
          gap: 80px;
        }
        .services-sidebar {
          position: sticky;
          top: 96px;
        }
        .services-grid {
          grid-template-columns: repeat(3, 1fr);
        }
        .about-grid {
          grid-template-columns: 1fr 1fr;
        }
        .resources-layout {
          grid-template-columns: 1fr 1fr;
        }
        .resources-sidebar {
          position: sticky;
          top: 112px;
        }
        .footer-grid {
          grid-template-columns: 2fr 1fr 1fr 1fr;
        }
        .facilities-grid {
          grid-template-columns: repeat(3, 1fr);
        }
      }
      @media (max-width: 1023px) {
        .nav-links,
        .nav-actions {
          display: none;
        }
        .nav-toggle {
          display: flex;
        }
        .hero-photo {
          display: none;
        }
        .hero-inner {
          grid-template-columns: 1fr;
        }
      }
      @media (max-width: 639px) {
        .hero-h1 {
          font-size: 2rem;
        }
        .about-cards {
          grid-template-columns: 1fr;
        }
      }
    
/* ─── Director tag (team cards) ─────────────────────────────────────────── */
.doc-director-tag {
  display: inline-block;
  font-size: 0.625rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #0d4f68;
  background: rgba(13, 79, 104, 0.1);
  padding: 2px 8px;
  border-radius: 999px;
  margin-bottom: 3px;
}

/* ─── Hospital banner (wide horizontal image) ────────────────────────────── */
.hospital-banner {
  width: 100%;
  overflow: hidden;
  line-height: 0;
  background: #0d4f68;
}
.hospital-banner img {
  width: 100%;
  height: clamp(180px, 28vw, 420px);
  object-fit: cover;
  object-position: center;
  display: block;
}

/* ─── Details/summary nav (mobile, no-JS) ───────────────────────────────── */
details.nav-details {
  display: none;
}
@media (max-width: 1023px) {
  details.nav-details {
    display: block;
  }
}
details.nav-details > summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  color: #1a2e3b;
  cursor: pointer;
}
details.nav-details > summary::-webkit-details-marker { display: none; }
details.nav-details > summary::marker { display: none; }
details.nav-details[open] .nav-mobile {
  display: flex;
}

/* ─── Details/summary FAQ (no-JS) ───────────────────────────────────────── */
details.faq-item {
  border: 1px solid #d9d3c7;
  border-radius: 8px;
  overflow: hidden;
}
details.faq-item > summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  text-align: left;
  font-size: 0.875rem;
  font-weight: 500;
  color: #1a2e3b;
  cursor: pointer;
  gap: 16px;
}
details.faq-item > summary::-webkit-details-marker { display: none; }
details.faq-item > summary::marker { display: none; }
details.faq-item > summary:hover {
  background: rgba(248, 246, 241, 0.5);
}
details.faq-item > summary .faq-chevron {
  transition: transform 0.3s;
}
details.faq-item[open] > summary .faq-chevron {
  transform: rotate(180deg);
}
details.faq-item .faq-answer-inner {
  padding: 0 20px 20px;
  font-size: 0.875rem;
  color: #5c5248;
  line-height: 1.7;
  background: rgba(248, 246, 241, 0.3);
}

/* Hide upload UI — no-JS fallback */
.upload-overlay,
.upload-slot-btn,
.upload-empty-msg {
  display: none !important;
}


/* --- Responsive fixes --- */
*{box-sizing:border-box}
img{max-width:100%;height:auto}
body{overflow-x:hidden}
.container,.wrapper{max-width:100%}
@media (max-width:768px){
  nav ul{max-width:100%}
}

/* FAQ */
details>summary{cursor:pointer;list-style:none}
details>summary::-webkit-details-marker{display:none}

/* Director tag consistency */
.doc-director-tag{
display:inline-block;
padding:.25rem .6rem;
border-radius:999px;
font-size:.8rem;
font-weight:600;
}
