:root{
  --ink:#13221d;--ink-soft:#274037;--forest:#17382c;--forest-2:#295747;
  --cream:#f7f5ef;--paper:#fff;--mint:#e9f1eb;--gold:#c7a365;--gold-light:#efd8a2;
  --muted:#708078;--line:rgba(19,34,29,.1);--shadow:0 24px 70px rgba(20,45,35,.1);
  font-family:"SF Pro Display","SF Pro Text","PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif;
  color:var(--ink);background:#e9eee9;font-synthesis:none
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 15% 0,#fff 0,transparent 30%),linear-gradient(145deg,#e8eee9,#f5f1e7);overflow-x:hidden}
button,a{font:inherit}button{border:0;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid rgba(199,163,101,.48);outline-offset:3px}
.app-shell{width:min(1120px,calc(100% - 40px));min-height:calc(100vh - 40px);margin:20px auto;background:rgba(250,249,245,.96);border:1px solid rgba(255,255,255,.8);border-radius:30px;box-shadow:var(--shadow);overflow:hidden;position:relative}
.topbar{height:78px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(250,249,245,.9);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:12px;background:none;text-align:left}.brand b,.brand small{display:block}.brand b{font-size:20px;letter-spacing:.08em}.brand small{font-size:10px;color:#7d8b84;margin-top:3px}
.brand-mark{width:38px;height:38px;border-radius:13px;background:var(--forest);display:flex;align-items:center;justify-content:center;gap:3px}.brand-mark>i{display:block;width:3px;border-radius:5px;background:linear-gradient(#f5dda7,#b98b43)}.brand-mark>i:nth-child(1){height:11px}.brand-mark>i:nth-child(2){height:23px}.brand-mark>i:nth-child(3){height:16px}.brand-mark.light{background:rgba(255,255,255,.13)}
.top-actions{display:flex;align-items:center;gap:9px}.icon-btn,.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;position:relative}.icon-btn{background:#eef1ec}.icon-btn svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-btn .dot{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:#d2a352}.avatar{background:var(--forest);color:#efd79d;font-weight:800}
main{padding:34px 38px 112px}.view{display:none;animation:fade .28s ease}.view.active{display:block}@keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.hello-row,.page-head,.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.eyebrow{display:block;font-size:11px;letter-spacing:.15em;font-weight:800;color:#9a783e;margin-bottom:7px}.hello-row h1,.page-head h1,.profile-title h1{font-size:clamp(30px,4vw,46px);letter-spacing:-.04em;line-height:1.08;margin:0}.text-link{background:none;font-weight:700;padding:10px 0}.text-link span{color:var(--gold);margin-left:7px}
.member-card{height:300px;border-radius:28px;margin-top:26px;background:linear-gradient(125deg,#0c261c,#244f3e 68%,#346552);color:#fff;overflow:hidden;position:relative;box-shadow:0 22px 50px rgba(20,55,42,.2)}
.member-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 20%,rgba(240,213,150,.16),transparent 31%)}
.member-card-copy{position:absolute;z-index:2;left:38px;top:50%;transform:translateY(-50%)}.member-label{display:inline-flex;padding:7px 11px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:12px}.member-card h2{font-size:38px;letter-spacing:-.04em;margin:17px 0 7px}.member-card p{color:rgba(255,255,255,.67);margin:0 0 23px}.member-cta{height:48px;padding:0 18px;border-radius:14px;background:linear-gradient(135deg,#f1dca8,#c89a4f);font-weight:800;color:#203026}.member-cta span{margin-left:16px}
.member-card.is-active{background:linear-gradient(125deg,#14211d,#315243)}.member-orbit{position:absolute;right:8%;top:50%;width:190px;height:190px;transform:translateY(-50%);display:grid;place-items:center}.member-orbit>i{position:absolute;border:1px solid rgba(239,216,162,.2);border-radius:50%}.member-orbit>i:nth-child(1){inset:0}.member-orbit>i:nth-child(2){inset:25px}.member-orbit>i:nth-child(3){inset:51px}.member-orbit .brand-mark{width:52px;height:52px;border-radius:17px}
.primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:15px}.action-card{min-height:108px;border-radius:22px;padding:17px 18px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;text-align:left;border:1px solid var(--line);transition:.2s}.action-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(20,45,35,.08)}.booking-action{background:#fff}.sound-action{background:#e7eee8}.action-icon{width:50px;height:50px;border-radius:16px;background:var(--forest);color:#f2d89d;display:grid;place-items:center}.sound-action .action-icon{background:#fff;color:var(--forest)}.action-icon svg,.service-icon svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.action-card span:nth-child(2)>*{display:block}.action-card small{font-size:11px;color:var(--muted)}.action-card b{font-size:19px;margin:3px 0}.action-card em{font-size:12px;color:#6e7c75;font-style:normal}.action-card>strong{font-size:18px;color:#8a9a91}
.experience-section{margin-top:42px}.section-head h2{font-size:28px;margin:0;letter-spacing:-.03em}.soft-note,.access-pill{font-size:12px;color:#587066;background:#e7eee8;padding:8px 11px;border-radius:999px}.experience-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:17px}.experience-card{min-height:260px;border-radius:24px;padding:25px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.experience-card:after{content:"";position:absolute;width:170px;height:170px;border:1px solid currentColor;opacity:.08;border-radius:50%;right:-50px;top:-55px;box-shadow:0 0 0 28px currentColor}.audio-card{background:#142b23;color:#fff}.visit-card{background:#ebdfc7;color:#312b20}.mini-pill{display:inline-flex;padding:6px 9px;border-radius:99px;background:rgba(255,255,255,.1);font-size:11px}.visit-card .mini-pill{background:rgba(49,43,32,.08)}.experience-card h3{font-size:29px;margin:17px 0 7px}.experience-card p{font-size:14px;line-height:1.65;opacity:.66;max-width:400px;margin:0}.card-bottom{display:flex;align-items:flex-end;justify-content:space-between;position:relative;z-index:2}.card-bottom small,.card-bottom strong{display:block}.card-bottom small{font-size:10px;opacity:.55}.card-bottom strong{font-size:25px;margin-top:2px}.card-bottom button{background:#fff;color:var(--ink);border-radius:12px;padding:11px 14px;font-weight:700}.visit-card .card-bottom button{background:var(--forest);color:#fff}
.compact-teacher{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;background:#fff;border:1px solid var(--line);border-radius:21px;padding:18px;margin-top:16px}.teacher-seal{width:56px;height:66px;border-radius:16px;background:linear-gradient(145deg,#e9d19c,#b78948);display:grid;place-items:center;font:27px Georgia,"Songti SC",serif}.compact-teacher h3{font-size:19px;margin:0 0 4px}.compact-teacher p{color:var(--muted);font-size:13px;line-height:1.55;margin:0}.compact-teacher a{width:38px;height:38px;background:#f0f2ee;color:var(--ink);border-radius:50%;display:grid;place-items:center;text-decoration:none}.health-note{font-size:12px;color:#86928c;text-align:center;line-height:1.6;margin:17px 0 0}
.page-head{align-items:center;margin-bottom:25px}.page-head h1{font-size:42px}.page-head p{font-size:15px;color:var(--muted);margin:8px 0 0}
.featured-player{height:350px;border-radius:26px;overflow:hidden;position:relative;background:#0c1814;color:#fff}.featured-player img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.player-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,18,14,.96),rgba(7,18,14,.55) 55%,rgba(7,18,14,.05))}.player-copy{position:absolute;left:36px;top:50%;transform:translateY(-50%)}.player-copy>span{font-size:12px;color:#e8cd91}.player-copy h2{font:48px Georgia,"Songti SC",serif;letter-spacing:.12em;margin:15px 0 7px}.player-copy p{color:rgba(255,255,255,.6);margin:0 0 22px}.player-copy button{height:48px;border-radius:14px;padding:0 18px;background:#f0d89f;font-weight:800}.player-copy button i{font-style:normal;font-size:11px;margin-right:8px}
.track-list{display:grid;gap:10px;margin-top:14px}.track{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;text-align:left;background:#fff;border:1px solid var(--line);padding:11px;border-radius:17px}.track-art{width:55px;height:55px;border-radius:14px;display:grid;place-items:center;font:21px Georgia,"Songti SC",serif}.track-art.amber{background:#eee1c5}.track-art.ink{background:#26382f;color:#eed297}.track-art.blue{background:#dde8e7;color:#41645e}.track b,.track small{display:block}.track small{font-size:12px;color:var(--muted);margin-top:5px}.track em{font-style:normal;width:36px;height:36px;border-radius:50%;background:#eff2ed;display:grid;place-items:center;font-size:10px}
.booking-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}.booking-step{display:flex;align-items:center;gap:10px;margin:2px 0 13px}.booking-step:not(:first-child){margin-top:27px}.booking-step span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:#fff;font-size:11px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:11px}.service{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-align:left;background:#f5f6f3;border:1px solid transparent;border-radius:16px;padding:14px}.service.active{background:#f4eddf;border-color:#d6b36f}.service-icon{width:43px;height:43px;border-radius:13px;background:#fff;display:grid;place-items:center;color:#8b6a32}.service b,.service small{display:block}.service small{font-size:12px;color:var(--muted);margin-top:4px}.service>i{font-style:normal;color:#997533;opacity:0}.service.active>i{opacity:1}.date-strip{display:flex;gap:9px;overflow:auto;padding-bottom:3px}.date{min-width:76px;padding:10px 8px;border-radius:15px;background:#f1f2ee}.date small,.date b,.date em{display:block;font-style:normal}.date small,.date em{font-size:10px;color:var(--muted)}.date b{font-size:23px;margin:3px}.date.active{background:var(--forest);color:#fff}.date.active small,.date.active em{color:#cbd8d1}.time-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.time-grid button{padding:13px 8px;border-radius:12px;background:#f1f2ee}.time-grid button.active{background:#e4d1a9;font-weight:800}.time-grid button:disabled{opacity:.35;text-decoration:line-through}
.booking-bar{position:sticky;bottom:82px;background:rgba(19,34,29,.97);color:#fff;border-radius:19px;padding:14px 15px;margin-top:13px;display:flex;justify-content:space-between;align-items:center;gap:18px;box-shadow:0 16px 40px rgba(17,37,28,.2);z-index:10}.booking-bar small,.booking-bar b{display:block}.booking-bar small{color:rgba(255,255,255,.55);font-size:11px}.booking-bar b{font-size:14px;margin-top:4px}.booking-bar button{height:47px;padding:0 18px;border-radius:13px;background:linear-gradient(135deg,#f0d9a1,#c49a56);font-weight:800}
.segmented{display:grid;grid-template-columns:1fr 1fr;width:min(430px,100%);background:#e9ece7;padding:5px;border-radius:14px}.segmented button{padding:12px;border-radius:10px;background:transparent;color:#718078}.segmented button.active{background:#fff;color:var(--ink);font-weight:800;box-shadow:0 3px 12px rgba(24,45,36,.08)}.plan-heading{margin:25px 0 14px}.plan-heading h2{font-size:26px;margin:0}.plan-heading p{color:var(--muted);margin:6px 0 0}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.plan-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:21px;padding:21px;min-height:320px}.plan-card.recommended{background:var(--forest);color:#fff;box-shadow:0 18px 42px rgba(20,50,38,.18)}.plan-badge{position:absolute;top:15px;right:15px;background:#ead29f;color:#664b1f;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800}.plan-card h3{font-size:20px;margin:0 0 16px}.plan-price{display:flex;align-items:baseline;gap:5px;margin-bottom:17px}.plan-price small{font-weight:800}.plan-price strong{font-size:39px;letter-spacing:-.04em}.plan-price del{font-size:11px;color:#909b95;margin-left:4px}.plan-card.recommended .plan-price del{color:rgba(255,255,255,.45)}.plan-card ul{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:10px;flex:1}.plan-card li{font-size:13px;line-height:1.45;padding-left:19px;position:relative}.plan-card li:before{content:"✓";position:absolute;left:0;color:#c69e59}.plan-card button{height:44px;border-radius:12px;background:#edf0eb;font-weight:800}.plan-card.recommended button{background:#efd79f}.policy-line{text-align:center;font-size:12px;line-height:1.6;color:#87928d;margin:20px 0 0}
.profile-title{display:flex;align-items:center;gap:14px}.profile-avatar{width:61px;height:61px;border-radius:19px;background:var(--forest);color:#efd59b;display:grid;place-items:center;font:26px Georgia,"Songti SC",serif}.profile-title h1{font-size:35px}.profile-title p{color:var(--muted);margin:4px 0 0}.profile-pass{min-height:235px;margin-top:24px;background:linear-gradient(130deg,#0f281f,#315643);color:#fff;border-radius:25px;padding:26px;position:relative;overflow:hidden}.profile-pass:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;border:1px solid rgba(239,215,159,.18);right:-45px;top:-55px;box-shadow:0 0 0 31px rgba(239,215,159,.04)}.profile-pass span{font-size:11px;color:rgba(255,255,255,.5)}.profile-pass h2{font-size:29px;margin:8px 0}.profile-pass p{color:rgba(255,255,255,.64);margin:0 0 22px}.profile-pass button{position:relative;z-index:2;background:#efd79f;border-radius:12px;padding:11px 14px;font-weight:800}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.profile-stats article{background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px}.profile-stats small,.profile-stats b{display:block}.profile-stats small{color:var(--muted)}.profile-stats b{font-size:27px;margin-top:5px}.menu-list{background:#fff;border:1px solid var(--line);border-radius:19px;margin-top:12px;overflow:hidden}.menu-list button{width:100%;padding:16px 18px;background:#fff;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);text-align:left}.menu-list button:last-child{border:0}.menu-list em{font-size:20px;font-style:normal;color:#95a199}
.bottom-nav{position:fixed;left:50%;bottom:27px;transform:translateX(-50%);z-index:30;width:min(500px,calc(100% - 44px));height:67px;background:rgba(19,34,29,.96);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px);border-radius:22px;padding:6px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 17px 42px rgba(13,35,25,.25)}.bottom-nav button{background:transparent;color:rgba(255,255,255,.5);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px}.bottom-nav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.bottom-nav button.active{background:rgba(255,255,255,.1);color:#efd69c}.bottom-nav .nav-booking{position:relative}.bottom-nav .nav-booking:after{content:"";position:absolute;right:25%;top:9px;width:5px;height:5px;border-radius:50%;background:#deb96f}
.mini-player{position:fixed;z-index:40;left:50%;bottom:103px;transform:translate(-50%,130px);width:min(470px,calc(100% - 50px));padding:10px 12px;background:#10251d;color:#fff;border-radius:16px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:11px;opacity:0;transition:.3s;box-shadow:0 15px 38px rgba(0,0,0,.25)}.mini-player.visible{opacity:1;transform:translate(-50%,0)}.mini-player button:first-child{width:38px;height:38px;border-radius:11px;background:#e7ca8c;font-size:11px}.mini-player button:last-child{background:transparent;color:rgba(255,255,255,.5);font-size:20px}.mini-player small,.mini-player b{display:block}.mini-player small{font-size:9px;color:rgba(255,255,255,.48)}.mini-player b{font-size:13px;margin-top:3px}.mini-bars{display:flex;gap:2px;align-items:center}.mini-bars i{display:block;width:2px;height:16px;background:#e0bc72;border-radius:4px;animation:bar 1s infinite}.mini-bars i:nth-child(2){height:9px;animation-delay:.18s}.mini-bars i:nth-child(3){height:19px;animation-delay:.33s}@keyframes bar{50%{height:5px}}.mini-player.paused .mini-bars i{animation-play-state:paused}
.toast{position:fixed;z-index:90;left:50%;top:25px;transform:translate(-50%,-80px);background:#14261f;color:#fff;border-radius:13px;padding:13px 17px;font-size:13px;opacity:0;transition:.3s;box-shadow:0 14px 35px rgba(0,0,0,.2)}.toast.show{opacity:1;transform:translate(-50%,0)}
.sheet-backdrop{position:fixed;z-index:60;inset:0;background:rgba(6,17,12,.45);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:.25s}.sheet-backdrop.show{opacity:1;pointer-events:auto}.plan-sheet{position:fixed;z-index:70;left:50%;bottom:0;transform:translate(-50%,110%);width:min(540px,100%);background:#14271f;color:#fff;border-radius:25px 25px 0 0;padding:31px 27px max(25px,env(safe-area-inset-bottom));box-shadow:0 -20px 60px rgba(0,0,0,.28);transition:.3s}.plan-sheet.show{transform:translate(-50%,0)}.sheet-handle{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:42px;height:4px;background:rgba(255,255,255,.2);border-radius:5px}.sheet-close{position:absolute;right:17px;top:17px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:20px}.plan-sheet h2{font-size:28px;margin:0 0 17px}.sheet-plan{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.sheet-plan b{font-size:17px}.sheet-plan strong{font-size:25px;color:#eed397}.sheet-benefit{color:rgba(255,255,255,.64);font-size:13px;line-height:1.65;margin:17px 0}.sheet-action{width:100%;height:50px;border-radius:14px;background:linear-gradient(135deg,#f1dba6,#c79c54);font-weight:800}.plan-sheet>small{display:block;text-align:center;color:rgba(255,255,255,.42);font-size:11px;margin-top:11px}
@media(max-width:780px){
  body{background:var(--cream)}.app-shell{width:100%;min-height:100vh;margin:0;border:0;border-radius:0;box-shadow:none}.topbar{height:68px;padding:0 17px}.brand-mark{width:35px;height:35px}.brand b{font-size:18px}.brand small{font-size:8px}.icon-btn{display:none}.avatar{width:38px;height:38px}main{padding:24px 17px 112px}.hello-row h1{font-size:29px;max-width:320px}.desktop-only{display:none}.member-card{height:270px;margin-top:20px;border-radius:23px}.member-card-copy{left:23px;right:23px}.member-card h2{font-size:31px}.member-card p{font-size:14px}.member-orbit{right:-25px;width:155px;height:155px;opacity:.65}.member-orbit .brand-mark{width:46px;height:46px}.primary-actions{grid-template-columns:1fr 1fr;gap:9px}.action-card{min-height:145px;display:flex;flex-direction:column;align-items:flex-start;padding:15px;gap:9px}.action-card>strong{position:absolute;right:15px;top:15px}.action-card{position:relative}.action-icon{width:43px;height:43px}.action-card b{font-size:17px}.experience-section{margin-top:34px}.section-head{align-items:flex-start}.section-head h2{font-size:24px}.experience-grid{grid-template-columns:1fr}.experience-card{min-height:235px;padding:22px}.compact-teacher{grid-template-columns:auto 1fr}.compact-teacher a{display:none}.compact-teacher p{font-size:12px}.page-head{align-items:flex-start}.page-head h1{font-size:34px}.page-head p{font-size:13px}.featured-player{height:400px}.featured-player img{object-position:64% center}.player-shade{background:linear-gradient(180deg,rgba(7,18,14,.06),rgba(7,18,14,.91) 70%)}.player-copy{left:23px;right:23px;top:auto;bottom:26px;transform:none}.player-copy h2{font-size:40px}.service-list{grid-template-columns:1fr}.time-grid{grid-template-columns:repeat(3,1fr)}.booking-card{padding:17px;border-radius:21px}.booking-bar{bottom:84px}.booking-bar button{padding:0 14px}.plans{grid-template-columns:1fr}.plan-card{min-height:0}.profile-title h1{font-size:29px}.bottom-nav{bottom:11px;width:calc(100% - 22px);height:65px}.mini-player{bottom:89px}.soft-note,.access-pill{white-space:nowrap}
}
@media(max-width:420px){.hello-row h1{font-size:27px}.member-card{height:260px}.member-orbit{right:-45px}.primary-actions{grid-template-columns:1fr}.action-card{min-height:92px;display:grid;grid-template-columns:auto 1fr auto;align-items:center}.action-card>strong{position:static}.experience-card h3{font-size:26px}.page-head{display:block}.page-head>.access-pill{display:inline-flex;margin-top:12px}.featured-player{height:365px}.date-strip{margin-right:-17px}.profile-stats{gap:7px}.profile-stats article{padding:14px 10px}.booking-bar{align-items:flex-end}.booking-bar b{font-size:12px}.booking-bar button{height:44px}}
.registration-card,.member-identity{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:25px;padding:26px}.registration-intro h2,.member-identity h2{font-size:27px;letter-spacing:-.03em;margin:0 0 7px}.registration-intro p{color:var(--muted);font-size:14px;line-height:1.6;margin:0 0 22px}.registration-card form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-field{display:grid;gap:8px}.form-field>span{font-size:13px;font-weight:750}.form-field i{color:#b77e35;font-style:normal}.form-field input{width:100%;height:49px;border:1px solid #dce2dc;border-radius:13px;background:#f8f9f7;padding:0 14px;color:var(--ink);font:inherit;font-size:15px;outline:0;transition:.2s}.form-field input:focus{background:#fff;border-color:#b6904e;box-shadow:0 0 0 4px rgba(199,163,101,.13)}.form-field input[aria-invalid="true"]{border-color:#bd594e;background:#fff7f5}.form-field-wide{grid-column:1/-1}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.consent-field{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;color:#5e6e66;font-size:13px;line-height:1.55;cursor:pointer}.consent-field input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--forest)}.registration-actions{display:flex;align-items:center;gap:14px}.registration-actions button{height:49px;padding:0 25px;border-radius:14px;background:linear-gradient(135deg,#17382c,#2e604d);color:#fff;font-weight:800;white-space:nowrap}.registration-actions button:disabled{opacity:.55;cursor:wait}.registration-actions p{font-size:13px;color:#a54f45;margin:0}.registration-actions p.success{color:#2a684f}.registration-note{display:block;color:#8b9791;font-size:11px;line-height:1.6;margin-top:16px}.member-identity{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;background:linear-gradient(130deg,#112a21,#315744);color:#fff}.identity-check{width:50px;height:50px;border-radius:16px;background:#efd79f;color:#214133;display:grid;place-items:center;font-size:21px;font-weight:900}.member-identity .eyebrow{color:#e3c787}.member-identity h2{margin-bottom:6px}.member-identity p{color:rgba(255,255,255,.64);font-size:13px;line-height:1.65;margin:0}.member-identity p b{color:#efd79f;letter-spacing:.04em}.verified-pill{font-size:11px;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#efd79f;white-space:nowrap}
@media(max-width:780px){.registration-card,.member-identity{padding:20px;border-radius:21px}.registration-card form{grid-template-columns:1fr}.form-field-wide{grid-column:auto}.registration-actions{align-items:flex-start;flex-direction:column}.registration-actions button{width:100%}.member-identity{grid-template-columns:auto 1fr}.member-identity>.verified-pill{grid-column:1/-1;justify-self:start}.registration-intro h2,.member-identity h2{font-size:23px}}
.announcement-carousel{position:relative;margin-top:24px;padding-bottom:25px;touch-action:pan-y}.announcement-viewport{overflow:hidden;border-radius:27px;box-shadow:0 20px 50px rgba(20,45,35,.15)}.announcement-track{display:flex;transition:transform .55s cubic-bezier(.22,.8,.25,1);will-change:transform}.announcement-slide{position:relative;isolation:isolate;flex:0 0 100%;min-width:100%;height:290px;overflow:hidden;padding:36px 40px;color:#fff}.announcement-slide:before{content:"";position:absolute;inset:0;z-index:-2}.announcement-slide:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,25,18,.96) 0%,rgba(8,25,18,.72) 54%,rgba(8,25,18,.15) 100%)}.announcement-welcome:before{background:radial-gradient(circle at 82% 25%,rgba(238,207,139,.22),transparent 25%),linear-gradient(135deg,#0b2119,#1c4d3a 65%,#a27b3b)}.announcement-visit:before{background:radial-gradient(circle at 82% 30%,rgba(239,214,160,.3),transparent 28%),linear-gradient(135deg,#10291f,#4e725f 67%,#c09c61)}.announcement-scan:before{background:radial-gradient(circle at 79% 42%,rgba(239,191,111,.34),transparent 25%),linear-gradient(135deg,#152722,#6b4f30 70%,#d8a55e)}.announcement-copy{position:relative;z-index:2;max-width:62%}.announcement-kicker{display:block;color:#ebcc89;font-size:11px;font-weight:850;letter-spacing:.15em;margin-bottom:12px}.announcement-copy h2{font-size:clamp(31px,4vw,43px);letter-spacing:-.045em;line-height:1.08;margin:0 0 11px}.announcement-copy p{font-size:14px;line-height:1.6;color:rgba(255,255,255,.68);margin:0 0 20px}.announcement-copy button{height:44px;padding:0 16px;border-radius:13px;background:linear-gradient(135deg,#f2dba2,#c4974e);color:#203329;font-weight:850}.announcement-copy button span{padding-left:12px}.announcement-art{position:absolute;right:6%;top:50%;width:185px;height:185px;transform:translateY(-50%);display:grid;place-items:center}.announcement-art i{position:absolute;border:1px solid rgba(255,233,186,.28);border-radius:50%}.announcement-art i:nth-child(1){inset:0}.announcement-art i:nth-child(2){inset:24px}.announcement-art i:nth-child(3){inset:49px}.announcement-art b{width:64px;height:64px;border-radius:21px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);display:grid;place-items:center;color:#f0d18d;font:700 27px Georgia,"Songti SC",serif;box-shadow:0 14px 30px rgba(0,0,0,.16)}.pulse-orbit i:nth-child(2){animation:announcementPulse 2.4s ease-in-out infinite}.thermal-orbit i{border-color:rgba(255,217,157,.38)}@keyframes announcementPulse{50%{transform:scale(1.09);opacity:.45}}.announcement-arrow{position:absolute;z-index:4;top:calc(50% - 16px);width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:28px;line-height:1;display:grid;place-items:center;backdrop-filter:blur(9px);opacity:0;transition:opacity .2s,background .2s}.announcement-carousel:hover .announcement-arrow,.announcement-arrow:focus-visible{opacity:1}.announcement-prev{left:12px}.announcement-next{right:12px}.announcement-arrow:hover{background:rgba(255,255,255,.24)}.announcement-dots{position:absolute;left:50%;bottom:7px;transform:translateX(-50%);display:flex;gap:7px;align-items:center}.announcement-dots button{width:7px;height:7px;padding:0;border-radius:99px;background:#cbd2cc;transition:.25s}.announcement-dots button.active{width:24px;background:#b28a49}.member-card{margin-top:10px}
.promo-backdrop{position:fixed;z-index:110;inset:0;padding:20px;background:rgba(5,17,12,.64);backdrop-filter:blur(8px);display:grid;place-items:center;opacity:0;transition:opacity .24s}.promo-backdrop.show{opacity:1}.promo-backdrop[hidden]{display:none}.login-promo{position:relative;width:min(450px,100%);overflow:hidden;border-radius:28px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.35);transform:translateY(18px) scale(.98);transition:transform .3s cubic-bezier(.2,.8,.2,1)}.promo-backdrop.show .login-promo{transform:none}.promo-close{position:absolute;z-index:3;right:14px;top:14px;width:39px;height:39px;border-radius:50%;background:rgba(7,25,18,.54);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:25px;line-height:1;display:grid;place-items:center;backdrop-filter:blur(8px)}.promo-close:hover{background:rgba(7,25,18,.75)}.promo-visual{height:210px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 32%,rgba(240,211,151,.28),transparent 30%),linear-gradient(145deg,#0b2119,#295844)}.promo-visual:after{content:"";position:absolute;inset:auto -20% -58% -20%;height:175px;border-radius:50%;border:1px solid rgba(239,213,155,.26);box-shadow:0 0 0 30px rgba(239,213,155,.05),0 0 0 61px rgba(239,213,155,.04)}.promo-wave{position:absolute;inset:0;display:flex;gap:7px;align-items:center;justify-content:center}.promo-wave i{display:block;width:6px;height:45px;border-radius:99px;background:linear-gradient(#f1daa4,#b98a43);opacity:.6;animation:promoWave 1.3s ease-in-out infinite}.promo-wave i:nth-child(2),.promo-wave i:nth-child(4){height:88px;animation-delay:.13s}.promo-wave i:nth-child(3){height:125px;animation-delay:.25s}.promo-wave i:nth-child(5){animation-delay:.36s}@keyframes promoWave{50%{transform:scaleY(.58);opacity:1}}.promo-seal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:65px;height:65px;border-radius:22px;background:#163b2d;color:#efd292;display:grid;place-items:center;font:700 28px Georgia,"Songti SC",serif;box-shadow:0 12px 30px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.16)}.promo-copy{padding:27px 30px 29px;text-align:center}.promo-label{display:inline-flex;padding:7px 11px;border-radius:999px;background:#edf3ee;color:#315b49;font-size:11px;font-weight:850;letter-spacing:.08em}.promo-copy h2{font-size:30px;line-height:1.15;letter-spacing:-.04em;margin:14px 0 10px}.promo-copy p{color:var(--muted);font-size:14px;line-height:1.6;margin:0}.promo-copy p b{color:#8e682d;font-size:19px}.promo-action{width:100%;height:51px;margin-top:21px;border-radius:14px;background:linear-gradient(135deg,#17382c,#2f604d);color:#fff;font-weight:850}.promo-action span{padding-left:15px;color:#efd39a}.promo-copy small{display:block;color:#8a9690;font-size:11px;line-height:1.5;margin-top:11px}body.modal-open{overflow:hidden}
@media(max-width:780px){.announcement-slide{height:275px;padding:30px 24px}.announcement-copy{max-width:72%}.announcement-copy h2{font-size:32px}.announcement-copy p{font-size:13px;max-width:290px}.announcement-art{right:-18px;width:150px;height:150px;opacity:.75}.announcement-arrow{display:none}.announcement-viewport{border-radius:23px}.member-card{margin-top:8px}.promo-backdrop{padding:14px}.login-promo{border-radius:24px}.promo-visual{height:190px}.promo-copy{padding:24px 22px 25px}.promo-copy h2{font-size:27px}}
@media(max-width:420px){.announcement-carousel{margin-top:19px}.announcement-slide{height:255px;padding:25px 20px}.announcement-copy{max-width:82%}.announcement-copy h2{font-size:29px}.announcement-copy p{max-width:245px;margin-bottom:16px}.announcement-art{right:-52px;width:142px;height:142px;opacity:.54}.announcement-copy button{height:41px}.promo-visual{height:165px}.promo-copy h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Supplied Healing Voice branding and bilingual recruitment posters */
.brand-logo{width:42px;height:42px;flex:0 0 auto;border-radius:14px;object-fit:cover;box-shadow:0 5px 16px rgba(4,19,73,.18)}
.announcement-carousel{--carousel-height:290px;margin-top:0}
.announcement-viewport{height:var(--carousel-height);transition:height .45s cubic-bezier(.22,.8,.25,1),border-radius .3s}
.announcement-track{height:100%}
.announcement-slide{height:100%}
.announcement-carousel.poster-active{--carousel-height:min(650px,72vh)}
.announcement-poster{padding:0;background:linear-gradient(135deg,#0c1747,#dbc080)}
.announcement-poster:before,.announcement-poster:after{display:none}
.hiring-poster-link{width:100%;height:100%;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.23),transparent 44%),linear-gradient(135deg,#0b1749,#a98236);text-decoration:none}
.hiring-poster-media{position:relative;display:block;width:min(100%,calc(var(--carousel-height) * .666667));aspect-ratio:2/3;max-height:100%;overflow:hidden;background:#f8f2e5;box-shadow:0 0 0 1px rgba(255,255,255,.24),0 18px 48px rgba(2,12,52,.28)}
.hiring-poster{display:block;width:100%;height:100%;object-fit:contain;background:#f8f2e5}
.poster-logo-badge{position:absolute;left:2.5%;top:1.7%;width:12%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:2px solid rgba(255,226,146,.94);box-shadow:0 7px 18px rgba(34,18,0,.32);background:#071550}
.poster-logo-badge img{display:block;width:100%;height:100%;object-fit:cover}
.hiring-poster-link:focus-visible{outline:3px solid #f0cb73;outline-offset:-5px}
.hello-row{margin-top:27px}
.promo-seal{overflow:hidden;padding:0}
.promo-seal img{display:block;width:100%;height:100%;object-fit:cover}

@media(max-width:780px){
  .brand-logo{width:39px;height:39px;border-radius:13px}
  .announcement-carousel{--carousel-height:275px;margin-top:0}
  .announcement-carousel.poster-active{--carousel-height:min(590px,74vh)}
  .announcement-poster{padding:0}
  .hello-row{margin-top:23px}
}

@media(max-width:420px){
  .announcement-carousel{margin-top:0;--carousel-height:255px}
  .announcement-carousel.poster-active{--carousel-height:min(560px,73vh)}
  .poster-logo-badge{width:13%;left:2.8%;top:1.8%}
}

/* Spatial glass refresh — dimensional, calm and touch-first */
:root{
  --glass:rgba(255,255,255,.7);
  --glass-strong:rgba(255,255,255,.88);
  --glass-line:rgba(255,255,255,.84);
  --depth-shadow:0 30px 80px rgba(16,47,36,.16),0 2px 7px rgba(17,43,34,.06);
}
body{
  background:
    radial-gradient(circle at 7% 2%,rgba(255,255,255,.98) 0 13%,transparent 34%),
    radial-gradient(circle at 94% 18%,rgba(216,191,137,.26),transparent 28%),
    radial-gradient(circle at 68% 88%,rgba(103,168,143,.22),transparent 31%),
    linear-gradient(145deg,#dfe9e3 0%,#f8f4ea 48%,#e4eee9 100%);
  background-attachment:fixed;
}
body:before,body:after{content:"";position:fixed;z-index:-1;border-radius:50%;filter:blur(5px);pointer-events:none;opacity:.72}
body:before{width:320px;height:320px;left:-125px;top:28%;background:radial-gradient(circle at 36% 32%,rgba(255,255,255,.95),rgba(116,181,156,.23) 45%,transparent 72%)}
body:after{width:370px;height:370px;right:-160px;bottom:-65px;background:radial-gradient(circle at 42% 38%,rgba(246,217,154,.38),rgba(255,255,255,.16) 48%,transparent 72%)}
.app-shell{
  background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(248,248,243,.7));
  border:1px solid var(--glass-line);
  box-shadow:0 42px 110px rgba(21,52,41,.2),inset 0 1px 0 rgba(255,255,255,.92);
  backdrop-filter:blur(30px) saturate(145%);
}
.topbar{
  background:rgba(251,251,248,.67);
  border-bottom:1px solid rgba(255,255,255,.9);
  box-shadow:0 12px 38px rgba(23,56,44,.05);
  backdrop-filter:blur(28px) saturate(160%);
}
.brand-logo,.avatar,.icon-btn{box-shadow:0 10px 24px rgba(13,46,34,.12),inset 0 1px 0 rgba(255,255,255,.72)}
.announcement-viewport,.member-card,.action-card,.experience-card,.featured-player,.booking-card,.registration-card,.member-identity,.profile-pass,.profile-stats article,.menu-list,.plan-card{
  border:1px solid rgba(255,255,255,.72);
  box-shadow:var(--depth-shadow),inset 0 1px 0 rgba(255,255,255,.28);
}
.announcement-viewport{box-shadow:0 33px 76px rgba(19,49,38,.2),0 8px 19px rgba(21,47,37,.09),inset 0 1px 0 rgba(255,255,255,.42)}
.member-card{transform-style:preserve-3d;box-shadow:0 34px 70px rgba(11,51,36,.28),inset 0 1px 0 rgba(255,255,255,.2)}
.member-card:after{content:"";position:absolute;z-index:1;left:6%;right:6%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent)}
.member-card-copy{transform:translateY(-50%) translateZ(24px)}
.member-orbit{filter:drop-shadow(0 18px 25px rgba(0,0,0,.18));transform:translateY(-50%) translateZ(16px)}
.action-card,.experience-card,.plan-card,.profile-stats article{transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .28s}
.action-card{background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(246,248,245,.73));backdrop-filter:blur(18px)}
.sound-action{background:linear-gradient(145deg,rgba(232,242,235,.96),rgba(216,231,222,.78))}
.action-icon{box-shadow:0 14px 26px rgba(20,57,43,.2),inset 0 1px 0 rgba(255,255,255,.2)}
.bottom-nav{
  background:linear-gradient(145deg,rgba(14,38,29,.9),rgba(28,65,50,.86));
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 24px 58px rgba(7,28,20,.32),inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(28px) saturate(155%);
}
.bottom-nav button.active{background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(255,255,255,.07));box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 7px 18px rgba(0,0,0,.12)}
.segmented{background:rgba(223,232,226,.72);border:1px solid rgba(255,255,255,.72);box-shadow:inset 0 2px 5px rgba(19,48,37,.07);backdrop-filter:blur(16px)}
.segmented button.active{box-shadow:0 10px 23px rgba(20,49,39,.12),inset 0 1px 0 #fff}
.promo-backdrop{backdrop-filter:blur(15px) saturate(115%)}
.login-promo{border:1px solid rgba(255,255,255,.58);box-shadow:0 45px 120px rgba(0,0,0,.43),inset 0 1px 0 rgba(255,255,255,.7)}
button:active,.teacher-actions a:active{transform:scale(.97)}

/* Founder story */
.teacher-showcase{
  margin-top:18px;
  padding:14px;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);
  gap:14px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:29px;
  background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(239,245,240,.7));
  box-shadow:0 34px 78px rgba(18,53,40,.15),inset 0 1px 0 #fff;
  backdrop-filter:blur(24px) saturate(135%);
  overflow:hidden;
  position:relative;
}
.teacher-showcase:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-95px;top:-130px;background:radial-gradient(circle,rgba(226,192,119,.3),transparent 70%);pointer-events:none}
.teacher-hero{min-height:390px;position:relative;border-radius:22px;overflow:hidden;background:#0d2149;box-shadow:0 25px 54px rgba(12,31,58,.25),inset 0 1px 0 rgba(255,255,255,.4)}
.teacher-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,20,49,.03) 44%,rgba(7,25,40,.78) 100%)}
.teacher-hero img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.teacher-photo-shine{position:absolute;z-index:2;inset:-45% auto -45% -27%;width:38%;transform:rotate(17deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);pointer-events:none}
.teacher-hero-label{position:absolute;z-index:3;left:22px;bottom:20px;display:grid;gap:4px;padding:12px 14px;border:1px solid rgba(255,255,255,.28);border-radius:15px;background:rgba(4,20,38,.44);color:#fff;backdrop-filter:blur(16px);box-shadow:0 13px 35px rgba(0,0,0,.18)}
.teacher-hero-label span{font-size:10px;letter-spacing:.17em;color:#edd18f;font-weight:850}.teacher-hero-label b{font-size:16px}
.teacher-story{position:relative;z-index:2;padding:28px 24px 22px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.teacher-story h2{font-size:clamp(34px,4vw,49px);line-height:1.04;letter-spacing:-.05em;margin:0 0 14px}
.teacher-story>p{font-size:15px;line-height:1.75;color:#67776f;margin:0}.teacher-story .teacher-lead{font-size:19px;line-height:1.48;font-weight:750;color:#254438;margin-bottom:13px}
.teacher-points{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:23px}
.teacher-points span{min-width:0;padding:12px 9px;border:1px solid rgba(255,255,255,.9);border-radius:15px;background:rgba(255,255,255,.65);box-shadow:0 10px 24px rgba(21,55,42,.08),inset 0 1px 0 #fff}
.teacher-points i,.teacher-points b{display:block}.teacher-points i{font-style:normal;font-size:9px;color:#aa8240;letter-spacing:.08em}.teacher-points b{font-size:13px;margin-top:6px;white-space:nowrap}
.teacher-actions{display:flex;align-items:center;gap:10px;margin-top:23px}
.teacher-actions button,.teacher-actions a{min-height:46px;padding:0 16px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:14px;font-size:13px;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s}
.teacher-actions button{background:linear-gradient(145deg,#15392b,#2e604d);color:#fff;box-shadow:0 14px 28px rgba(18,56,41,.2),inset 0 1px 0 rgba(255,255,255,.18)}
.teacher-actions a{background:rgba(255,255,255,.7);color:#29473b;border:1px solid rgba(26,65,49,.09);box-shadow:0 10px 23px rgba(20,55,42,.07),inset 0 1px 0 #fff}
.teacher-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;min-width:0}
.teacher-gallery figure{position:relative;height:260px;margin:0;overflow:hidden;border-radius:19px;background:#10241d;box-shadow:0 17px 38px rgba(16,45,34,.14);isolation:isolate}
.teacher-gallery figure:after{content:"";position:absolute;inset:36% 0 0;background:linear-gradient(transparent,rgba(4,20,14,.88));z-index:1}
.teacher-gallery img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 20%;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.teacher-gallery figure:nth-child(3) img{object-position:center}
.teacher-gallery figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff}.teacher-gallery figcaption b,.teacher-gallery figcaption span{display:block}.teacher-gallery figcaption b{font-size:18px}.teacher-gallery figcaption span{font-size:12px;color:rgba(255,255,255,.66);margin-top:4px}

@media(hover:hover) and (pointer:fine){
  .action-card:hover,.experience-card:hover,.plan-card:hover,.profile-stats article:hover{transform:translateY(-5px);box-shadow:0 30px 58px rgba(17,50,37,.16),inset 0 1px 0 rgba(255,255,255,.85)}
  .teacher-hero:hover img,.teacher-gallery figure:hover img{transform:scale(1.035)}
  .teacher-actions button:hover,.teacher-actions a:hover{transform:translateY(-2px)}
}

@media(max-width:900px){
  .teacher-showcase{grid-template-columns:1fr}.teacher-hero{min-height:340px}.teacher-story{padding:21px 16px 17px}.teacher-gallery{grid-column:auto}.teacher-gallery figure{height:230px}
}
@media(max-width:780px){
  body{background:linear-gradient(155deg,#f7f7f3,#eaf1ec 46%,#f8f1e5);background-attachment:fixed}
  body:before{width:210px;height:210px}.app-shell{background:rgba(250,250,247,.77);backdrop-filter:blur(25px) saturate(140%)}
  .topbar{background:rgba(250,250,247,.72)}
  .teacher-showcase{margin-top:14px;padding:9px;border-radius:24px;gap:9px}
  .teacher-hero{min-height:0;aspect-ratio:16/10;border-radius:18px}
  .teacher-hero-label{left:13px;bottom:12px;padding:9px 11px;border-radius:12px}.teacher-hero-label b{font-size:14px}
  .teacher-story{padding:21px 13px 17px}.teacher-story h2{font-size:36px}.teacher-story .teacher-lead{font-size:17px}.teacher-story>p{font-size:14px}
  .teacher-points{margin-top:18px}.teacher-points span{padding:11px 8px}.teacher-points b{font-size:12px}
  .teacher-actions{align-items:stretch;flex-direction:column}.teacher-actions button,.teacher-actions a{width:100%}
  .teacher-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:3px 3px 9px;gap:9px}.teacher-gallery::-webkit-scrollbar{display:none}
  .teacher-gallery figure{flex:0 0:min(78vw,310px);height:390px;scroll-snap-align:start}.teacher-gallery figure:nth-child(3){flex-basis:min(85vw,340px)}
  .bottom-nav{box-shadow:0 20px 48px rgba(7,28,20,.34),inset 0 1px 0 rgba(255,255,255,.2)}
}
@media(max-width:420px){
  .teacher-hero{aspect-ratio:16/11}.teacher-story h2{font-size:33px}.teacher-points{gap:5px}.teacher-points span{padding:10px 6px}.teacher-points b{font-size:11px}.teacher-gallery figure{height:360px}
}
