/* Requested sections only. Shared colours and media sizes come from admin settings. */
.page-hero { padding:var(--page-header-padding,32px) 0; min-height:0; }
.page-hero-inner { padding-block:0; }
.page-hero .eyebrow { margin-bottom:10px; font-size:11px; }
.page-hero h1 { font-size:clamp(28px,3.1vw,44px); line-height:1.12; margin-bottom:10px; }
.page-hero p:last-child { margin-bottom:0; max-width:900px; font-size:16px; }
.disease-tree { display:block; overflow:visible; padding:0; }
.disease-section .section-head {max-width:850px;}
.education-timeline:before {left:140px; top:32px; bottom:42px;}
.education-item {grid-template-columns:114px minmax(0,1fr); gap:54px; align-items:start;}
.education-item:before {left:134px; top:28px; width:14px; height:14px; margin:0; box-sizing:border-box;}
.education-years {white-space:nowrap; width:auto; padding-top:24px; font-size:14px; line-height:22px; text-align:right;}
.education-item>div {min-width:0;}
.doctor-skill-card>span img,.doctor-skill-card>span svg {width:var(--skill-icon-size,38px); height:var(--skill-icon-size,38px); object-fit:contain;}
.service-card .service-media {height:var(--service-image-height,240px);}
.video-card>button {height:var(--video-image-height,240px);}
.btn.primary {background:var(--blue);color:var(--on-blue);border-color:var(--blue);}
.btn.primary:hover {filter:brightness(.94);}
.blog-card .blog-image {height:var(--blog-image-height,240px); background:#f1f5f8; overflow:hidden;}
.blog-card .blog-image img {width:100%;height:100%;object-fit:var(--blog-image-fit,contain);object-position:center;}
.gallery-ribbon {position:relative;overflow:hidden;margin:-24px -4px;padding:32px 4px 38px;cursor:grab;touch-action:pan-y;user-select:none;outline-offset:4px;}
.ribbon-track {display:flex;gap:22px;will-change:transform;width:max-content;align-items:center;}
.ribbon-track .gallery-card {flex:0 0 clamp(245px,28vw,360px);width:clamp(245px,28vw,360px);height:var(--gallery-image-height,280px);margin:0;opacity:1!important;transform:none!important;overflow:visible;border-radius:16px;background:transparent;box-shadow:none;}
.ribbon-track .gallery-card button {height:100%;width:100%;overflow:hidden;border:0;border-radius:16px;background:#e6edf1;transition:transform .3s,box-shadow .3s;box-shadow:0 8px 22px #071f3210;}
.ribbon-track .gallery-card img {height:100%;width:100%;object-fit:var(--gallery-image-fit,contain);pointer-events:none;}
.ribbon-track .gallery-card:hover button {transform:translateY(-9px) scale(1.025);box-shadow:0 18px 32px #071f3224;}
.gallery-ribbon.is-dragging,.gallery-ribbon.is-dragging button {cursor:grabbing;}
.gallery-ribbon.is-dragging .gallery-card button {transform:none;}
.map-contact-grid {grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:48px;align-items:center;}
.map-shell {height:var(--map-height,500px);min-height:0;overflow:hidden;border:1px solid #dce8ee;border-radius:20px;background:#edf5f7;}
.map-shell>iframe,.map-shell>div,.map-shell iframe {display:block;width:100%!important;height:100%!important;min-height:100%!important;max-width:none!important;border:0;}
.partners-section {background:#fff;padding-block:55px;}
.partners-section .section-head {margin-bottom:28px;}
.partner-marquee {position:relative;overflow:hidden;box-sizing:border-box;background:none;border:0;box-shadow:none;margin-inline:calc((100vw - min(100vw, 1320px))/ -2);padding:18px max(20px,calc((100vw - 1320px)/2));}
.partner-marquee:before,.partner-marquee:after{content:"";position:absolute;z-index:3;top:0;bottom:0;width:clamp(28px,6vw,110px);pointer-events:none;}
.partner-marquee:before{left:0;background:linear-gradient(90deg,#fff 12%,transparent);}
.partner-marquee:after{right:0;background:linear-gradient(270deg,#fff 12%,transparent);}
.partner-marquee>.partner-track {display:flex!important;align-items:stretch;gap:22px;width:max-content!important;animation:none!important;transform:translate3d(0,0,0);will-change:transform;flex-wrap:nowrap!important;justify-content:flex-start!important;}
.partner-cycle{display:flex;align-items:stretch;gap:22px;width:max-content;flex:0 0 auto;}
.partner-item {display:flex;flex:0 0 clamp(210px,17vw,250px);width:clamp(210px,17vw,250px);flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:142px;max-width:none;margin:0;padding:22px;background:#fff;border:1px solid #dbe9f1;border-radius:16px;box-shadow:0 10px 30px rgba(10,61,89,.07);transition:border-color .25s,transform .25s,box-shadow .25s;}
.partner-item img {max-width:180px;width:100%;height:var(--partner-image-height,64px);object-fit:contain;filter:none;opacity:1;}
.partner-item b {font-size:13px;color:#516a7b;font-weight:500;text-align:center;}
.partner-item:hover {transform:translateY(-7px);border-color:#82c9e4;box-shadow:0 18px 38px rgba(10,83,119,.14);}
.partner-marquee.is-paused .partner-item:not(:hover){opacity:.88;}
.certificates-layout {display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.75fr);gap:48px;align-items:start;}
.certificate-list {display:grid;gap:16px;}
.certificate-list .certificate-card {display:grid;grid-template-columns:var(--certificate-image-width,140px) minmax(0,1fr) 20px;gap:22px;align-items:center;margin:0;padding:18px;border:1px solid #dce7ee;border-radius:14px;box-shadow:none;min-height:0;background:#fff;}
.certificate-list .certificate-preview {height:110px;width:100%;display:grid;place-items:center;background:#f7f9fa;border-radius:6px;overflow:hidden;}
.certificate-list .certificate-preview img {width:100%;height:100%;object-fit:contain;transform:none;}
.certificate-list .certificate-copy {padding:0;display:grid;gap:6px;}
.certificate-copy small {color:#698295;font-size:12px;}
.certificate-copy strong {font-size:16px;}
.certificate-copy span,.certificate-copy p {font-size:13px;color:#718390;line-height:1.5;margin:0;}
.certificate-doctor {border-radius:18px;overflow:hidden;background:#eef5f8;box-shadow:none;}
.certificate-doctor>img {width:100%;height:var(--doctor-image-height,390px);object-fit:contain;object-position:center bottom;}
.certificate-doctor>div {padding:18px 22px;}
.certificate-doctor strong,.certificate-doctor span {display:block;}
.certificate-doctor span {font-size:13px;margin-top:4px;color:#667e8b;}
.footer-newsletter {margin:0 0 26px;padding:0;border:0;}
.footer-contact{display:flex;flex-direction:column}.footer-contact .footer-newsletter{order:-1}
.newsletter-form {display:flex;gap:0;background:white;border-radius:10px;overflow:hidden;margin-top:14px;max-width:420px;}
.newsletter-form input {min-width:0;width:100%;border:0;background:#fff;color:#132d40;padding:14px;}
.newsletter-form button {border:0;background:var(--blue);color:var(--on-blue);padding:12px 16px;flex:none;}
@media(max-width:800px){
 .map-contact-grid,.certificates-layout {grid-template-columns:1fr;gap:28px;}
 .certificate-doctor {max-width:400px;}
 .education-item {grid-template-columns:1fr;gap:10px;padding-left:30px;}
 .education-timeline:before {left:7px;}
 .education-item:before {left:1px;top:5px;}
 .education-years {text-align:left;padding-top:0;}
 .map-shell {height:clamp(320px,70vw,var(--map-height,500px));}
 .partners-section {padding-block:35px;}
}
@media(max-width:500px){
 .page-hero {padding:23px 0;}
 .page-hero p:last-child {font-size:14px;}
 .certificate-list .certificate-card {grid-template-columns:85px 1fr;gap:14px;padding:14px;}
 .certificate-list .certificate-preview {height:90px;}
 .certificate-open {display:none;}
 .partner-marquee{margin-inline:-12px;padding-inline:12px;}
 .partner-marquee>.partner-track,.partner-cycle{gap:14px;}
 .partner-item {width:190px;flex-basis:190px;padding:15px;min-height:120px;}
}
@media(prefers-reduced-motion:reduce){.ribbon-track .gallery-card button,.partner-item{transition:none;}.partner-marquee>.partner-track{transform:none!important;}}
