:root{--ink:#2e302e;--muted:#68685f;--paper:#f8f7f4;--line:#d8d7d0;--taupe:#8b8271;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--sans);font-size:14px;line-height:2}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(28px,2.8vw,42px);line-height:1.75;letter-spacing:.07em}h3{font-size:19px;line-height:1.8}p+p{margin-top:18px}:focus-visible{outline:2px solid #79684e;outline-offset:6px}.wrap{width:88%;max-width:1280px;margin-inline:auto}.section{padding-block:110px}.kicker,.eyebrow{font-size:11px;letter-spacing:.2em}.kicker{display:flex;align-items:center;gap:22px;margin-bottom:24px}.kicker:after{content:"";width:48px;height:1px;background:currentColor;transform-origin:left;animation:line-in 1s both}.kicker span{font-size:11px;letter-spacing:.12em}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:16px 25px;background:var(--taupe);color:#fff;font-size:12px;letter-spacing:.07em;border:1px solid transparent;transition:background .4s,transform .4s;cursor:pointer}.button:hover{background:#625d53;transform:translateY(-2px)}.button span,.text-link span{display:inline-block;font-family:Arial,sans-serif;font-size:21px;transition:transform .4s}.button:hover span,.text-link:hover span{transform:translateX(4px)}.text-link{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:8px 0;border-bottom:1px solid #9b9a92;font-size:12px}.site-header{height:96px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);display:flex;align-items:center;justify-content:space-between;padding:0 4%;gap:24px;transition:height .35s,box-shadow .35s}.site-header.scrolled{height:76px;box-shadow:0 3px 18px #00000008}.brand{display:flex;align-items:center;gap:17px;white-space:nowrap;font-family:var(--serif);font-size:20px;letter-spacing:.13em;line-height:1.6}.brand small{display:block;font-family:Georgia,serif;font-size:8px;letter-spacing:.27em;margin-top:5px}.brand-mark{font:italic 51px Georgia;position:relative;border-right:1px solid var(--line);padding-right:23px}.brand-mark span{font-size:25px;position:absolute;right:8px;top:17px}.site-header nav{display:flex;align-items:center;gap:25px;font-size:11px;white-space:nowrap}.header-cta{margin-left:10px;padding:12px 19px}.menu-toggle{display:none}.hero{min-height:680px;height:calc(100svh - 96px);max-height:860px;position:relative;background:var(--paper);overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 37%;overflow:hidden}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--paper),#f8f7f4ba 11%,transparent 38%)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:58% center;animation:hero-zoom 14s ease-out forwards}.hero-copy{position:relative;padding:55px 0 90px 8%;z-index:1;max-width:760px}.hero h1{font-size:clamp(36px,3.5vw,54px);line-height:1.55;letter-spacing:.055em;margin:26px 0 24px;animation:fade-up 1s both}.period{color:var(--taupe)}.hero-lead{font-size:13px;line-height:2.2;animation:fade-up 1s .2s both}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:30px;animation:fade-up 1s .4s both}.hero-bottom{position:absolute;bottom:24px;left:8%;right:5%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.15em;z-index:1}.hero-bottom a{font-size:9px;background:#f8f7f4cc;padding:0 10px}.hero-bottom a span{margin-left:30px}.highlights{display:grid;grid-template-columns:repeat(4,1fr);padding:35px 0;border-bottom:1px solid var(--line)}.highlights>div{display:flex;align-items:center;justify-content:center;gap:18px;border-right:1px solid var(--line)}.highlights>div:last-child{border:0}.highlights .number{font:20px Georgia;color:#7c7b70;align-self:flex-start}.highlights img{width:40px;height:43px;object-fit:contain}.highlights p{font-size:12px;line-height:1.9}.about{display:grid;grid-template-columns:43% 41% 16%;align-items:center;position:relative;padding-bottom:65px}.photo{overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.6,.3,1)}.photo:hover img{transform:scale(1.045)}.about-image{height:470px;position:relative}.photo-caption{position:absolute;bottom:20px;right:20px;color:#fff;font-size:10px;letter-spacing:.16em;background:#25272380;padding:3px 10px}.about-copy{padding:0 13%}.about-copy h2{font-size:32px;margin-bottom:25px}.about-copy p:not(.kicker){font-size:13px}.about-copy .text-link{margin-top:23px}.about-decoration{width:100%;height:300px;object-fit:cover;object-position:90%}.quote-section{display:flex;gap:35px;align-items:flex-start;padding:50px 8% 60px;border-bottom:1px solid var(--line)}.quote-mark{font:110px Georgia;color:#aca594;line-height:1}.quote-section blockquote{margin:6px 0 0}.quote-section blockquote p{font-family:var(--serif);font-size:21px;line-height:2}.quote-section footer{font-size:11px;letter-spacing:.13em;margin-top:20px;color:var(--muted)}.features{display:grid;grid-template-columns:44% 56%;gap:0}.section-heading>p:last-child{color:var(--muted);font-size:12px;margin-top:25px}.feature-list article{display:flex;gap:30px;padding:27px 0;border-bottom:1px solid var(--line)}.feature-list article:first-child{padding-top:0}.feature-list article>span{font:italic 25px Georgia;color:var(--taupe)}.feature-list p{font-size:12px;color:var(--muted);margin-top:12px;max-width:460px}.lessons{background:var(--paper)}.lesson-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px}.lesson-heading>p{color:var(--muted);font-size:12px;max-width:340px}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.lesson-card:nth-child(2){padding-top:55px}.lesson-card:nth-child(3){padding-top:110px}.lesson-card .photo{height:215px}.lesson-card .photo img{object-position:50% center}.card-top{font-size:9px;letter-spacing:.17em;margin-top:24px;color:var(--muted)}.lesson-card h3{margin-top:8px;font-size:19px}.lesson-card p{margin-top:14px;color:var(--muted);font-size:12px}.lesson-card .text-link{margin-top:22px}.lesson-info{margin:70px 0 0;display:grid;grid-template-columns:1fr 1fr 1.3fr 1fr;border-top:1px solid var(--line);padding-top:28px;gap:25px}.lesson-info dt{font-size:10px;color:var(--muted);margin-bottom:12px}.lesson-info dd{margin:0;font-size:12px}.teacher{display:grid;grid-template-columns:43% 45% 12%;align-items:center}.teacher-image{height:610px}.teacher-image img{object-position:center 35%}.teacher-copy{padding:0 15%}.teacher-copy h2{margin-bottom:25px}.teacher-copy>p:not(.kicker){font-size:13px}.teacher-name{margin-top:35px;border-top:1px solid var(--line);padding-top:22px}.teacher-name small{font-size:9px;letter-spacing:.15em;color:var(--muted)}.teacher-name h3{font-size:24px;margin-top:6px;letter-spacing:.15em}.teacher-aside{writing-mode:vertical-rl;font:italic 19px Georgia;color:#999386;justify-self:center;letter-spacing:.08em}.fees{padding-top:15px}.fee-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.fee-grid article{padding:35px 40px 25px;border-right:1px solid var(--line);margin-top:25px}.fee-grid article:first-child{padding-left:0}.fee-grid article:last-child{border:0}.fee-label{font-size:10px;letter-spacing:.15em;color:var(--muted);margin-bottom:20px}.fee-grid h3{font-size:20px}.price{font-family:Georgia,serif;font-size:60px;letter-spacing:-.03em;line-height:1.5;margin-top:22px}.price span{font-family:var(--sans);font-size:17px;letter-spacing:0;margin-left:8px}.price+p{font-size:12px;margin-top:10px}.trial-fee{background:var(--paper)}.trial-banner{position:relative;padding:75px 0;color:#fff;overflow:hidden;background:#262824}.trial-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 66%;opacity:.25}.trial-banner>.wrap{position:relative;display:flex;justify-content:space-between;align-items:center}.trial-banner .kicker{font-size:9px}.trial-banner h2{font-size:33px}.trial-banner p:not(.kicker){font-size:12px;margin-top:20px}.light-button{background:#eeece5;color:var(--ink);min-width:310px}.light-button:hover{background:#fff}.contact{display:grid;grid-template-columns:46% 54%;padding-bottom:90px}.contact-copy>p:not(.kicker){font-size:13px;margin-top:24px;color:var(--muted)}.contact-decoration{display:block;font:italic 65px Georgia;color:#d5d0c6;margin-top:80px}.contact-form{display:flex;flex-direction:column}.contact-form label{font-size:12px;margin-bottom:7px}.contact-form label small{font-size:9px;color:#756b5c;margin-left:10px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;background:#fafaf8;border:0;border-bottom:1px solid #aaa99f;border-radius:0;padding:13px 12px;margin-bottom:29px;color:var(--ink);font-size:14px}.contact-form textarea{resize:vertical;min-height:120px}.contact-form ::placeholder{color:#797970;font-size:12px}.form-notice{font-size:12px;color:var(--muted);margin-bottom:15px}.form-button{background:#41433e;width:100%;font-size:12px}.form-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.form-status{font-size:12px;margin-top:8px}.access{display:grid;grid-template-columns:35% 45% 20%;border-top:1px solid var(--line);padding:50px 0 65px}.access h2{font-size:25px}.access dl{margin:0}.access dl div{display:grid;grid-template-columns:100px 1fr;font-size:12px;padding:7px 0}.access dt{color:var(--muted)}.access dd{margin:0}.access-note{align-self:center;justify-self:end;font:16px/1.7 Georgia;letter-spacing:.14em;color:#827c71}.site-footer{border-top:1px solid var(--line);padding:35px 0;display:flex;justify-content:space-between;align-items:center;gap:25px}.site-footer .brand{font-size:16px}.site-footer nav{display:flex;gap:18px;font-size:10px}.site-footer>p{font-size:10px;color:var(--muted)}.site-footer small{font-size:9px}.back-top{font-size:24px}.skip-link{position:fixed;top:-100px;left:20px;background:#fff;z-index:50;padding:8px 20px}.skip-link:focus{top:10px}.mobile-break{display:none}.motion-enabled .reveal{opacity:0;transform:translateY(30px);transition:opacity .9s,transform .9s}.motion-enabled .reveal.is-visible{opacity:1;transform:none}.motion-enabled .photo.reveal img{transform:scale(1.03);transition:transform 1.1s}.motion-enabled .photo.reveal.is-visible img{transform:scale(1)}.motion-enabled .photo.reveal.is-visible:hover img{transform:scale(1.045)}@keyframes hero-zoom{to{transform:scale(1.05)}}@keyframes fade-up{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(min-width:1600px){.hero-copy{padding-top:85px}}@media(max-width:1150px){.site-header{padding-inline:3%;gap:18px}.site-header nav{gap:15px}.brand{font-size:17px}.brand-mark{display:none}.header-cta{margin-left:0;font-size:10px;padding:12px}.hero-copy{padding-left:6%}.hero h1{font-size:43px}.hero-photo{left:33%}.highlights>div{gap:10px}.highlights p{font-size:11px}.about{grid-template-columns:45% 55%}.about-decoration{display:none}.about-copy{padding-inline:10%}.teacher{grid-template-columns:45% 55%}.teacher-aside{display:none}.teacher-copy{padding-inline:10%}.lesson-grid{gap:22px}.lesson-card h3{font-size:17px}.site-footer nav{flex-wrap:wrap;max-width:280px}.price{font-size:50px}}
@media(max-width:900px){.site-header,.site-header.scrolled{height:76px;padding-inline:6%}.brand{font-size:18px}.menu-toggle{display:flex;flex-direction:column;gap:7px;justify-content:center;background:none;border:0;width:44px;height:44px;padding:8px;z-index:22}.menu-toggle span{display:block;height:1px;background:var(--ink);width:27px;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.site-header nav{display:none;position:fixed;inset:76px 0 0;background:#f8f7f4;padding:45px 8%;overflow:auto;flex-direction:column;align-items:stretch;gap:0;font-size:18px}.site-header nav.is-open{display:flex}.site-header nav>a{padding:18px 0;border-bottom:1px solid var(--line)}.site-header nav>.header-cta{margin-top:30px;padding:16px 25px;font-size:13px}.menu-open{overflow:hidden}.hero{height:auto;min-height:660px}.hero-copy{padding-top:55px}.hero h1{font-size:38px}.hero-lead{font-size:12px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-photo{left:30%}.hero-photo:after{background:linear-gradient(90deg,var(--paper),#f8f7f4dc 15%,#f8f7f460 40%,transparent 75%)}.highlights{grid-template-columns:repeat(2,1fr);gap:25px 0}.highlights>div:nth-child(2){border:0}.highlights>div{justify-content:flex-start;padding-left:12%}.section{padding-block:75px}.about-image{height:430px}.about-copy h2{font-size:26px}.about-copy p:not(.kicker){font-size:12px}.features{grid-template-columns:40% 60%;gap:15px}.features h2{font-size:27px}.feature-list h3{font-size:17px}.lesson-heading>p{max-width:230px}.lesson-card .photo{height:180px}.lesson-card:nth-child(2){padding-top:30px}.lesson-card:nth-child(3){padding-top:60px}.lesson-info{grid-template-columns:1fr 1fr;gap:25px}.teacher-image{height:580px}.teacher-copy{padding-inline:9%}.teacher-copy>p:not(.kicker){font-size:12px}.fee-grid article{padding:22px}.price{font-size:42px}.trial-banner>.wrap{gap:20px}.light-button{min-width:260px}.contact{grid-template-columns:40% 60%;gap:20px}.access{grid-template-columns:40% 60%}.access-note{display:none}.site-footer{flex-wrap:wrap}.site-footer nav{max-width:none}.site-footer>p{width:80%}}
@media(max-width:600px){html{scroll-padding-top:85px}.wrap{width:87%}.section{padding-block:65px}.site-header,.site-header.scrolled{height:70px}.site-header nav{top:70px}.brand{font-size:17px}.brand small{font-size:7px}.hero{display:flex;flex-direction:column;min-height:0;overflow:hidden}.hero-copy{padding:36px 6.5% 32px;max-width:none}.hero .intro{font-size:10px;letter-spacing:.12em}.hero h1{font-size:clamp(28px,7.8vw,43px);line-height:1.65;letter-spacing:.015em;margin:20px 0}.desktop-break{display:none}.hero h1 br:nth-of-type(2){display:none}.hero-lead{font-size:12px;line-height:2.1}.hero-actions{gap:15px;margin-top:23px;flex-direction:row;flex-wrap:wrap;align-items:center}.hero-actions .button{padding:13px 17px;font-size:11px;gap:20px}.hero-actions .text-link{font-size:10px;gap:13px}.hero-photo{position:relative;inset:auto;order:2;height:310px;margin-left:6.5%}.hero-photo:after{background:linear-gradient(180deg,#f8f7f440,transparent 30%)}.hero-photo img{object-position:50% 57%}.hero-bottom{position:relative;inset:auto;order:3;padding:16px 6.5%;font-size:9px;gap:15px}.hero-bottom a{font-size:7px;padding:0;white-space:nowrap}.hero-bottom a span{margin-left:7px}.highlights{padding-block:25px;gap:25px 0}.highlights>div{padding-left:0;gap:11px}.highlights>div:nth-child(even){padding-left:16px}.highlights img{width:30px;height:33px}.highlights .number{font-size:16px}.highlights p{font-size:10px}.about{display:flex;flex-direction:column;gap:35px;padding-bottom:35px}.about-image{width:93.5%;height:290px;align-self:flex-start}.about-copy{padding:0;width:87%}.kicker{margin-bottom:18px;font-size:10px;gap:16px}.about-copy h2,h2{font-size:29px}.about-copy p:not(.kicker){font-size:13px}.quote-section{padding:30px 0 45px;gap:16px}.quote-mark{font-size:75px}.quote-section blockquote p{font-size:17px}.wide-break{display:none}.quote-section footer{font-size:10px}.features{display:block}.section-heading{margin-bottom:35px}.features h2{font-size:29px}.feature-list article{gap:22px;padding-block:25px}.feature-list article:first-child{padding-top:25px;border-top:1px solid var(--line)}.feature-list h3{font-size:17px}.feature-list p{font-size:12px}.lesson-heading{display:block;margin-bottom:35px}.lesson-heading>p{margin-top:20px;max-width:none}.lesson-grid{display:block}.lesson-card,.lesson-card:nth-child(2),.lesson-card:nth-child(3){padding-top:0;margin-top:38px}.lesson-card .photo{height:230px}.lesson-card h3{font-size:20px}.lesson-card p{font-size:13px}.card-top{margin-top:20px}.lesson-card .text-link{margin-top:15px}.lesson-info{margin-top:40px;gap:25px 18px}.lesson-info dd{font-size:11px}.teacher{display:flex;flex-direction:column;gap:35px}.teacher-image{width:83%;height:430px;align-self:flex-start}.teacher-copy{width:87%;padding:0}.teacher-copy>p:not(.kicker){font-size:13px}.teacher-name{margin-top:25px}.fees{padding-top:0}.fee-grid{display:block}.fee-grid article,.fee-grid article:first-child{display:grid;grid-template-columns:1fr 1fr;padding:25px 0;border-right:0;border-bottom:1px solid var(--line);margin:0;align-items:center;column-gap:10px}.fee-label{grid-column:1/-1;margin-bottom:12px}.fee-grid h3{font-size:20px}.price{font-size:43px;margin:0;grid-column:2;grid-row:2;text-align:right}.price span{font-size:14px}.price+p{grid-column:1/-1;margin-top:5px}.fee-grid .trial-fee{padding:25px 18px;margin-top:15px}.trial-banner{padding:50px 0}.trial-banner>.wrap{display:block}.trial-banner h2{font-size:30px}.trial-banner .button{margin-top:30px;width:100%}.mobile-break{display:block}.contact{display:block;padding-bottom:55px}.contact-copy{margin-bottom:35px}.contact-decoration{display:none}.contact-form label{font-size:13px}.contact-form input,.contact-form select,.contact-form textarea{font-size:16px}.form-button{font-size:11px;gap:10px;padding-inline:14px}.access{display:block;padding:35px 0}.access dl{margin-top:25px}.access dl div{grid-template-columns:85px 1fr;font-size:12px}.site-footer{gap:25px;padding-block:30px}.site-footer nav{width:100%;gap:16px;flex-wrap:wrap}.site-footer>p{margin:0;font-size:10px}.site-footer .brand{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-enabled .reveal{opacity:1;transform:none}.photo img,.hero-photo img{transform:none!important}}
