@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/inter-latin-wght-normal.woff2') format('woff2')}
@font-face{font-family:Cairo;font-style:normal;font-weight:200 1000;font-display:swap;src:url('assets/cairo-arabic-wght-normal.woff2') format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF}
@font-face{font-family:Cairo;font-style:normal;font-weight:200 1000;font-display:swap;src:url('assets/cairo-latin-wght-normal.woff2') format('woff2');unicode-range:U+0000-00FF}
/* Approved clinical UI — scoped to the ten redesigned sections.
   Existing hero, navigation, footer, data, validators and body-map mechanics remain independent. */
.physio-section{
 --p:#4c8dff;--pl:#84b6ff;--a:#4c8dff;--bg:#080f1b;--bg2:#080f1b;--bg3:#101e30;
 --cd:#101e30;--tx:#f4f7fc;--tx2:#b6cce8;--tx3:#829cbd;--bd:rgba(95,155,225,.3);--bd2:rgba(95,155,225,.48);
 --sh:0 8px 22px rgba(0,0,0,.12);--sh2:0 15px 36px rgba(0,0,0,.18);
 padding:88px max(32px,calc((100vw - 1440px)/2));background:#080f1b!important;
 color:var(--tx);font-family:Inter,Montserrat,sans-serif;border:0;position:relative;isolation:isolate;
}
[data-theme=light] .physio-section{
 --p:#2469d2;--pl:#3678d7;--a:#2469d2;--bg:#f5f8fd;--bg2:#f5f8fd;--bg3:#e9f0fa;
 --cd:#fff;--tx:#122840;--tx2:#496786;--tx3:#6f86a0;--bd:rgba(65,112,171,.21);--bd2:rgba(65,112,171,.35);
 background:#f5f8fd!important;
}
.physio-section::before{content:"";position:absolute;inset:0;width:auto;height:auto;border:0;border-radius:0;box-shadow:none;mask-image:none;filter:none;background:url('assets/physio-movement.svg') center/100% 100% no-repeat;opacity:1;z-index:-1;pointer-events:none}
.physio-section::after{display:none}
.physio-section .shdr{max-width:none;margin:0 0 48px}
.physio-section .eyebrow{font:600 12px/1.4 Inter,Montserrat,sans-serif;letter-spacing:.23em;color:var(--p)!important;gap:16px;margin-bottom:18px}
.physio-section .eyebrow::before{display:none}.physio-section .eyebrow::after{content:"";height:1px;width:45px;background:var(--p)}
.physio-section .stitle{max-width:none;font:750 clamp(34px,4.8vw,68px)/1.09 Inter,Montserrat,sans-serif;letter-spacing:-.035em;color:var(--tx)!important;margin:0 0 14px;text-wrap:balance}
.physio-section .ssub{font:400 clamp(15px,1.7vw,22px)/1.65 Inter,Montserrat,sans-serif;max-width:900px;color:var(--tx2)!important}
.physio-section .center .stitle{margin-inline:auto}.physio-section button,.physio-section input,.physio-section textarea,.physio-section select{font-family:inherit}
.physio-section button:focus-visible,.physio-section a:focus-visible,.physio-select-trigger:focus-visible,.physio-select-option:focus-visible{outline:2px solid var(--pl);outline-offset:4px}
.physio-icon{width:64px;height:64px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;display:block;flex-shrink:0;color:var(--pl)}
.physio-orbit{width:150px;height:150px;border:1px solid var(--bd);border-radius:50%;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 40% 30%,rgba(74,130,205,.12),transparent 70%);color:var(--pl)}
.physio-orbit::before{content:"";position:absolute;inset:12px;border:5px solid transparent;border-inline-start-color:rgba(76,141,255,.45);border-radius:50%;transform:rotate(-25deg);pointer-events:none}
.physio-orbit .physio-icon{width:94px;height:94px;position:relative}
/* About */
#about .about-grid{max-width:1440px;grid-template-columns:minmax(0,.82fr) minmax(0,1.15fr);gap:64px;align-items:center}
#about .aphoto{min-height:0;aspect-ratio:2/3;border-radius:24px;border:1px solid var(--bd2);background:var(--cd);box-shadow:none;display:block;overflow:hidden}
#about .aphoto::before,#about .aphoto::after{display:none}
#about .about-portrait{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;position:absolute;inset:0;border:0;border-radius:0;box-shadow:none}
#about .about-photo-label{bottom:22px;inset-inline:22px;left:22px;transform:none;min-width:0;text-align:start;padding:22px 26px;background:rgba(12,27,45,.94);border:1px solid rgba(99,164,245,.42);border-radius:20px;box-shadow:none}
#about .about-photo-label b{font:700 30px/1.2 Inter,sans-serif;letter-spacing:-.02em}
#about .about-photo-label span{font:400 19px/1.4 Inter,sans-serif;text-transform:none;letter-spacing:0;color:#adc9ed;margin-top:6px}
#about .ssub{font-size:clamp(16px,1.55vw,22px);line-height:1.65;color:var(--tx)!important}
#about .acreds{gap:10px;margin-top:28px}
#about .cred{border:1px solid var(--bd);border-radius:15px;box-shadow:none;backdrop-filter:none;padding:13px 22px;gap:25px;background:linear-gradient(120deg,rgba(61,105,163,.04),transparent),var(--cd);transition:border-color .2s,transform .2s}
#about .cred:is(:hover,.touch-hover){transform:translateX(3px);border-color:var(--p);box-shadow:none}
#about .cicon{width:58px;height:58px;display:grid;place-items:center;border:1px solid var(--p);border-radius:50%;flex-shrink:0}
#about .cicon .physio-icon{width:34px;height:34px}
#about .ctxt{font-size:17px;line-height:1.5;font-weight:400;border-inline-start:1px solid var(--bd);padding-inline-start:24px}
#about .stags{gap:10px 14px;margin-top:20px}
#about .stag{font:400 15px/1.3 Inter,sans-serif;text-transform:none;letter-spacing:0;padding:10px 24px;border:1px solid var(--pl);color:var(--tx);background:transparent}
#about .stag:is(:hover,.touch-hover){background:rgba(76,141,255,.12);color:var(--tx);border-color:var(--p);box-shadow:none}
/* Hours */
#hours .hours-layout{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1fr);gap:80px;align-items:center;max-width:1370px;margin:auto}
#hours .shdr{text-align:start;margin:0}
#hours .stitle{max-width:430px}
#hours .hours-clock{width:310px;height:310px;margin:42px 0 0;background:radial-gradient(circle,rgba(76,141,255,.1),transparent);outline:1px dashed var(--bd2);outline-offset:22px}
#hours .hours-clock .physio-icon{width:230px;height:230px;stroke-width:1.15}
#hours .hours-clock::before{inset:18px;transform:rotate(20deg);border-inline-start-color:transparent;border-inline-end-color:rgba(76,141,255,.4)}
#hours .hours-grid{display:flex;flex-direction:column;gap:0;width:100%;max-width:none;padding:26px 38px;border:1px solid var(--bd2);border-radius:23px;background:var(--cd)}
#hours .hr{border:0;border-bottom:1px solid var(--bd);border-radius:0;padding:23px 0;background:none;box-shadow:none;gap:16px}
#hours .hr:last-child{border-bottom:0}#hours .hr:is(:hover,.touch-hover){transform:none;box-shadow:none;background:none}
#hours .hday{font:400 22px/1.4 Inter,sans-serif;color:var(--tx)}#hours .htime{font:400 22px/1.4 Inter,sans-serif;color:var(--tx2);white-space:nowrap}
#hours .hclosed{font:400 18px/1.4 Inter,sans-serif;color:var(--tx2);background:rgba(102,142,194,.18);border-radius:40px;padding:6px 22px}
/* Treatment plans and services */
#services .svc-grid,#packages .pkg-grid{max-width:1440px;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch;position:relative}
#services .svc-grid::before,#packages .pkg-grid::before{content:"";position:absolute;top:-65px;inset-inline:0;height:90px;background:url('assets/physio-movement.svg') 50% 25%/100% 620px no-repeat;z-index:-1}
#services .shdr,#packages .shdr{margin-bottom:64px}
#services .svc-card,#packages .pkg-card,#packages .pkg-card.ft{border:1px solid var(--bd2);border-radius:20px;box-shadow:none;background:linear-gradient(135deg,rgba(50,92,144,.08),transparent 65%),var(--cd);min-height:0;transform:none;position:relative;overflow:hidden}
#services .svc-card:is(:hover,.touch-hover),#packages .pkg-card:is(:hover,.touch-hover){transform:translateY(-5px);border-color:var(--p);box-shadow:var(--sh)}
#services .svc-card::after{display:none}#services .svc-card{padding:34px 34px 40px}
#services .svc-n,.plan-index{font:700 42px/1 Inter,sans-serif;letter-spacing:-.03em;color:#537bab;margin:0;display:flex;align-items:center;gap:20px;position:relative}
.plan-index span{width:48px;height:1px;background:var(--bd2)}
#services .svc-n::after{content:"";display:block;width:48px;height:1px;background:var(--bd2)}
#services .svc-ic{margin:0;position:absolute;inset-inline-end:24px;top:26px;font-size:0}
#services .svc-nm{font:700 clamp(23px,2.1vw,30px)/1.25 Inter,sans-serif;letter-spacing:-.025em;color:var(--tx);margin:112px 0 25px;min-height:112px;display:flex;align-items:center}
#services .svc-list{border-top:1px solid var(--bd);padding-top:26px;gap:24px}
#services .svc-list li{font:400 16px/1.55 Inter,sans-serif;color:var(--tx2);padding:0;padding-inline-start:44px}
#services .svc-list li::before{left:auto;inset-inline-start:0;top:4px;background:var(--p);width:10px;height:10px;border-radius:50%;outline:2px solid var(--p);outline-offset:7px}
#packages .pkg-card{display:flex;flex-direction:column}
#packages .pkg-hd,#packages .pkg-card.ft .pkg-hd{padding:34px 34px 20px;border:0;position:relative;min-height:310px;display:flex;flex-direction:column}
#packages .pkg-hd .physio-orbit{position:absolute;inset-inline-end:20px;top:26px;width:144px;height:144px}
#packages .pkg-tier,#packages .pkg-card.ft .pkg-tier{color:var(--p);font:600 11px/1.4 Inter,sans-serif;letter-spacing:.15em;margin:62px 0 14px}
#packages .pkg-nm{font:700 26px/1.3 Inter,sans-serif;letter-spacing:-.02em;color:var(--tx)!important;max-width:none;position:relative;margin-top:auto}
#packages .pkg-bd,#packages .pkg-card.ft .pkg-bd{padding:0 26px 26px;display:flex;flex-direction:column;flex:1}
#packages .pkg-list{padding:22px 10px;border-top:1px solid var(--bd);gap:17px;min-height:174px;margin-bottom:auto}
#packages .pkg-list li,#packages .pkg-card.ft .pkg-list li{font:400 15px/1.5 Inter,sans-serif;color:var(--tx2);align-items:center;gap:18px}
#packages .pk,#packages .pkg-card.ft .pk{font-size:15px;color:var(--pl);display:grid;place-items:center;border:2px solid var(--p);width:25px;height:25px;border-radius:50%}
#packages .plan-details-toggle,#packages .pkg-card.ft .plan-details-toggle{border:1px solid var(--bd2);border-radius:14px;padding:16px 22px;font-size:16px;font-weight:400;color:var(--tx);background:rgba(77,128,194,.025);margin-top:15px}
#packages .plan-details-toggle:hover{opacity:1;border-color:var(--p);background:rgba(76,141,255,.08)}
#packages .plan-details-list li,#packages .pkg-card.ft .plan-details-list li{font-size:14px;color:var(--tx2)}
#packages .plan-details.open{max-height:900px}
#packages .pkg-cta,#packages .pkg-card.ft .pkg-cta{width:100%;min-height:58px;flex-shrink:0;margin-top:15px;padding:16px 18px;border:1px solid var(--p);border-radius:14px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(110deg,#397eff,#3989fa)}
#packages .pkg-cta:is(:hover,.touch-hover){filter:brightness(1.1);box-shadow:0 8px 22px rgba(76,141,255,.18)}
/* Clinic carousel: existing slides and controls, intentionally designed placeholders. */
#gallery .gal-sl{max-width:1370px;aspect-ratio:2.45/1;border-radius:24px;background:var(--cd);border:1px solid var(--bd2);box-shadow:none}
#gallery .gal-trk{height:100%;direction:ltr}#gallery .gal-sl-item{aspect-ratio:auto;min-width:100%;height:100%;color:var(--tx);background:var(--cd)}
.clinic-placeholder{text-align:center;width:100%;padding:32px 80px 54px;background:url('assets/physio-movement.svg') center/cover no-repeat}
.clinic-placeholder .physio-orbit{width:250px;height:250px;margin:0 auto 26px}.clinic-placeholder .physio-icon{width:150px;height:150px}
.clinic-placeholder h3{font-size:38px;letter-spacing:-.02em;margin-bottom:14px;line-height:1.2}.clinic-placeholder p{font-size:21px;line-height:1.5;color:var(--tx2)}
#gallery .gal-btn{width:66px;height:66px;border:1px solid var(--p);color:var(--tx2);background:var(--bg);box-shadow:none;font-size:40px;font-weight:300;z-index:2}
#gallery .gal-prev{left:26px}#gallery .gal-next{right:26px}
#gallery .gal-btn:hover{color:#fff;background:var(--p)}
#gallery .gal-dots{bottom:28px;gap:22px;z-index:2;direction:ltr}
#gallery .gdot{width:14px;height:14px;border:1px solid var(--p);background:transparent;border-radius:50%;position:relative}
#gallery .gdot::before{content:"";position:absolute;inset:-10px}
#gallery .gdot.on{background:var(--p);width:14px;border-radius:50%}
#gallery>p{font-size:14px!important;line-height:1.5;margin-top:26px!important;color:var(--tx3)!important}
/* FAQ */
#faq .faq-layout{display:grid;grid-template-columns:minmax(0,.48fr) minmax(0,1fr);gap:60px;max-width:1440px;margin:auto;align-items:start}
#faq .shdr{text-align:start;margin:18px 0 0}#faq .stitle{font-size:clamp(35px,4.65vw,66px);text-align:start;max-width:450px;margin:0}
#faq .eyebrow{justify-content:flex-start}
#faq .faq-art{width:330px;height:330px;margin-top:48px;outline:1px dashed var(--bd2);outline-offset:18px}
#faq .faq-art .physio-icon{width:220px;height:220px;stroke-width:1}
#faq .faq-list{width:100%;max-width:none;margin:0;gap:16px}
#faq .faq-item{border:1px solid var(--bd2);border-radius:19px;box-shadow:none;background:var(--cd)}
#faq .faq-item:is(:hover,.touch-hover),#faq .faq-item.open{transform:none;border-color:var(--p);background:var(--cd);box-shadow:none}
#faq .faq-q{padding:26px 28px;gap:22px;font-size:22px;font-weight:650;line-height:1.4;color:var(--tx)!important;min-height:94px;text-align:start}
#faq .faq-q::before{content:"+";font:400 33px/1 Inter,sans-serif;width:43px;height:43px;display:grid;place-items:center;border:2px solid var(--p);border-radius:8px;color:var(--pl);flex-shrink:0}
#faq .faq-item.open .faq-q::before{content:"−"}
#faq .faq-q>span:first-child{flex:1}#faq .faq-arr{font-size:24px;color:var(--pl)!important}
#faq .faq-a{padding:0 28px}#faq .faq-item.open .faq-a{max-height:800px;padding:0 28px 28px}
#faq .faq-a p{border-top:1px solid var(--bd);padding-top:23px;font-size:18px;color:var(--tx2);line-height:1.7}
/* Booking — fields keep their original IDs and event handlers. */
#book .bk-card{width:100%;max-width:1370px;padding:30px 34px 26px;border:1px solid var(--bd2)!important;border-radius:22px;background:var(--cd)!important;box-shadow:none!important;color:var(--tx)}
#book .stitle{font-size:clamp(32px,4.45vw,64px)}#book .shdr{margin-bottom:32px}
#book .steps{margin:0 6% 76px;direction:ltr;isolation:isolate}
#book .steps::before,#book .steps::after{top:22px;height:2px}.steps::after{background:var(--p)}
#book .sdot{width:46px;height:46px;border:1px solid var(--bd2);background:var(--cd);font-size:20px;color:var(--tx2)}
#book .sdot::after{content:attr(data-label);position:absolute;top:58px;left:50%;transform:translateX(-50%);width:170px;text-align:center;line-height:1.4;font-size:14px;font-weight:400;color:var(--tx2);white-space:normal}
#book .sdot.act,#book .sdot.done{color:#fff;background:var(--p);border-color:var(--p)}#book .sdot.act::after{color:var(--tx);font-weight:650}
#book .steptitle{font-size:30px;letter-spacing:-.025em;line-height:1.3;color:var(--tx);margin-bottom:16px}
#book .svc-opts{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}
#book .svc-opt{padding:22px 10px 16px;border-radius:15px;background:var(--bg)!important;border:1px solid var(--bd2)!important;color:var(--tx);position:relative;box-shadow:none!important}
#book .svc-opt::after{content:"";display:block;width:20px;height:20px;border:1.5px solid var(--p);border-radius:50%;margin:16px auto 0}
#book .svc-opt.sel::after{background:var(--p);box-shadow:inset 0 0 0 4px var(--cd)}
#book .svc-opt:is(:hover,.touch-hover),#book .svc-opt.sel{transform:translateY(-2px);border-color:var(--p)!important;background:rgba(76,141,255,.12)!important}
#book .svc-opt.sel{border-width:2px!important;padding:21px 9px 15px}
#book .svc-opt-ic{display:grid;place-items:center;margin:0 0 12px}#book .svc-opt-ic .physio-icon{width:65px;height:65px}
#book .svc-opt-nm{font-size:17px;font-weight:650;color:var(--tx)!important;line-height:1.4}
#book .blbl{font-size:14px;font-weight:400;text-transform:none;letter-spacing:0;line-height:1.5;color:var(--tx2);margin-bottom:8px}
#book .bi,#book .bta,#reviews .fi{min-height:54px;border:1px solid var(--bd2);border-radius:11px;background:var(--bg);color:var(--tx);padding:13px 20px;font-size:16px;line-height:1.5;box-shadow:none;margin-bottom:18px}
#book .bi::placeholder,#book .bta::placeholder,#reviews .fi::placeholder{color:var(--tx3);opacity:1}
#book .bi:is(:hover,.touch-hover),#book .bi:focus,#book .bta:focus,#reviews .fi:focus{border-color:var(--p)!important;background:var(--bg)!important;color:var(--tx)!important;box-shadow:0 0 0 3px rgba(76,141,255,.1)!important;outline:0}
#book .bi:is(:hover,.touch-hover)::placeholder,#book .bi:focus::placeholder{color:var(--tx3)!important}
#book .bi option{color:var(--tx);background:var(--cd)}
.booking-schedule{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:30px;align-items:start;margin-top:0}
#book .tslots{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 12px}
#book .tslot{font-size:12px;font-weight:400;padding:12px 5px;border:1px solid var(--bd2)!important;border-radius:10px;background:var(--bg)!important;color:var(--tx)!important;line-height:1.3;min-height:44px;box-shadow:none!important}
#book .tslot:is(:hover,.touch-hover):not(.taken){background:rgba(76,141,255,.1)!important;border-color:var(--p)!important}
#book .tslot.sel{background:var(--p)!important;color:#fff!important;border-color:var(--p)!important}
#book .tslot.taken{opacity:.35}
#book .snxt,#reviews .sub-btn{min-height:58px;padding:16px 22px;border:0;border-radius:12px;color:#fff;background:linear-gradient(110deg,#397eff,#3989fa);font-size:16px;font-weight:600;transition:transform .2s,box-shadow .2s,filter .2s}
#book .snxt:is(:hover,.touch-hover),#reviews .sub-btn:is(:hover,.touch-hover){opacity:1;filter:brightness(1.09);transform:translateY(-2px);box-shadow:0 8px 22px rgba(76,141,255,.17)}
#book .snxt:disabled{opacity:.5;cursor:wait;transform:none;box-shadow:none}
#book .snav{margin-top:20px}#book .sbk{min-height:54px;border:1px solid var(--bd2);border-radius:12px;color:var(--tx);background:var(--bg)!important;font-size:15px}
#book .sbk:is(:hover,.touch-hover){color:var(--tx)!important;border-color:var(--p);background:rgba(76,141,255,.1)!important}
#book .tog-lbl,#book .otp-info,#book #HIS,#book #OTNOTE{color:var(--tx2)!important;line-height:1.6}
#book .tog-row{border-color:var(--bd);padding:16px 0;margin-bottom:22px}
#book .tsw{background:var(--tx3)}#book .tsw.on{background:var(--p)}
#book .resend,#book .otp-ph{color:var(--pl)}#book .suc-title{color:var(--tx)}#book .suc-sub{color:var(--tx2)}
#book .suc-wa{background:var(--p);color:#fff;border-radius:12px}#book #BKAG{color:var(--tx2)!important}
#book .bta{resize:vertical;min-height:110px;margin-bottom:14px}
#book .bstep:not(#BS1){max-width:820px;margin:auto}
/* Custom select: the original select remains the authoritative input, with a native fallback. */
.physio-select{position:relative;width:100%;margin-bottom:18px;text-align:start}
.physio-section select.physio-native{position:absolute!important;inset:0!important;width:1px!important;height:1px!important;opacity:0!important;clip-path:inset(50%);pointer-events:none;padding:0!important;margin:0!important;min-height:0!important}
.physio-select-trigger{width:100%;min-height:54px;border:1px solid var(--bd2);border-radius:11px;background:var(--bg);color:var(--tx);padding:13px 46px 13px 20px;font:400 16px/1.5 Inter,sans-serif;text-align:start;position:relative;display:block;overflow-wrap:anywhere}
.physio-select-trigger::after{content:"";position:absolute;inset-inline-end:21px;top:22px;width:8px;height:8px;border:solid var(--pl);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
[dir=rtl] .physio-select-trigger{padding:13px 20px 13px 46px}
.physio-select-trigger[aria-expanded=true]{border-color:var(--p);box-shadow:0 0 0 3px rgba(76,141,255,.1)}
.physio-select-menu{position:absolute;inset-inline:0;top:calc(100% + 7px);z-index:20;background:var(--cd);border:1px solid var(--bd2);border-radius:12px;padding:6px;max-height:300px;overflow:auto;box-shadow:0 15px 45px rgba(0,0,0,.25)}
.physio-select-menu[hidden]{display:none}
.physio-select-option{display:block;width:100%;font:400 15px/1.5 Inter,sans-serif;text-align:start;padding:12px 16px;border:0;border-radius:7px;background:transparent;color:var(--tx);cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.physio-select-option[aria-selected=true]{color:var(--pl);background:rgba(76,141,255,.1)}
.physio-select-option.active,.physio-select-option:hover{background:rgba(76,141,255,.17);color:var(--tx)}
#book .phone-row{grid-template-columns:minmax(130px,.38fr) minmax(0,1fr);gap:12px;align-items:start}#book .phone-row .physio-select-trigger{font-size:14px;padding-inline-start:12px;min-height:54px}
/* Reviews */
#reviews .rev-grid{max-width:1370px;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 auto 16px}
#reviews .rev-empty{border:1px solid var(--bd2);border-radius:20px;background:var(--cd);min-height:250px;padding:28px}
#reviews .rev-empty .physio-orbit{width:124px;height:124px;margin-bottom:14px}#reviews .rev-empty .physio-icon{width:65px;height:65px}
#reviews .rev-empty-icon{font-size:0;margin:0}#reviews .rev-empty strong{font-size:23px;font-weight:650;letter-spacing:-.02em}
#reviews .rev-empty p{max-width:none;font-size:16px;color:var(--tx2);line-height:1.6}
#reviews .rev-card{background:var(--cd);border:1px solid var(--bd2);padding:28px;border-radius:18px;box-shadow:none}
#reviews .rev-stars{color:var(--p);font-size:22px}#reviews .rev-txt{font-size:17px;overflow-wrap:anywhere}
#reviews .rev-name{color:var(--tx);font-size:16px}#reviews .rev-svc{font-size:13px;line-height:1.5}#reviews .rev-av{background:var(--p);width:42px;height:42px}
#reviews .rev-form{max-width:1370px;padding:32px 40px 28px;background:var(--cd);border:1px solid var(--bd2);border-radius:20px;box-shadow:none;margin:auto}
#reviews .rev-form h3{font-size:34px;letter-spacing:-.03em;color:var(--tx);margin:0 0 20px}
#reviews .star-pick{gap:13px;margin:0 0 20px}#reviews .sstar{width:43px;height:43px;display:grid;place-items:center;color:var(--p)!important;text-shadow:none!important;filter:none!important}
#reviews .sstar .physio-icon{width:35px;height:35px;stroke:var(--p);fill:transparent;stroke-width:1.25}
#reviews .sstar.on .physio-icon,#reviews .star-pick:hover .sstar:has(~ .sstar:hover) .physio-icon,#reviews .sstar:hover .physio-icon{fill:var(--p)}
#reviews .star-pick:hover .sstar .physio-icon{fill:transparent}#reviews .star-pick:hover .sstar:has(~ .sstar:hover) .physio-icon,#reviews .star-pick:hover .sstar:hover .physio-icon{fill:var(--p)}
.review-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}#reviews .fg{margin-bottom:0}
#reviews .fg label{font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;line-height:1.5;color:var(--tx2);margin-bottom:8px}
#reviews .fi{margin-bottom:16px}#reviews textarea.fi{min-height:110px}#reviews .sub-btn{width:100%}
/* Share */
#qrcode .share-layout{max-width:1440px;margin:auto;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:56px;align-items:center;min-height:550px}
#qrcode .shdr{text-align:start;margin-bottom:40px}#qrcode .eyebrow{justify-content:flex-start}#qrcode .stitle{text-align:start;font-size:clamp(36px,4.1vw,62px)}
#qrcode .ssub{font-size:clamp(17px,1.75vw,23px);max-width:none;margin:0}
#qrcode .share-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;justify-content:start;margin:0}
#qrcode .shr-btn{border:1px solid var(--bd2);border-radius:16px;min-height:86px;background:var(--cd);font-size:18px;font-weight:550;color:var(--tx);box-shadow:none;padding:18px 14px;gap:16px;display:flex;align-items:center;justify-content:center}
#qrcode .shr-btn .physio-icon{width:34px;height:34px;stroke-width:1.5}
#qrcode .shr-btn:hover{border-color:var(--p);background:rgba(76,141,255,.1);transform:translateY(-3px)}
#qrcode .qr-wrap{display:flex;flex-direction:column;align-items:center;width:100%;padding:50px 28px 34px;border:1px solid var(--bd2);background:var(--cd);border-radius:24px;box-shadow:none;color:var(--tx);position:relative}
#qrcode canvas{width:290px!important;height:290px!important;max-width:100%;aspect-ratio:1;border:14px solid #fff;box-sizing:border-box;background:#fff;border-radius:12px;outline:1px solid var(--bd2);outline-offset:18px}
#qrcode .qr-lbl{font-size:21px;color:var(--tx);font-weight:600;line-height:1.4;margin:42px 0 12px}#qrcode .qr-url{font-size:16px;color:var(--tx3);overflow-wrap:anywhere;line-height:1.5}
/* Body map: keep original image geometry, hotspot SVG, positioning and animation rules. */
#bodymap .bm-wrap{max-width:1000px}#bodymap .bm-stage{border:1px solid var(--bd2);background:radial-gradient(ellipse at 50% 44%,rgba(72,123,192,.12),transparent 70%),#0b1727;border-radius:22px}
#bodymap .bm-hint{background:var(--cd);border:1px dashed var(--bd2);color:var(--tx2)}
:is(#bodymap .bm-card,.bm-card.bm-sheet){background:var(--cd);border:1px solid var(--bd2);border-radius:20px;padding:30px 26px;box-shadow:none}
:is(#bodymap .bm-name,.bm-card.bm-sheet .bm-name){font:700 32px/1.25 Inter,sans-serif;letter-spacing:-.025em;margin-bottom:22px;color:var(--tx)}
:is(#bodymap .bm-rec,.bm-card.bm-sheet .bm-rec){border-top:1px solid var(--bd);padding-top:18px;color:var(--tx2);font-size:16px;font-weight:400;margin-bottom:15px}
:is(#bodymap .bm-chips,.bm-card.bm-sheet .bm-chips){flex-direction:column;gap:10px}:is(#bodymap .bm-chip,.bm-card.bm-sheet .bm-chip){border:1px solid var(--p);border-radius:12px;padding:16px 36px 16px 18px;font-size:15px;font-weight:400;line-height:1.5;position:relative;color:var(--tx);background:transparent;width:100%}
:is(#bodymap .bm-chip,.bm-card.bm-sheet .bm-chip)::after{content:"→";position:absolute;inset-inline-end:17px;top:50%;transform:translateY(-50%);font-size:21px;color:var(--pl)}
:is(#bodymap .bm-chip,.bm-card.bm-sheet .bm-chip):hover{background:rgba(76,141,255,.1);border-color:var(--pl)}:is(#bodymap .bm-tip,.bm-card.bm-sheet .bm-tip){font-size:13px;line-height:1.5;color:var(--tx2);margin-top:22px;padding-top:16px;border-top:1px solid var(--bd)}
:is(#bodymap .bm-cta,.bm-card.bm-sheet .bm-cta){background:linear-gradient(110deg,#397eff,#3989fa);color:#fff;min-height:56px;margin-top:20px;border-radius:12px;font-size:16px;font-weight:600}
:is(#bodymap .bm-x,.bm-card.bm-sheet .bm-x){width:36px;height:36px;top:20px;inset-inline-end:20px;border-color:var(--bd2);color:var(--tx)}
:is(#bodymap .bm-card,.bm-card.bm-sheet).bm-sheet{padding-bottom:calc(25px + env(safe-area-inset-bottom));box-shadow:0 -12px 50px rgba(0,0,0,.45)}
#bodymap .bm-fig{direction:ltr}
/* Arabic: use the site's Arabic face while keeping anatomy and carousel geometry LTR. */
[dir=rtl] .physio-section,[dir=rtl] .physio-section .stitle,[dir=rtl] .physio-section .ssub,[dir=rtl] .physio-section .eyebrow,[dir=rtl] .physio-select-trigger,[dir=rtl] .physio-select-option{font-family:Cairo,Inter,sans-serif}
[dir=rtl] .physio-section .svc-nm,[dir=rtl] .physio-section .pkg-nm,[dir=rtl] .physio-section .stag,[dir=rtl] .physio-section .hday,[dir=rtl] .physio-section .htime,[dir=rtl] .physio-section .bm-name{font-family:Cairo,Inter,sans-serif}
[dir=rtl] #about .cred:is(:hover,.touch-hover){transform:translateX(-3px)}
[dir=rtl] :is(#bodymap .bm-chip,.bm-card.bm-sheet .bm-chip){padding:16px 18px 16px 36px}
/* Tablet */
@media(max-width:1100px){
 .physio-section{padding:70px 28px}#about .about-grid{gap:35px}#about .ctxt{font-size:15px;padding-inline-start:15px}#about .cred{gap:14px;padding:12px 16px}
 #about .cicon{width:45px;height:45px}#about .cicon .physio-icon{width:29px;height:29px}
 #hours .hours-layout{gap:40px}#hours .hday,#hours .htime{font-size:18px}#hours .hours-grid{padding:20px 28px}#hours .hours-clock{width:250px;height:250px}#hours .hours-clock .physio-icon{width:185px;height:185px}
 #services .svc-card{padding:26px 24px 32px}#services .svc-ic{inset-inline-end:15px;top:24px}.physio-orbit{width:120px;height:120px}.physio-orbit .physio-icon{width:80px;height:80px}
 #services .svc-nm{font-size:23px;margin-top:90px;min-height:100px}#services .svc-list{gap:19px}#services .svc-list li{font-size:14px;padding-inline-start:32px}
 #packages .pkg-hd,#packages .pkg-card.ft .pkg-hd{padding:28px 24px 20px;min-height:310px}#packages .pkg-hd .physio-orbit{width:110px;height:110px;inset-inline-end:12px}
 #packages .pkg-nm{font-size:22px}#packages .pkg-bd,#packages .pkg-card.ft .pkg-bd{padding:0 18px 18px}#packages .pkg-tier{font-size:10px}#packages .pkg-list{padding-inline:3px;min-height:190px}#packages .pkg-list li{font-size:14px;gap:12px}
 #faq .faq-layout{gap:35px;grid-template-columns:minmax(0,.5fr) minmax(0,1fr)}#faq .faq-q{font-size:18px;padding:22px;gap:16px}#faq .faq-art{width:240px;height:240px}#faq .faq-art .physio-icon{width:160px;height:160px}
 #book .svc-opt-nm{font-size:15px}#book .tslots{grid-template-columns:repeat(4,minmax(0,1fr))}#book .booking-schedule{grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:20px}
 #qrcode .share-layout{gap:30px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}#qrcode .shr-btn{font-size:15px;gap:9px;padding:15px 9px}#qrcode .shr-btn .physio-icon{width:25px;height:25px}#qrcode canvas{width:240px!important;height:240px!important}#qrcode .qr-lbl{font-size:18px}
 .clinic-placeholder .physio-orbit{width:190px;height:190px}.clinic-placeholder .physio-icon{width:115px;height:115px}.clinic-placeholder h3{font-size:30px}.clinic-placeholder p{font-size:17px}#gallery .gal-sl{aspect-ratio:2/1}
}
/* Mobile */
@media(max-width:760px){
 .physio-section{padding:60px 20px}.physio-section .stitle{font-size:38px}.physio-section .ssub{font-size:16px}.physio-section .eyebrow{font-size:11px;letter-spacing:.17em;margin-bottom:14px}.physio-section .shdr{margin-bottom:30px}
 #about .about-grid{grid-template-columns:1fr;gap:32px}#about .aphoto{max-width:500px;width:100%;margin:auto;aspect-ratio:4/5}#about .about-portrait{object-position:center 35%}#about .about-photo-label{bottom:16px;inset-inline:16px;left:16px;padding:18px 20px}#about .about-photo-label b{font-size:25px}#about .about-photo-label span{font-size:16px}
 #about .ctxt{font-size:14px}#about .ssub{font-size:16px}#about .stag{font-size:13px;padding:9px 16px}#about .cred{border-radius:12px}
 #hours .hours-layout{grid-template-columns:1fr;gap:30px}#hours .shdr{display:grid;grid-template-columns:1fr 100px;align-items:center}#hours .eyebrow{grid-column:1}#hours .stitle{grid-column:1;font-size:36px;max-width:250px}#hours .hours-clock{grid-column:2;grid-row:1/3;width:85px;height:85px;margin:0;outline-offset:6px}#hours .hours-clock .physio-icon{width:70px;height:70px}#hours .hours-clock::before{inset:8px;border-width:3px}
 #hours .hours-grid{padding:8px 20px;border-radius:18px}#hours .hr{padding:20px 0;gap:10px}#hours .hday,#hours .htime{font-size:16px}#hours .hclosed{font-size:14px;padding:5px 18px}
 #services .svc-grid,#packages .pkg-grid{grid-template-columns:1fr;gap:18px}#services .shdr,#packages .shdr{margin-bottom:36px}#services .svc-grid::before,#packages .pkg-grid::before{display:none}
 #services .svc-card{padding:28px 26px 32px}#services .svc-nm{font-size:27px;min-height:68px;margin-top:70px}#services .svc-ic{top:22px;inset-inline-end:20px}#services .svc-list{gap:20px}#services .svc-list li{font-size:15px;padding-inline-start:37px}
 #packages .pkg-hd,#packages .pkg-card.ft .pkg-hd{padding:28px 28px 20px;min-height:0}#packages .pkg-hd .physio-orbit{width:126px;height:126px;top:22px;inset-inline-end:20px}#packages .pkg-nm{font-size:26px;max-width:none;margin-top:0}#packages .pkg-tier,#packages .pkg-card.ft .pkg-tier{margin-top:70px;margin-bottom:14px}#packages .pkg-bd,#packages .pkg-card.ft .pkg-bd{padding:0 24px 24px}#packages .pkg-list{min-height:0;padding:20px 0;margin-bottom:0}#packages .pkg-list li{font-size:15px;gap:15px}#packages .pkg-cta{min-height:56px}
 #faq .faq-layout{grid-template-columns:1fr;gap:26px}#faq .shdr{margin:0}#faq .stitle{font-size:38px;max-width:none}#faq .faq-art{display:none}#faq .faq-list{gap:12px}#faq .faq-q{padding:19px 16px;font-size:16px;gap:12px;min-height:78px}#faq .faq-q::before{width:32px;height:32px;border-width:1.5px;border-radius:6px;font-size:26px}#faq .faq-arr{font-size:20px}#faq .faq-a{padding:0 19px}#faq .faq-item.open .faq-a{padding:0 19px 22px}#faq .faq-a p{font-size:15px;padding-top:18px}
 #book .bk-card{padding:22px 18px;border-radius:20px}#book .stitle{font-size:36px}#book .steps{margin:0 3% 64px}#book .sdot{width:34px;height:34px;font-size:15px}#book .steps::before,#book .steps::after{top:16px}#book .sdot::after{top:44px;width:64px;font-size:10px;line-height:1.3}#book .steptitle{font-size:24px;margin-bottom:18px}
 #book .svc-opts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#book .svc-opt{padding:16px 8px 13px;border-radius:12px}#book .svc-opt.sel{padding:15px 7px 12px}#book .svc-opt-ic .physio-icon{width:53px;height:53px}#book .svc-opt-nm{font-size:14px}#book .svc-opt::after{margin-top:12px;width:18px;height:18px}
 #book .booking-schedule{grid-template-columns:1fr;gap:0}#book .tslots{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}#book .tslot{font-size:12px;min-height:44px}#book .blbl{font-size:13px}#book .bi,#book .bta,#reviews .fi{font-size:16px;padding:13px 14px}#book .snxt,#book .sbk{font-size:14px}
 .physio-select-trigger{font-size:15px;padding:13px 38px 13px 14px}.physio-select-trigger::after{inset-inline-end:17px}[dir=rtl] .physio-select-trigger{padding:13px 14px 13px 38px}
 #book .phone-row{grid-template-columns:140px minmax(0,1fr);gap:10px}#book .phone-row .physio-select-trigger{font-size:13px;line-height:1.85;max-height:54px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
 #gallery .gal-sl{aspect-ratio:auto;min-height:420px}#gallery .gal-trk{min-height:420px}#gallery .gal-sl-item{min-height:420px}#gallery .gal-btn{width:44px;height:44px;font-size:30px}#gallery .gal-prev{left:12px}#gallery .gal-next{right:12px}
 .clinic-placeholder{padding:28px 50px 56px}.clinic-placeholder .physio-orbit{width:165px;height:165px;margin-bottom:26px}.clinic-placeholder .physio-icon{width:104px;height:104px}.clinic-placeholder h3{font-size:26px}.clinic-placeholder p{font-size:15px}#gallery .gal-dots{bottom:25px;gap:20px}#gallery .gdot{width:12px;height:12px}#gallery .gdot.on{width:12px}
 #reviews .rev-grid{grid-template-columns:1fr;gap:14px}#reviews .rev-empty{padding:28px 20px;min-height:240px}#reviews .rev-empty strong{font-size:20px}#reviews .rev-empty p{font-size:14px;max-width:290px}#reviews .rev-form{padding:26px 20px;border-radius:18px}#reviews .rev-form h3{font-size:28px}.review-fields{grid-template-columns:1fr;gap:0}#reviews .star-pick{gap:8px}#reviews .sstar{width:39px;height:39px}#reviews .sstar .physio-icon{width:31px;height:31px}#reviews .rev-txt{font-size:16px}
 #qrcode .share-layout{grid-template-columns:1fr;gap:34px;min-height:0}#qrcode .shdr{margin-bottom:26px}#qrcode .stitle{font-size:38px}#qrcode .ssub{font-size:16px}#qrcode .share-row{gap:8px}#qrcode .shr-btn{flex-direction:column;min-height:95px;gap:9px;padding:14px 6px;font-size:13px;border-radius:12px}#qrcode .shr-btn .physio-icon{width:27px;height:27px}#qrcode .qr-wrap{padding:42px 22px 30px;max-width:440px;margin:auto}#qrcode canvas{width:245px!important;height:245px!important}#qrcode .qr-lbl{font-size:18px;margin-top:36px}#qrcode .qr-url{font-size:14px}
 #bodymap .stitle{font-size:36px}#bodymap .bm-stage{padding:20px 16px 16px}:is(#bodymap .bm-card,.bm-card.bm-sheet){padding:26px 20px}:is(#bodymap .bm-name,.bm-card.bm-sheet .bm-name){font-size:26px}:is(#bodymap .bm-rec,.bm-card.bm-sheet .bm-rec){font-size:14px}:is(#bodymap .bm-chip,.bm-card.bm-sheet .bm-chip){padding:13px 36px 13px 16px;font-size:14px}:is(#bodymap .bm-tip,.bm-card.bm-sheet .bm-tip){font-size:12px}:is(#bodymap .bm-cta,.bm-card.bm-sheet .bm-cta){font-size:15px}#bodymap .bm-hint{font-size:14px}
}
@media(max-width:380px){.physio-section{padding-inline:15px}#hours .hday,#hours .htime{font-size:14px}#hours .hours-grid{padding-inline:16px}#book .bk-card{padding-inline:14px}#book .sdot::after{width:53px;font-size:9px}#book .phone-row{grid-template-columns:128px minmax(0,1fr)}#qrcode canvas{width:220px!important;height:220px!important}}
@media(prefers-reduced-motion:reduce){.physio-section *, .physio-section *::before,.physio-section *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Let real dropdowns escape section boundaries without clipping options. */
.physio-section{overflow:visible}
/* A glimpse of the next clinic slide, with unchanged percentage-based carousel navigation. */
@media(min-width:761px){
 #gallery .gal-sl{border:0;background:transparent;overflow:hidden;border-radius:24px;aspect-ratio:2.5/1}
 #gallery .gal-trk{width:84%}
 #gallery .gal-sl-item{background:transparent;justify-content:flex-start}
 #gallery .clinic-placeholder{width:calc(100% - 18px);height:100%;border:1px solid var(--bd2);border-radius:22px;background-color:var(--cd);display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0}
 #gallery .gal-next{right:calc(16% + 42px)}#gallery .gal-dots{left:calc(42% - 9px)}
 .clinic-placeholder .physio-orbit{flex-shrink:0}
}
@media(min-width:761px){
 #gallery .gal-sl-item[data-physio-active=false] .clinic-placeholder{align-items:flex-start;text-align:start;padding-inline-start:40px}
 #gallery .gal-sl-item[data-physio-active=false] .physio-orbit{width:190px;height:190px;margin:0 0 26px}
 #gallery .gal-sl-item[data-physio-active=false] h3{font-size:27px;max-width:210px}
 #gallery .gal-sl-item[data-physio-active=false] p{font-size:18px;max-width:220px}
}
/* Portrait framing matches the approved closer crop, without replacing the original photo. */
#about .about-portrait{transform:scale(1.32);transform-origin:50% 76%}
@media(max-width:760px){#about .about-portrait{transform:scale(1.06);transform-origin:50% 60%}}
/* Consistent blue section labels, including the original body-map header. */
.physio-section .shdr .eyebrow,#about .eyebrow{color:var(--p)!important}
[data-theme] .physio-section .shdr .eyebrow{color:var(--p)!important}
@media(min-width:1101px){
 #packages .pkg-card:first-child .pkg-tier{margin-top:32px}
 #packages .pkg-card:first-child .pkg-nm{margin-top:0;max-width:310px;font-size:28px}
}
/* The existing mobile calendar uses the same clinical palette and keeps all date rules. */
#MobileCalendarModal{--p:#4c8dff;--a:#4c8dff;--bg2:#101e30;--bg3:#182b43;--tx:#f4f7fc;--tx3:#829cbd;font-family:Inter,Cairo,sans-serif}
[data-theme=light] #MobileCalendarModal{--p:#2469d2;--a:#2469d2;--bg2:#fff;--bg3:#e9f0fa;--tx:#122840;--tx3:#6f86a0}
#MobileCalendarModal .mobile-calendar-card{border-color:rgba(95,155,225,.48)}
#MobileCalendarModal .mobile-cal-day.selected{box-shadow:0 0 0 3px rgba(76,141,255,.15)}
#MobileCalendarModal .mobile-cal-day:not(:disabled):active,#MobileCalendarModal .mobile-cal-day:not(:disabled):focus{background:rgba(76,141,255,.2)}
#MobileCalendarModal .mobile-cal-day.selected:focus{background:var(--p)}
#book .mobile-date-trigger{min-height:54px;border-width:1px;border-color:var(--bd2);border-radius:11px;font-size:16px;background:var(--bg);margin-bottom:18px;text-align:start}
#book .mobile-date-trigger:focus{border-color:var(--p);box-shadow:0 0 0 3px rgba(76,141,255,.12)}
#book input[type=date]{color-scheme:dark}
[data-theme=light] #book input[type=date]{color-scheme:light}

/* Theme the same result node when the original mobile logic moves it to body. */
.bm-card.bm-sheet{--p:#4c8dff;--pl:#84b6ff;--a:#4c8dff;--bg:#080f1b;--cd:#101e30;--tx:#f4f7fc;--tx2:#b6cce8;--tx3:#829cbd;--bd:rgba(95,155,225,.3);--bd2:rgba(95,155,225,.48);font-family:Inter,Cairo,sans-serif}
[data-theme=light] .bm-card.bm-sheet{--p:#2469d2;--pl:#3678d7;--a:#2469d2;--bg:#f5f8fd;--cd:#fff;--tx:#122840;--tx2:#496786;--tx3:#6f86a0;--bd:rgba(65,112,171,.21);--bd2:rgba(65,112,171,.35)}
#bodymap,.bm-card.bm-sheet{--bm-hi:#4c8dff;--bm-fill:rgba(76,141,255,.2);--bm-glow:rgba(76,141,255,.4);--bm-dot:#d7ebff;--bm-dotline:#448df5}
#bodymap::before{display:block!important}
@media(max-width:899px){.bm-card.bm-sheet{max-height:min(68vh,560px)}}
[dir=rtl] .bm-card.bm-sheet,[dir=rtl] .bm-card.bm-sheet .bm-name{font-family:Cairo,Inter,sans-serif}


/* Clinic gallery — real photography. Keep the approved carousel, next-slide peek,
   keyboard controls and theme behavior; fit the entire photographs without cropping. */
#gallery .clinic-placeholder.clinic-photo-panel{
 position:relative;isolation:isolate;display:block;overflow:hidden;margin:0;padding:0;
 background:#0b1624;border:1px solid var(--bd2);border-radius:22px;
 width:100%;height:100%;min-width:0;flex-shrink:0;
}
#gallery .clinic-photo-panel::before{
 content:"";position:absolute;z-index:0;inset:-24px;
 background-image:var(--clinic-photo);background-position:center;background-size:cover;
 filter:blur(21px) brightness(.48) saturate(.9);transform:scale(1.06);pointer-events:none;
}
#gallery .clinic-photo-panel .clinic-photo{
 display:block;position:absolute;inset:0;z-index:1;width:100%;height:100%;
 object-fit:cover;object-position:center;max-width:none;max-height:none;
}
#gallery .clinic-photo-panel .clinic-photo-caption{
 position:absolute;z-index:2;left:20px;bottom:20px;right:20px;
 width:max-content;max-width:calc(100% - 40px);text-align:start;
 padding:14px 21px;background:rgba(8,21,39,.87);
 border:1px solid rgba(187,211,245,.28);border-radius:13px;
 box-shadow:0 10px 26px rgba(0,0,0,.22);backdrop-filter:blur(9px);
 pointer-events:none;
}
#gallery .clinic-photo-panel .clinic-photo-caption h3{
 margin:0 0 5px;max-width:none;font:700 clamp(18px,2vw,27px)/1.2 Inter,Montserrat,sans-serif;
 letter-spacing:-.02em;color:#fff!important;
}
#gallery .clinic-photo-panel .clinic-photo-caption p{
 margin:0;max-width:none;font:400 clamp(12px,1.2vw,15px)/1.45 Inter,Montserrat,sans-serif;
 color:#dce8f8!important;
}
@media(min-width:761px){
 #gallery .gal-sl-item .clinic-photo-panel{width:calc(100% - 18px)}
 #gallery .gal-sl-item[data-physio-active=false] .clinic-photo-panel{padding:0;align-items:initial;text-align:initial}
 #gallery .gal-sl-item[data-physio-active=false] .clinic-photo-caption{padding:14px 21px}
}
@media(max-width:760px){
 #gallery .clinic-photo-panel .clinic-photo-caption{
  left:10px;right:10px;bottom:54px;max-width:calc(100% - 20px);
  padding:11px 13px;border-radius:11px;
 }
 #gallery .clinic-photo-panel .clinic-photo-caption h3{font-size:18px}
 #gallery .clinic-photo-panel .clinic-photo-caption p{font-size:12px}
}










@media (max-width:900px) {
  #gallery .gal-sl,
  #gallery .gal-trk,
  #gallery .gal-sl-item,
  #gallery .clinic-photo-panel {
    height:420px;
    min-height:420px;
  }

  .physio-section::before {
    background-size:cover;
    background-position:center;
  }
}




@media (max-width:900px) {
  .hero-copy {
    top:43%;
  }
}

.wa-float {
  background:transparent !important;
  border:0 !important;
  border-radius:50% !important;
}

.wa-float .wa-svg {
  width:100%;
  height:100%;
  background:transparent !important;
  border-radius:50%;
}


@media (min-width:901px) {
  #about .about-portrait {
    transform:none;
    object-fit:contain;
    object-position:center top;
  }
}
