:root{--ink:#292e2b;--muted:#606660;--paper:#fcfcf9;--soft:#f0f1eb;--line:#d5d9d1;--accent:#354b3f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;font-size:16px;line-height:2}h1,h2,.hero-line,.wordmark,.fee{font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-weight:400}h2{font-size:clamp(26px,2.7vw,38px);line-height:1.65;letter-spacing:.07em;margin:0 0 30px}h3{font-size:16px;font-weight:400;margin:0}p{margin:0 0 24px}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}img{max-width:100%;width:100%;height:auto;display:block}figure{margin:0}figcaption{font-size:12px;line-height:1.9;color:var(--muted);margin-top:12px}button,input,textarea,select{font:inherit}a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;background:white;z-index:5}.skip:focus{top:10px}.header{max-width:1440px;padding:28px 5%;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:25px}.wordmark{text-decoration:none;font-size:29px;letter-spacing:.16em;line-height:1.4;display:inline-block}.wordmark span{display:block;font:10px/2.3 sans-serif;letter-spacing:.28em}.header nav{display:flex;align-items:center;gap:30px;font-size:14px}.header nav a{text-decoration:none}.nav-contact{border-bottom:1px solid var(--ink);padding:6px 0}.hero{max-width:1440px;margin:25px auto 0;display:grid;grid-template-columns:43% 57%;align-items:center;padding:0 5% 60px;gap:0}.hero-copy{padding:12px 30px 20px 0}.eyebrow{font-size:14px;letter-spacing:.12em;color:var(--muted);margin-bottom:25px}.hero h1{font-size:76px;line-height:1.35;letter-spacing:.15em;margin:0 0 30px}.hero h1 span{font:12px/2.5 sans-serif;letter-spacing:.37em;display:block;padding-left:5px}.hero-line{font-size:clamp(27px,2.5vw,37px);line-height:1.75;letter-spacing:.08em}.hero-copy>p:not(.hero-line):not(.eyebrow){font-size:14px}.hero-photo{align-self:center}.hero-photo img{aspect-ratio:4/5;object-fit:cover;object-position:54% center}.button{display:inline-flex;justify-content:space-between;gap:35px;align-items:center;background:var(--accent);color:white;text-decoration:none;padding:16px 23px;font-size:15px;border:1px solid var(--accent);cursor:pointer;min-height:56px;line-height:1.5}.button:hover{background:#263b2f;color:white}.button span{font-size:20px}.sub-links{display:flex;flex-wrap:wrap;gap:22px;font-size:13px;margin-top:23px}.section{width:min(1120px,90%);margin:auto;padding-top:105px;padding-bottom:105px}.about{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.art-photo{max-width:420px}.audiences{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.audience{display:grid;grid-template-columns:1fr 2fr;gap:70px;padding-top:70px;padding-bottom:70px}.audience+.audience{border-top:1px solid var(--line)}.section-label{font-size:14px;letter-spacing:.12em;padding-top:10px;color:var(--muted)}.examples{padding:22px 0 22px 20px;columns:2;column-gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;margin:30px 0}.examples li{break-inside:avoid;padding:5px 0}.wide-photo{padding-bottom:0}.wide-photo img{max-height:540px;object-fit:cover}.program-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;margin:45px 0 25px}.steps{padding:0;margin:0;list-style:none}.steps li{display:flex;align-items:baseline;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.steps li span{font-size:13px;color:var(--muted)}.appreciation{width:48%;margin:65px 0 0 auto}.details{background:var(--soft)}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}dl{margin:0 0 30px}dl>div{display:grid;grid-template-columns:75px 1fr;gap:20px;border-bottom:1px solid #cdd3c8;padding:23px 0}dl>div:first-child{padding-top:0}dt{font-size:14px;color:var(--muted)}dd{margin:0}.fee{font-size:23px;line-height:1.9;margin-bottom:14px}.small{font-size:14px;color:var(--muted);line-height:1.9}.instructor{display:grid;grid-template-columns:1fr 1.25fr .65fr;gap:45px;align-items:center}.profile h2{margin-bottom:10px}.studio{font-size:14px;margin-bottom:30px}.instructor-art{align-self:end;transform:translateY(30px)}.faq{display:grid;grid-template-columns:1fr 1.8fr;gap:70px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:21px 32px 21px 0;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:5px;font-size:22px;font-weight:300}details[open] summary:after{content:"−"}details p{padding:0 30px 10px 0;color:var(--muted)}.contact{background:var(--soft)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}.form-note{font-size:14px;padding-bottom:22px;border-bottom:1px solid #cdd3c8}.fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{font-size:14px;display:block}.required,.optional{font-size:12px;color:var(--muted);margin-left:6px}.required{border-bottom:1px solid var(--muted)}input,select,textarea{display:block;width:100%;border:1px solid #bcc5b9;background:#fff;border-radius:0;padding:12px;margin-top:8px;font-size:16px;color:var(--ink);min-height:49px}textarea{resize:vertical}input::placeholder{color:#747b71;font-size:14px}.full{grid-column:1/-1}form>.small{margin-top:25px}form .button{width:100%}#form-status{font-size:14px;margin-top:20px}.copy-button{border:0;background:transparent;text-decoration:underline;cursor:pointer;color:var(--ink);padding:12px 0}.footer{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding-top:60px;padding-bottom:25px}.footer .small{margin-top:20px}.personal-link{font-size:14px}.copyright{grid-column:1/-1;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:25px;margin-top:20px}
@media(min-width:1400px){.hero-photo img{aspect-ratio:1/1}}
@media(max-width:900px){.header nav{gap:18px}.header nav a:not(.nav-contact){display:none}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:60px}.hero-copy{padding-right:20px}.about{gap:40px}.audience{grid-template-columns:1fr 3fr;gap:25px}.program-grid,.details-grid,.faq,.contact-grid{gap:35px}.instructor{grid-template-columns:1fr 1.3fr;gap:35px}.instructor-art{display:none}.examples{columns:1}}
@media(max-width:600px){html{scroll-padding-top:20px}.header{padding:20px 6%}.wordmark{font-size:25px}.header nav{font-size:13px}.hero{display:flex;flex-direction:column;padding:0 0 35px;margin-top:18px}.hero-copy{width:88%;padding:5px 0 30px}.hero .eyebrow{font-size:12px;margin-bottom:18px}.hero h1{font-size:60px;margin-bottom:21px}.hero-line{font-size:29px;line-height:1.65;margin-bottom:22px}.hero-copy>p:not(.hero-line):not(.eyebrow){font-size:14px;line-height:1.95;margin-bottom:18px}.hero-photo{width:100%}.hero-photo img{aspect-ratio:16/10;object-position:50% center}.hero-photo figcaption{margin-left:6%}.hero .button{margin-top:6px}.sub-links{font-size:13px;margin-top:20px}.section{width:88%;padding-top:65px;padding-bottom:65px}.about,.audience,.program-grid,.details-grid,.instructor,.faq,.contact-grid{display:block}.about .art-photo{width:85%;margin:42px auto 0}.eyebrow{margin-bottom:15px}h2{font-size:27px;margin-bottom:24px}.about p{font-size:15px}.desktop{display:none}.section-label{margin-bottom:22px}.audience{padding-top:45px;padding-bottom:45px}.examples{font-size:14px}.wide-photo{padding-top:45px;padding-bottom:0}.program-grid{margin-top:30px}.steps{margin-top:25px}.steps li{padding:17px 0}.steps h3{font-size:15px}.appreciation{width:85%;margin-top:35px}.details-grid dl{margin-top:32px}.fee{font-size:21px}.instructor>figure:first-child{width:75%;margin-bottom:35px}.instructor-art{display:block;width:45%;margin:30px 0 0 auto;transform:none}.questions{margin-top:30px}summary{font-size:15px}.contact form{margin-top:35px}.fields{grid-template-columns:1fr;gap:23px}.footer{display:block;padding-top:45px;padding-bottom:20px}.footer>div+div{margin-top:35px}.copyright{margin-top:35px}.button{font-size:14px}.contact h2 br{display:none}.contact .small a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.fee-breakdown{margin-bottom:22px}.fee-breakdown p{margin:0;padding:0 0 17px}.fee-breakdown p+p{border-top:1px solid #cdd3c8;padding-top:17px}.fee-breakdown span{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}.fee-breakdown strong{display:block;font-size:clamp(16px,1.7vw,21px);font-weight:500;line-height:1.7}

.instructor{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:70px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#form-status.success{padding:20px;border:1px solid var(--accent);background:white}@media(max-width:600px){.instructor{display:block}}

.floating-contact{position:fixed;right:24px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:20;box-shadow:0 3px 18px #0002}.floating-contact[hidden]{display:none}.footer{padding-bottom:110px}@media(max-width:600px){.floating-contact{left:6%;right:6%;bottom:calc(14px + env(safe-area-inset-bottom));justify-content:space-between}}
