:root{--paper:#f6f3ed;--ink:#193d35;--muted:#69716a;--line:#d9dcd3;--gold:#a68c64;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.65}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.035em}em{font-weight:400;color:#7c8871}h2{font-size:clamp(38px,4.3vw,66px)}h3{font-size:28px}p{color:var(--muted)}.demo-bar{background:#e9e5db;color:#61685d;font-size:9px;letter-spacing:.14em;padding:5px 5%;display:flex;justify-content:space-between}.demo-bar span{letter-spacing:.06em}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;background:rgba(246,243,237,.97);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.brand{font-family:var(--serif);font-size:36px;letter-spacing:.14em;line-height:1.05}.brand span{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:.24em;padding-top:9px}.brand i{font-style:normal;margin:0 7px;color:var(--gold)}nav{display:flex;gap:28px;font-size:12px}nav a:hover{color:var(--gold)}.btn{border:1px solid var(--ink);background:var(--ink);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 23px;font-size:12px;transition:background .2s,transform .2s}.btn:hover{background:#2e5749;transform:translateY(-2px)}.btn b{font-size:19px;font-weight:400;line-height:1}.small{padding:13px 16px;font-size:11px}.menu{display:none}.hero{display:grid;grid-template-columns:1.06fr 1fr;min-height:660px;margin:0 5%;border-bottom:1px solid var(--line)}.hero-copy{padding:65px 30px 28px 0;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:9px;font-weight:500;letter-spacing:.19em;color:var(--ink);margin-bottom:29px;display:flex;align-items:center;gap:13px}.line{width:26px;height:1px;background:var(--gold)}h1{font-size:clamp(50px,5.8vw,88px);line-height:1.01;margin-bottom:28px}.intro{font-size:14px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:26px;margin:32px 0 45px}.text-link{display:inline-flex;align-items:center;gap:28px;font-size:12px;border:0;border-bottom:1px solid #abb2a6;padding:0 0 8px;background:none;line-height:1.5}.text-link:hover{color:var(--gold)}.hero-foot{display:flex;gap:22px;font-size:8px;letter-spacing:.14em;margin-top:auto;color:var(--muted)}.hero-image{position:relative;overflow:hidden;background:#c9b9a4}.hero-image img{object-position:49% center;filter:saturate(.65);height:100%;position:absolute;inset:0}.image-caption{position:absolute;bottom:0;left:0;right:0;padding:45px 27px 22px;background:linear-gradient(transparent,rgba(28,37,26,.4));color:#fff;font-size:8px;letter-spacing:.15em;display:flex;justify-content:space-between}.vertical-label{position:absolute;right:15px;top:30px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.2em;color:#fff}.values{padding:25px 10%;display:flex;justify-content:space-around;align-items:center;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:21px}.values i{color:var(--gold);font-style:normal;font-size:18px}.section{padding:95px 7%}.approach{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;border-bottom:1px solid var(--line)}.approach-copy{padding-top:36px}.large-copy{font-family:var(--serif);font-size:28px;line-height:1.35;color:var(--ink);margin-bottom:22px}.approach-copy>p:not(.large-copy){font-size:14px;margin-bottom:25px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px;gap:25px}.section-head>p{font-size:13px;max-width:350px}.procedure-grid,.doctor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.procedure,.doctor{border:none;background:none;text-align:left;padding:0}.photo{height:325px;position:relative;overflow:hidden;background:#dbd4c5}.photo img{filter:saturate(.65);transition:transform .5s}.procedure:hover img{transform:scale(1.04)}.photo>span{position:absolute;left:17px;top:16px;font-size:11px;color:white}.procedure-title{display:flex;align-items:center;justify-content:space-between;margin:24px 0 8px}.procedure-title>span{font-size:23px}.procedure p{font-size:12px}.fine-note{font-size:10px;margin-top:29px;max-width:850px;line-height:1.6}.journey{background:var(--ink);color:#f6f3ed;padding:85px 7% 30px}.journey p,.journey .eyebrow{color:#c1c9bb}.journey em{color:#bbc5ad}.journey-top{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.journey-top>p{font-size:13px}.journey-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-bottom:1px solid #607166;gap:30px}.journey-tabs button{background:none;color:#b4c0b3;border:0;border-bottom:2px solid transparent;padding:20px 0;text-align:left;font-size:13px}.journey-tabs span{color:#b8a786;margin-right:18px;font-size:10px}.journey-tabs button[aria-selected=true]{border-color:#c6b48d;color:#fff}.stage-panel{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:42px 0 35px;min-height:255px}.stage-number{font-family:var(--serif);font-size:24px;color:#9eaf98}.stage-panel h3{font-size:34px;margin-top:20px}.stage-panel p,.stage-panel ul{font-size:13px}.stage-panel ul{padding-left:17px;color:#dce0d6;line-height:2}.journey-note{font-size:9px;padding-top:20px;border-top:1px solid #607166}.doctor-photo{height:365px;background:#e6e7e1;position:relative;overflow:hidden}.doctor-photo img{object-position:center 20%;filter:saturate(.35);transition:transform .5s}.doctor-photo>span{position:absolute;bottom:0;left:0;right:0;padding:12px 18px;font-size:9px;letter-spacing:.13em;background:rgba(246,243,237,.9);transform:translateY(100%);transition:transform .3s}.doctor:hover .doctor-photo>span,.doctor:focus-visible .doctor-photo>span{transform:translateY(0)}.doctor:hover img{transform:scale(1.02)}.doctor-info{border-bottom:1px solid var(--line);padding:23px 0}.doctor-info p{font-size:11px;letter-spacing:.04em;margin-top:9px}.place{background:#e9e9e0;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.place-image{height:510px;position:relative}.place-image img{filter:saturate(.5);object-position:50% 50%}.place-image>span{position:absolute;left:25px;bottom:23px;color:#fff;font-size:10px;letter-spacing:.2em}.place-copy h2{font-size:53px;margin-bottom:24px}.place-copy>p:not(.eyebrow){font-size:13px;margin:15px 0}.address{margin:27px 0;padding:23px 0;border-top:1px solid #c7cbbc;border-bottom:1px solid #c7cbbc}.address>span{font-size:8px;letter-spacing:.18em}.address h3{font-size:25px;margin:12px 0}.address p{font-size:11px}.faq{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.faq>div>p:not(.eyebrow){margin-top:25px;font-size:13px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;padding:23px 0;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:14px}summary::-webkit-details-marker{display:none}summary span{font-size:22px;line-height:1}details[open] summary span{transform:rotate(45deg)}details p{padding:0 26px 24px 0;font-size:13px}.closing{position:relative;overflow:hidden;background:#dce2d5;text-align:center;padding:75px 20px 85px}.closing .eyebrow{justify-content:center}.closing h2{font-size:68px}.closing p:not(.eyebrow){margin:20px 0 25px;font-size:13px}.light{background:transparent;color:var(--ink)}.light:hover{color:white}.closing-mark{font-family:var(--serif);font-size:260px;color:#193d3508;position:absolute;bottom:-60px;right:-30px;pointer-events:none}footer{padding:55px 7% 23px;background:#f0ede6}.footer-top{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:35px;align-items:start}.footer-top>p{font-family:var(--serif);font-size:19px}.footer-top>div{display:grid;gap:10px;font-size:11px}.footer-top button{border:0;background:none;padding:0;text-align:left;font-size:11px}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;margin-top:45px;display:flex;gap:50px;justify-content:space-between;font-size:9px}.footer-bottom p{max-width:600px}.mobile-consult{display:none}dialog{border:none;background:var(--paper);color:var(--ink);max-width:670px;width:calc(100% - 36px);padding:48px;max-height:90dvh;overflow:auto}dialog::backdrop{background:rgba(14,31,25,.6);backdrop-filter:blur(5px)}dialog h2{font-size:43px;margin-bottom:25px}.close{position:absolute;right:16px;top:10px;border:0;background:none;font-size:30px}.detail-text p{font-size:14px;margin:20px 0}.detail-text ul{font-size:13px;padding-left:20px;color:var(--muted)}dialog>.btn{margin-top:25px}.detail-portrait{width:110px;height:135px;object-fit:cover;float:right;margin:0 0 15px 20px}.form-note{font-size:12px;margin-bottom:25px;padding:12px;background:#e8e8df}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:block;font-size:11px;margin-bottom:18px}input,select{display:block;border:0;border-bottom:1px solid #a5afa3;background:transparent;padding:10px 0;width:100%;border-radius:0;font-size:13px;color:var(--ink)}input:focus,select:focus{outline:2px solid var(--gold);outline-offset:3px}.consent{display:flex;align-items:flex-start;gap:10px;margin:25px 0}.consent input{width:15px;margin-top:3px;flex-shrink:0}.success-icon{display:block;font-size:32px;margin:20px 0}#form-success p{margin:20px 0;font-size:14px}[hidden]{display:none!important}@media(min-width:1600px){.hero{min-height:760px}.hero-copy{padding-top:95px}.section{padding-left:max(7%,calc((100% - 1350px)/2));padding-right:max(7%,calc((100% - 1350px)/2))}}@media(max-width:1050px){header{gap:15px;padding:0 4%}nav{gap:16px;font-size:11px}.header-cta{font-size:10px;padding:12px}.hero{margin:0 4%;min-height:600px}h1{font-size:60px}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.hero-foot{gap:14px;font-size:7px}.section{padding:75px 5%}.photo{height:260px}.doctor-photo{height:300px}.place-copy h2{font-size:43px}.journey{padding-left:5%;padding-right:5%}.footer-top{gap:20px}.values{font-size:18px}}@media(max-width:760px){html{scroll-padding-top:80px}.demo-bar{font-size:8px;justify-content:center;padding:5px 10px}.demo-bar span{display:none}header{height:78px;padding:0 6%}.brand{font-size:28px}.brand span{font-size:7px}.header-cta{margin-left:auto;font-size:9px;padding:10px 12px;gap:10px}.menu{display:block;border:0;background:none;font-size:22px;padding:8px}nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:22px 6%;border-bottom:1px solid var(--line);font-size:14px}nav.open{display:grid;gap:20px}.hero{display:flex;flex-direction:column;margin:0;min-height:0}.hero-copy{padding:43px 7% 32px}.eyebrow{font-size:8px;letter-spacing:.13em;margin-bottom:24px}h1{font-size:57px;line-height:1.03}.intro{font-size:13px}.hero-actions{flex-direction:row;align-items:center;gap:20px;margin:26px 0}.hero-actions .btn{padding:14px;font-size:10px;gap:14px}.hero-actions .text-link{font-size:10px;gap:12px}.hero-foot{font-size:7px;gap:25px}.hero-image{height:400px;margin:0 6%}.hero-image img{object-position:center 45%}.values{padding:25px 5%;font-size:13px;gap:10px}.values i{font-size:12px}.section{padding:58px 7%}h2{font-size:40px}.approach{grid-template-columns:1fr;gap:0}.approach-copy{padding-top:28px}.large-copy{font-size:24px}.section-head{display:block;margin-bottom:28px}.section-head>p{margin-top:20px;font-size:12px}.procedure-grid{grid-template-columns:1fr;gap:34px}.photo{height:300px}.procedure-title{margin-top:16px}.procedure-title h3{font-size:29px}.fine-note{font-size:9px}.journey{padding:58px 7% 25px}.journey-top{display:block}.journey-top>p{margin-top:25px}.journey-tabs{gap:15px;margin-top:25px}.journey-tabs button{font-size:11px;line-height:1.5}.journey-tabs span{display:block;margin-bottom:7px}.stage-panel{grid-template-columns:1fr;gap:22px;padding-top:27px;min-height:360px}.stage-panel h3{font-size:29px;margin-top:12px}.journey-note{font-size:9px}.doctor-grid{grid-template-columns:1fr;gap:30px}.doctor-photo{height:390px}.doctor-photo>span{transform:none;font-size:9px}.doctor-info{padding:18px 0}.place{grid-template-columns:1fr;gap:35px}.place-image{height:340px}.place-copy h2{font-size:40px}.faq{grid-template-columns:1fr;gap:30px}summary{font-size:13px}.closing{padding:58px 7%}.closing h2{font-size:47px}.closing-mark{font-size:170px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>p{font-size:18px}.footer-bottom{display:block;margin-top:30px}.footer-bottom p{margin-top:18px}footer{padding-bottom:90px}.mobile-consult{display:flex;position:fixed;bottom:12px;left:5%;width:90%;z-index:9;box-shadow:0 5px 22px #142c3425;padding:13px 20px}dialog{padding:38px 23px}.form-grid{grid-template-columns:1fr;gap:0}dialog h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Brand Logo Styling */
.brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  text-decoration: none !important;
  color: var(--ink) !important;
}
.brand-logo {
  height: 52px !important;
  width: auto !important;
  max-width: 68px !important;
  object-fit: contain !important;
  display: block !important;
  transition: transform .25s ease;
}
.brand:hover .brand-logo {
  transform: scale(1.04);
}
.brand-sub {
  display: flex !important;
  flex-direction: column !important;
  font-family: Arial, sans-serif !important;
  font-size: 8px !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  line-height: 1.3 !important;
}
.brand-sub strong {
  font-family: var(--serif) !important;
  font-size: 16px !important;
  letter-spacing: .12em !important;
  color: var(--ink) !important;
  line-height: 1 !important;
  margin-bottom: 2px !important;
}
@media (max-width: 760px) {
  header { height: 80px !important; }
  .brand-logo { height: 40px !important; max-width: 50px !important; }
  .brand-sub { display: none !important; }
}
nav a[aria-current=page]{color:var(--gold);border-bottom:1px solid var(--gold)}.directory-link{margin-top:35px}.breadcrumbs{display:flex;gap:14px;padding:25px 7%;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line)}.breadcrumbs a:hover{color:var(--ink)}.inner-intro{padding:65px 7% 55px;max-width:1050px}.inner-intro h1{font-size:clamp(45px,5vw,76px);line-height:1.06}.inner-intro>p:last-child{max-width:650px;font-size:15px;margin-top:24px}.directory{padding-top:0}.directory .procedure-grid,.directory .doctor-grid{row-gap:50px}.filter-row{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 35px}.filter-row button{border:1px solid var(--line);background:none;padding:9px 17px;font-size:11px}.filter-row button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.inner-cta{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding:65px 7%;background:#dce2d5}.inner-cta p{margin-bottom:25px;font-size:13px}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:45px 7% 75px;align-items:center}.detail-hero h1{font-size:clamp(45px,5vw,75px);overflow-wrap:anywhere}.detail-hero .large-copy{font-size:26px;margin:25px 0}.detail-hero .btn,.profile-hero .btn{margin-top:30px}.detail-hero figure{margin:0;position:relative;height:500px}.detail-hero figcaption{position:absolute;left:0;right:0;bottom:0;padding:15px;color:white;background:#193d3580;font-size:8px;letter-spacing:.12em}.reading-layout{display:grid;grid-template-columns:240px 1fr;gap:8%;border-top:1px solid var(--line)}.reading-layout aside{align-self:start;position:sticky;top:130px;display:grid;gap:16px;font-size:12px}.reading-content article{padding-bottom:50px;margin-bottom:50px;border-bottom:1px solid var(--line);scroll-margin-top:125px}.reading-content h2{font-size:46px;margin-bottom:25px}.reading-content p,.reading-content li{font-size:14px}.reading-content ul{padding-left:18px;line-height:2.2;color:var(--muted)}.reading-content .text-link{margin-top:25px}.topic-list{display:grid;gap:8px;margin-top:25px}.topic-list span{padding:14px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:22px}.related{background:#eeeee5}.related h2{margin-bottom:35px}.profile-hero{display:grid;grid-template-columns:.8fr 1fr;gap:10%;padding:45px 9% 80px;align-items:center}.profile-photo{height:520px;background:#e3e5dc}.profile-photo img{object-position:50% 15%;filter:saturate(.5)}.profile-hero h1{font-size:64px}.profile-content{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}.profile-content p{margin-bottom:24px;font-size:14px}.specialty-list{list-style:none;padding:0;margin:0 0 30px}.specialty-list li{font-family:var(--serif);font-size:25px;padding:18px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.specialty-list span{color:var(--gold);font-size:16px}.profile-note{padding:22px;background:#e1e3d8;font-size:12px}.profile-note p{font-size:12px;margin:12px 0 0}.pale{background:#e9e9e0}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}.info-grid article{border-top:1px solid var(--line);padding-top:25px}.info-grid h3{margin-bottom:20px}.info-grid p{font-size:14px}.about-panorama{height:430px;margin:0 7%;overflow:hidden}.about-panorama img{object-position:center;filter:saturate(.6)}.environment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.environment-grid figure{margin:0}.environment-grid img{height:280px;filter:saturate(.6)}.environment-grid figcaption{font-family:var(--serif);font-size:22px;margin-top:18px}.faq-directory{display:grid;grid-template-columns:280px 1fr;gap:7%}.faq-tools label{font-size:12px}.faq-tools input{margin-bottom:25px}.faq-tools #faq-count{font-size:11px}.faq-tools .filter-row{gap:8px}.faq-tools .filter-row button{padding:8px 12px}.faq-tools{align-self:start}.faq-directory details[hidden]{display:none}.faq-directory .faq-list>p{padding:25px 0;font-size:14px}@media(max-width:1050px){header nav{gap:13px}.profile-hero h1{font-size:52px}.reading-layout{grid-template-columns:180px 1fr}.detail-hero figure{height:430px}.environment-grid img{height:220px}}@media(max-width:760px){.breadcrumbs{padding:20px 7%;font-size:9px;flex-wrap:wrap}.inner-intro{padding:42px 7%}.inner-intro h1{font-size:45px}.inner-intro>p:last-child{font-size:13px}.directory{padding-top:0}.filter-row{gap:8px}.filter-row button{font-size:10px;padding:8px 12px}.detail-hero{grid-template-columns:1fr;gap:30px;padding:35px 7% 45px}.detail-hero h1{font-size:49px}.detail-hero figure{height:340px}.reading-layout{grid-template-columns:1fr;gap:35px}.reading-layout aside{position:static;grid-template-columns:1fr 1fr;gap:12px;padding-bottom:25px;border-bottom:1px solid var(--line)}.reading-layout aside .eyebrow{grid-column:1/-1;margin:0}.reading-content h2{font-size:36px}.reading-content article{margin-bottom:30px;padding-bottom:30px}.profile-hero{grid-template-columns:1fr;padding:30px 7% 50px;gap:32px}.profile-photo{height:400px}.profile-hero h1{font-size:47px}.profile-content{grid-template-columns:1fr;gap:25px}.info-grid{grid-template-columns:1fr;gap:30px}.environment-grid{grid-template-columns:1fr;gap:30px}.environment-grid img{height:280px}.about-panorama{height:260px}.faq-directory{grid-template-columns:1fr;gap:22px}.inner-cta{grid-template-columns:1fr;gap:27px;padding:48px 7%}.inner-cta h2{font-size:39px}}

/* Featured Chief Physician Triptych Layout (3 Columns: Photo | Narrative | Authority Pillar) */
.featured-doctor {
  display: grid;
  grid-template-columns: 360px 1.15fr 300px;
  gap: 36px;
  background: #f7f9f4;
  border: 1px solid var(--line);
  margin-bottom: 45px;
  align-items: stretch;
  position: relative;
  box-shadow: 0 4px 24px rgba(25, 61, 53, 0.04);
  overflow: hidden;
}
.featured-doctor-photo {
  height: 100%;
  min-height: 500px;
  background: #dfe2d8;
  position: relative;
  overflow: hidden;
}
.featured-doctor-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 12%;
  filter: saturate(.88);
  transition: transform .6s cubic-bezier(.16, 1, .3, 1);
}
.featured-doctor:hover .featured-doctor-photo img {
  transform: scale(1.03);
}
.featured-doctor-content {
  padding: 38px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.featured-badge {
  display: inline-block;
  padding: 5px 12px;
  background: var(--ink);
  color: white;
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 15px;
  font-weight: 600;
  align-self: flex-start;
}
.featured-doctor-content h3 {
  font-family: var(--serif);
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: 1.15;
  margin-bottom: 8px;
  color: var(--ink);
}
.featured-doctor-title {
  font-size: 13px;
  color: var(--gold);
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 18px;
}
.featured-doctor-desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink);
  margin-bottom: 22px;
  max-width: none;
}
.featured-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 26px;
}
.featured-tags span {
  padding: 5px 12px;
  background: #ffffffa0;
  border: 1px solid var(--line);
  font-size: 11px;
  color: var(--ink);
  letter-spacing: .02em;
}
.featured-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
}

/* Col 3: Authority Pillar */
.featured-doctor-pillar {
  padding: 30px 28px 30px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 11px;
  border-left: 1px dashed rgba(25, 61, 53, 0.15);
  margin: 20px 0;
  padding-left: 28px;
}
.pillar-header {
  font-size: 10px;
  font-family: Arial, sans-serif;
  letter-spacing: .12em;
  color: var(--gold);
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 2px;
}
.pillar-metric-card {
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 11px 15px;
  border-radius: 3px;
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.pillar-metric-card:hover {
  border-color: var(--gold);
  transform: translateX(3px);
  box-shadow: 0 4px 12px rgba(25, 61, 53, 0.06);
}
.pillar-metric-top {
  display: flex;
  align-items: baseline;
  gap: 6px;
}
.pillar-metric-number {
  font-family: var(--serif);
  font-size: 20px;
  color: var(--ink);
  line-height: 1.1;
  font-weight: 600;
}
.pillar-metric-unit {
  font-size: 9px;
  font-family: Arial, sans-serif;
  letter-spacing: .08em;
  color: var(--gold);
  font-weight: 700;
  text-transform: uppercase;
}
.pillar-metric-label {
  display: block;
  font-size: 9.5px;
  font-family: Arial, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--forest);
  font-weight: 600;
  margin: 2px 0 1px 0;
}
.pillar-metric-sub {
  font-size: 10.5px;
  color: var(--muted);
  line-height: 1.4;
  margin: 0;
}

@media (max-width: 1200px) {
  .featured-doctor {
    grid-template-columns: 320px 1fr;
    gap: 30px;
  }
  .featured-doctor-content {
    padding: 30px 30px 10px 0;
  }
  .featured-doctor-pillar {
    grid-column: 1 / -1;
    border-left: none;
    border-top: 1px dashed rgba(25, 61, 53, 0.15);
    margin: 0 30px 30px 30px;
    padding: 24px 0 0 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }
}

@media (max-width: 900px) {
  .featured-doctor {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .featured-doctor-photo {
    height: 380px;
    min-height: auto;
  }
  .featured-doctor-content {
    padding: 30px;
  }
  .featured-doctor-pillar {
    margin: 0 30px 30px 30px;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 580px) {
  .featured-doctor-pillar {
    grid-template-columns: 1fr;
  }
}

/* Entry 1: Image Banner for Chief Doctor on Homepage */
.chief-doctor-banner {
  display: grid;
  grid-template-columns: 400px 1fr;
  gap: 45px;
  background: #f1f3ec;
  border: 1px solid var(--line);
  margin-bottom: 40px;
  text-decoration: none;
  color: inherit;
  transition: transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s, border-color .3s;
  overflow: hidden;
  position: relative;
}
.chief-doctor-banner:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(24,62,55,.12);
  border-color: var(--gold);
}
.chief-banner-image {
  position: relative;
  height: 440px;
  background: #dfe3d8;
  overflow: hidden;
}
.chief-banner-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 12%;
  filter: saturate(.85);
  transition: transform .6s cubic-bezier(.16,1,.3,1);
}
.chief-doctor-banner:hover .chief-banner-image img {
  transform: scale(1.04);
}
.chief-image-overlay {
  position: absolute;
  top: 18px;
  left: 18px;
  background: #183e37d9;
  color: var(--gold);
  padding: 6px 14px;
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 600;
  backdrop-filter: blur(4px);
  border: 1px solid #b9a17b60;
}
.chief-banner-info {
  padding: 35px 40px 35px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.chief-banner-tag {
  display: inline-block;
  font-size: 11px;
  letter-spacing: .14em;
  color: var(--gold);
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 8px;
}
.chief-banner-info h3 {
  font-family: var(--serif);
  font-size: clamp(30px, 3.2vw, 42px);
  line-height: 1.15;
  color: var(--ink);
  margin-bottom: 6px;
}
.chief-banner-subtitle {
  font-size: 13px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 500;
  margin-bottom: 18px;
}
.chief-banner-desc {
  font-size: 14px;
  line-height: 1.75;
  color: var(--ink);
  margin-bottom: 22px;
  max-width: 560px;
}
.chief-banner-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 28px;
}
.chief-banner-points span {
  padding: 6px 14px;
  background: #ffffffb0;
  border: 1px solid var(--line);
  font-size: 11px;
  color: var(--ink);
}
.chief-banner-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--sans);
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--ink);
}
.chief-banner-cta b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  background: var(--ink);
  color: white;
  border-radius: 50%;
  font-size: 13px;
  transition: transform .3s;
}
.chief-doctor-banner:hover .chief-banner-cta b {
  transform: translate(3px, -3px);
  background: var(--gold);
}

/* Entry 2: Floating Avatar / Icon Widget on Homepage */
.floating-doctor-widget {
  position: fixed;
  right: 28px;
  bottom: 32px;
  z-index: 998;
  display: flex;
  align-items: center;
  gap: 14px;
  background: #f7f4eee8;
  backdrop-filter: blur(10px);
  border: 1.5px solid var(--gold);
  border-radius: 40px;
  padding: 6px 18px 6px 6px;
  box-shadow: 0 10px 30px rgba(24,62,55,.18);
  text-decoration: none;
  color: var(--ink);
  transition: transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s, background-color .3s;
  cursor: pointer;
}
.floating-doctor-widget:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 14px 38px rgba(24,62,55,.26);
  background: #ffffff;
  border-color: var(--ink);
}
.floating-avatar {
  position: relative;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid var(--gold);
  flex-shrink: 0;
  background: #dfe3d8;
}
.floating-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 15%;
  filter: saturate(.85);
}
.floating-pulse {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 12px;
  height: 12px;
  background: #2cb67d;
  border: 2px solid white;
  border-radius: 50%;
  box-shadow: 0 0 8px #2cb67d;
  animation: pulse-ring 2s infinite;
}
@keyframes pulse-ring {
  0% { box-shadow: 0 0 0 0 rgba(44,182,125,.7); }
  70% { box-shadow: 0 0 0 8px rgba(44,182,125,0); }
  100% { box-shadow: 0 0 0 0 rgba(44,182,125,0); }
}
.floating-info {
  display: flex;
  flex-direction: column;
}
.floating-badge {
  font-size: 9px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 700;
}
.floating-name {
  font-family: var(--serif);
  font-size: 15px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.2;
}
.floating-sub {
  font-size: 10px;
  color: var(--muted);
}
.floating-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background: var(--ink);
  color: white;
  border-radius: 50%;
  font-size: 10px;
  margin-left: 4px;
  transition: transform .3s;
}
.floating-doctor-widget:hover .floating-arrow {
  background: var(--gold);
  transform: translate(2px, -2px);
}

@media (max-width: 900px) {
  .chief-doctor-banner {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .chief-banner-image {
    height: 350px;
  }
  .chief-banner-info {
    padding: 28px 24px;
  }
  .floating-doctor-widget {
    right: 16px;
    bottom: 80px;
    padding: 5px 14px 5px 5px;
  }
  .floating-avatar {
    width: 46px;
    height: 46px;
  }
  .floating-sub {
    display: none;
  }
}


/* Legacy compatibility aliases for floating widgets */
.floating-doctor-vertical { display: none !important; }

/* Site-wide Header Language Selector */
.lang-selector {
  display: inline-flex;
  align-items: center;
  position: relative;
  flex-shrink: 0;
}
.lang-select {
  appearance: none;
  -webkit-appearance: none;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid var(--line);
  border-radius: 2px;
  padding: 8px 26px 8px 10px;
  font-family: inherit;
  font-size: 11px;
  color: var(--ink);
  letter-spacing: .02em;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%2369716A' d='M0 0l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 9px center;
  background-size: 7px;
  transition: border-color .2s, color .2s, background-color .2s;
}
.lang-select:hover, .lang-select:focus {
  border-color: var(--gold);
  color: var(--ink);
  background-color: #ffffff;
  outline: none;
}
@media (max-width: 1050px) {
  .lang-select {
    padding: 6px 22px 6px 8px;
    font-size: 10px;
    background-position: right 7px center;
  }
}
@media (max-width: 760px) {
  .lang-select {
    padding: 5px 20px 5px 6px;
    font-size: 10px;
    background-position: right 6px center;
  }
}

/* CAR-T Clinical Stage Pathway Styles */
.cart-timeline{display:grid;gap:22px;margin:30px 0}
.cart-stage-card{border:1px solid var(--line);background:#ffffff;padding:26px 30px;position:relative;transition:transform .2s,border-color .2s}
.cart-stage-card:hover{border-color:var(--gold)}
.cart-stage-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}
.cart-stage-title{font-family:var(--serif);font-size:22px;color:var(--ink);margin:0}
.cart-stage-tag{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700}
.cart-day-list{display:grid;gap:12px;margin:16px 0}
.cart-day-item{display:grid;grid-template-columns:100px 1fr;gap:18px;font-size:13.5px;align-items:baseline}
.cart-day-badge{font-family:var(--serif);font-weight:700;color:var(--ink);font-size:14px}
.cart-options{display:grid;gap:10px;margin-top:16px;padding:16px 20px;background:#f7f5ed;border-left:3px solid var(--gold);font-size:13.5px}
.cart-options strong{color:var(--ink);display:block;margin-bottom:4px}
@media(max-width:760px){
.cart-stage-card{padding:20px 18px}
.cart-day-item{grid-template-columns:1fr;gap:4px}
}

/* RealSelf Rating & Trust Badge */
.realself-badge{display:inline-flex;align-items:center;gap:10px;padding:6px 14px;background:#f2f5ec;border:1px solid var(--line);font-size:11.5px;color:var(--ink);margin-bottom:18px;font-family:Arial,sans-serif}
.realself-badge strong{color:#1a6b47;font-weight:700}
.realself-badge span{color:var(--muted)}

/* 7-Step Cross-Border Journey & 6 Guarantees */
.journey-7steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin:32px 0}
.journey-step-card{background:#ffffff;border:1px solid var(--line);padding:24px;position:relative;transition:transform .2s,border-color .2s}
.journey-step-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.journey-step-num{font-family:var(--serif);font-size:26px;color:var(--gold);line-height:1;margin-bottom:10px;font-weight:700}
.journey-step-card h3{font-family:var(--serif);font-size:17px;color:var(--ink);margin:0 0 8px}
.journey-step-card p{font-size:13px;color:var(--muted);line-height:1.6;margin:0}
.guarantee-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:25px 0 45px}
.guarantee-item{background:#f7f5ed;border:1px solid var(--line);padding:16px 12px;text-align:center}
.guarantee-item strong{display:block;font-size:13px;color:var(--ink);margin-bottom:4px}
.guarantee-item span{font-size:10px;color:var(--gold);letter-spacing:.06em;text-transform:uppercase}

/* 6-Fold Safety Defense Grid */
.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}
.safety-card{background:#ffffff;border:1px solid var(--line);padding:22px}
.safety-card strong{display:block;font-size:15px;color:var(--ink);margin-bottom:6px;font-family:var(--serif)}
.safety-card p{font-size:12.5px;color:var(--muted);margin:0;line-height:1.55}

/* Unified Floating Capsule Widget: WhatsApp + Dr. Liping Zhu (Combined & Sticky On Scroll) */
/* Unified Floating Capsule Widget: WhatsApp + Dr. Liping Zhu (Luxury Architectural Medical Concierge) */
.floating-unified-widget {
  position: fixed !important;
  right: 28px !important;
  bottom: 35px !important;
  z-index: 99999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  width: 90px;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1px solid rgba(166, 140, 100, 0.4);
  border-radius: 45px;
  box-shadow: 
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 16px 42px rgba(25, 61, 53, 0.14),
    0 2px 8px rgba(0, 0, 0, 0.03);
  padding: 14px 6px 15px;
  gap: 9px;
  transition: transform .35s cubic-bezier(.16, 1, .3, 1), box-shadow .35s, border-color .3s;
  cursor: default;
}
.floating-unified-widget:hover {
  transform: translateY(-4px);
  box-shadow: 
    inset 0 1px 0 rgba(255, 255, 255, 1),
    0 22px 52px rgba(25, 61, 53, 0.22),
    0 4px 12px rgba(0, 0, 0, 0.06);
  border-color: var(--gold);
}

.unified-wa-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  text-decoration: none;
  cursor: pointer;
  width: 100%;
}
.unified-wa-circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #25D366;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.4);
  transition: transform .25s ease, box-shadow .25s ease;
}
.unified-wa-section:hover .unified-wa-circle {
  transform: scale(1.08);
  box-shadow: 0 6px 18px rgba(37, 211, 102, 0.55);
}
.unified-wa-circle svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}
.unified-wa-label {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .1em;
  color: #128C7E;
  text-transform: uppercase;
  line-height: 1;
}

.unified-widget-divider {
  width: 36px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(166, 140, 100, 0.5), transparent);
  margin: 1px 0;
}

.unified-doc-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  text-decoration: none;
  cursor: pointer;
  width: 100%;
  color: var(--ink);
}
.unified-doc-avatar {
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  overflow: visible;
  background: #dfe3d8;
  flex-shrink: 0;
  transition: transform .25s ease;
}
.unified-doc-section:hover .unified-doc-avatar {
  transform: scale(1.04);
}
.unified-doc-avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  object-position: 50% 15%;
  filter: saturate(.88) contrast(1.02);
  display: block;
  box-shadow: 
    0 0 0 1.5px #ffffff,
    0 0 0 2.5px var(--gold),
    0 3px 8px rgba(25, 61, 53, 0.1);
}
.unified-doc-pulse {
  position: absolute;
  bottom: 1px;
  right: 2px;
  width: 8px;
  height: 8px;
  background: #20a065;
  border: 1.5px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 5px rgba(32, 160, 101, 0.7);
}
.unified-doc-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5px;
}
.unified-doc-kicker {
  font-size: 7.5px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 700;
  line-height: 1;
}
.unified-doc-name {
  font-family: var(--serif);
  font-size: 13.5px;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.15;
}
.unified-doc-sub {
  font-size: 8.5px;
  letter-spacing: .02em;
  color: var(--muted);
  line-height: 1.1;
}
.unified-doc-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background: var(--ink);
  border: 1px solid var(--ink);
  color: #ffffff;
  border-radius: 50%;
  font-size: 10px;
  margin-top: 2px;
  transition: transform .25s ease, background .25s ease, border-color .25s ease;
}
.unified-doc-section:hover .unified-doc-arrow {
  background: var(--gold);
  border-color: var(--gold);
  transform: translateY(-1.5px);
}

@media(max-width:960px){
.guarantee-bar{grid-template-columns:repeat(3,1fr)}
.safety-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .floating-unified-widget {
    right: 14px !important;
    bottom: 82px !important;
    width: 68px !important;
    padding: 8px 4px 10px !important;
    gap: 6px !important;
    border-radius: 36px !important;
  }
  .unified-wa-circle {
    width: 38px;
    height: 38px;
  }
  .unified-wa-circle svg {
    width: 20px;
    height: 20px;
  }
  .unified-wa-label {
    display: none;
  }
  .unified-widget-divider {
    width: 36px;
  }
  .unified-doc-avatar {
    width: 42px;
    height: 42px;
  }
  .unified-doc-name {
    font-size: 11.5px;
  }
  .unified-doc-sub {
    display: none;
  }
  .unified-doc-arrow {
    width: 16px;
    height: 16px;
    font-size: 8px;
  }
  .guarantee-bar{grid-template-columns:repeat(2,1fr)}
}


/* Enriched Doctor Cards */
.doctor-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 9px;
  font-family: Arial, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 6px;
}
.doctor-info h3 {
  font-family: var(--serif);
  font-size: 21px;
  line-height: 1.2;
  margin: 0 0 4px 0;
  color: var(--ink);
}
.doctor-role {
  font-size: 12px !important;
  color: var(--forest) !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.3 !important;
}
.doctor-credential {
  font-size: 11px !important;
  color: var(--muted) !important;
  line-height: 1.4 !important;
  margin: 0 0 10px 0 !important;
}
.doctor-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 6px;
}
.doctor-tags span {
  font-size: 10px;
  padding: 3px 8px;
  background: rgba(25, 61, 53, 0.05);
  border: 1px solid rgba(25, 61, 53, 0.12);
  border-radius: 2px;
  color: var(--ink);
  letter-spacing: .02em;
  white-space: nowrap;
}


/* Enhanced Specialty List */
.specialty-list li {
  font-family: inherit !important;
  font-size: inherit !important;
  padding: 18px 0 !important;
  border-bottom: 1px solid var(--line) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  position: relative !important;
}
.specialty-list li strong {
  font-family: var(--serif) !important;
  font-size: 20px !important;
  color: var(--ink) !important;
  font-weight: 500 !important;
  padding-right: 32px !important;
  line-height: 1.3 !important;
}
.specialty-list li p {
  font-size: 13px !important;
  color: var(--muted) !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  padding-right: 32px !important;
}
.specialty-list li span {
  position: absolute !important;
  top: 20px !important;
  right: 0 !important;
  font-size: 16px !important;
  color: var(--gold) !important;
}


/* ========================================================
   Interactive Online Location Map Module (Replacing Place Image)
   ======================================================== */
.place-map-module {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.map-location-tabs {
  display: flex;
  align-items: center;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: none;
}
.map-location-tabs::-webkit-scrollbar {
  display: none;
}
.map-pill {
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 500;
  border-radius: 4px;
  border: 1px solid rgba(25, 61, 53, 0.15);
  background: #ffffff;
  color: #334155;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s ease;
}
.map-pill:hover {
  background: #f1f5f9;
  color: #0f172a;
}
.map-pill.active {
  background: #193d35;
  color: #ffffff;
  border-color: #193d35;
  box-shadow: 0 2px 6px rgba(25, 61, 53, 0.2);
}

.interactive-map-frame {
  position: relative;
  width: 100%;
  height: 480px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #cbd5e1;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  background: #e2e8f0;
}
.hospital-leaflet-map {
  width: 100%;
  height: 100%;
  z-index: 1;
}

/* Floating Info Card (Google Maps style matching Image 3) */
.map-floating-card {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 999;
  background: #ffffff;
  padding: 14px 16px;
  border-radius: 8px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.14);
  border: 1px solid rgba(0, 0, 0, 0.08);
  max-width: 290px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 6px;
}
.card-title-group {
  display: flex;
  flex-direction: column;
}
.card-title {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.25;
}
.card-cn-title {
  font-size: 11px;
  color: #64748b;
  margin-top: 1px;
}
.card-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}
.card-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  text-decoration: none;
  transition: transform 0.15s ease;
}
.external-btn {
  background: #f1f5f9;
  color: #475569;
}
.external-btn svg {
  width: 15px;
  height: 15px;
  fill: currentColor;
}
.directions-btn {
  background: #2563eb;
  color: #ffffff;
}
.directions-btn svg {
  width: 16px;
  height: 16px;
  fill: #ffffff;
}
.card-action-btn:hover {
  transform: scale(1.08);
}
.card-address {
  font-size: 11px;
  color: #475569;
  line-height: 1.4;
  margin: 0 0 6px 0;
}
.card-address span {
  color: #193d35;
  font-weight: 600;
}
.card-rating {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
}
.rating-score {
  font-weight: 700;
  color: #0f172a;
}
.rating-stars {
  color: #eab308;
  font-size: 10px;
}
.rating-count {
  color: #2563eb;
}
.rating-info-badge {
  color: #64748b;
  font-size: 10px;
  margin-left: 2px;
}

/* Red Pin Marker with Radar Wave */
.custom-red-pin-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.red-marker-pin svg {
  width: 32px;
  height: 38px;
  filter: drop-shadow(0 3px 6px rgba(0,0,0,0.3));
}
.pulse-ring {
  position: absolute;
  top: 19px;
  left: 6px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(229, 62, 62, 0.4);
  animation: mapPulse 2s infinite ease-out;
  z-index: -1;
}
@keyframes mapPulse {
  0% { transform: scale(0.5); opacity: 1; }
  100% { transform: scale(2.6); opacity: 0; }
}
.marker-label {
  background: #0f172a;
  color: #ffffff;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 4px;
  white-space: nowrap;
  box-shadow: 0 2px 6px rgba(0,0,0,0.25);
  margin-top: -4px;
}

/* Bottom Controls */
.map-bottom-controls {
  position: absolute;
  bottom: 12px;
  left: 12px;
  right: 12px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  z-index: 999;
  pointer-events: none;
}
.map-layer-switch {
  pointer-events: auto;
  position: relative;
  width: 44px;
  height: 44px;
  border-radius: 6px;
  overflow: hidden;
  border: 2px solid #ffffff;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  cursor: pointer;
}
.map-layer-switch img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.map-layer-switch span {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0,0,0,0.65);
  color: #ffffff;
  font-size: 7px;
  text-align: center;
  padding: 1px 0;
  text-transform: uppercase;
}
.map-inquiry-pill {
  pointer-events: auto;
  background: #f43f5e;
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  box-shadow: 0 4px 14px rgba(244, 63, 94, 0.4);
  cursor: pointer;
  transition: transform 0.2s ease, background 0.2s ease;
}
.map-inquiry-pill:hover {
  background: #e11d48;
  transform: translateY(-2px);
}
@media (max-width: 800px) {
  .interactive-map-frame {
    height: 380px;
  }
  .map-floating-card {
    max-width: 250px;
    padding: 10px 12px;
  }
}

/* ==========================================================================
   Doctor Profile Meta & Credentials / Honors Module (图二 & 图三)
   ========================================================================== */
.doctor-hero-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 16px 0 14px;
  font-size: 13px;
  color: #4a5568;
}
.doctor-rating-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 700;
  color: var(--ink);
}
.doctor-rating-stars {
  color: #d02020;
  letter-spacing: 1.5px;
}
.doctor-meta-divider {
  color: #cbd5e1;
}
.doctor-verified-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--forest);
  font-weight: 600;
}
.doctor-lead-text {
  font-size: 14.5px;
  font-weight: 600;
  color: var(--forest);
  margin-bottom: 8px;
  line-height: 1.5;
}
.doctor-focus-text {
  font-size: 13px;
  color: #4a5568;
  margin-bottom: 22px;
  line-height: 1.6;
}
.doctor-focus-text strong {
  color: var(--ink);
}
.doctor-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
.doctor-hero-actions .btn.outline {
  background: transparent;
  color: var(--forest);
  border: 1px solid var(--forest);
}
.doctor-hero-actions .btn.outline:hover {
  background: var(--forest);
  color: #ffffff;
}

/* Credentials & Honors Section (资质荣誉 - 图三) */
.credentials-section {
  padding: 55px 9% 65px;
  background: #f7f8f4;
  border-top: 1px solid var(--line);
}
.credentials-section-header {
  margin-bottom: 28px;
}
.credentials-section-header .eyebrow {
  margin-bottom: 6px;
}
.credentials-section-header h2 {
  font-size: clamp(26px, 3.2vw, 38px);
  color: var(--forest);
  margin: 0;
  font-family: var(--serif);
}
.credentials-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.credential-card {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 14px;
  padding: 16px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.credential-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.05);
}
.credential-check {
  color: #d02020;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  flex-shrink: 0;
}
.credential-text {
  font-size: 13.5px;
  color: var(--ink);
  line-height: 1.5;
  font-weight: 500;
}
@media (max-width: 768px) {
  .credentials-grid {
    grid-template-columns: 1fr;
  }
  .credentials-section {
    padding: 35px 7% 45px;
  }
}

/* ==========================================================================
   High-End Doctor Master Trust & Luxury Aesthetics Modules
   ========================================================================== */

/* 1. Hero Luxury Badges & Limit Notice */
.hero-luxury-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(25, 61, 53, 0.06);
  border: 1px solid rgba(197, 168, 128, 0.4);
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  color: var(--forest);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.hero-luxury-badge span {
  color: var(--gold);
}
.surgical-limit-notice {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #f0f4ee;
  border-left: 3px solid var(--forest);
  padding: 10px 14px;
  margin: 14px 0 18px;
  border-radius: 0 8px 8px 0;
  font-size: 12px;
  color: var(--forest);
  line-height: 1.45;
}
.surgical-limit-notice strong {
  color: var(--forest);
  white-space: nowrap;
}

/* 2. Clinical Metrics Dashboard (4-Column) */
.metrics-section {
  padding: 50px 9%;
  background: #ffffff;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.metric-box {
  padding: 24px 20px;
  background: #fdfdfc;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 14px;
  text-align: center;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  position: relative;
  overflow: hidden;
}
.metric-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--gold), var(--forest));
  opacity: 0.7;
}
.metric-box:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(25, 61, 53, 0.07);
  border-color: rgba(197, 168, 128, 0.4);
}
.metric-number {
  font-family: var(--serif);
  font-size: clamp(34px, 3.2vw, 44px);
  font-weight: 700;
  color: var(--forest);
  line-height: 1;
  margin-bottom: 8px;
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 2px;
}
.metric-number sup {
  font-size: 20px;
  color: var(--gold);
}
.metric-title {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 4px;
  letter-spacing: 0.02em;
}
.metric-desc {
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.4;
  margin: 0;
}

/* 3. Signature Surgical Methodologies */
.techniques-section {
  padding: 70px 9%;
  background: #f7f8f4;
  border-top: 1px solid var(--line);
}
.section-head-luxury {
  max-width: 800px;
  margin-bottom: 40px;
}
.section-head-luxury h2 {
  font-size: clamp(28px, 3.2vw, 42px);
  color: var(--forest);
  margin: 8px 0 14px;
  font-family: var(--serif);
  line-height: 1.15;
}
.section-head-luxury p.lead {
  font-size: 15px;
  color: #4a5568;
  line-height: 1.6;
  margin: 0;
}
.technique-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.tech-card {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 16px;
  padding: 30px 26px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  position: relative;
}
.tech-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(25, 61, 53, 0.08);
}
.tech-pill {
  align-self: flex-start;
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(197, 168, 128, 0.12);
  padding: 4px 10px;
  border-radius: 999px;
  font-weight: 700;
  margin-bottom: 16px;
}
.tech-card h3 {
  font-family: var(--serif);
  font-size: 22px;
  color: var(--forest);
  margin-bottom: 12px;
  line-height: 1.25;
}
.tech-card p {
  font-size: 13px;
  color: #4a5568;
  line-height: 1.6;
  margin-bottom: 20px;
}
.tech-spec-list {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
  border-top: 1px solid #edf2e7;
  padding-top: 14px;
}
.tech-spec-list li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 11.5px;
  padding: 5px 0;
  color: var(--muted);
}
.tech-spec-list li strong {
  color: var(--ink);
  font-weight: 600;
}
.tech-card .text-link {
  font-size: 12px;
  font-weight: 700;
  color: var(--forest);
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

/* 4. Hospital Grade Safety Shield */
.safety-shield-section {
  padding: 70px 9%;
  background: #193d35;
  color: #ffffff;
  position: relative;
  overflow: hidden;
}
.safety-shield-section .eyebrow {
  color: var(--gold);
}
.safety-shield-section h2 {
  color: #ffffff;
  font-size: clamp(28px, 3.2vw, 42px);
  margin: 8px 0 16px;
  font-family: var(--serif);
}
.safety-shield-section p.lead {
  color: #c7d5cf;
  font-size: 14.5px;
  max-width: 720px;
  margin-bottom: 40px;
  line-height: 1.6;
}
.safety-shield-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.safety-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  padding: 24px 20px;
  backdrop-filter: blur(10px);
  transition: transform 0.2s ease, background 0.2s ease;
}
.safety-card:hover {
  transform: translateY(-3px);
  background: rgba(255, 255, 255, 0.08);
}
.safety-icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(197, 168, 128, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  color: var(--gold);
  font-size: 20px;
}
.safety-card h4 {
  font-size: 16px;
  font-family: var(--serif);
  color: #ffffff;
  margin-bottom: 8px;
}
.safety-card p {
  font-size: 12px;
  color: #b0c2ba;
  line-height: 1.55;
  margin: 0;
}

/* 5. International Patient Pathway (Timeline) */
.pathway-section {
  padding: 70px 9%;
  background: #ffffff;
  border-top: 1px solid var(--line);
}
.pathway-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin-top: 36px;
  position: relative;
}
.pathway-step {
  background: #fdfdfc;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 12px;
  padding: 20px 16px;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: transform 0.2s ease, border-color 0.2s ease;
}
.pathway-step:hover {
  transform: translateY(-2px);
  border-color: var(--gold);
}
.pathway-num {
  font-family: var(--serif);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--gold);
  margin-bottom: 8px;
  text-transform: uppercase;
}
.pathway-step h4 {
  font-size: 14px;
  color: var(--forest);
  margin-bottom: 6px;
  font-weight: 700;
}
.pathway-step p {
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.5;
  margin: 0;
}

/* Responsive Overrides */
@media (max-width: 1024px) {
  .metrics-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .technique-cards-grid {
    grid-template-columns: 1fr;
  }
  .safety-shield-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .pathway-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .metrics-grid {
    grid-template-columns: 1fr;
  }
  .safety-shield-grid {
    grid-template-columns: 1fr;
  }
  .metrics-section, .techniques-section, .safety-shield-section, .pathway-section {
    padding: 40px 7%;
  }
}



/* ==========================================================================
   Uncrowded Hero Meta & Redesigned Philosophy Module
   ========================================================================== */
.doctor-meta-grid {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 18px 0 14px;
}
.doctor-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  font-size: 13px;
  color: #4a5568;
}
.doctor-meta-row .doctor-rating-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 700;
  color: var(--ink);
}
.doctor-meta-row .doctor-rating-stars {
  color: #d02020;
  letter-spacing: 1.5px;
}
.doctor-meta-row .meta-divider {
  color: #cbd5e1;
}
.doctor-meta-row .meta-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 600;
  color: var(--forest);
}
.surgical-cap-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #f2f5ef;
  border: 1px solid rgba(25, 61, 53, 0.12);
  border-radius: 6px;
  padding: 6px 14px;
  font-size: 12px;
  color: var(--forest);
  margin-top: 4px;
  margin-bottom: 8px;
  width: fit-content;
}
.surgical-cap-pill .cap-dot {
  color: var(--gold);
  font-size: 10px;
}

/* Redesigned Philosophy & Clinical Ethics Section (图二重构) */
.philosophy-luxury-section {
  padding: 75px 9% 80px;
  background: #f7f8f4;
  border-top: 1px solid var(--line);
}
.philosophy-header {
  max-width: 800px;
  margin-bottom: 36px;
}
.philosophy-header h2 {
  font-size: clamp(30px, 3.5vw, 44px);
  color: var(--forest);
  margin: 10px 0 0;
  font-family: var(--serif);
  line-height: 1.15;
}
.philosophy-quote-box {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-left: 4px solid var(--gold);
  border-radius: 12px;
  padding: 30px 36px;
  margin-bottom: 36px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03);
}
.philosophy-quote-text {
  font-family: var(--serif);
  font-size: clamp(18px, 1.8vw, 22px);
  color: var(--forest);
  line-height: 1.6;
  font-style: italic;
  margin-bottom: 14px;
}
.philosophy-quote-author {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
}
.philosophy-quote-author span {
  color: var(--gold);
}
.philosophy-pillars-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.philosophy-pillar-card {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 14px;
  padding: 26px 22px;
  display: flex;
  flex-direction: column;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.philosophy-pillar-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 22px rgba(25, 61, 53, 0.06);
}
.pillar-num {
  font-family: var(--serif);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: var(--gold);
  margin-bottom: 10px;
}
.philosophy-pillar-card h4 {
  font-size: 17px;
  font-family: var(--serif);
  color: var(--forest);
  margin-bottom: 10px;
  line-height: 1.3;
}
.philosophy-pillar-card p {
  font-size: 12.5px;
  color: #4a5568;
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 900px) {
  .philosophy-pillars-grid {
    grid-template-columns: 1fr;
  }
  .philosophy-luxury-section {
    padding: 45px 7%;
  }
}

/* ========================================================
   Homepage Luxury Upgrades: Trust Bar, Signature Matrix, Safety
   ======================================================== */

/* 1. Hero Rating Micro-Badge */
.hero-rating-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(25, 61, 53, 0.05);
  border: 1px solid rgba(25, 61, 53, 0.12);
  border-radius: 20px;
  padding: 6px 14px;
  font-size: 11px;
  color: var(--ink);
  margin-bottom: 20px;
}
.hero-rating-badge .stars {
  color: #d4a359;
  letter-spacing: 2px;
  font-size: 11px;
}
.hero-rating-badge .score {
  font-weight: 700;
  color: var(--ink);
}
.hero-rating-badge .divider {
  color: var(--line);
}
.hero-rating-badge .note {
  color: var(--muted);
  font-size: 10px;
  letter-spacing: .04em;
}

/* 2. Global Trust Anchors Bar (Below Hero) */
.hero-trust-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: var(--line);
  margin: 0 5%;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.hero-trust-card {
  background: #fbf9f5;
  padding: 24px 22px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  transition: background .25s ease;
}
.hero-trust-card:hover {
  background: #ffffff;
}
.hero-trust-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(25, 61, 53, 0.06);
  border: 1px solid rgba(166, 140, 100, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gold);
  font-size: 14px;
  flex-shrink: 0;
  margin-top: 2px;
}
.hero-trust-info {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.hero-trust-info strong {
  font-family: var(--serif);
  font-size: 15px;
  color: var(--ink);
  line-height: 1.25;
}
.hero-trust-info span {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.45;
}

/* 3. Signature Procedures 6-Grid & Tags */
.procedure-badge {
  display: inline-block;
  font-size: 9px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 600;
  margin-bottom: 4px;
}
.procedure-highlight-tag {
  position: absolute;
  top: 14px;
  right: 14px;
  background: rgba(25, 61, 53, 0.85);
  backdrop-filter: blur(4px);
  color: #fff;
  font-size: 9px;
  letter-spacing: .08em;
  padding: 4px 10px;
  border-radius: 2px;
  border: 1px solid rgba(166, 140, 100, 0.4);
}
.procedure-meta-strip {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 10px;
  margin-top: 12px;
  border-top: 1px dashed var(--line);
  font-size: 10px;
  color: var(--muted);
}
.procedure-meta-strip span.specialist {
  color: var(--forest);
  font-weight: 600;
}

/* 4. Dedicated Hospital Safety & Standards Section */
.home-safety {
  background: #14302a;
  color: #f6f3ed;
  padding: 95px 7%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.home-safety .eyebrow {
  color: var(--gold);
}
.home-safety .eyebrow .line {
  background: var(--gold);
}
.home-safety h2 {
  color: #ffffff;
}
.home-safety em {
  color: #c9b9a4;
}
.home-safety p {
  color: #b7c2b5;
}
.home-safety-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 48px;
}
.home-safety-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  padding: 28px 22px;
  display: flex;
  flex-direction: column;
  transition: transform .25s ease, background .25s ease, border-color .25s ease;
}
.home-safety-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.07);
  border-color: var(--gold);
}
.home-safety-card-num {
  font-family: var(--serif);
  font-size: 13px;
  letter-spacing: .12em;
  color: var(--gold);
  margin-bottom: 12px;
  font-weight: 700;
}
.home-safety-card h3 {
  font-size: 18px;
  color: #ffffff;
  margin-bottom: 10px;
  line-height: 1.25;
}
.home-safety-card p {
  font-size: 12px;
  color: #b4c2b2;
  line-height: 1.6;
  margin-bottom: 18px;
  flex-grow: 1;
}
.home-safety-metric {
  font-size: 10.5px;
  padding: 6px 10px;
  background: rgba(166, 140, 100, 0.15);
  border: 1px solid rgba(166, 140, 100, 0.35);
  color: #e5d8c3;
  border-radius: 4px;
  width: fit-content;
  letter-spacing: .02em;
}
.safety-trust-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  justify-content: center;
  margin-top: 45px;
  padding-top: 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.safety-trust-pills span {
  font-size: 11px;
  letter-spacing: .08em;
  color: #c9b9a4;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.safety-trust-pills span::before {
  content: '✓';
  color: var(--gold);
  font-weight: bold;
}

/* 5. Doctor Team Collective Strip */
.doctor-collective-strip {
  background: #f0f3eb;
  border: 1px solid var(--line);
  padding: 16px 24px;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 15px;
}
.doctor-collective-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.doctor-collective-title strong {
  font-family: var(--serif);
  font-size: 16px;
  color: var(--ink);
}
.doctor-collective-title span {
  font-size: 11px;
  color: var(--gold);
  letter-spacing: .06em;
  text-transform: uppercase;
  font-weight: 600;
}
.doctor-collective-badges {
  display: flex;
  gap: 18px;
  font-size: 11px;
  color: var(--muted);
}
.doctor-collective-badges span {
  display: flex;
  align-items: center;
  gap: 6px;
}
.doctor-collective-badges span b {
  color: var(--ink);
  font-family: var(--serif);
  font-size: 14px;
}

/* 6. Concierge 5-Step Visual Pathway (Timeline Strip) */
.journey-pathway-strip {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 8px;
  margin-top: 30px;
  margin-bottom: 20px;
  padding-top: 25px;
  border-top: 1px dashed #607166;
}
.journey-visa-highlight {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: rgba(184, 150, 106, 0.15);
  border: 1px solid rgba(184, 150, 106, 0.4);
  border-radius: 4px;
  padding: 8px 14px;
  margin-top: 16px;
  color: #f7f6f2;
  font-size: 11px;
  text-decoration: none;
  transition: all 0.2s ease;
}
.journey-visa-highlight:hover {
  background: rgba(184, 150, 106, 0.25);
  border-color: var(--gold);
}
.journey-visa-highlight strong {
  color: var(--gold);
  font-weight: 700;
  letter-spacing: .05em;
}
.journey-step-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 6px;
  padding: 14px 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.journey-step-num {
  font-family: var(--serif);
  font-size: 10px;
  color: var(--gold);
  font-weight: 700;
  letter-spacing: .1em;
}
.journey-step-card strong {
  font-size: 12px;
  color: #fff;
  line-height: 1.3;
}
.journey-step-card span {
  font-size: 10px;
  color: #abb6a5;
  line-height: 1.4;
}

@media (max-width: 1050px) {
  .hero-trust-bar {
    grid-template-columns: repeat(2, 1fr);
  }
  .home-safety-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .journey-pathway-strip {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 760px) {
  .hero-trust-bar {
    grid-template-columns: 1fr;
    margin: 0;
  }
  .home-safety-grid {
    grid-template-columns: 1fr;
  }
  .journey-pathway-strip {
    grid-template-columns: 1fr;
  }
  .doctor-collective-strip {
    flex-direction: column;
    align-items: flex-start;
  }
  .doctor-collective-badges {
    flex-direction: column;
    gap: 8px;
  }
}

/* ========================================================
   Hospital Official Qualifications: Editorial Gallery Layout (方案A重构版)
   ======================================================== */
.qualifications-section {
  background: #f7f8f4;
  border-bottom: 1px solid var(--line);
  padding: 85px 7%;
}
.qualifications-section .section-head {
  text-align: left;
  margin-bottom: 50px;
}
.qualifications-section .section-head h2 {
  font-family: var(--serif);
  font-size: clamp(28px, 3.2vw, 42px);
  color: var(--ink);
  line-height: 1.15;
  letter-spacing: .02em;
  margin: 0;
  text-transform: uppercase;
}

/* Gallery Showcase */
.qualifications-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 45px;
  max-width: 1080px;
  margin: 0 auto 50px;
}
.qual-plaque {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: transform .35s ease;
}
.qual-plaque:hover {
  transform: translateY(-5px);
}
.cert-frame {
  position: relative;
  background: #ffffff;
  padding: 0;
  border-radius: 6px;
  box-shadow: 0 10px 30px rgba(25, 61, 53, 0.08), 0 2px 6px rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(166, 140, 100, 0.35);
  cursor: pointer;
  width: 100%;
  transition: box-shadow .35s ease, border-color .35s ease;
  overflow: hidden;
}
.qual-plaque:hover .cert-frame {
  box-shadow: 0 20px 50px rgba(25, 61, 53, 0.15);
  border-color: var(--gold);
}
.cert-frame img {
  width: 100%;
  height: auto;
  aspect-ratio: 902 / 630;
  object-fit: cover;
  display: block;
  border-radius: 5px;
  transition: transform .45s ease;
}
.qual-plaque:hover .cert-frame img {
  transform: scale(1.015);
}
.cert-zoom-pill {
  position: absolute;
  bottom: 16px;
  right: 16px;
  background: rgba(25, 61, 53, 0.92);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: #fff;
  font-size: 9.5px;
  letter-spacing: .08em;
  padding: 5px 12px;
  border-radius: 20px;
  border: 1px solid rgba(166, 140, 100, 0.5);
  display: flex;
  align-items: center;
  gap: 5px;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}
.cert-frame:hover .cert-zoom-pill {
  opacity: 1;
  transform: translateY(0);
}

.cert-meta {
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  max-width: 460px;
}
.cert-meta h3 {
  font-family: var(--serif);
  font-size: 21px;
  color: var(--ink);
  line-height: 1.25;
  margin: 0;
}
.cert-authority-badge {
  font-size: 10px;
  letter-spacing: .12em;
  color: var(--gold);
  font-weight: 700;
  text-transform: uppercase;
}
.cert-details-line {
  font-size: 12px;
  color: #4a5568;
  line-height: 1.6;
  margin: 0;
}

/* Bottom Statement & Trust Pills */
.qualifications-statement-box {
  max-width: 860px;
  margin: 0 auto;
  padding-top: 35px;
  border-top: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}
.qualifications-statement-box p {
  font-size: 13.5px;
  color: #374151;
  line-height: 1.75;
  max-width: 780px;
  margin: 0;
}
.qual-pillars-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-top: 4px;
}
.qual-pillars-row span {
  font-size: 11px;
  letter-spacing: .06em;
  color: var(--forest);
  background: #ffffff;
  border: 1px solid rgba(25, 61, 53, 0.14);
  border-radius: 20px;
  padding: 6px 16px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}
.qual-pillars-row span::before {
  content: '✓';
  color: var(--gold);
  font-weight: 700;
}

@media (max-width: 960px) {
  .qualifications-gallery {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .qual-pillars-row {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
}

/* Dedicated Cellular Medicine & Longevity Section (CAR-T) */
.cellular-longevity-section {
  background: #112621;
  color: #f6f3ed;
  padding: 95px 7%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.longevity-container {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 55px;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}
.longevity-kicker {
  display: inline-block;
  font-size: 11px;
  letter-spacing: .14em;
  color: var(--gold);
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 12px;
}
.longevity-content h2 {
  font-family: var(--serif);
  font-size: clamp(30px, 3.4vw, 46px);
  color: #ffffff;
  line-height: 1.15;
  margin: 0 0 18px;
}
.longevity-content h2 em {
  font-style: italic;
  color: #d6c6b0;
  font-weight: 300;
}
.longevity-intro {
  font-size: 14.5px;
  line-height: 1.75;
  color: #c5d0c3;
  margin-bottom: 30px;
  max-width: 540px;
}
.longevity-metrics-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 32px;
}
.longevity-metric-item {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.12);
  padding: 16px 18px;
  border-radius: 6px;
  transition: border-color .25s ease, background .25s ease;
}
.longevity-metric-item:hover {
  border-color: var(--gold);
  background: rgba(255, 255, 255, 0.08);
}
.longevity-metric-item strong {
  display: block;
  font-family: var(--serif);
  font-size: 16px;
  color: #ffffff;
  margin-bottom: 4px;
}
.longevity-metric-item span {
  font-size: 11.5px;
  color: #a4b3a2;
  line-height: 1.45;
  display: block;
}
.longevity-actions {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
}
.longevity-actions .btn {
  background: var(--gold);
  color: #193d35;
  font-weight: 700;
  border-color: var(--gold);
}
.longevity-actions .btn:hover {
  background: #ffffff;
  color: #193d35;
}
.longevity-actions .text-link {
  color: #c9b9a4;
}
.longevity-actions .text-link:hover {
  color: #ffffff;
}
.longevity-visual {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.longevity-frame {
  background: #ffffff;
  padding: 16px;
  border-radius: 8px;
  border: 1px solid rgba(166, 140, 100, 0.4);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);
  cursor: zoom-in;
  position: relative;
  overflow: hidden;
}
.longevity-frame img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
  transition: transform .4s ease;
}
.longevity-frame:hover img {
  transform: scale(1.02);
}
.longevity-zoom-pill {
  position: absolute;
  bottom: 22px;
  right: 22px;
  background: rgba(17, 38, 33, 0.92);
  color: #ffffff;
  font-size: 9px;
  letter-spacing: .08em;
  padding: 5px 12px;
  border-radius: 20px;
  border: 1px solid rgba(166, 140, 100, 0.5);
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
}
.longevity-frame:hover .longevity-zoom-pill {
  opacity: 1;
}
.longevity-caption {
  font-size: 11px;
  color: #8fa08e;
  line-height: 1.5;
  padding: 0 4px;
}
.longevity-caption strong {
  display: block;
  color: #c9b9a4;
  font-size: 11.5px;
  margin-bottom: 2px;
}

@media (max-width: 960px) {
  .longevity-container {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}




/* ==========================================================================
   ABOUT PAGE UPGRADE: Institutional Standards & Visual Hierarchy
   ========================================================================== */
.about-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin: 35px 7% 0;
  padding: 32px 36px;
  background: #ffffff;
  border: 1px solid var(--line);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
}
.about-stat-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.about-stat-number {
  font-family: var(--serif);
  font-size: clamp(26px, 2.5vw, 36px);
  color: var(--gold);
  line-height: 1.1;
  font-weight: 400;
}
.about-stat-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink);
  font-weight: 600;
}
.about-stat-desc {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.5;
}
.about-pillars-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin-top: 28px;
}
.about-pillar-card {
  background: #fbf9f5;
  border: 1px solid var(--line);
  padding: 26px 24px;
  border-radius: 4px;
}
.about-pillar-card h3 {
  font-size: 17px;
  margin-bottom: 12px;
  color: var(--ink);
  display: flex;
  align-items: center;
  gap: 8px;
}
.about-pillar-card h3 span {
  color: var(--gold);
  font-family: var(--serif);
  font-size: 20px;
}
.about-pillar-card p {
  font-size: 13.5px !important;
  color: var(--muted);
  line-height: 1.65;
  margin-bottom: 0 !important;
}
.about-license-card {
  margin-top: 32px;
  background: #112621;
  color: #e5ece3;
  padding: 32px;
  border-radius: 6px;
  border: 1px solid rgba(166, 140, 100, 0.4);
}
.about-license-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  padding-bottom: 14px;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 10px;
}
.about-license-title {
  font-family: var(--serif);
  font-size: 22px;
  color: #ffffff;
}
.about-license-badge {
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gold);
  border: 1px solid var(--gold);
  padding: 3px 8px;
  border-radius: 2px;
}
.about-license-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 24px;
  font-size: 12.5px;
  color: #b7c7b5;
  line-height: 1.6;
}
.about-license-details strong {
  color: #ffffff;
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 2px;
}
.about-quote-box {
  margin-top: 30px;
  padding: 26px 28px;
  background: #ffffff;
  border-left: 3px solid var(--gold);
  border-top: 1px solid var(--line);
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.about-quote-box blockquote {
  margin: 0 0 14px 0;
  font-family: var(--serif);
  font-size: 18px;
  line-height: 1.55;
  color: var(--ink);
  font-style: italic;
}
.about-quote-box cite {
  font-style: normal;
  font-size: 12px;
  color: var(--muted);
  display: block;
}
.about-quote-box cite strong {
  color: var(--ink);
}
.env-desc {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.5;
  margin-top: 8px;
}

@media (max-width: 900px) {
  .about-stats-grid {
    grid-template-columns: 1fr 1fr;
  }
  .about-pillars-grid {
    grid-template-columns: 1fr;
  }
  .about-license-details {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .about-stats-grid {
    grid-template-columns: 1fr;
    margin: 20px 7% 0;
    padding: 20px;
  }
}

/* ==========================================================================
   DOCTORS PAGE ENHANCEMENT: Layout Balance & Refined Micro-Animations
   ========================================================================== */
.surgical-pledge-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 24px 32px;
  margin-bottom: 40px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03);
}
.pledge-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pledge-stat {
  font-family: var(--serif);
  font-size: 24px;
  color: var(--gold);
  line-height: 1.1;
}
.pledge-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 600;
  color: var(--ink);
}
.pledge-desc {
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.45;
}

/* 4-Column Balanced Grid (8 doctors = 4 x 2 full rows, 0 empty holes) */
.doctors-page-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  row-gap: 40px !important;
}

/* Doctor Card Micro-Interactions */
.doctors-page-grid .doctor {
  transition: transform .4s cubic-bezier(.16, 1, .3, 1), box-shadow .4s cubic-bezier(.16, 1, .3, 1) !important;
  position: relative;
  display: flex;
  flex-direction: column;
}
.doctors-page-grid .doctor:hover {
  transform: translateY(-5px);
}
.doctors-page-grid .doctor-photo {
  position: relative;
  overflow: hidden;
  border-radius: 2px;
}
.doctors-page-grid .doctor-photo img {
  transition: transform .6s cubic-bezier(.16, 1, .3, 1), filter .4s ease !important;
}
.doctors-page-grid .doctor:hover .doctor-photo img {
  transform: scale(1.035);
  filter: saturate(.92);
}
.doctor-active-pill {
  position: absolute;
  top: 12px;
  left: 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(17, 38, 33, 0.88);
  backdrop-filter: blur(4px);
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 9px;
  color: #ffffff;
  letter-spacing: .06em;
  border: 1px solid rgba(166, 140, 100, 0.35);
  z-index: 2;
}
.doctor-active-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7);
  animation: docStatusPulse 2.4s infinite;
}
@keyframes docStatusPulse {
  0% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0.7); }
  70% { box-shadow: 0 0 0 5px rgba(74, 222, 128, 0); }
  100% { box-shadow: 0 0 0 0 rgba(74, 222, 128, 0); }
}

/* Filter Animation */
.doctors-page-grid a.doctor[data-category] {
  animation: docFadeIn .3s ease forwards;
}
@keyframes docFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1200px) {
  .doctors-page-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 24px !important;
  }
}
@media (max-width: 900px) {
  .surgical-pledge-strip {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding: 20px;
  }
}
@media (max-width: 640px) {
  .doctors-page-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .surgical-pledge-strip {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}

/* ==========================================================================
   SOLUTION 2: Architectural Digest / Vogue Editorial 2x2 Tech Matrix Layout
   ========================================================================== */
.featured-doctor.featured-doctor-editorial {
  display: grid;
  grid-template-columns: 440px 1fr;
  gap: 48px;
  background: #f7f9f4;
  border: 1px solid var(--line);
  margin-bottom: 45px;
  align-items: stretch;
  position: relative;
  box-shadow: 0 4px 24px rgba(25, 61, 53, 0.04);
  overflow: hidden;
}

.featured-doctor-editorial .featured-doctor-photo {
  height: 100%;
  min-height: 560px;
  background: #dfe2d8;
  position: relative;
  overflow: hidden;
}

.featured-doctor-editorial .featured-doctor-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 12%;
  filter: saturate(.88);
  transition: transform .6s cubic-bezier(.16, 1, .3, 1);
}

.featured-doctor-editorial:hover .featured-doctor-photo img {
  transform: scale(1.03);
}

.doctor-photo-signature {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 16px 20px;
  background: linear-gradient(to top, rgba(17, 38, 33, 0.85) 0%, rgba(17, 38, 33, 0) 100%);
  color: #e5ece3;
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 500;
}

.featured-doctor-editorial .featured-doctor-content {
  padding: 38px 40px 38px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.featured-header-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
  flex-wrap: wrap;
  gap: 10px;
}

.featured-stat-tag {
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gold);
  border: 1px solid var(--gold);
  padding: 3px 9px;
  border-radius: 2px;
  font-weight: 600;
}

.featured-doctor-editorial h3 {
  font-family: var(--serif);
  font-size: clamp(32px, 3.4vw, 46px);
  line-height: 1.12;
  margin-bottom: 6px;
  color: var(--ink);
}

.featured-quote {
  margin: 0 0 24px 0;
  padding: 14px 18px;
  background: #ffffff;
  border-left: 2px solid var(--gold);
  border-top: 1px solid var(--line);
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  font-family: var(--serif);
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink);
  font-style: italic;
}

/* 2x2 Tech Matrix Grid (Fills 100% of the right width) */
.featured-tech-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 26px;
}

.tech-card {
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 16px 18px;
  border-radius: 3px;
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.tech-card:hover {
  border-color: var(--gold);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(25, 61, 53, 0.06);
}

.tech-card-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}

.tech-num {
  font-family: var(--serif);
  font-size: 15px;
  color: var(--gold);
  font-weight: 600;
}

.tech-card h4 {
  font-family: Arial, sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ink);
  margin: 0;
  font-weight: 700;
}

.tech-card p {
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.48;
  margin: 0;
}

@media (max-width: 1100px) {
  .featured-doctor.featured-doctor-editorial {
    grid-template-columns: 360px 1fr;
    gap: 32px;
  }
  .featured-doctor-editorial .featured-doctor-content {
    padding: 30px 30px 30px 0;
  }
}

@media (max-width: 900px) {
  .featured-doctor.featured-doctor-editorial {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .featured-doctor-editorial .featured-doctor-photo {
    height: 400px;
    min-height: auto;
  }
  .featured-doctor-editorial .featured-doctor-content {
    padding: 30px;
  }
}

@media (max-width: 580px) {
  .featured-tech-grid {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   JOURNEY PAGE ENHANCEMENT: Visa Logistics & Unified Pathway Grid
   ========================================================================== */
.visa-logistics-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 35px;
  margin: 35px 0 45px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
}
.visa-box {
  padding: 26px;
  background: #fbf9f4;
  border: 1px solid var(--line);
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: transform .25s ease, border-color .25s ease;
}
.visa-box:hover {
  border-color: var(--gold);
  transform: translateY(-2px);
}
.visa-badge {
  display: inline-block;
  padding: 4px 10px;
  background: var(--ink);
  color: #ffffff;
  font-size: 9.5px;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 600;
  align-self: flex-start;
}
.visa-badge.gold {
  background: var(--forest);
  color: var(--gold);
  border: 1px solid rgba(166, 140, 100, 0.4);
}
.visa-box h3 {
  font-family: var(--serif);
  font-size: 21px;
  color: var(--ink);
  margin: 0;
}
.visa-box p {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.6;
  margin: 0;
}
.visa-meta {
  font-size: 11px;
  color: var(--forest);
  font-weight: 600;
  border-top: 1px dashed var(--line);
  padding-top: 12px;
  margin-top: 6px;
  display: flex;
  align-items: center;
  gap: 6px;
}

@media (max-width: 850px) {
  .visa-logistics-card {
    grid-template-columns: 1fr;
    padding: 24px;
  }
}

/* ==========================================================
   Hero Solution A: Master-Led Plastic Surgery & Architectural Precision
   ========================================================== */
.hero-specialty-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 28px;
}
.specialty-pill {
  font-size: 11px;
  color: var(--ink);
  background: rgba(25, 61, 53, 0.05);
  border: 1px solid rgba(25, 61, 53, 0.16);
  padding: 6px 12px;
  border-radius: 3px;
  transition: all 0.2s ease;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.specialty-pill:hover {
  background: var(--ink);
  color: #fff;
  border-color: var(--ink);
}
.hero-image-surgical {
  position: relative;
  overflow: hidden;
  background: #25332c;
  min-height: 600px;
  height: 100%;
}
.hero-base-portrait {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
  filter: contrast(1.04) brightness(0.96);
  display: block;
}
/* Subtle Anatomical Vector Layer (SVG & Overlay Markers) */
.hero-vector-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 2;
}
.hero-vector-tag {
  position: absolute;
  background: rgba(14, 31, 25, 0.84);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(184, 150, 106, 0.55);
  color: #fff;
  padding: 6px 10px;
  border-radius: 3px;
  font-size: 9px;
  letter-spacing: .08em;
  display: flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.25);
}
.hero-vector-tag .vector-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 8px var(--gold);
}
.hero-vector-tag.tag-periosteal {
  top: 24%;
  left: 6%;
}
.hero-vector-tag.tag-mandibular {
  top: 56%;
  left: 10%;
}
.hero-vector-tag.tag-dallas {
  top: 38%;
  left: 4%;
}
/* Operating Suite Pill Top Right */
.hero-theatre-badge {
  position: absolute;
  top: 20px;
  right: 20px;
  background: rgba(14, 31, 25, 0.88);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 4px;
  padding: 8px 14px;
  color: #fff;
  z-index: 3;
  text-align: right;
}
.hero-theatre-badge strong {
  display: block;
  font-size: 10px;
  letter-spacing: .12em;
  color: var(--gold);
}
.hero-theatre-badge span {
  font-size: 9px;
  color: #c1cbbd;
}
/* Floating Chief Surgeon Card Bottom of Hero Image */
.hero-doctor-badge {
  position: absolute;
  bottom: 22px;
  left: 20px;
  right: 20px;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(184, 150, 106, 0.35);
  border-radius: 6px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 14px;
  z-index: 3;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  text-decoration: none;
  color: var(--ink);
}
.hero-doctor-badge:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.22);
}
.hero-doctor-thumb {
  position: static !important;
  inset: auto !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2px solid var(--gold) !important;
  flex-shrink: 0 !important;
  background: #eef2eb;
}
.hero-doctor-details {
  flex: 1;
  min-width: 0;
}
.hero-doctor-kicker {
  font-size: 8px;
  letter-spacing: .14em;
  color: var(--gold);
  font-weight: 700;
  display: block;
}
.hero-doctor-name {
  font-family: var(--serif);
  font-size: 15px;
  color: var(--ink);
  margin: 1px 0;
  line-height: 1.2;
}
.hero-doctor-creds {
  font-size: 10px;
  color: var(--muted);
  line-height: 1.3;
}
.hero-doctor-cta {
  font-size: 11px;
  color: var(--gold);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
@media (max-width: 950px) {
  .hero-vector-tag {
    display: none;
  }
  .hero-doctor-badge {
    position: relative;
    bottom: auto;
    left: auto;
    right: auto;
    margin: 15px 0 0;
  }
}

/* ==========================================================
   Refined Architectural Aesthetic Surgery Hero (Grand, Minimal, Uncluttered)
   ========================================================== */
.hero {
  display: grid;
  grid-template-columns: 1.08fr 1fr;
  min-height: 640px;
  margin: 0 5%;
  border-bottom: 1px solid var(--line);
  align-items: stretch;
}
.hero-copy {
  padding: 70px 50px 50px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.hero-copy .eyebrow {
  margin-bottom: 24px;
}
.hero-copy h1 {
  font-size: clamp(48px, 5.4vw, 84px);
  line-height: 1.02;
  margin-bottom: 24px;
  letter-spacing: -0.03em;
}
.hero-copy .intro {
  font-size: 15px;
  line-height: 1.85;
  color: var(--muted);
  max-width: 580px;
  margin-bottom: 38px;
}
.hero-copy .hero-actions {
  display: flex;
  align-items: center;
  gap: 28px;
  margin: 0 0 45px 0;
}
.hero-copy .hero-foot {
  display: flex;
  gap: 24px;
  font-size: 8.5px;
  letter-spacing: .16em;
  color: var(--muted);
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  width: 100%;
}
.hero-b-frame {
  position: relative;
  overflow: hidden;
  background: #121c17;
  border-left: 1px solid var(--line);
  min-height: 640px;
  height: 100%;
}
.hero-b-portrait {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 26%;
  filter: contrast(1.05) brightness(0.96) saturate(0.92);
  display: block;
}
.hero-b-plate {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(14, 25, 20, 0.92), rgba(14, 25, 20, 0.45) 55%, transparent);
  padding: 32px 30px 22px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  color: #fff;
  font-size: 9px;
  letter-spacing: .14em;
  z-index: 3;
}
.hero-b-plate strong {
  color: var(--gold);
  font-size: 10px;
  letter-spacing: .16em;
  display: block;
  margin-bottom: 3px;
  font-weight: 600;
}
.hero-b-plate span {
  color: #cbd5c8;
}
@media (max-width: 950px) {
  .hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .hero-copy {
    padding: 45px 0 35px;
  }
  .hero-b-frame {
    min-height: 440px;
    border-left: none;
    border-top: 1px solid var(--line);
  }
}
