/* Approved compact hospital stack. All logo wells share the same geometry. */
#hospital-partners{overflow:hidden;}
#hospital-partners h2{font-family:Inter,Arial,sans-serif;font-size:clamp(27px,3vw,38px);font-weight:500;letter-spacing:0;line-height:1.6;}
[dir="rtl"] #hospital-partners h2{font-family:Tajawal,Tahoma,sans-serif;word-spacing:.12em;}
.partner-stack{max-width:1040px;margin:0 auto;}
.partner-stack-stage{position:relative;height:412px;perspective:1100px;touch-action:pan-y;}
.partner-stack-card{position:absolute;left:50%;top:20px;box-sizing:border-box;width:276px;height:352px;padding:20px;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:128px 1fr 39px;gap:0;border:1px solid var(--brand-edge);border-radius:25px;background:radial-gradient(ellipse at 5% 0%,var(--brand-shine),transparent 62%),linear-gradient(155deg,var(--brand-mid),var(--brand-deep));color:#fff;text-align:left;font-family:Inter,Arial,sans-serif;box-shadow:0 26px 34px -15px #071a2460,inset 0 1px 0 #ffffffa0,inset 0 -2px 0 #00000024;isolation:isolate;overflow:hidden;transform-origin:50% 65%;transition:transform .8s cubic-bezier(.22,1,.36,1),opacity .55s,box-shadow .55s;cursor:pointer;}
.partner-stack-card::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(125deg,#ffffff30 0%,#ffffff0a 35%,transparent 36%,transparent 65%,#ffffff14 100%);box-shadow:inset 1px 1px 0 #ffffff85,inset -1px -1px 0 #ffffff20;}
.partner-stack-card[data-hospital="bnh"]{--brand-shine:#8fce4f;--brand-mid:#16845f;--brand-deep:#034736;--brand-edge:#8ac487;}
.partner-stack-card[data-hospital="pyt2"]{--brand-shine:#85dfbf;--brand-mid:#189a8b;--brand-deep:#075354;--brand-edge:#8bdfca;}
.partner-stack-card[data-hospital="phuket"]{--brand-shine:#72a4e2;--brand-mid:#22569c;--brand-deep:#111f50;--brand-edge:#9ab9e4;}
.partner-stack-card[data-hospital="siriroj"]{--brand-shine:#b6597c;--brand-mid:#842c53;--brand-deep:#172857;--brand-edge:#d592b5;}
.partner-stack-card[data-hospital="medpark"]{--brand-shine:#efa859;--brand-mid:#96562c;--brand-deep:#383f43;--brand-edge:#e7b37b;}
.partner-stack-card.is-active{box-shadow:0 30px 42px -13px #071a2470,0 0 22px -9px var(--brand-mid),inset 0 1px 0 #ffffffba;}
.partner-stack-logo{display:flex;width:100%;height:128px;box-sizing:border-box;margin:0;min-width:0;align-items:center;justify-content:center;justify-self:center;background:#fff;border-radius:15px;box-shadow:0 8px 16px #00000020;}
.partner-stack-logo img{display:block;width:100%;max-width:202px;height:118px;object-fit:contain;}
.partner-stack-copy{display:flex;flex-direction:column;min-width:0;padding:16px 0 10px;}
.partner-stack-name{font-size:21px;font-weight:500;line-height:1.5;letter-spacing:0;text-wrap:balance;}
.partner-stack-city{font-size:15px;font-weight:400;line-height:1.5;margin-top:auto;padding-top:10px;color:#ffffffdf;}
.partner-stack-action{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff40;padding-top:12px;font-size:15px;font-weight:500;line-height:1.5;}
.partner-stack-action-empty{visibility:hidden;}
[dir="rtl"] .partner-stack-card{font-family:Tajawal,Tahoma,sans-serif;text-align:right;}
[dir="rtl"] .partner-stack-name{font-size:22px;word-spacing:.10em;}
[dir="rtl"] .partner-stack-city,[dir="rtl"] .partner-stack-action{font-size:17px;word-spacing:.12em;}
.partner-stack-controls{display:flex;direction:ltr;align-items:center;justify-content:center;gap:16px;}
.partner-stack-controls button{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--text);font:24px/1 Arial,sans-serif;cursor:pointer;}
.partner-stack-controls button:disabled{opacity:.3;cursor:default;}
.partner-stack-count{min-width:70px;text-align:center;color:var(--text-muted);font:16px/1.5 Inter,Arial,sans-serif;}
.partner-stack-card:focus-visible,.partner-stack-controls button:focus-visible{outline:3px solid var(--jade);outline-offset:4px;}
html[data-theme="night"] .partner-stack-card{box-shadow:0 26px 34px -15px #000a,inset 0 1px 0 #ffffffa0;}
@media(max-width:760px){.partner-stack-card{width:250px;height:352px;padding:20px;}.partner-stack-stage{height:412px;}[dir="rtl"] .partner-stack-name{font-size:21px;}}
@media(prefers-reduced-motion:reduce){.partner-stack-card{transition:none;}}
/* A distinct, balanced section with all five cards visible on desktop. */
#mode-medical #hospital-partners.section{padding:48px 0 44px;background:radial-gradient(ellipse at 50% 65%,#e0eee8 0%,#f0f6f3 60%,#f5f9f7 100%)!important;border-block:1px solid #dce8e1;}
html[data-theme="night"] #mode-medical #hospital-partners.section{background:radial-gradient(ellipse at 50% 65%,#17382e 0%,#10271f 60%,#0d211b 100%)!important;border-block-color:#28483c;}
#hospital-partners .section-head{margin:0 auto 18px;padding:0;}
#hospital-partners .section-head h2{margin:0;}
.partner-stack-stage{height:408px;}
@media(max-width:760px){#mode-medical #hospital-partners.section{padding:36px 0 32px;}#hospital-partners .section-head{margin-bottom:14px;}}
/* Phone layout: compact proportions without reducing readability. */
@media(max-width:760px){
 #mode-medical #hospital-partners.section{padding:26px 0 24px;}
 #hospital-partners .section-head{margin-bottom:12px;}
 #hospital-partners .section-head h2{font-size:25px;line-height:1.45;}
 #hospital-partners .partner-stack-stage{height:316px;}
 #hospital-partners .partner-stack-card{top:12px;width:218px;height:280px;padding:16px;border-radius:22px;grid-template-rows:100px 1fr 34px;}
 #hospital-partners .partner-stack-logo{height:100px;border-radius:12px;}
 #hospital-partners .partner-stack-logo img{max-width:166px;height:88px;}
 #hospital-partners .partner-stack-copy{padding:12px 0 8px;}
 #hospital-partners .partner-stack-name,[dir="rtl"] #hospital-partners .partner-stack-name{font-size:18px;line-height:1.45;word-spacing:.04em;}
 #hospital-partners .partner-stack-city,[dir="rtl"] #hospital-partners .partner-stack-city{font-size:14px;line-height:1.45;padding-top:6px;}
 #hospital-partners .partner-stack-action,[dir="rtl"] #hospital-partners .partner-stack-action{font-size:15px;padding-top:8px;}
 #hospital-partners .partner-stack-controls{gap:14px;}
 #hospital-partners .partner-stack-controls button{width:44px;height:44px;font-size:22px;}
 #hospital-partners .partner-stack-count{font-size:14px;min-width:62px;}
}
