#play{left:max(12px,env(safe-area-inset-left));right:auto;bottom:calc(12px + env(safe-area-inset-bottom));max-width:calc(100vw - 110px);box-sizing:border-box}
@keyframes mobile-neon-soft{0%,100%{opacity:1}50%{opacity:.94}}
@media(max-width:820px),(pointer:coarse){
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:clip;font-size:14px}
 #play{gap:7px;padding:6px 12px 6px 6px;font-size:.85rem;letter-spacing:1px;min-height:44px}#play .orb{width:28px;height:28px}
 .logo,#loader h1{animation-name:mobile-neon-soft}
 .sec{padding:48px 16px}.lead{font-size:14px;line-height:1.75}.h2{font-size:clamp(28px,7vw,42px);line-height:1.12}.eb{font-size:10px;letter-spacing:2px}
 .ht{font-size:clamp(34px,8.5vw,55px)}.hs{font-size:11px;letter-spacing:2px}.hb{gap:12px}.hb .btn{font-size:16px;padding:14px 22px}
 #nav{padding-left:16px;padding-right:16px}.logo{font-size:1.35rem}.nr{gap:8px}#nav .nr>.pill{min-height:42px;display:inline-flex;align-items:center;padding:10px 13px;font-size:11px;box-sizing:border-box}#nav .burg{min-width:44px;min-height:44px}
 #menu{overflow-y:auto;overscroll-behavior:contain;padding:95px 20px 80px}#menu .mg{grid-template-columns:minmax(0,1fr);gap:4px}#menu .mg a{font-size:24px;padding:8px 0}
 .mq{width:100%;max-width:100%;margin-left:0;margin-right:0;overflow:hidden;contain:paint}.mq .tr{font-size:23px}
 .gal,.grid,.booking-grid{min-width:0;max-width:100%}.grid{gap:14px}.grid:has(>a.card[href^="/therapists/"]){grid-template-columns:repeat(2,minmax(0,1fr))}.grid:has(>a.card[href^="/therapists/"]) .card{height:310px}.card .inf{padding:16px 12px}.card .inf h3{font-size:28px}.card .inf p{font-size:10px;letter-spacing:1px}.card .num{font-size:40px}.card .tag{font-size:8px;padding:7px 9px}
 .grid:has(>[data-extra-course]){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid:has(>[data-extra-course]) .pi{height:130px}.grid:has(>[data-extra-course]) .pb{padding:18px 9px}.grid:has(>[data-extra-course]) .pb h3{min-height:58px;font-size:23px}.grid:has(>[data-extra-course]) .pr{font-size:31px;letter-spacing:-1px}.grid:has(>[data-extra-course]) ul{padding:0;min-width:0}.grid:has(>[data-extra-course]) li{font-size:10px;line-height:1.6}.grid:has(>[data-extra-course]) .btn{padding:12px 17px;font-size:15px;letter-spacing:1px}
 .row .n{font-size:30px}.row .d{font-size:21px}.row .l{font-size:12px}.row .go{font-size:17px;padding:12px 20px}
 .lotus-table{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.lotus-table th,.lotus-table td{font-size:12px;padding:12px}
 .lotus-book{padding-top:105px}.lotus-book h1{font-size:38px}.lotus-book .intro{font-size:13px;margin:20px 0 26px}.lotus-book .booking-art{display:block;position:static}.lotus-book .booking-art img{max-height:200px;width:100%;object-fit:contain}.lotus-book .booking-art p{font-size:12px;padding:14px}.lotus-book .booking-layout{gap:18px}.lotus-book #bookingForm{padding:20px 16px}.lotus-book #bookingForm label{font-size:12px}
 input,select,textarea{font-size:16px}button,a.btn,.pill{touch-action:manipulation}
 .v11-world .profile-photo-dialog[open]{width:96vw;max-width:96vw;height:90svh;max-height:90svh}.v11-world .spatial-shortcuts{display:flex;font-size:8px;gap:8px}
}
@media(max-width:350px){.grid:has(>[data-extra-course]) .pr{font-size:27px}.grid:has(>a.card[href^="/therapists/"]) .card{height:270px}.card .inf h3{font-size:24px}.card .tag{font-size:7px}.nr{gap:5px}}

/* Mobile repair: retain content, use intrinsic images and stable 2D rendering. */
@keyframes mobile-heading-enter{from{transform:translateY(6px)}to{transform:translateY(0)}}
@media(max-width:820px),(pointer:coarse){
 html,body{width:100%;max-width:100%;overflow-x:clip}*,*::before,*::after{box-sizing:border-box}
 #app,main,section,.sec,.hin,.split,.grid,.row,.gal{min-width:0;max-width:100%}
 .hero{min-height:0!important;height:auto!important;padding-top:100px;overflow:hidden;display:flex;flex-direction:column}
 .hero .bgi{position:relative!important;inset:auto!important;width:100%;height:auto!important;animation:mobile-heading-enter .8s ease both;transform:none!important;order:0}
 .hero .bgi img{width:100%;height:auto!important;object-fit:contain!important;transform:none!important}
 .hero .hin{position:relative;inset:auto;width:100%;padding:28px 18px 42px;order:1;z-index:3;transform:none!important}
 .hero .shade{pointer-events:none;background:linear-gradient(180deg,transparent,#0b0613 85%);opacity:.3}
 .hero .tint{mix-blend-mode:normal;opacity:.12;pointer-events:none}
 .ht{font-size:clamp(29px,8vw,48px)!important;line-height:1.15!important;letter-spacing:-.5px!important;overflow:visible!important;overflow-wrap:normal}
 .ht .word{white-space:normal!important;display:inline!important;overflow:visible!important}
 .ht .ch,.hs,.hb{opacity:1!important;filter:none!important;animation:mobile-heading-enter .8s ease both!important;transform:none!important;backface-visibility:visible!important}
 .logo{opacity:1!important;filter:none!important;transform:none!important}
 .rv{opacity:1!important;filter:none!important;transform:none!important}
 .simg,.simg:has(img[src*="owner-collection"]){height:auto!important;min-height:0!important;border-radius:24px!important;overflow:hidden;margin-bottom:24px}
 .simg img,.simg:hover img{width:100%;height:auto!important;object-fit:contain!important;transform:none!important}
 .card{height:auto!important;min-height:0!important;transform:none!important}
 .card .in{height:auto!important;display:flex;flex-direction:column;overflow:hidden}
 .card .in>img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;transform:none!important}
 .card .inf{position:relative!important;inset:auto!important;background:linear-gradient(#1b0d27,#0b0613);width:100%;min-height:125px}
 .card .num{top:12px;bottom:auto}.card .inf h3{overflow-wrap:anywhere}
 .gi{height:auto!important;min-height:0!important}.gi img{height:auto!important;object-fit:contain!important}
 .pi{height:auto!important}.pi img{height:auto!important;object-fit:contain!important}
 .mq{transform:none!important;width:100%!important;left:auto!important}
 .row{flex-wrap:wrap;gap:12px}.row>*{min-width:0}.row .n{font-size:clamp(23px,6vw,30px)}
 .beam{height:100%;max-height:900px;filter:blur(12px)}
 .hb{flex-wrap:wrap}.hb .btn{max-width:100%;white-space:normal}
 .v11-world{min-width:0;max-width:100%}.v11-world img{object-fit:contain}
}
@media(max-width:820px),(pointer:coarse){.hero .pnum{position:relative!important;inset:auto!important;order:2;align-self:flex-end;margin:0 18px 20px;font-size:16px}.hero .pnum b{font-size:26px}.ht small{display:block;font-size:.48em;line-height:1.45;margin-top:14px}.hb{margin-top:24px!important}.hero .hin{padding-bottom:24px}.logo{font-size:1.35rem!important}}
