:root{--navy:#173451;--blue:#496a78;--gunmetal:#545a5f;--groot:#9a8067;--ivory:#f5f1e9;--paper:#fbfaf6;--ink:#26313a;--line:rgba(23,52,81,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;font-weight:300;line-height:2;letter-spacing:.035em}a{color:inherit}.site-header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:fixed;inset:0 0 auto;z-index:10;color:white;border-bottom:1px solid rgba(255,255,255,.25);transition:background .5s,color .5s,height .5s}.site-header.scrolled{height:76px;background:rgba(251,250,246,.96);color:var(--navy);border-color:var(--line);backdrop-filter:blur(12px)}.brand{text-decoration:none;color:inherit;display:flex;flex-direction:column;line-height:1}.brand span{font-family:Georgia,"Times New Roman",serif;font-size:19px;letter-spacing:.16em}.brand small{font-family:Georgia,serif;font-style:italic;font-size:13px;margin-top:8px;letter-spacing:.13em}.site-header nav{display:flex;gap:2.4rem}.site-header nav a{text-decoration:none;font-family:Georgia,serif;font-size:14px;letter-spacing:.1em}.menu-button{display:none;border:0;background:none;color:inherit;letter-spacing:.15em}.hero{min-height:100svh;position:relative;display:flex;align-items:flex-start;color:white;overflow:hidden}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,26,43,.68) 0%,rgba(9,26,43,.28) 60%,rgba(9,26,43,.14) 100%),linear-gradient(0deg,rgba(9,26,43,.3),transparent 50%),url('studio-spine-corrector.jpg') center 58%/cover no-repeat;transform:scale(1.02)}.hero-copy{position:relative;z-index:1;padding:clamp(125px,18vh,175px) 8vw 80px;max-width:760px}.eyebrow,.section-number,.role{font-size:12px;letter-spacing:.23em;color:var(--blue);font-weight:500}.hero .eyebrow{color:rgba(255,255,255,.78)}.hero h1,.intro h2,.values h2,.sessions h2,.place h2,.profile h2,.contact h2,.large-serif{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:400;letter-spacing:.075em;line-height:1.7}.hero h1{font-size:clamp(32px,3.7vw,54px);margin:1.5rem 0;max-width:690px;text-shadow:0 2px 18px rgba(0,0,0,.18)}.tagline{font-family:Georgia,serif;font-size:18px;line-height:1.5;letter-spacing:.1em}.text-link{margin-top:2rem;text-decoration:none;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:.55rem;width:max-content}.text-link span{padding-left:2rem}.scroll-cue{position:absolute;z-index:2;right:5vw;bottom:0;height:150px;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:1rem;font:12px Georgia,serif;letter-spacing:.18em}.scroll-cue i{display:block;width:1px;height:100px;background:rgba(255,255,255,.65);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,100%{transform:scaleY(.45);transform-origin:top;opacity:.45}50%{transform:scaleY(1);opacity:1}}
.intro,.pilates,.sessions,.profile{padding:145px max(7vw,calc((100vw - 1160px)/2))}.intro-grid,.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:11vw;margin-top:3.5rem}.intro h2,.sessions h2,.profile h2{font-size:clamp(29px,3vw,44px);margin:0}.body-copy p{margin:0 0 1.7rem}.statement{font-family:"Yu Mincho",serif;color:var(--navy);font-size:21px;margin-top:3rem!important}.values{background:var(--navy);color:var(--ivory);padding:145px max(7vw,calc((100vw - 1160px)/2));display:grid;grid-template-columns:1fr 1fr;gap:11vw}.section-number.light{color:#b6c6cb}.values h2{font-size:clamp(29px,3vw,43px)}.values-copy{padding-top:4rem}.value-words{border-top:1px solid rgba(255,255,255,.25);margin-top:3.5rem;padding-top:2rem;display:flex;flex-wrap:wrap;gap:1.5rem 2.6rem;font-family:Georgia,serif;font-size:13px;letter-spacing:.14em}.pilates{display:grid;grid-template-columns:1.05fr .95fr;gap:11vw}.large-serif{font-size:clamp(30px,3vw,45px);color:var(--navy);margin-top:3rem}.pilates-copy{padding-top:4.5rem}.sessions{background:var(--ivory)}.session-intro{display:grid;grid-template-columns:1fr 1fr;gap:11vw;margin-top:3.5rem}.session-list{margin-top:5.5rem;border-top:1px solid var(--line)}.session-list article{display:grid;grid-template-columns:60px 1fr 1fr 1.5fr;gap:2rem;align-items:baseline;border-bottom:1px solid var(--line);padding:2.2rem 0}.session-list article>span{font-family:Georgia,serif;color:var(--groot)}.session-list h3{font-family:Georgia,serif;font-weight:400;font-size:23px;color:var(--navy)}.session-list small{color:var(--gunmetal);font-size:14px}.session-note{font-size:14px;margin-top:2rem;color:var(--gunmetal)}.place{position:relative;background:linear-gradient(105deg,rgba(23,52,81,.94),rgba(73,106,120,.9)),url('studio.jpg') center/cover;color:white;padding:150px max(7vw,calc((100vw - 1160px)/2));display:grid;grid-template-columns:.45fr 1fr 1fr;gap:5vw}.place h2{font-size:clamp(29px,3vw,43px);margin:0}.profile .role{margin:0}.profile h2{color:var(--navy);font-family:Georgia,serif;line-height:1.2;margin-top:2rem}.jp-name{letter-spacing:.2em}.credentials{border-top:1px solid var(--line);padding-top:1.7rem;font-family:Georgia,"Yu Mincho",serif;color:var(--gunmetal);font-size:14px}.contact{background:var(--navy);color:var(--ivory);padding:145px max(7vw,calc((100vw - 1160px)/2));text-align:center}.contact h2{font-size:clamp(33px,4vw,57px);margin:3.2rem auto}.location{margin:3rem 0}.location small{color:#bac5cb;font-size:14px}.contact-links{max-width:720px;margin:4.5rem auto 0;border-top:1px solid rgba(255,255,255,.25)}.contact-links a{display:flex;justify-content:space-between;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);padding:1.5rem 0}.contact-links span{font-family:Georgia,serif;font-size:12px;letter-spacing:.18em;color:#bac5cb}footer{padding:60px 5vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;color:var(--navy)}footer p{text-align:center;font-family:Georgia,serif;font-style:italic}footer>small{text-align:right;color:var(--gunmetal)}
.story-section{opacity:0;transform:translateY(30px);transition:opacity 1s ease,transform 1s ease}.story-section.visible{opacity:1;transform:none}
.origin{padding:clamp(70px,8vw,110px) 7vw;display:flex;flex-direction:column;align-items:center;gap:2.5rem;background:#fff;text-align:center}.origin-logo-crop{width:min(360px,70vw);aspect-ratio:2.7;overflow:hidden}.origin-logo-crop img{display:block;width:100%;height:auto;transform:translateY(-55%)}.origin-copy .section-number{margin:0 0 1.5rem}.origin-copy h2{margin:0;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:clamp(27px,3vw,38px);font-style:italic;font-weight:400;letter-spacing:.055em;line-height:1.5}.origin-copy h2 span{display:block}
.studio-visual{position:relative;margin:0;background:var(--navy);overflow:hidden}.studio-visual img{display:block;width:100%;height:min(72vw,820px);object-fit:cover;object-position:center 58%}.studio-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,34,52,.28),transparent 45%);pointer-events:none}.studio-visual figcaption{position:absolute;z-index:1;left:5vw;bottom:3.5vw;color:white;font:italic 16px Georgia,serif;letter-spacing:.09em}
.pilates{grid-template-columns:.8fr 1.2fr;gap:10vw}.pilates-definitions{padding-top:4.5rem}.pilates-definitions article{border-top:1px solid var(--line);padding:2.2rem 0 2.6rem}.pilates-definitions article:last-child{border-bottom:1px solid var(--line)}.pilates-definitions p{margin:0 0 1.5rem}.definition-label{font-family:Georgia,"Yu Mincho",serif;font-size:14px;letter-spacing:.13em;color:var(--blue);font-weight:500}
@media(max-width:800px){.site-header{height:76px}.site-header.scrolled{height:70px}.site-header nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);color:var(--navy);padding:2rem 7vw;flex-direction:column;border-bottom:1px solid var(--line)}.site-header.scrolled nav{top:70px}.site-header nav.open{display:flex}.menu-button{display:block}.hero-image{background-position:55% center}.hero-copy{padding:118px 7vw 90px;max-width:94vw}.hero h1{font-size:clamp(24px,6.7vw,30px);line-height:1.65;letter-spacing:.055em;margin:1.25rem 0}.tagline{font-size:16px}.text-link{margin-top:1.6rem}.scroll-cue{right:6vw;height:110px}.scroll-cue i{height:70px}.intro,.pilates,.sessions,.profile{padding:95px 7vw}.intro-grid,.profile-grid,.values,.pilates,.session-intro,.place{grid-template-columns:1fr;gap:2.2rem}.values,.place,.contact{padding:95px 7vw}.values-copy,.pilates-copy{padding-top:0}.session-list article{grid-template-columns:35px 1fr;gap:.5rem 1rem}.session-list article p,.session-list article small{grid-column:2}.session-list h3{margin-bottom:0}.place{gap:1.2rem}.contact-links a{flex-direction:column;gap:.4rem}footer{grid-template-columns:1fr;gap:1.6rem;text-align:center}footer p,footer>small{text-align:center}.footer-brand{align-items:center}}
@media(max-width:800px){.origin{padding:62px 7vw 68px;gap:2rem}.origin-logo-crop{width:min(245px,68vw)}.origin-copy .section-number{margin-bottom:1.25rem}.origin-copy h2{font-size:clamp(24px,6.7vw,29px)}}
@media(max-width:800px){.pilates-definitions{padding-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-cue i{animation:none}.story-section{opacity:1;transform:none;transition:none}}

/* Refined hero scale, pricing, and profile details */
.hero-image{background-image:linear-gradient(90deg,rgba(9,26,43,.68) 0%,rgba(9,26,43,.28) 60%,rgba(9,26,43,.14) 100%),linear-gradient(0deg,rgba(9,26,43,.3),transparent 50%),url('studio-spine-corrector-green.png')}
.hero h1{font-size:clamp(29px,3.15vw,46px);max-width:590px}
.session-list article{grid-template-columns:50px 1.25fr .75fr .85fr 1.65fr;gap:1.5rem}
.session-list h3{font-size:22px}
.session-list strong{font-family:Georgia,"Yu Mincho",serif;font-size:19px;font-weight:400;color:var(--navy);white-space:nowrap}
.about-learning{margin-top:3rem}
.about-heading{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;color:var(--navy);font-size:20px;letter-spacing:.08em}
.credentials{margin-top:2.8rem}
.credentials p{margin:0 0 1.3rem}
.credentials span{display:block;color:var(--navy);font-size:15px;letter-spacing:.08em}
.credentials a{text-decoration:none}.credentials a:hover span,.credentials a:focus-visible span{text-decoration:underline;text-underline-offset:.3em}.credentials a small{font-family:sans-serif;font-size:12px;margin-left:.35em}
.plan-notes{margin-top:2rem;color:var(--gunmetal);font-size:14px;line-height:1.8}
.plan-notes p{margin:.25rem 0}
.first-visit{margin-top:4.5rem;padding:2.2rem 2.4rem;border-left:2px solid var(--groot);background:rgba(255,255,255,.5)}
.first-visit .definition-label{margin:0 0 .7rem}
.first-visit h3,.tool-experiences h3{margin:.2rem 0 .8rem;color:var(--navy);font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:22px;font-weight:400;letter-spacing:.08em}
.first-visit>p:last-child{max-width:780px;margin:0}
.booking-button{display:flex;align-items:center;justify-content:space-between;width:min(100%,560px);margin:2.4rem 0 0;padding:1.25rem 1.5rem;border:1px solid var(--navy);background:var(--navy);color:var(--ivory);text-decoration:none;transition:background .25s ease,color .25s ease,transform .25s ease}
.booking-button span{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;letter-spacing:.1em}
.booking-button small{font-family:Georgia,serif;font-size:11px;letter-spacing:.13em;color:#c7d2d7}
.booking-button:hover,.booking-button:focus-visible{background:transparent;color:var(--navy);transform:translateY(-2px)}
.booking-button:hover small,.booking-button:focus-visible small{color:var(--blue)}
.tool-experiences{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:4rem;border-top:1px solid var(--line);padding-top:2.5rem}
.tool-experiences article{padding-right:2rem}
.tool-experiences article+article{border-left:1px solid var(--line);padding-left:2rem}
.tool-experiences .definition-label{margin:0 0 .5rem}
.tool-experiences article>p:last-child{margin:0;color:var(--gunmetal);font-size:15px}
.profile-portrait{margin:3rem 0 0;max-width:360px;overflow:hidden;background:var(--ivory)}
.profile-portrait img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;object-position:center top}
@media(max-width:800px){
  .hero-copy{max-width:88vw}
  .hero h1{font-size:clamp(21px,5.9vw,27px);line-height:1.7;letter-spacing:.045em}
  .tagline{font-size:15px}
  .session-list article{grid-template-columns:32px 1fr auto;gap:.35rem 1rem;padding:1.8rem 0}
  .session-list article p,.session-list article small{grid-column:2 / 4}
  .session-list article strong{grid-column:3;grid-row:1}
  .session-list h3{margin:0}
  .profile-portrait{max-width:430px;margin-top:2.3rem}
  .booking-button{padding:1.15rem 1.2rem}
  .booking-button span{font-size:17px}
  .booking-button small{font-size:10px}
  .first-visit{margin-top:3.4rem;padding:1.8rem 1.5rem}
  .tool-experiences{grid-template-columns:1fr;gap:1.8rem;margin-top:3.5rem}
  .tool-experiences article{padding-right:0}
  .tool-experiences article+article{border-left:0;border-top:1px solid var(--line);padding:1.8rem 0 0}
}
