@font-face{font-family:Factory;src:url('/assets/fonts/roboto-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Factory;src:url('/assets/fonts/roboto-700.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Factory;src:url('/assets/fonts/roboto-900.woff2') format('woff2');font-weight:900;font-display:swap}
:root{--ink:#eeece7;--muted:#aaaead;--silver:#d8dcdd;--bg:#101112;--line:#ffffff26;--pad:clamp(24px,6vw,100px);--progress:0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Factory,Arial,sans-serif;font-size:17px;line-height:1.65;overflow-x:clip}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.04;font-weight:900;letter-spacing:-.06em}h2{font-size:clamp(44px,6.8vw,112px)}h3{font-size:30px}p{color:var(--muted)}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em;color:var(--silver)}button{color:inherit}:focus-visible{outline:3px solid #b3d7ed;outline-offset:5px}.skip{position:fixed;top:-100px;left:24px;z-index:100;background:#d8dcdd;color:#101112;padding:12px}.skip:focus{top:10px}header{height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px var(--pad);position:absolute;inset:0 0 auto;z-index:20;border-bottom:1px solid var(--line)}header:after{content:'';position:fixed;left:0;top:0;height:2px;background:var(--silver);width:100%;transform:scaleX(var(--progress));transform-origin:left;pointer-events:none}.brand{width:180px;flex:none}.brand img{width:100%;height:auto;max-height:64px;object-fit:contain;object-position:left center}.brand{display:flex;align-items:center;height:100%;max-height:64px}.footer-logo{height:auto;object-fit:contain}.brand img,.footer-logo{filter:grayscale(1) brightness(.84);mix-blend-mode:normal;background:transparent}nav{display:flex;align-items:center;gap:24px;font-size:14px}nav>a{padding:12px 0;position:relative}nav>a:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:var(--silver);transform:scaleX(0);transform-origin:left;transition:transform .3s}nav>a:hover:after,nav>a[aria-current]:after{transform:scaleX(1)}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;max-width:100%;padding:14px 24px;font-size:14px;font-weight:700;line-height:1.4;letter-spacing:0;border-radius:100px;border:1px solid transparent;text-align:center;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s,background .3s}.silver{color:#151719;background:linear-gradient(115deg,#f4f4ef 0%,#ccd2d5 45%,#eaeeee 80%);border-color:#ffffff5c;box-shadow:0 6px 22px #0002}.silver:before{content:'';position:absolute;top:-150%;bottom:-150%;left:-80%;width:30%;background:#ffffff70;transform:rotate(24deg);transition:left .8s;pointer-events:none}.silver:hover:before{left:150%}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 32px #dce4e21a}.outline-btn{background:transparent;border-color:#ffffff55;color:var(--ink)}.text-link{display:inline-block;padding:8px 0;border-bottom:1px solid currentColor;font-size:15px;line-height:1.5;margin:18px 0;color:inherit;transition:color .3s}.text-link:hover{color:#b5d6e6}.section-meta{display:flex;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.1em;line-height:1.6;color:#aeb7ba}.eyebrow{display:block;font-size:12px;letter-spacing:.12em;line-height:1.6;margin-bottom:24px;color:#b6c1c4}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:48px 0}.section-heading>p{max-width:330px}.outline{color:transparent;-webkit-text-stroke:1px var(--silver)}
.opening{padding:122px var(--pad) 32px;position:relative;background:radial-gradient(ellipse at 75% 55%,#313739 0%,#101112 64%);overflow:hidden}.hero-title{font-size:clamp(96px,17.2vw,280px);line-height:.96;letter-spacing:-.072em;margin-top:28px}.hero-title>span{display:block;animation:hero-in 1.1s cubic-bezier(.2,.8,.2,1) both}.hero-grid{display:grid;grid-template-columns:.85fr 1.3fr;gap:5%;align-items:center;margin-top:8px}.hero-copy{padding:30px 0}.hero-copy h2{font-size:clamp(65px,7.8vw,125px);line-height:1.02;animation:hero-in 1.1s .12s both}.hero-copy>p{font-size:18px;max-width:430px;margin:24px 0 28px;color:#c0c6c5;animation:hero-in 1.1s .25s both}.hero-copy>.btn{animation:hero-in 1.1s .35s both}.hero-copy .text-link{display:block;width:max-content;max-width:100%;color:#aeb8bb;font-size:14px}.hero-photo{position:relative;min-width:0;animation:photo-in 1.5s .12s cubic-bezier(.2,.8,.2,1) both}.photo-inset{height:clamp(350px,37vw,570px);overflow:hidden;border-radius:34px 110px 34px 34px;transform:rotate(-3deg);border:1px solid #ffffff20}.photo-inset img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);filter:saturate(.75)}.hero-orbit{position:absolute;width:190px;height:190px;top:-72px;right:-10px;display:grid;place-items:center;background:#101112ef;border-radius:50%;box-shadow:0 20px 40px #0003}.orbit-text{position:absolute;inset:0;width:100%;height:100%;fill:#d8dfe0;font-size:16px;letter-spacing:2.2px;animation:orbit 38s linear infinite}.orbit-center{text-align:center;font-size:36px;font-weight:900;line-height:1.1}.orbit-center small{display:block;font-size:9px;letter-spacing:.05em;line-height:1.7;margin-top:8px}.photo-caption{display:block;font-size:12px;letter-spacing:.07em;margin:24px 5px 0;color:#c1c7c8}.opening-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding-top:22px;border-top:1px solid var(--line);font-size:12px;letter-spacing:.08em}.opening-bottom a{border-bottom:1px solid #9ca6a9}
.promise{padding:100px var(--pad) 110px;background:#181b1c}.promise h2{font-size:clamp(52px,7.9vw,126px);line-height:1.08;margin:50px 0;max-width:1200px}.word-reveal span{transition:color .2s}.word-reveal .unlit{color:#667071}.word-reveal em .unlit{color:#667071}.promise-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:70px}.promise-bottom p{font-size:19px;max-width:570px}.promise-bottom .text-link{flex:none}.marquee{overflow:hidden;background:#d1d7d7;color:#141819;padding:18px 0;transform:rotate(-2deg) scale(1.015);position:relative;z-index:2}.marquee>div{width:max-content;font-size:clamp(40px,6vw,95px);line-height:1;font-weight:900;letter-spacing:-.045em;animation:marquee 36s linear infinite}.marquee span{color:transparent;-webkit-text-stroke:1px #141819}.marquee em{color:#141819}
.care{padding:110px var(--pad);background:#101112}.care .section-heading h2{max-width:850px}.care-steps{margin-top:55px;border-top:1px solid var(--line)}.care-step{display:grid;grid-template-columns:100px 1fr;gap:34px;padding:35px 0;border-bottom:1px solid var(--line)}.step-number{font-size:46px;line-height:1.1;color:#bac5c8;letter-spacing:-.06em}.care-step>div{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:start}.care-step h3{font-size:clamp(26px,3vw,44px);font-weight:700;line-height:1.16;letter-spacing:-.04em}.care-step p{font-size:17px;max-width:510px}.training-scene{padding:90px var(--pad) 45px;background:#252d30;overflow:hidden}.training-scene .section-meta{color:#b8c5ca}.scene-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:6%;align-items:center;margin:70px 0 30px}.scene-grid>div>p{max-width:440px;font-size:19px;margin-top:30px;color:#c1cbce}.scene-grid .btn{display:flex;width:max-content;max-width:100%;margin-top:16px}.layer-composition{position:relative;height:630px;min-width:0}.layer{position:absolute;width:80%;height:60%;padding:9px;background:#e0e1dc;border-radius:18px;box-shadow:0 28px 55px #0006;color:#101112;will-change:transform}.layer img{width:100%;height:calc(100% - 36px);object-fit:cover;border-radius:12px;filter:saturate(.72)}.layer figcaption{font-size:12px;letter-spacing:.13em;padding:8px 10px}.layer-back{left:2%;top:0;transform:rotate(-9deg)}.layer-middle{right:0;top:22%;transform:rotate(8deg)}.layer-front{left:5%;bottom:0;transform:rotate(-4deg)}.scene-outline{position:absolute;bottom:15%;left:-22%;font-size:clamp(65px,9vw,145px);font-weight:900;letter-spacing:-.06em;line-height:1;color:transparent;-webkit-text-stroke:1px #eef3f288;white-space:nowrap;z-index:4;pointer-events:none}.scene-note{display:flex;justify-content:space-between;gap:24px;font-size:12px;color:#a7b5bb;border-top:1px solid #ffffff30;padding-top:24px}
.bio-section{padding:95px var(--pad) 115px;background:#c9cfd0;color:#11191d}.bio-section .section-meta{color:#35474e}.bio-section em{color:#334e5a}.bio-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:7%;margin-top:65px;align-items:center}.bio-visual{position:relative}.bio-visual>img{width:100%;height:730px;object-fit:cover;border-radius:100px 30px 30px 30px;filter:saturate(.65)}.bio-number{position:absolute;bottom:30px;left:30px;font-size:clamp(100px,14vw,220px);font-weight:900;line-height:.85;letter-spacing:-.08em;color:white;text-shadow:0 3px 20px #0006}.bio-number small{display:block;font-size:12px;letter-spacing:.2em;line-height:2.8}.bio-grid h2{font-size:clamp(44px,5vw,82px);margin-bottom:28px}.bio-grid h3{font-size:19px;line-height:1.4;letter-spacing:-.02em;margin-bottom:20px}.bio-grid p{color:#35434a;font-size:17px;line-height:1.7;margin-bottom:22px}.bio-grid .silver{background:#16262e;color:#fff;border-color:#16262e}
.editorial{padding:100px var(--pad);display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:8%;background:#101112}.editorial-photo{overflow:hidden;border-radius:28px}.editorial-photo img{width:100%;height:620px;object-fit:cover;filter:saturate(.7);transition:transform 1.3s}.editorial-photo:hover img{transform:scale(1.045)}.editorial-copy h2{margin-bottom:30px;font-size:clamp(44px,5.6vw,90px)}.editorial-copy p{font-size:18px;margin-top:22px}.editorial-copy .btn{display:flex;width:max-content;margin-top:30px;max-width:100%}.editorial.reverse .editorial-photo{order:2}.editorial.reverse .editorial-copy{order:1}.owners{background:#1c2021;padding:100px var(--pad) 125px;overflow:hidden}.owners-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center;margin-top:65px}.owners-title h2{font-size:clamp(60px,8vw,128px)}.owner-rule{display:block;background:var(--silver);width:70px;height:2px;margin:35px 0}.owners-title p{font-size:21px;line-height:1.7;max-width:490px;color:#cbd1ce}.image-collage{position:relative;height:600px;margin-right:5%}.collage-main{position:absolute;inset:0 13% 13% 0;transform:rotate(-5deg);border-radius:24px;overflow:hidden}.collage-small{position:absolute;width:54%;height:45%;right:-6%;bottom:0;transform:rotate(8deg);border:8px solid #1c2021;border-radius:24px;overflow:hidden}.image-collage img{height:100%;width:100%;object-fit:cover;filter:saturate(.6)}.collage-stamp{display:block;position:absolute;left:-5%;bottom:5%;width:145px;height:145px;background:#d5dcdc;color:#192226;border-radius:50%;text-align:center;align-content:center;font-size:12px;line-height:1.3;letter-spacing:.05em;transform:rotate(-12deg)}.collage-stamp b{font-size:39px;letter-spacing:-.04em}
.program{padding:105px var(--pad);background:#0b0d0f}.program>h2{margin:55px 0 60px}.training-row{display:flex;gap:28px;align-items:center;padding:32px 0;border-top:1px solid var(--line);position:relative}.training-row:last-child{border-bottom:1px solid var(--line)}.row-no{font-size:13px;color:#9caeb5}.training-row h3{font-size:clamp(48px,6.8vw,110px);flex:1}.training-row p{font-size:16px;max-width:210px}.training-row img{position:absolute;right:20%;top:50%;width:240px;height:180px;border-radius:20px;object-fit:cover;pointer-events:none;opacity:0;transform:translateY(-50%) rotate(-12deg) scale(.85);transition:opacity .35s,transform .5s;z-index:2}.training-row:hover img,.training-row:focus-visible img{opacity:1;transform:translateY(-50%) rotate(6deg) scale(1)}
.voices{padding:95px 0 90px;background:#262b2d;overflow:hidden}.voices>.section-meta,.voices>.section-heading,.review-source{margin-left:var(--pad);margin-right:var(--pad)}.voices .section-heading h2{font-size:clamp(45px,6vw,95px)}.review-window{overflow:auto;padding:15px 0 25px;scrollbar-color:#a2b7c2 #202427;scrollbar-width:thin}.review-track{display:flex;width:max-content;gap:24px;padding:0 var(--pad)}.review-set{display:flex;gap:24px}.review-set figure{width:clamp(310px,35vw,490px);padding:36px;background:#101618;border:1px solid #7a919644;border-radius:26px;min-height:370px;display:flex;flex-direction:column;justify-content:space-between}.review-no{font-size:13px;color:#97adb4;letter-spacing:.1em;margin-bottom:24px}.review-set p{font-size:21px;color:#d2d9d8;line-height:1.6;margin-bottom:30px}.review-set figcaption{font-size:15px;color:#e7eeed}.review-set small{font-size:12px;display:block;color:#8d9fa5;margin-top:7px}.review-source{display:inline-block;font-size:13px;text-decoration:underline;text-underline-offset:4px;margin-top:20px;color:#bac8cc}.review-animated{overflow:hidden}.review-animated .review-track{padding:0;animation:reviews 70s linear infinite}.review-window:hover .review-track,.review-window:focus-within .review-track,.review-paused .review-track,.review-offscreen .review-track,.document-hidden .review-track{animation-play-state:paused}.review-paused{overflow:auto}
.gallery-section{padding:100px var(--pad);background:#111416}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:55px}.gallery button{border:0;padding:0;background:none;text-align:left;min-width:0}.gallery button:nth-child(3n+2){margin-top:40px}.gallery img{width:100%;height:320px;object-fit:cover;border-radius:24px;filter:saturate(.7);transition:filter .6s,transform .6s}.gallery button:hover img{transform:translateY(-6px);filter:saturate(1)}.gallery button>span{display:flex;justify-content:space-between;padding:18px 3px;font-size:14px;color:#c2cece}.gallery b{font-size:24px;line-height:1;font-weight:400}.questions{padding:95px var(--pad);background:#1a1f21}.questions-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;margin-top:55px}.questions-grid>div>p{font-size:18px;max-width:370px;margin-top:30px}.faq details{border-bottom:1px solid var(--line);padding:24px 0}.faq details:first-child{padding-top:0}.faq summary{font-size:19px;line-height:1.5;display:flex;justify-content:space-between;align-items:start;gap:20px;cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:25px;font-weight:400;line-height:1;transition:transform .3s}.faq details[open] summary>span{transform:rotate(45deg)}.faq p{font-size:16px;margin-top:20px;line-height:1.7}.finale{padding:100px var(--pad) 75px;background:#9faeb3;color:#14232a}.finale .section-meta{color:#2e464f}.finale h2{font-size:clamp(58px,9.6vw,155px);margin:45px 0 55px;line-height:1.1}.finale em{color:#1b3540}.finale-bottom{display:flex;align-items:center;justify-content:space-between;gap:32px}.finale-bottom p{font-size:18px;color:#243d48}.finale .silver{background:#14232a;color:#fff;border-color:#14232a}.finale .text-link{font-size:14px}.finale-bottom .btn{flex:none}
footer{padding:80px var(--pad) 30px;background:#090b0c}.footer-statement{padding-bottom:65px;border-bottom:1px solid var(--line);font-size:clamp(18px,4.7vw,76px);line-height:1.18;letter-spacing:-.05em;font-weight:900}.footer-statement>span{display:block;white-space:nowrap}.footer-statement em{color:#b3c4cb}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr 1.1fr;gap:40px;margin:60px 0 45px;font-size:14px}.footer-logo{width:200px;margin-bottom:25px}.footer-grid h3{font-size:17px;letter-spacing:-.02em;font-weight:700;margin-bottom:22px}.footer-grid a{display:block;width:max-content;max-width:100%;margin-top:10px;color:#aebbc0}.footer-grid a:hover{color:#fff}.footer-grid p{color:#aebbc0}.footer-bottom{display:flex;gap:25px;justify-content:space-between;padding-top:25px;border-top:1px solid var(--line);font-size:12px;color:#8b989d}
.page-hero{padding:135px var(--pad) 80px;background:radial-gradient(ellipse at 80% 45%,#30383b,#101112 65%)}.page-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center;margin-top:55px}.page-hero h1{font-size:clamp(54px,6.6vw,106px);line-height:1.12;margin-bottom:30px}.page-hero p{max-width:620px;font-size:19px;margin-bottom:28px}.page-hero-grid>img{width:100%;height:550px;object-fit:cover;border-radius:28px 95px 28px 28px;filter:saturate(.65)}.anchor-nav{display:flex;gap:30px;flex-wrap:wrap;padding:22px var(--pad);border-block:1px solid var(--line);font-size:14px}.anchor-nav a:hover{color:#aacddd}.studio-note{padding:80px var(--pad);max-width:1100px}.studio-note p{margin:30px 0;font-size:21px}.membership{padding:95px var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:10%}.membership h2{margin-bottom:30px}.membership h3{font-size:28px;line-height:1.2;margin:0 0 24px}.membership p{font-size:19px;margin-bottom:35px}.membership>div+div h3:not(:first-child){margin-top:50px}.contact-grid{padding:95px var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-grid address{font-style:normal;margin-top:40px;font-size:22px}.contact-big{display:block;font-size:clamp(25px,3vw,45px);letter-spacing:-.04em;margin-top:25px}.contact-grid .btn{display:flex;width:max-content;max-width:100%;margin-top:30px}.hours{padding:35px;background:#20272a;border-radius:28px}.hours h3{font-size:30px;margin-bottom:30px}.hours dl{display:grid;grid-template-columns:1fr auto;gap:18px 20px;font-size:16px}.hours dd{margin:0;text-align:right;color:#e2ebed}.hours p{font-size:16px;margin-top:24px}.press{padding:70px var(--pad)}.press article{padding:50px 0;border-bottom:1px solid var(--line)}.press h2{font-size:60px}.press p{max-width:650px;font-size:18px;margin-top:30px}.legal{padding:140px var(--pad) 90px;max-width:1200px}.legal h1{font-size:64px;margin-bottom:50px}.legal h2{font-size:30px;margin:40px 0 20px;letter-spacing:-.03em}.legal h3{font-size:23px;margin:35px 0 15px}.legal p{margin:20px 0;overflow-wrap:anywhere}.legal a{text-decoration:underline}.legal ul{color:#aeb8bc}.course-section{padding:75px var(--pad) 105px}.filters{display:flex;justify-content:space-between;gap:25px;align-items:center;margin:40px 0 25px;flex-wrap:wrap}.days{display:flex;gap:8px;flex-wrap:wrap}.days button{border:1px solid #ffffff25;background:#242e33;border-radius:100px;color:#d3dfe4;min-width:45px;min-height:45px;padding:9px 16px;font-size:14px}.days button.active{background:#d8dcdd;color:#101112;border-color:#d8dcdd}.filters label{font-size:14px;display:flex;align-items:center;gap:12px}.course-row{display:grid;grid-template-columns:55px 140px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:23px 0;align-items:start}.course-day{color:#a4bdc9;font-size:14px;padding-top:7px}.course-time{font-size:16px;padding-top:5px}.course-row h3{font-size:27px;font-weight:700;line-height:1.2;letter-spacing:-.03em}.course-row small{display:block;font-size:12px;color:#99abb3;margin-top:7px}.course-row details{margin-top:12px;font-size:14px}.course-row summary{cursor:pointer;color:#b7c9d2;width:max-content}.course-row details p{font-size:16px;line-height:1.65;max-width:600px;margin-top:15px}.course-section>.small{font-size:14px;margin:32px 0 10px;max-width:800px}.course-section>.text-link{margin-right:30px}
dialog{background:#171e22;color:var(--ink);border:1px solid #53687060;padding:48px;border-radius:28px;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 40px 100px #0008;overscroll-behavior:contain}dialog::backdrop{background:#030608bc;backdrop-filter:blur(10px)}dialog h2{font-size:44px;line-height:1.1;margin-bottom:22px}dialog>.eyebrow{padding-right:30px}dialog>p{font-size:16px}.close{position:absolute;right:16px;top:16px;width:38px;height:38px;line-height:1;border:1px solid #ffffff30;border-radius:50%;background:#1e2a30;font-size:25px;color:#e2ecee}form{margin-top:28px}form>label{display:block;margin:20px 0;font-size:15px}form small{font-size:13px;color:#91a4ad}input,textarea,select{background:#10171b;color:#eff5f7;border:1px solid #5a727e7a;padding:12px 14px;border-radius:12px;font-size:16px;max-width:100%}form input,form select,form textarea{width:100%;display:block;margin-top:8px}form textarea{resize:vertical}.consent{display:flex;gap:12px;align-items:flex-start;font-size:14px}.consent input{width:19px;height:19px;flex:none;margin-top:4px}.consent a{text-decoration:underline}form .btn{width:100%;margin-top:12px}.form-note,#feedback{font-size:14px;margin-top:18px;line-height:1.6}#feedback a{text-decoration:underline;color:#d2edf8}#lightbox{width:min(1250px,calc(100vw - 24px));padding:60px 18px 22px}#lightbox img{width:100%;max-height:calc(100dvh - 150px);object-fit:contain;border-radius:15px}#lightbox p{font-size:16px;text-align:center;margin-top:20px}
@keyframes hero-in{from{opacity:0;transform:translateY(45px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}@keyframes photo-in{from{opacity:0;transform:translateY(60px) rotate(4deg)}to{opacity:1;transform:none}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes reviews{to{transform:translateX(calc(-50% - 12px))}}
.motion-ready .reveal{opacity:0;transform:translateY(35px);transition:opacity .9s,transform 1.1s cubic-bezier(.2,.8,.2,1)}.motion-ready .reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){nav{gap:16px}header .btn{font-size:12px;padding:12px 16px}.brand{width:155px}.layer-composition{height:510px}.bio-visual>img{height:650px}.gallery{gap:18px}.gallery img{height:260px}.footer-grid{gap:25px}.editorial-photo img{height:520px}.image-collage{height:490px}.promise-bottom{gap:30px}.promise-bottom .text-link{flex:auto}.finale-bottom{flex-wrap:wrap}.care-step>div{gap:28px}}
@media(max-width:900px){header{height:82px}.brand{width:155px}.menu-toggle{display:block;min-width:65px;min-height:44px;background:transparent;border:1px solid #ffffff40;border-radius:100px;font-size:14px;padding:8px 14px}nav{display:none;position:absolute;left:0;right:0;top:82px;background:#12191df5;backdrop-filter:blur(20px);padding:24px var(--pad) 32px;max-height:calc(100dvh - 82px);overflow:auto;flex-direction:column;align-items:stretch;gap:8px;border-bottom:1px solid var(--line)}.menu-open nav{display:flex}.menu-open header{position:fixed;background:#12191d}nav a{font-size:20px}header .btn{font-size:14px;margin-top:10px}.hero-orbit{width:150px;height:150px;top:-50px;right:0}.orbit-center{font-size:28px}.orbit-center small{font-size:8px}.bio-grid{grid-template-columns:1fr;gap:45px}.bio-visual>img{height:470px}.bio-grid h2{font-size:70px}.bio-grid>div+div{max-width:800px}.owners-grid{gap:7%}.owners-title p{font-size:18px}.gallery{grid-template-columns:1fr 1fr}.gallery button:nth-child(3n+2){margin:0}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.page-hero-grid{gap:5%}.page-hero h1{font-size:6.8vw}.page-hero-grid>img{height:450px}.questions-grid{gap:6%}.care-step{grid-template-columns:65px 1fr;gap:20px}.care-step>div{grid-template-columns:1fr;gap:15px}.training-row h3{font-size:7vw}.training-row p{max-width:175px}.contact-grid{gap:5%}.hours{padding:28px}.hours dl{font-size:14px}.hero-copy h2{font-size:8vw}.hero-title{font-size:17vw}}
@media(max-width:650px){:root{--pad:24px}body{font-size:16px}.section-meta{font-size:12px;letter-spacing:.025em;gap:14px;flex-wrap:wrap}.section-meta span{max-width:100%}.opening{padding:108px 24px 30px}.opening>.section-meta span:last-child{font-size:12px}.hero-title{font-size:17vw;letter-spacing:-.06em;margin-top:32px;line-height:1.06}.hero-grid{display:flex;flex-direction:column;gap:42px;margin-top:20px;align-items:stretch}.hero-copy{padding:0}.hero-copy h2{font-size:clamp(48px,12vw,73px);line-height:1.08}.hero-copy h2 br{display:none}.hero-copy h2 em{display:block}.hero-copy>p{font-size:17px;max-width:100%;margin:22px 0 25px}.hero-copy .btn{min-height:50px}.hero-photo{margin:10px 5px 0}.photo-inset{height:370px;transform:rotate(-3deg);border-radius:24px 60px 24px 24px}.hero-orbit{width:122px;height:122px;top:-28px;right:-7px}.orbit-center{font-size:23px}.orbit-center small{font-size:7px}.photo-caption{font-size:12px;letter-spacing:0;margin-top:22px}.opening-bottom{font-size:12px;letter-spacing:0;flex-direction:column;gap:10px;margin-top:28px}.opening-bottom a{align-self:flex-start}.promise,.care,.owners,.program,.gallery-section,.questions{padding:65px 24px}.promise h2{font-size:clamp(38px,9.2vw,60px);line-height:1.15;letter-spacing:-.045em;margin:35px 0}.promise-bottom{display:block}.promise-bottom p{font-size:17px}.promise-bottom .text-link{margin-top:25px}.section-heading{align-items:flex-start;flex-direction:column;gap:24px;margin:35px 0}h2{font-size:clamp(37px,10vw,65px);line-height:1.1;letter-spacing:-.045em}.section-heading h2{max-width:100%}.care-steps{margin-top:35px}.care-step{grid-template-columns:40px 1fr;gap:16px;padding:28px 0}.step-number{font-size:29px}.care-step h3{font-size:26px;line-height:1.2}.care-step p{font-size:16px}.training-scene{padding:65px 24px 35px}.scene-grid{display:block;margin-top:40px}.scene-grid h2{font-size:clamp(49px,13vw,76px)}.scene-grid>div>p{font-size:17px;margin-top:25px}.layer-composition{height:460px;margin:45px 12px 30px}.layer{height:58%;width:82%;padding:7px;border-radius:14px}.layer img{border-radius:10px}.layer figcaption{font-size:12px;letter-spacing:.04em}.scene-outline{font-size:14vw;left:-10%;bottom:15%}.scene-note{flex-direction:column;gap:12px;font-size:12px}.bio-section{padding:65px 24px}.bio-grid{margin-top:40px;gap:35px}.bio-visual>img{height:380px;border-radius:65px 24px 24px 24px}.bio-number{font-size:140px;left:24px;bottom:20px}.bio-grid h2{font-size:clamp(42px,11vw,66px)}.bio-grid p{font-size:16px}.bio-grid h3{font-size:17px}.editorial{padding:65px 24px;display:flex;flex-direction:column;gap:35px;align-items:stretch}.editorial.reverse .editorial-photo,.editorial.reverse .editorial-copy{order:initial}.editorial-photo img{height:380px}.editorial-copy h2{font-size:clamp(40px,10.5vw,63px)}.editorial-copy p{font-size:17px}.owners-grid{grid-template-columns:1fr;margin-top:40px;gap:45px}.owners-title h2{font-size:clamp(60px,16vw,95px)}.owners-title p{font-size:19px}.image-collage{height:420px;margin:0 14px}.collage-stamp{width:110px;height:110px;font-size:10px}.collage-stamp b{font-size:29px}.collage-small{border-width:6px;right:-5%}.program>h2{margin:35px 0}.training-row{display:grid;grid-template-columns:30px 1fr;gap:10px 12px;padding:28px 0}.training-row h3{font-size:clamp(32px,8.7vw,55px);letter-spacing:-.035em;line-height:1.15;overflow-wrap:normal}.training-row p{grid-column:2;max-width:none;font-size:16px}.training-row img{display:none}.voices{padding:65px 0}.voices .section-heading h2{font-size:clamp(39px,10.5vw,66px)}.review-set figure{width:calc(100vw - 48px);padding:28px;min-height:420px}.review-set p{font-size:19px}.review-set figcaption{font-size:15px}.review-animated .review-track{animation-duration:90s}.review-source{font-size:13px}.gallery{grid-template-columns:1fr;gap:24px;margin-top:35px}.gallery img{height:310px}.gallery button>span{font-size:15px}.questions-grid{grid-template-columns:1fr;gap:40px;margin-top:35px}.questions-grid>div>p{font-size:17px}.faq summary{font-size:18px}.faq p{font-size:16px}.finale{padding:65px 24px 55px}.finale h2{font-size:clamp(38px,9.5vw,62px);line-height:1.17;letter-spacing:-.045em;margin:35px 0}.finale-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:25px}.finale-bottom p{font-size:17px}.finale .text-link{margin:0}footer{padding:55px 24px 25px}.footer-statement{font-size:clamp(16px,4.3vw,28px);letter-spacing:-.04em;padding-bottom:35px;line-height:1.45}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px;margin:40px 0}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid h3{font-size:16px;line-height:1.4}.footer-grid a,.footer-grid p{font-size:14px}.footer-bottom{font-size:12px;flex-wrap:wrap;gap:18px}.page-hero{padding:115px 24px 55px}.page-hero-grid{grid-template-columns:1fr;gap:35px;margin-top:35px}.page-hero h1{font-size:clamp(39px,10vw,64px);line-height:1.16;letter-spacing:-.04em}.page-hero p{font-size:17px}.page-hero-grid>img{height:330px;border-radius:24px 65px 24px 24px}.anchor-nav{gap:14px 23px;padding:22px 24px}.membership,.contact-grid{padding:65px 24px;grid-template-columns:1fr;gap:40px}.membership p{font-size:17px}.membership h3{font-size:27px}.contact-grid address{font-size:20px;margin-top:30px}.hours{padding:26px}.hours h3{font-size:26px;line-height:1.2}.hours dl{grid-template-columns:1fr;gap:5px}.hours dd{text-align:left;margin-bottom:14px;font-size:17px}.hours dt{font-size:15px}.press{padding:25px 24px 65px}.press h2{font-size:43px}.press p{font-size:17px}.legal{padding:125px 24px 65px}.legal h1{font-size:42px;letter-spacing:-.04em}.legal h2{font-size:27px}.legal h3{font-size:23px}.course-section{padding:55px 24px 70px}.course-row{grid-template-columns:35px 1fr;gap:6px 14px}.course-row>div:last-child{grid-column:2}.course-row h3{font-size:25px}.course-time{font-size:16px}.course-section .section-meta{font-size:12px}.filters{align-items:flex-start;flex-direction:column}.filters select{min-width:150px}.days button{padding:9px 13px}.course-section .text-link{display:block;margin-right:0}.studio-note{padding:65px 24px}.studio-note p{font-size:18px}dialog{padding:52px 22px 25px;border-radius:22px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}dialog h2{font-size:38px}.btn{font-size:14px;line-height:1.4}.btn:hover{transform:none}.outline{-webkit-text-stroke:.7px var(--silver)}}
@media(max-width:360px){.hero-title{font-size:16.5vw}.hero-orbit{width:110px;height:110px}.photo-inset{height:310px}.layer-composition{height:390px;margin-inline:5px}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:1!important}.footer-statement{font-size:4.25vw}.review-set figure{padding:24px}.review-set p{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.hero-title>span,.hero-copy>*{opacity:1;filter:none;transform:none}.layer,.collage-main,.collage-small,.photo-inset{will-change:auto}.review-window{overflow:auto}.word-reveal .unlit,.word-reveal em .unlit{color:inherit}}

/* Personal hero portrait: retain skin tones and protect faces from the orbit. */
.photo-inset img[src="/assets/hero-proshot.png"]{filter:none;transform:none;object-position:50% 35%}.hero-orbit{top:-90px;right:-10px}
@media(max-width:900px){.hero-orbit{top:-80px;right:0}}
@media(max-width:650px){.hero-grid{gap:64px}.hero-orbit{top:-75px;right:-7px}.photo-inset img[src="/assets/hero-proshot.png"]{object-position:50% 25%}}
/* Mobile refinement: readable content, touch controls and keyboard-safe dialogs. */
main,section,.hero-copy,.editorial-copy,.page-hero-grid>div,.owners-title,.care-step>div,.questions-grid>div{min-width:0}input,textarea,select{scroll-margin-block:90px}.opening-status{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.015em;line-height:1.5;margin:0 0 20px;color:#c3ced1}.opening-status[hidden]{display:none}.status-dot{width:7px;height:7px;flex:none;border-radius:50%;background:#91a0a8}.opening-status.is-open .status-dot{background:#8adab0;box-shadow:0 0 8px #8adab07a,0 0 17px #8adab039;animation:open-glow 3s ease-in-out infinite}.opening-status.is-closed .status-dot{background:#9ba3a8;box-shadow:0 0 7px #9ba3a840}@keyframes open-glow{50%{box-shadow:0 0 12px #8adab098,0 0 22px #8adab040}}
@media(max-width:900px){nav>a{min-height:44px;display:flex;align-items:center}nav{padding-bottom:calc(25px + env(safe-area-inset-bottom,0px))}.menu-toggle{flex:none}.brand{max-width:calc(100% - 95px)}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:650px){
 :root{--pad:clamp(18px,6vw,24px)}
 .opening{padding-inline:var(--pad)}.opening-status{font-size:12px;gap:9px;margin-bottom:18px;align-items:flex-start}.status-dot{margin-top:6px}
 .hero-grid{gap:58px}.hero-photo{margin-inline:4px}.photo-inset{height:auto;aspect-ratio:3/2;transform:rotate(-2deg);border-radius:22px 48px 22px 22px}.photo-inset img[src="/assets/hero-proshot.png"]{width:100%;height:100%;object-fit:cover;object-position:center}.hero-orbit{width:100px;height:100px;top:-62px;right:-3px}.orbit-center{font-size:20px}.orbit-center small{font-size:6px;max-width:62px;margin:4px auto 0;line-height:1.5}.orbit-text{animation-duration:55s}.photo-caption{line-height:1.65;margin-top:20px}
 .section-meta{line-height:1.7}.section-meta>span{overflow-wrap:anywhere}.section-heading{gap:22px}.section-heading h2,.editorial h2,.questions h2,.owners h2,.program h2,.finale h2,.page-hero h1{overflow-wrap:break-word;text-wrap:balance}.text-link{max-width:100%;overflow-wrap:anywhere;min-height:44px;line-height:1.6;padding-block:10px}.btn{min-height:50px;padding:13px 21px;white-space:normal}.section-heading .btn{min-height:44px}.care-step h3{font-size:clamp(23px,6.8vw,28px)}.care-step{gap:12px;grid-template-columns:34px minmax(0,1fr)}
 .layer-composition{height:clamp(350px,113vw,460px);margin-inline:7px}.scene-outline{font-size:12.5vw;left:-6%;letter-spacing:-.04em}.scene-note span{line-height:1.6}.layer figcaption{padding-inline:5px}
 .bio-grid h2{font-size:clamp(37px,10.3vw,64px)}.editorial-copy h2{font-size:clamp(37px,10vw,61px)}.bio-visual>img,.editorial-photo img{height:clamp(270px,85vw,380px)}.page-hero-grid>img{height:clamp(250px,80vw,330px)}.gallery img{height:auto;aspect-ratio:4/3}.image-collage{height:clamp(320px,102vw,420px)}
 .review-set figure{width:calc(100vw - 48px);min-height:0;padding:28px 25px;gap:20px}.review-set p{font-size:18px;margin-bottom:20px;line-height:1.7}.review-no{margin-bottom:0}.review-set figcaption small{line-height:1.6}.review-window{touch-action:pan-x pan-y}.voices .pause{font-size:13px}
 .contact-grid{grid-template-columns:minmax(0,1fr)}.contact-big{font-size:clamp(25px,7.5vw,35px);overflow-wrap:anywhere}.hours{padding:24px}.filters label{flex-wrap:wrap}.filters select{min-width:0;width:160px}.days button{min-width:44px;min-height:44px}.course-row>div{min-width:0}.course-row h3{overflow-wrap:anywhere}.course-row summary{min-height:44px;display:flex;align-items:center}.faq summary{min-height:44px}.faq summary>span{flex:none}.footer-grid a{min-height:35px;margin-top:4px;overflow-wrap:anywhere}.footer-statement{font-size:clamp(15px,4.15vw,27px);line-height:1.5}.footer-bottom a{min-height:35px;display:flex;align-items:center}
 dialog{width:calc(100vw - 20px);max-width:620px;max-height:calc(100dvh - 20px - env(safe-area-inset-top,0px));padding:56px 22px calc(24px + env(safe-area-inset-bottom,0px));scroll-padding-top:20px;-webkit-overflow-scrolling:touch}dialog .close{width:44px;height:44px;top:12px;right:12px}dialog>.eyebrow{font-size:12px;letter-spacing:.06em;line-height:1.7;padding-right:0}dialog h2{font-size:clamp(30px,9vw,38px);line-height:1.15}form>label{font-size:15px;margin:18px 0}form input,form select,form textarea{font-size:16px;min-height:48px;padding:13px 14px}.consent{line-height:1.7;gap:10px}.consent input{min-height:22px;width:22px;height:22px;margin-top:3px}.consent span{min-width:0}.form-note,#feedback{font-size:14px;line-height:1.7}#lightbox{padding-top:64px}#lightbox img{max-height:calc(100dvh - 160px)}
}
@media(max-width:360px){.opening{padding-inline:18px}.hero-title{font-size:16vw}.hero-copy h2{font-size:12vw}.hero-orbit{width:92px;height:92px;top:-57px}.hero-copy>p{font-size:16px}.review-set figure{padding:24px 20px}.page-hero h1{font-size:clamp(34px,10vw,39px)}.promise h2{font-size:clamp(33px,9vw,38px)}.training-row h3{font-size:clamp(28px,8vw,32px)}}
@media(max-height:600px) and (max-width:900px){dialog{max-height:calc(100dvh - 16px);margin:8px auto;padding-top:56px}nav{max-height:calc(100dvh - 82px)}}
@media(prefers-reduced-motion:reduce){.status-dot{animation:none!important}}
/* Keep the mobile document within the viewport; allow vertical scroll and zoom. */
@media(max-width:900px){
 html{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom}
 body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none;touch-action:pan-y pinch-zoom}
 #main,.opening,.promise,.care,.training-scene,.bio-section,.editorial,.owners,.program,.voices,.gallery-section,.questions,.finale,footer{max-width:100%;min-width:0}
 .marquee{max-width:100%;transform:rotate(-2deg);overflow:hidden}.opening,.training-scene,.owners{overflow:hidden}
 .scene-grid,.hero-grid,.owners-grid,.page-hero-grid,.questions-grid,.bio-grid,.gallery,.footer-grid{min-width:0}.scene-grid>*,.hero-grid>*,.owners-grid>*,.page-hero-grid>*,.questions-grid>*,.bio-grid>*,.gallery>*,.footer-grid>*{min-width:0}
}
@media(max-width:650px){
 #main h2{font-size:clamp(32px,8.8vw,52px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance;max-width:100%;overflow-wrap:break-word;hyphens:none}
 #main h2 em{letter-spacing:-.045em;line-height:inherit}
 #main .hero-copy h2{font-size:clamp(40px,11vw,64px);line-height:1.1;letter-spacing:-.035em}
 #main .hero-title{font-size:16.2vw;line-height:1.05;letter-spacing:-.055em;max-width:100%}
 #main .page-hero h1{font-size:clamp(34px,9.5vw,55px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word;hyphens:none}
 #main h3{letter-spacing:-.025em;line-height:1.2;max-width:100%;overflow-wrap:break-word;hyphens:none}
 .finale h2{font-size:clamp(34px,9vw,56px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word}
 .hero-orbit{right:3px}.hero-photo{width:calc(100% - 8px)}.layer-composition,.image-collage{max-width:100%}.scene-outline{left:0;font-size:11.5vw}
 .footer-statement{font-size:4.05vw;letter-spacing:-.025em}.footer-statement>span{max-width:100%}
 /* All member experiences remain fully readable without horizontal gestures. */
 .review-window,.review-paused,.review-animated{overflow:hidden;touch-action:pan-y pinch-zoom;padding:0 var(--pad)}
 .review-track,.review-animated .review-track{display:block;width:100%;max-width:100%;padding:0;transform:none!important;animation:none!important}
 .review-set{display:flex;flex-direction:column;gap:20px;width:100%;max-width:100%}
 .review-set[aria-hidden="true"]{display:none}.review-set figure{width:100%;min-width:0;min-height:0}.voices .pause{display:none}
 .anchor-nav{overflow:hidden;white-space:normal;flex-wrap:wrap}.anchor-nav a{min-height:40px;display:flex;align-items:center}
 dialog{overflow-x:hidden;touch-action:pan-y pinch-zoom}dialog h2{font-size:clamp(30px,8vw,38px);letter-spacing:-.035em;line-height:1.16}
}
