:root{--paper:#f8f7f1;--ink:#18243a;--rose:#be5f93;--rose-light:#eabed4;--rule:#d9d9d0;--muted:#56606e;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:.96}h2{font-size:clamp(3rem,5vw,4.7rem);font-family:var(--display);letter-spacing:-.02em}h2 em{font-family:Georgia,serif;font-size:.82em;font-weight:400;line-height:1.2}p+p{margin-top:1rem}.section{max-width:1296px;padding:100px 58px;margin:auto}.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.14em;line-height:1.5}.header{max-width:1400px;margin:auto;padding:30px 58px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rule)}.wordmark{font-family:var(--display);font-weight:700;font-size:1.65rem;letter-spacing:.015em;line-height:1}.wordmark span{display:block;font:500 .75rem/1.5 var(--body);letter-spacing:.24em;margin-top:7px}.header nav{display:flex;gap:30px;align-items:center;font-size:.9rem}.header nav a{padding:6px 0}.header nav a:hover{color:#90436e}.header nav .nav-book{border:1px solid var(--ink);padding:10px 20px}.menu-toggle{display:none}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;padding:48px 58px 52px;gap:42px;align-items:stretch}.hero-copy{padding-top:18px;display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{display:flex;align-items:center;gap:12px}.short-rule{width:32px;height:3px;background:var(--rose);display:inline-block}.hero h1{font-family:var(--display);font-size:clamp(4.8rem,8.5vw,8.4rem);font-weight:700;letter-spacing:-.015em;line-height:.81;margin-top:35px;position:relative;z-index:1}.name-period{color:var(--rose)}.hero-tagline{font-family:Georgia,serif;font-size:clamp(1.65rem,2.5vw,2.4rem);font-style:italic;line-height:1.25;margin-top:31px}.hero-intro{font-size:1rem;max-width:380px;color:var(--muted);margin-top:20px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:49px;padding:13px 22px;font-size:.9rem;font-weight:600;line-height:1.35;border:1px solid transparent;transition:background .18s,color .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#344360}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--rose-light)}.button-outline{border-color:#8790a1;color:var(--paper)}.button-outline:hover{background:#31405a}.text-link{display:inline-block;border-bottom:1px solid var(--ink);font-size:.9rem;font-weight:600;line-height:1.7;padding-bottom:3px}.text-link:hover{color:#90436e;border-color:#90436e}.hero-note{font-size:.75rem;letter-spacing:.12em;margin-top:auto;padding-top:35px;color:var(--muted)}.hero-photo{background:var(--ink);position:relative;min-height:550px;overflow:hidden;display:flex;flex-direction:column}.hero-photo img{height:calc(100% - 43px);flex:1;min-height:0;object-position:50% 35%}.hero-photo figcaption{display:flex;justify-content:space-between;padding:14px 18px;font-size:.75rem;letter-spacing:.15em;color:var(--paper);line-height:1.5;border-top:3px solid var(--rose)}.credits{background:var(--ink);color:var(--paper);padding:28px 58px;display:flex;justify-content:center;align-items:center;gap:48px;flex-wrap:wrap}.credits>span{font-size:.75rem;letter-spacing:.12em;line-height:1.6;max-width:80px;color:#b9bdc7}.credits p{font-family:var(--display);font-size:1.25rem;font-weight:500;letter-spacing:.04em;margin:0}.section-heading .eyebrow{margin-bottom:20px}.perform-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;margin-top:42px;align-items:start}.stage-photo img{height:430px;object-position:center}.stage-photo figcaption,.portrait-photo figcaption{font-size:.75rem;font-weight:600;letter-spacing:.13em;margin-top:12px}.perform-copy{padding-top:4px}.lead{font-size:1.3rem;line-height:1.45;font-weight:500}.perform-copy>p:not(.lead),.bio>p:not(.lead){color:var(--muted)}.show-types{margin:25px 0}.show-types details{border-top:1px solid var(--rule)}.show-types details:last-child{border-bottom:1px solid var(--rule)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 0;font-size:1rem;font-weight:600}summary::-webkit-details-marker{display:none}summary::after{content:'+';font-size:1.5rem;font-weight:400;color:#90436e}details[open] summary::after{content:'−'}details p{font-size:1rem;line-height:1.6;color:var(--muted);padding-bottom:20px;max-width:440px}.quote-band{background:var(--rose-light);display:flex;align-items:center;justify-content:center;gap:30px;padding:52px 30px;text-align:center}.quote-band blockquote{margin:0}.quote-band blockquote p{font:italic clamp(2.1rem,4.5vw,4rem)/1.2 Georgia,serif}.quote-band cite{font:600 .75rem/1.5 var(--body);letter-spacing:.18em;display:block;margin-top:16px}.quote-mark,.quote-end{font:8rem/.7 Georgia,serif;opacity:.26;align-self:flex-start}.quote-end{align-self:flex-end;transform:translateY(25px)}.about-top{display:flex;justify-content:space-between;align-items:end;gap:30px}.about-intro{font-size:1.1rem;line-height:1.5;max-width:330px}.about-grid{display:grid;grid-template-columns:.85fr 1.2fr;gap:78px;align-items:center;margin-top:50px}.portrait-photo img{height:460px;object-position:center 30%;filter:grayscale(1)}.bio .lead{font-size:1.5rem;margin-bottom:24px;max-width:500px}.bio .text-link{margin-top:25px}.honors{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:55px;border-top:1px solid var(--rule);padding-top:25px}.honors>div{display:flex;gap:19px}.honor-year{font:500 2.7rem/1 var(--display);color:#90436e}.honors p{font-size:.82rem;line-height:1.5}.honors strong{font-weight:600}.learn{background:var(--ink);color:var(--paper)}.learn-heading{display:flex;justify-content:space-between;gap:50px;align-items:end}.learn-heading .eyebrow{color:var(--rose-light);margin-bottom:25px}.learn h2{font-size:clamp(3.5rem,7vw,6.4rem)}.learn h2 em{color:var(--rose-light)}.learn-heading>p{color:#ced2db;max-width:370px;font-size:1.05rem;line-height:1.7}.learning-options{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:60px}.learning-options article{position:relative;border-top:1px solid #667084;padding:30px 70px 0 0;display:flex;flex-direction:column;align-items:flex-start}.option-number{position:absolute;right:0;top:23px;font:500 3.2rem/1 var(--display);color:#667084}.learning-options .eyebrow{color:var(--rose-light);margin-bottom:18px}.learning-options h3{font-family:var(--display);font-size:2.65rem;line-height:1.05}.learning-options p:not(.eyebrow){color:#ced2db;margin-top:22px;font-size:1rem;max-width:430px}.learning-options .button{margin-top:auto;transform:none}.learning-options p+.button{margin-top:30px}.learn-footnote{font-size:.75rem;letter-spacing:.12em;color:#a9b0c0;margin-top:52px}.work-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.work-heading .eyebrow{margin-bottom:23px}.work-heading>p{color:var(--muted);max-width:210px;font-size:1rem}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:42px;border-top:1px solid var(--rule)}.work-item{padding:28px 30px 5px 0;display:flex;flex-direction:column;align-items:flex-start}.work-item+.work-item{padding-left:30px;border-left:1px solid var(--rule)}.work-format{font-size:.75rem;letter-spacing:.13em;color:var(--muted)}.work-item h3{font:600 2.4rem/1.05 var(--display);margin-top:24px;transition:color .18s}.work-item:hover h3{color:#90436e}.work-item p{font-size:1rem;color:var(--muted);margin-top:18px;max-width:295px}.work-action{font-size:.875rem;font-weight:600;border-bottom:1px solid var(--ink);padding-top:28px;margin-top:auto}.booking{background:var(--rose-light)}.booking-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;padding-top:75px;padding-bottom:75px}.booking .eyebrow{margin-bottom:25px}.booking h2{font-size:clamp(3rem,6vw,5.7rem)}.booking h2+p{font:italic 1.4rem/1.4 Georgia,serif;margin-top:25px}.booking-contact{padding-top:13px}.booking-contact>p:first-child{max-width:425px}.booking-contact .button{margin-top:25px;min-width:170px}.email-address{display:block;font-size:1.05rem;font-weight:500;text-decoration:underline;text-underline-offset:4px;margin-top:16px;overflow-wrap:anywhere}.booking-small{font-size:.875rem;margin-top:28px}.booking-small a{border-bottom:1px solid var(--ink)}footer{max-width:1400px;padding:38px 58px 22px;margin:auto}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-links{display:flex;gap:23px;font-size:.875rem;flex-wrap:wrap}.footer-links a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid var(--rule);padding-top:20px;margin-top:35px;color:var(--muted);font-size:.75rem}.footer-bottom p+p{margin:0;font-size:.75rem;letter-spacing:.1em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:15px;background:var(--ink);color:white;padding:10px;z-index:50}.skip-link:focus{top:15px}
@media(min-width:1400px){.hero h1{font-size:8.4rem}}
@media(max-width:1050px){.header{padding:24px 32px}.hero{padding:38px 32px;gap:25px}.hero h1{font-size:8.5vw}.hero-photo{min-height:525px}.actions{gap:18px}.hero-note{max-width:250px}.credits{gap:30px;padding:25px 32px}.credits p{font-size:1.1rem}.section{padding:75px 32px}.perform-grid{gap:35px}.stage-photo img{height:400px}.about-grid{gap:45px}.honors{gap:25px}.honors>div{display:block}.honor-year{display:block;margin-bottom:12px}.learning-options article{padding-right:35px}.booking-inner{gap:35px}footer{padding:35px 32px 22px}}
@media(max-width:700px){html{scroll-padding-top:16px}.header{padding:23px 22px;position:relative}.wordmark{font-size:1.45rem}.wordmark span{font-size:.75rem}.menu-toggle{display:flex;gap:15px;align-items:center;border:0;background:none;padding:10px 0 10px 12px;font-size:.875rem;color:var(--ink)}.menu-toggle span{font-size:1.4rem;line-height:1}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);z-index:20;padding:20px 22px;border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;gap:12px}.header nav.is-open{display:flex}.header nav a{padding:10px}.header nav .nav-book{text-align:center}.hero{grid-template-columns:1fr;padding:35px 22px 30px;gap:30px}.hero-copy{padding:0}.hero .eyebrow{font-size:.75rem}.hero h1{font-size:clamp(4.1rem,15.4vw,6.8rem);margin-top:27px;line-height:.87}.hero-tagline{font-size:1.85rem;margin-top:25px}.hero-intro{font-size:1rem;margin-top:18px;max-width:350px}.actions{margin-top:24px}.button{padding:13px 17px;font-size:.875rem}.text-link{font-size:.875rem}.hero-note{padding-top:25px;font-size:.75rem;max-width:none}.hero-photo{min-height:0;height:420px;max-width:500px;width:100%;margin:auto}.hero-photo img{object-position:center 30%}.credits{padding:23px 22px;gap:16px 25px;justify-content:flex-start}.credits>span{max-width:none;flex-basis:100%;font-size:.75rem}.credits p{font-size:1.04rem}.section{padding:60px 22px}h2{font-size:3.2rem}.section-heading .eyebrow{font-size:.75rem;margin-bottom:18px}.perform-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.stage-photo img{height:300px}.perform-copy{padding:0}.lead{font-size:1.2rem}.perform-copy>p{font-size:1rem}.show-types{margin-top:20px}.quote-band{padding:40px 20px;gap:12px}.quote-band blockquote p{font-size:1.95rem}.quote-band cite{font-size:.75rem}.quote-mark,.quote-end{font-size:4rem}.quote-end{transform:translateY(15px)}.about-top{display:block}.about-intro{margin-top:24px;font-size:1rem}.about-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.portrait-photo{max-width:440px}.portrait-photo img{height:400px}.bio .lead{font-size:1.35rem;margin-bottom:20px}.bio p{font-size:1rem}.honors{grid-template-columns:1fr;gap:22px;padding-top:25px;margin-top:35px}.honors>div{display:flex;gap:22px;align-items:flex-start}.honor-year{font-size:2.5rem;margin:0;width:66px;flex-shrink:0}.honors p{font-size:.875rem}.learn-heading{display:block}.learn h2{font-size:4rem}.learn-heading>p{margin-top:30px;font-size:1rem}.learning-options{grid-template-columns:1fr;gap:42px;margin-top:38px}.learning-options article{padding-top:24px;padding-right:30px}.learning-options h3{font-size:2.5rem}.learning-options .eyebrow{font-size:.75rem}.option-number{font-size:2.75rem;top:18px}.learning-options p:not(.eyebrow){max-width:none}.learn-footnote{font-size:.75rem;margin-top:40px;max-width:290px}.work-heading{display:block}.work-heading>p{margin-top:25px;max-width:none;font-size:1rem}.work-grid{grid-template-columns:1fr;margin-top:28px;gap:28px}.work-item,.work-item+.work-item{border-left:0;padding:24px 0 0}.work-item+.work-item{border-top:1px solid var(--rule)}.work-item h3{font-size:2.35rem;margin-top:18px}.work-item p{max-width:none}.work-action{padding-top:20px}.booking-inner{grid-template-columns:1fr;gap:25px}.booking h2{font-size:3.7rem}.booking .eyebrow{font-size:.75rem}.booking h2+p{font-size:1.25rem}.booking-contact{padding-top:0;font-size:1rem}.email-address{font-size:1rem}.booking-small{font-size:.875rem}footer{padding:30px 22px 20px}.footer-main{display:block}.footer-links{margin-top:25px;gap:14px 24px;font-size:.875rem}.footer-bottom{display:block;font-size:.75rem;margin-top:25px}.footer-bottom p+p{margin-top:10px}.stage-photo figcaption,.portrait-photo figcaption{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-copy,.hero-photo,.bio,.perform-copy,.booking-contact{min-width:0}.hero h1{overflow-wrap:anywhere}@media(max-width:360px){.hero h1{font-size:15.4vw}}

.hero-photo img{position:absolute;inset:0 0 43px;width:100%;height:calc(100% - 43px)}.hero-photo figcaption{margin-top:auto;width:100%;position:relative;min-height:43px}
.carousel-photos{position:relative;height:430px;overflow:hidden;background:var(--ink)}.stage-photo .carousel-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 800ms ease-in-out}.stage-photo .carousel-slide.is-active{opacity:1}.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;flex-wrap:wrap}.carousel-controls[hidden]{display:none}.carousel-dots{display:flex;gap:2px}.carousel-dot{width:30px;height:32px;border:0;background:transparent;position:relative;padding:0;cursor:pointer}.carousel-dot::before{content:'';position:absolute;width:7px;height:7px;border-radius:50%;border:1px solid var(--ink);background:transparent;top:50%;left:50%;transform:translate(-50%,-50%)}.carousel-dot.is-active::before{background:var(--ink)}.carousel-buttons{display:flex;align-items:center;gap:16px}.carousel-buttons button{border:0;border-bottom:1px solid transparent;padding:4px 0;background:none;color:var(--ink);font-size:.875rem;cursor:pointer;min-height:32px}.carousel-buttons button:hover{border-color:var(--ink)}.carousel-pause{min-width:40px}.performance-carousel figcaption{margin-top:8px}@media(max-width:1050px){.carousel-photos{height:400px}}@media(max-width:700px){.carousel-photos{height:300px}.carousel-buttons{gap:14px}}@media(prefers-reduced-motion:reduce){.stage-photo .carousel-slide{transition:none}}

.header nav{gap:22px}.footer-main{align-items:flex-start}.footer-links{justify-content:flex-end;max-width:660px}
@media(min-width:701px) and (max-width:1180px){.header{position:relative}.menu-toggle{display:flex;gap:15px;align-items:center;border:0;background:none;padding:10px 0 10px 12px;font-size:.875rem;color:var(--ink)}.menu-toggle span{font-size:1.4rem;line-height:1}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);z-index:20;padding:20px 32px;border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;gap:12px}.header nav.is-open{display:flex}.header nav a{padding:10px}.header nav .nav-book{text-align:center}}
@media(max-width:700px){.footer-links{justify-content:flex-start}}

.booking-contact .eyebrow{margin-bottom:12px}.booking-other{border-top:1px solid rgba(24,36,58,.25);padding-top:28px;margin-top:32px}
