:root{--purple:#872681;--ink:#27213d;--blue:#008fc5;--muted:#696576;--line:#e8e3eb;--pink:#fbf3fa;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font:16px/1.7 'DM Sans',sans-serif;background:#fff}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{color:inherit}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.topbar{background:#f7f2f8;color:#64516c;font-size:12px;letter-spacing:.02em}.topbar .wrap{display:flex;justify-content:space-between;padding:9px 0}.topbar i{font-style:normal;padding:0 12px;color:#aa9cac}header{background:#fffffffa;position:sticky;top:0;z-index:10;border-bottom:1px solid #eee9f0;backdrop-filter:blur(12px)}.nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:94px}.brand{width:205px;flex-shrink:0;display:flex}.brand img{width:100%;height:auto}nav{display:flex;gap:23px;align-items:center;font-size:17px;font-weight:500}nav a{position:relative;padding:10px 0;white-space:nowrap}nav a:hover,nav a[aria-current]{color:var(--purple)}nav a[aria-current]:after{position:absolute;bottom:2px;height:2px;background:var(--purple);content:'';left:0;right:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--purple);color:#fff;border:1px solid transparent;border-radius:9px;padding:15px 23px;font-weight:600;font-size:14px;transition:transform .2s,background .2s}.button:hover{background:#6d1e68;transform:translateY(-3px)}.button span{font-size:20px}.button.small{padding:11px 18px;white-space:nowrap}.menu-toggle{display:none}.hero{background:linear-gradient(110deg,#fdf9fc 45%,#f3f9fb);overflow:hidden;padding:65px 0 0}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:12px!important;font-weight:700;letter-spacing:.13em;color:var(--purple);margin:0 0 22px;line-height:1.5}.tiny-flower{font-size:23px;vertical-align:middle;margin-right:8px;color:var(--blue)}h1,h2,h3{font-family:'Manrope',sans-serif;line-height:1.17;letter-spacing:-.04em;margin:0 0 24px}h1{font-size:clamp(45px,4.65vw,66px);font-weight:800}h1 em{font-style:normal;color:var(--purple)}h2{font-size:clamp(30px,3.2vw,43px);font-weight:700}h3{font-size:23px;letter-spacing:-.025em}p{color:var(--muted);margin:0 0 20px}.hero-sub{font-size:19px;color:var(--ink);font-weight:500;margin-top:26px;margin-bottom:12px}.hero-description{max-width:440px;font-size:16px}.actions{display:flex;gap:25px;align-items:center;margin-top:30px}.call-link{font-size:12px;color:var(--muted);line-height:1.6}.call-link span{display:block;font-size:15px;color:var(--ink);font-weight:600}.hero-doctor{display:flex;gap:12px;align-items:center;margin:28px 0 45px;font-size:13px;font-weight:600}.hero-doctor small{display:block;color:var(--muted);font-size:12px;font-weight:400}.credential{border:1px solid #dbcfe1;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:25px;color:var(--purple)}.hero-visual{position:relative;margin-bottom:45px}.hero-photo{min-height:475px;background:#e6e2ef;border-radius:140px 140px 22px 22px;overflow:hidden;border:10px solid #fff;box-shadow:0 18px 55px #5335640a;position:relative}.hero-photo .photo-slot{height:475px;border:none;border-radius:0;background:linear-gradient(145deg,#e9e0f0,#e4f1f5);justify-content:center;padding-bottom:135px;color:#796e88}.visual-label{position:absolute;bottom:25px;left:28px;font-size:22px;line-height:1.4;color:#514663}.visual-label b{font-weight:700;color:var(--purple)}.floating-note{position:absolute;left:-36px;bottom:60px;transform:translateY(100%);background:white;border:1px solid #efebf1;border-radius:13px;box-shadow:0 12px 40px #51406112;padding:16px 24px;display:flex;align-items:center;gap:14px;font-size:13px;font-weight:600}.floating-note>span{font-size:35px;color:var(--purple)}.floating-note small{display:block;font-size:12px;color:var(--muted);font-weight:400}.circle-seal{position:absolute;right:-22px;top:22px;background:#f8dc84;border-radius:50%;width:105px;height:105px;text-align:center;font-size:10px;letter-spacing:.06em;line-height:1.5;padding:20px;color:#655226;transform:rotate(12deg)}.circle-seal b{font-size:20px}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:38px;padding:29px 0;border-top:1px solid #e8e0ec}.trust-strip>div{padding-left:30px;border-left:1px solid #e4dce8}.trust-strip>div:first-child{border:0;padding-left:0}.trust-strip strong{display:block;font-family:Manrope,sans-serif;font-size:19px}.trust-strip span{font-size:13px;color:var(--muted)}.section{padding-top:86px;padding-bottom:86px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:320px;margin-bottom:4px;font-size:15px}.section-heading .eyebrow{margin-bottom:13px}.service-paths{display:grid;grid-template-columns:1fr 1fr;gap:26px}.path-card{border-radius:var(--radius);padding:34px 38px;transition:transform .25s}.path-card:hover{transform:translateY(-6px)}.adult{background:#edf7fb}.child{background:#f9f0f8}.path-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:600;letter-spacing:.06em;margin-bottom:16px}.adult .path-top{color:#167893}.child .path-top{color:var(--purple)}.round-arrow{display:grid;place-items:center;border:1px solid #0002;width:40px;height:40px;border-radius:50%;font-size:24px}.path-card h3{font-size:35px;margin-bottom:17px}.path-card p{font-size:15px}.path-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.path-tags span{font-size:12px;padding:5px 12px;border:1px solid #0001;border-radius:30px}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:85px;align-items:center;padding-top:35px}.portrait{position:relative;padding:0 25px 25px 0}.photo-slot{min-height:230px;background:#f6f4f8;border:1px dashed #cfc7d8;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#8a8193;text-align:center;padding:20px}.photo-slot>span:not(.photo-icon){font-size:10px;letter-spacing:.16em}.photo-slot strong{font-size:14px;font-weight:500;letter-spacing:0}.photo-icon{font-size:27px;border:1px solid #d8d0df;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;line-height:1;margin-bottom:8px}.doctor-photo{min-height:415px;border-radius:20px 110px 20px 20px;background:#f3eef6}.experience{position:absolute;right:0;bottom:0;background:var(--purple);color:#fff;border-radius:14px;padding:22px 25px;display:flex;gap:16px;align-items:center;box-shadow:0 10px 35px #7c357222}.experience strong{font-size:43px;line-height:1}.experience span{font-size:12px;line-height:1.6}.doctor-qual{color:var(--ink);font-size:18px;font-weight:600}.doctor-qual span{display:block;font-size:13px;font-weight:500;color:var(--purple);margin-top:5px}.text-link{display:inline-flex;gap:24px;align-items:center;color:var(--purple);font-size:14px;font-weight:700;margin-top:20px;padding-bottom:6px;border-bottom:1px solid #d5b8d0}.clinic-section{background:#faf8fb}.clinic-slider{display:flex;gap:20px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:14px}.clinic-slider .photo-slot{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start;min-height:245px;background:#f1edf4}.slider-controls{display:flex;justify-content:flex-end;gap:10px;margin-bottom:20px}.slider-controls button{width:40px;height:40px;border:1px solid #d7ccd9;border-radius:50%;background:white;font-size:19px}.grid{display:grid;gap:24px}.values{grid-template-columns:repeat(4,1fr);gap:40px}.number{width:44px;height:44px;border-radius:12px;background:#f5eaf3;color:var(--purple);font-size:13px;font-weight:600;display:grid;place-items:center;margin-bottom:24px}.values h3{font-size:19px}.values p{font-size:14px}.technology-band{background:#342245;color:white;padding:62px 0}.technology-band>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.technology-band .eyebrow{color:#e7b6df}.technology-band p{color:#d1c5da}.white{background:white;color:var(--purple)}.white:hover{background:#f6edf4}.machine-list{display:flex;gap:12px;flex-wrap:wrap}.machine-list span{border:1px solid #75637d;border-radius:50px;padding:12px 19px;font-size:14px}.reviews{grid-template-columns:repeat(3,1fr)}.review{padding:25px;background:#fff;border:1px solid var(--line);border-radius:16px}.quote{font-family:Georgia,serif;font-size:60px;line-height:.8;color:#c497bf}.review h3{font-size:19px;margin-top:18px}.review p{font-size:14px}.review-person{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;gap:12px;font-size:12px}.avatar{width:37px;height:37px;border-radius:50%;background:#f2eaf3;display:grid;place-items:center;color:var(--purple)}.review-person small{display:block;font-size:11px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;border-top:1px solid var(--line)}.contact-detail{margin-top:23px;padding-top:16px;border-top:1px solid var(--line)}.contact-detail b{font-size:13px;color:var(--purple)}.contact-detail p{font-size:15px;margin:7px 0}.enquiry{background:#f8f5fa;border:1px solid #ece4ef;border-radius:20px;padding:34px}.enquiry h3{font-size:24px;margin-bottom:12px}.enquiry p{font-size:14px}.enquiry label{display:block;font-size:13px;font-weight:600;margin:16px 0}.enquiry input,.enquiry select,.enquiry textarea{display:block;width:100%;border:1px solid #ded6e4;border-radius:8px;background:white;padding:11px 13px;font-size:14px;margin-top:6px;color:var(--ink);max-width:100%}.enquiry input:focus,.enquiry select:focus,.enquiry textarea:focus{outline:2px solid #ab69a6;outline-offset:2px}.enquiry .button{width:100%}.enquiry small{display:block;font-size:12px;color:var(--muted);margin-top:14px;line-height:1.5}.map{padding-bottom:70px}.map iframe{border:0;border-radius:18px;width:100%;height:310px;background:#f2eff5}.cta{background:#f5eaf3;padding:53px 0}.cta>.wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta h2{margin-bottom:0}.cta .eyebrow{font-size:11px!important;margin-bottom:15px}footer{padding-top:55px;background:#fcfbfd;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.2fr .9fr 1.25fr 1.1fr;gap:45px}.footer-logo{width:210px;max-width:100%;margin-bottom:20px}.footer-grid h3{font:600 14px Manrope,sans-serif;letter-spacing:0;margin:10px 0 23px}.footer-grid a{display:block;margin-bottom:9px}.footer-grid a:hover{color:var(--purple)}.footer-phone{font-size:18px;font-weight:600}.footer-bottom{margin-top:40px;padding:22px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted)}.floating{position:fixed;bottom:23px;right:25px;background:#287d5b;color:white;border-radius:35px;padding:11px 19px;box-shadow:0 5px 20px #24433125;font-size:13px;z-index:15;display:flex;align-items:center;gap:9px}.floating span{font-size:23px;line-height:1}.page-head{background:linear-gradient(115deg,#faf0f8,#f0f8fc);padding:70px 0}.page-head h1{max-width:850px;font-size:clamp(40px,4.4vw,60px)}.lead{font-size:19px;max-width:700px}.care-grid{grid-template-columns:repeat(3,1fr)}.care-card{padding:30px;border:1px solid var(--line);border-radius:18px}.care-card h3{font-size:23px}.care-card p{font-size:15px}.tags{display:block;border-top:1px solid var(--line);padding-top:16px;font-size:12px;color:var(--purple)}.care-note{font-size:13px;margin-top:28px;max-width:820px}.photos-three{grid-template-columns:repeat(3,1fr);margin-top:28px}.equipment-grid{grid-template-columns:repeat(3,1fr)}.equipment{border:1px solid var(--line);border-radius:18px;padding:13px}.equipment h3{margin:20px 12px 8px;font-size:22px}.equipment p{margin:0 12px 15px;font-size:14px}.equipment .photo-slot{min-height:180px}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.filter-bar button{border:1px solid #e0d6e3;border-radius:35px;padding:10px 21px;background:white;font-size:14px}.filter-bar button[aria-pressed=true]{background:var(--purple);color:white;border-color:var(--purple)}.gallery-grid{grid-template-columns:repeat(3,1fr)}[hidden]{display:none!important}.spaced{margin-top:65px}.narrow{max-width:780px}.skip{position:absolute;left:15px;top:-100px;background:white;padding:12px;z-index:30}.skip:focus{top:10px}.reveal{opacity:0;transform:translateY(16px);transition:opacity .65s,transform .65s}.reveal.visible{opacity:1;transform:none}@media(min-width:1450px){.hero{padding-top:80px}.hero-grid{gap:85px}}
@media(max-width:1100px){.wrap{width:calc(100% - 54px)}.nav{gap:18px}.brand{width:170px}nav{gap:13px;font-size:12px}.nav-book{font-size:12px!important;padding:10px 12px!important}.hero-grid{gap:40px}.hero-photo,.hero-photo .photo-slot{min-height:425px;height:425px}.hero-grid h1{font-size:52px}.circle-seal{right:-10px}.about-grid{gap:45px}.contact-grid{gap:50px}.footer-grid{gap:25px}.values{gap:25px}}
@media(max-width:850px){.topbar .wrap>span:first-child{display:none}.topbar .wrap{justify-content:center}.nav{min-height:82px;flex-wrap:wrap;gap:0}.brand{width:190px}.menu-toggle{display:block;margin-left:auto;margin-right:17px;background:transparent;border:1px solid var(--line);border-radius:7px;padding:4px 11px;font-size:23px}.nav-book{font-size:13px!important}nav{display:none;order:4;flex-basis:100%;padding:15px 0 20px;flex-wrap:wrap;gap:12px 24px;font-size:15px}nav.open{display:flex}.hero{padding-top:42px}.hero-grid{gap:35px}.hero-grid h1{font-size:42px}.hero-photo,.hero-photo .photo-slot{height:360px;min-height:360px}.hero-photo{border-width:6px;border-radius:90px 90px 20px 20px}.hero-sub{font-size:17px}.hero-description{font-size:14px}.actions{flex-wrap:wrap;gap:15px}.hero-doctor{font-size:12px}.hero-doctor small{font-size:10px}.floating-note{left:-10px;padding:12px 15px;font-size:11px}.circle-seal{width:85px;height:85px;font-size:8px;padding:14px}.circle-seal b{font-size:17px}.visual-label{font-size:18px;left:18px}.trust-strip strong{font-size:15px}.trust-strip span{font-size:11px}.trust-strip>div{padding-left:18px}.section{padding-top:60px;padding-bottom:60px}.path-card{padding:25px}.path-card h3{font-size:28px}.path-top{font-size:9px}.path-card p{font-size:14px}.about-grid{gap:35px}.doctor-photo{min-height:380px}.values{grid-template-columns:1fr 1fr}.technology-band>.wrap{gap:40px}.reviews{grid-template-columns:1fr 1fr}.review:last-child:nth-child(3){grid-column:1/-1}.contact-grid{gap:35px}.enquiry{padding:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.care-grid,.equipment-grid,.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 38px)}.topbar{font-size:10px}.topbar i{padding:0 5px}.nav{min-height:78px}.brand{width:160px}.nav-book{padding:9px 11px!important;font-size:11px!important;gap:8px}.nav-book span{font-size:15px}.menu-toggle{margin-right:10px;font-size:21px;padding:3px 8px}.hero-grid{grid-template-columns:1fr;gap:22px}.hero h1{font-size:clamp(40px,10.8vw,62px)}.hero .eyebrow{font-size:10px!important}.hero-sub{font-size:18px}.hero-description{font-size:16px}.hero-doctor{margin-bottom:12px;font-size:12px}.hero-doctor small{font-size:11px}.hero-visual{margin:10px 9px 25px}.hero-photo,.hero-photo .photo-slot{height:360px;min-height:360px}.floating-note{bottom:40px;left:-12px}.circle-seal{width:95px;height:95px;padding:17px;right:-15px;top:12px}.circle-seal b{font-size:20px}.hero-photo .photo-slot{padding-bottom:100px}.trust-strip{grid-template-columns:1fr 1fr;gap:24px;margin-top:35px;padding:25px 0}.trust-strip>div{padding-left:0;border:0}.trust-strip strong{font-size:17px}.trust-strip span{font-size:12px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px;max-width:100%}.section{padding-top:50px;padding-bottom:50px}.service-paths{grid-template-columns:1fr;gap:18px}.path-card{padding:28px}.path-card h3{font-size:33px}.path-top{font-size:10px}.about-grid{grid-template-columns:1fr;gap:38px}.portrait{max-width:420px;width:100%;margin:auto}.doctor-photo{min-height:340px}.clinic-slider .photo-slot{flex-basis:85%;min-height:230px}.values{gap:28px 20px}.values h3{font-size:18px}.values p{font-size:14px}.technology-band>.wrap{grid-template-columns:1fr;gap:28px}.technology-band{padding:45px 0}.machine-list{gap:9px}.machine-list span{padding:8px 13px;font-size:12px}.reviews{grid-template-columns:1fr}.review:last-child:nth-child(3){grid-column:auto}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-grid h2{font-size:36px}.enquiry{padding:23px}.map{padding-bottom:45px}.map iframe{height:260px}.cta>.wrap{align-items:start;flex-direction:column;gap:26px}.cta h2{font-size:31px}.cta{padding:42px 0}.footer-grid{gap:28px 20px}.footer-grid>div:first-child,.footer-grid>div:nth-child(3){grid-column:1/-1}.footer-grid>div:nth-child(2){grid-column:1}.footer-grid>div:nth-child(4){grid-column:1/-1}.footer-grid h3{margin-bottom:17px}.footer-grid p{font-size:14px}.footer-bottom{flex-direction:column;gap:6px;padding-bottom:90px}.floating{right:16px;bottom:16px}.page-head{padding:45px 0}.page-head h1{font-size:40px}.lead{font-size:17px}.care-grid,.equipment-grid,.gallery-grid,.photos-three{grid-template-columns:1fr}.equipment-grid .photo-slot{min-height:230px}.filter-bar{gap:8px}.filter-bar button{font-size:12px;padding:9px 15px}.photo-slot{min-height:230px}h2{font-size:32px}.eyebrow{font-size:11px!important}.spaced{margin-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Standalone PHP presentation helpers */
.icon{width:18px;height:18px;display:inline-block;vertical-align:middle;flex:0 0 auto}
.button .icon,.text-link .icon,.call-link .icon,.footer-grid a .icon{width:17px;height:17px}
.brand img{display:block}
.hero-photo{height:475px}
.hero-photo>img,.media-frame>img{width:100%;height:100%;object-fit:cover;display:block}
.media-frame{overflow:hidden}
.doctor-photo{padding:0!important;border:0!important;overflow:hidden}
.doctor-photo img{width:100%;height:100%;object-fit:cover}
.round-icon{display:grid;place-items:center;border:1px solid #0002;width:40px;height:40px;border-radius:50%}
.round-icon .icon{width:18px;height:18px}
.clinic-slider{display:flex;gap:20px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:14px}
.clinic-slider .photo-card{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start}
.photo-card{margin:0;border-radius:16px;overflow:hidden;background:#f1edf4}
.photo-card .media-frame{height:245px;min-height:0;border:0;border-radius:0;background:#f1edf4}
.photo-card>img{width:100%;height:100%;object-fit:cover;display:block}
.photo-card figcaption{padding:13px 16px;font-size:13px;color:var(--ink);background:#fff}
.gallery-grid .photo-card{height:100%}
.gallery-grid .photo-card .media-frame{height:230px}
.equipment .media-frame{height:180px;min-height:0;border:0;border-radius:12px;background:#f1edf4}
.card-icon,.value-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#f5eaf3;color:var(--purple);margin-bottom:22px}
.card-icon .icon,.value-icon .icon{width:20px;height:20px}
.values article{padding:26px;background:#fff;border:1px solid var(--line);border-radius:18px;transition:transform .25s,box-shadow .25s}
.values article:hover{transform:translateY(-4px);box-shadow:0 14px 32px #51345d12}
.floating-note-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f5eaf3;color:var(--purple);flex:0 0 auto}
.floating-note-icon .icon{width:20px;height:20px}
.stars{color:#e2a52b;letter-spacing:.12em;font-size:13px;font-weight:700;margin-bottom:3px}
.avatar .icon{width:18px;height:18px}
.footer-socials{display:flex;gap:10px;margin-top:17px}
.footer-socials a{display:grid!important;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--purple);margin:0!important}
.footer-socials a:hover{background:var(--purple);color:#fff}
.footer-grid a .icon{margin-right:6px}
.page-content{min-height:42vh}
.gallery-heading{font-size:27px;margin:45px 0 22px}
.floating>svg{width:19px;height:19px}
.floating>span{font-size:13px;line-height:1}
.menu{display:flex;align-items:center;gap:23px;list-style:none;padding:0;margin:0}
.menu li{margin:0;padding:0}
.menu-toggle .icon{width:22px;height:22px}
@media(max-width:850px){.menu{flex-wrap:wrap;gap:12px 24px;width:100%}}
@media(max-width:850px){.clinic-slider .photo-card{flex-basis:72%}.hero-photo{height:360px}}
@media(max-width:600px){.clinic-slider .photo-card{flex-basis:85%}.gallery-heading{font-size:24px;margin-top:34px}.photo-card .media-frame{height:235px}}
.clinic-slider .photo-card {
    flex: 0 0 calc((100% - 40px) / 3);
    scroll-snap-align: start;
}

.clinic-slider .photo-card>img {
    display: block;
    width: 100%;
    height: 190px;
    object-fit: cover;
    object-position: center;
}

.clinic-slider .photo-card figcaption {
    min-height: 46px;
    display: flex;
    align-items: center;
    padding: 11px 16px;
}

@media (max-width: 850px) {
    .clinic-slider .photo-card {
        flex-basis: 72%;
    }

    .clinic-slider .photo-card>img {
        height: 165px;
    }
}

@media (max-width: 600px) {
    .clinic-slider .photo-card {
        flex-basis: 85%;
    }

    .clinic-slider .photo-card>img {
        height: 145px;
    }
}
/* Animated responsive homepage image lightbox */

body.lightbox-open {
    overflow: hidden;
}

.clinic-slider .photo-card>img {
    cursor: zoom-in;
    transition: transform 0.35s ease;
}

.clinic-slider .photo-card:hover>img {
    transform: scale(1.035);
}

.hpc-lightbox {
    position: fixed;
    inset: 0;
    z-index: 100;
    display: grid;
    place-items: center;
    padding: clamp(16px, 4vw, 56px);
    opacity: 0;
    transition: opacity 0.22s ease;
}

.hpc-lightbox.is-open {
    opacity: 1;
}

.hpc-lightbox__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(28, 18, 38, 0.86);
    backdrop-filter: blur(6px);
}

.hpc-lightbox__dialog {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 100%;
    max-height: 100%;
    opacity: 0;
    transform: translateY(18px) scale(0.96);
    transition:
        opacity 0.28s ease,
        transform 0.28s ease;
}

.hpc-lightbox.is-open .hpc-lightbox__dialog {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.hpc-lightbox__image {
    display: block;
    width: auto;
    max-width: 92vw;
    max-height: calc(100vh - 125px);
    object-fit: contain;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35);
}

.hpc-lightbox__caption {
    margin: 13px 0 0;
    color: #fff;
    text-align: center;
    font-size: 14px;
    line-height: 1.4;
}

.hpc-lightbox__close {
    position: absolute;
    z-index: 2;
    top: -17px;
    right: -17px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 50%;
    background: #fff;
    color: var(--purple);
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.22);
}

.hpc-lightbox__close:hover {
    background: #f8edf7;
    transform: scale(1.05);
}

@media (max-width: 600px) {
    .hpc-lightbox {
        padding: 18px 12px;
    }

    .hpc-lightbox__image {
        max-width: 94vw;
        max-height: calc(100vh - 115px);
        border-radius: 14px;
    }

    .hpc-lightbox__close {
        top: -14px;
        right: -5px;
        width: 38px;
        height: 38px;
        font-size: 24px;
    }

    .hpc-lightbox__caption {
        max-width: 90vw;
        font-size: 12px;
    }
}

@media (prefers-reduced-motion: reduce) {

    .hpc-lightbox,
    .hpc-lightbox__dialog,
    .clinic-slider .photo-card>img {
        transition: none;
    }
}
.clinic-slider .photo-card>img,
.gallery-grid .photo-card img {
    cursor: zoom-in;
    transition: transform 0.35s ease;
}

.clinic-slider .photo-card:hover>img,
.gallery-grid .photo-card:hover img {
    transform: scale(1.035);
}

@media (prefers-reduced-motion: reduce) {

    .hpc-lightbox,
    .hpc-lightbox__dialog,
    .clinic-slider .photo-card>img,
    .gallery-grid .photo-card img {
        transition: none;
    }
}
/* Google Reviews responsive alignment fix */

.google-reviews,
.google-review-summary,
.google-review-grid,
.google-review-card {
    min-width: 0;
    max-width: 100%;
}

.google-review-summary {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(230px, 280px) !important;
    align-items: center;
    gap: 34px;
    overflow: hidden;
}

.google-review-summary>div {
    min-width: 0;
}

.google-review-summary h3,
.google-review-note {
    overflow-wrap: anywhere;
}

.google-review-score {
    min-width: 0;
    padding: 8px 0 8px 28px;
    border-left: 1px solid #eadfeb;
    text-align: center;
}

.google-review-score>strong {
    display: block !important;
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1;
}

.google-review-score .google-stars,
.google-review-score small {
    display: block !important;
}

.google-review-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.google-review-actions .button {
    gap: 9px;
    white-space: normal;
    text-align: center;
}

.google-review-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px;
    align-items: stretch;
}

.google-review-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    padding: 24px;
}

.google-review-card .google-review-copy {
    flex: 1;
    min-width: 0;
    min-height: 0;
    margin-bottom: 22px;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.google-review-card .review-person {
    width: 100%;
    min-width: 0;
    margin-top: auto;
    align-items: center;
}

.google-review-card .review-person>span:last-child {
    min-width: 0;
    overflow-wrap: anywhere;
}

.google-review-card .avatar {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    flex: 0 0 42px;
    overflow: hidden;
}

.google-review-card .avatar img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    border-radius: 50%;
    object-fit: cover;
}

@media (max-width: 1000px) {
    .google-review-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .google-review-summary {
        grid-template-columns: minmax(0, 1fr) minmax(200px, 240px) !important;
        gap: 24px;
    }
}

@media (max-width: 700px) {
    .google-review-summary {
        grid-template-columns: 1fr !important;
        gap: 20px;
        padding: 24px 20px;
    }

    .google-review-score {
        border-left: 0;
        border-top: 1px solid #eadfeb;
        padding: 22px 0 0;
    }

    .google-review-grid {
        grid-template-columns: 1fr !important;
        gap: 16px;
    }

    .google-review-card {
        padding: 20px;
    }

    .google-review-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .google-review-actions .button,
    .google-review-link {
        width: 100%;
        text-align: center;
    }
}
.equipment .media-frame img {
    cursor: zoom-in;
    transition: transform .35s ease, filter .35s ease;
    will-change: transform;
}

.equipment .media-frame:hover img {
    transform: scale(1.06);
    filter: brightness(1.04);
}

@media (prefers-reduced-motion: reduce) {
    .equipment .media-frame img {
        transition: none;
    }

    .equipment .media-frame:hover img {
        transform: none;
    }
}
@media (max-width: 850px) {
    header .nav nav.open {
        display: block;
        width: 100%;
        padding: 10px 0 18px;
    }

    header .nav nav.open .menu {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 100%;
    }

    header .nav nav.open .menu li {
        width: 100%;
        border-top: 1px solid var(--line);
    }

    header .nav nav.open .menu li:last-child {
        border-bottom: 1px solid var(--line);
    }

    header .nav nav.open .menu a {
        display: block;
        width: 100%;
        padding: 12px 4px;
        white-space: normal;
    }

    header .nav nav.open .menu a[aria-current]::after {
        left: 4px;
        right: auto;
        bottom: 4px;
        width: 42px;
    }
}