:root{--cream:#f4f9fd;--ink:#243f55;--muted:#536b7d;--blue:#4c779c;--blue-dark:#355e80;--sky:#deedf8;--line:#d5e2eb;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
button:disabled{cursor:default}
img{display:block;max-width:100%;height:auto}
button[hidden],[hidden]{display:none!important}
.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.site-header{height:113px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}
.wordmark{display:inline-flex;align-items:center;font:italic 53px/1 var(--serif);letter-spacing:-4px;flex-shrink:0}
.brand-star{font:30px/1 var(--serif);letter-spacing:0;color:var(--blue);margin:0 0 13px 7px}
.wordmark-caption{font:9px/1.5 var(--sans);letter-spacing:2.1px;width:86px;margin:5px 0 0 19px}
.site-header nav{display:flex;gap:35px;font-size:12px}
.site-header nav a{position:relative;padding-block:9px}
.site-header nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--blue);transition:width .25s}
.site-header nav a:hover:after{width:100%}
.header-cta{border:1px solid #b6cbdc;border-radius:50px;padding:13px 19px;font-size:12px;display:flex;gap:30px;align-items:center;transition:background .2s}
.header-cta:hover{background:var(--sky)}
.header-cta span{font-size:18px}
.hero{position:relative;display:grid;grid-template-columns:1.06fr 1fr;gap:48px;padding-top:56px;padding-bottom:83px;align-items:center}
.hero-copy{padding-bottom:28px}
.eyebrow{font-size:10px;letter-spacing:2.1px;line-height:1.6;font-weight:500;margin:0 0 26px}
.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:25px}
.tiny-star{font-size:23px;line-height:1;color:var(--blue)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-weight:400;font-family:var(--serif)}
h1{position:relative;font-size:clamp(62px,6.5vw,94px);line-height:1.035;letter-spacing:-5.5px;margin-bottom:26px}
h1 em,h2 em{color:var(--blue);font-weight:400}
.heading-star{display:inline-block;font-size:57px;vertical-align:top;color:var(--blue);margin:-7px 0 0 15px;font-style:normal}
.hero-description{max-width:370px;font-size:14px;line-height:1.9;color:#536b7d;margin-bottom:29px}
.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;border-radius:40px;padding:17px 23px;border:1px solid transparent;font-size:12px;line-height:1.3;transition:background .2s,transform .2s}
.button-dark{background:var(--ink);color:var(--cream)}
.button-dark:hover{background:var(--blue-dark);transform:translateY(-2px)}
.button span{font-size:18px;line-height:1}
.text-link{font-size:11px;display:flex;gap:14px;align-items:center;padding-block:8px;border-bottom:1px solid #b3c7d7}
.text-link span{font-size:17px}
.hero-footnote{display:flex;align-items:center;gap:12px;font-size:10px;color:#536b7d;margin-top:43px}
.footnote-line{height:1px;width:29px;background:#99b8cf}
.hero-art{position:relative;min-width:0;aspect-ratio:0.94;background:var(--sky);border-radius:48% 48% 3px 3px;isolation:isolate}
.hero-illustration{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;border-radius:inherit}
.art-label{position:absolute;top:19%;left:7%;font-size:9px;line-height:1.65;letter-spacing:1.7px;transform:rotate(-9deg);color:#446b89;z-index:1}
.art-label>span:first-child{position:absolute;font-size:28px;top:-41px;left:29px}
.art-label-indent{padding-left:10px}
.art-caption{position:absolute;bottom:23px;left:0;width:100%;text-align:center;font-size:8px;letter-spacing:2.2px;color:#446b89}
.floating-note{position:absolute;right:-22px;bottom:14%;display:flex;align-items:center;gap:13px;background:#fcfdff;border:1px solid #cedfec;padding:18px 25px 18px 18px;transform:rotate(6deg);box-shadow:0 8px 25px #33224407}
.floating-note>span:last-child{font-size:11px;line-height:1.8;letter-spacing:.2px}
.floating-note em{font-family:var(--serif);font-size:17px;color:var(--blue)}
.note-star{font-size:34px;color:var(--blue)}
.scroll-cue{position:absolute;bottom:26px;left:0;display:flex;align-items:center;gap:12px;font-size:8px;letter-spacing:1.8px;color:#536b7d}
.scroll-cue span{font-size:20px;line-height:1.2}
.dance-ribbon{overflow:hidden;background:#dfedf8;border-top:1px solid #cedfeb;border-bottom:1px solid #cedfeb;padding:20px 0}
.dance-ribbon>div{display:flex;align-items:center;justify-content:space-around;gap:30px;min-width:850px;max-width:1500px;margin:auto}
.dance-ribbon span{font-size:10px;letter-spacing:2.4px;white-space:nowrap;color:#486982}
.dance-ribbon i{font-size:25px;line-height:1;font-style:normal;color:#7ea6c5}
.section-space{padding-top:91px;padding-bottom:89px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:37px}
.section-heading .eyebrow{margin-bottom:17px;color:#536b7d}
h2{font-size:clamp(36px,3.6vw,52px);letter-spacing:-1.9px;line-height:1.13;margin-bottom:0}
.section-heading>p{font-size:12px;line-height:1.9;color:var(--muted);margin:0 0 4px;max-width:310px}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:20px}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filter{background:transparent;border:1px solid transparent;border-radius:30px;font-size:11px;padding:10px 17px;transition:background .2s,border-color .2s}
.filter:hover{background:#e2eef7}
.filter.active{background:var(--ink);color:var(--cream)}
.filter span{font-size:8px;color:#c8dfef;margin-left:9px;vertical-align:top}
.gallery-hint{font-size:8px;letter-spacing:1.8px;color:#536b7d}
.gallery-hint span{font-size:19px;padding-left:8px;color:var(--blue)}
.dance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px;align-items:start}
.dance-card{appearance:none;display:block;text-align:left;background:none;border:0;padding:0;width:100%;min-width:0}
.card-art{display:block;position:relative;overflow:hidden;border-radius:3px;aspect-ratio:1.17}
.card-art img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.65,.3,1)}
.dance-card:hover .card-art img{transform:scale(1.055)}
.card-ballet{background:#e1eff9}.card-lyrical{background:#eededb}.card-jazz{background:#ebe6d6}
.card-number{position:absolute;top:17px;left:18px;font-size:9px;letter-spacing:1px;color:#415e76}
.card-open{position:absolute;bottom:15px;right:15px;border-radius:50%;width:36px;height:36px;background:#f6fbffd9;display:grid;place-items:center;font-size:20px;transition:background .2s,transform .2s}
.dance-card:hover .card-open{background:white;transform:rotate(45deg)}
.card-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 2px 0}
.card-category{display:block;font-size:8px;letter-spacing:1.4px;color:#536b7d;margin-bottom:9px}
.card-title{font:28px/1.2 var(--serif);letter-spacing:-.5px}
.card-sparkle{font-size:28px;color:#80a8c7}
.collection-note{font-size:10px;text-align:center;color:#536b7d;margin:35px 0 0}
.story-section{background:#e8f2fa;border-top:1px solid #d8e7f1;border-bottom:1px solid #d8e7f1}
.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:74px;align-items:center}
.story-art{position:relative;min-height:430px;display:grid;place-items:center;padding:20px 45px 35px}
.story-paper{position:relative;background:#fcfeff;padding:45px 38px 29px;width:min(100%,330px);transform:rotate(-7deg);box-shadow:0 12px 28px #5140520b;border:1px solid #dae7f0}
.paper-tape{position:absolute;top:-17px;left:calc(50% - 43px);width:86px;height:31px;background:#a3c6e1b8;transform:rotate(7deg);clip-path:polygon(0 0,100% 4%,97% 21%,100% 37%,97% 55%,100% 74%,98% 100%,0 98%,3% 83%,0 63%,3% 43%,0 26%)}
.paper-label{display:block;font-size:7px;letter-spacing:1.7px;color:#536b7d;margin-bottom:25px}
.story-paper p{font:39px/1.2 var(--serif);letter-spacing:-1.3px;margin-bottom:27px}
.story-paper em{color:var(--blue)}
.paper-signature{font:italic 15px/1.5 var(--serif);color:#536b7d}
.story-doodle{position:absolute;color:#8caeca;z-index:1;font-family:var(--serif)}
.doodle-one{left:0;top:24px;font-size:80px;transform:rotate(12deg)}
.doodle-two{right:0;bottom:55px;font-size:99px}
.story-art-caption{position:absolute;bottom:0;left:0;width:100%;text-align:center;font-size:7px;letter-spacing:1.8px;color:#536b7d}
.story-copy .eyebrow{color:#536b7d;margin-bottom:22px}
.story-copy h2{font-size:clamp(34px,3.3vw,46px);margin-bottom:24px;line-height:1.2}
.story-copy>p:not(.eyebrow){max-width:390px;font-size:13px;line-height:1.95;color:#536b7d;margin-bottom:17px}
.story-values{display:flex;gap:21px;flex-wrap:wrap;border-top:1px solid #ccdee9;margin-top:28px;padding-top:22px;max-width:410px}
.story-values span{display:flex;align-items:center;gap:8px;font-size:10px;white-space:nowrap}
.story-values i{font-style:normal;font-size:20px;color:var(--blue)}
.moments-section{padding-bottom:78px}
.moments-section .section-heading{margin-bottom:41px}
.moments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:47px}
.moment{border-top:1px solid var(--line);padding-top:25px}
.moment-icon{font-size:38px;color:#80a5c3;display:block;height:53px;font-family:var(--serif)}
.moment-index{font-size:8px;letter-spacing:1.6px;color:#536b7d;display:block;margin:14px 0 14px}
.moment h3{font-size:23px;letter-spacing:-.6px;line-height:1.3;margin-bottom:12px}
.moment p{font-size:12px;line-height:1.9;color:#536b7d;max-width:305px;margin-bottom:0}
.encore{position:relative;overflow:hidden;text-align:center;padding:54px 30px 47px;background:#deedf8;border:1px solid #cedeeb;border-radius:4px}
.encore .eyebrow{font-size:8px;letter-spacing:1.9px;color:#446b89;margin-bottom:17px}
.encore h2{font-size:55px;margin-bottom:14px}
.encore>p:not(.eyebrow):not(.sparkle-message){font-size:12px;color:#536b7d;margin-bottom:22px}
.encore .button{font-size:11px;padding:15px 21px;gap:21px}
.encore-star{position:absolute;font-family:var(--serif);color:#89b1d0;pointer-events:none}
.encore-star-left{font-size:100px;top:74px;left:9%;transform:rotate(-10deg)}
.encore-star-right{font-size:80px;top:100px;right:10%;transform:rotate(15deg)}
.sparkle-message{height:15px;font-size:10px;letter-spacing:.4px;color:#446b89;margin:13px 0 -15px}
.site-footer{display:flex;align-items:center;gap:25px;padding:36px 0 32px}
.site-footer .wordmark{font-size:40px}
.site-footer .brand-star{font-size:21px;margin-top:4px}
.site-footer>span{font-size:9px;color:#536b7d}
.site-footer small{font-size:8px;color:#536b7d;margin-left:auto}
.back-top{font-size:20px;padding:8px 12px;border:1px solid #cedfec;border-radius:50%}
.skip-link{position:fixed;top:16px;left:20px;opacity:0;pointer-events:none;z-index:20;background:var(--ink);color:white;padding:15px;border-radius:5px}
.skip-link:focus{opacity:1;pointer-events:auto}
.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}
.story-dialog{border:1px solid #cedfec;border-radius:9px;padding:0;max-width:790px;width:calc(100% - 40px);max-height:90vh;background:var(--cream);color:var(--ink);box-shadow:0 25px 100px #25173033;overflow:auto}
.story-dialog::backdrop{background:#182e43d9;backdrop-filter:blur(5px)}
.story-dialog>img{width:100%;height:300px;object-fit:cover}
.dialog-close{position:absolute;top:15px;right:15px;width:39px;height:39px;border:1px solid #d1e1ed;border-radius:50%;background:var(--cream);font-size:27px;line-height:1;z-index:2}
.dialog-body{padding:33px 40px 25px}
.dialog-body .eyebrow{color:var(--blue);font-size:9px;margin-bottom:13px}
.dialog-body h2{margin-bottom:18px;font-size:44px}
#dialog-description{font-size:14px;line-height:1.85;color:var(--muted)}
.sample-note{display:flex;gap:13px;align-items:center;background:#e4eff7;padding:18px;margin:23px 0;font-size:11px;color:#536b7d;line-height:1.7;border-radius:3px}
.sample-note>span{font-size:30px}
.sample-note p{margin:0}.sample-note strong{display:block;font-weight:500;color:#3e6380}
.dialog-navigation{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--blue)}
.dialog-navigation button{border:0;background:none;padding:10px 0;font-size:12px}
.sparkle-layer{position:fixed;inset:0;pointer-events:none;z-index:50;overflow:hidden}
.sparkle-particle{position:absolute;left:var(--x);top:var(--y);color:var(--color);font:var(--size)/1 var(--serif);animation:sparkle-flight 1.7s ease-out forwards}
@keyframes sparkle-flight{0%{opacity:0;transform:translate(0,0) rotate(0) scale(.3)}12%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--turn)) scale(.7)}}
@media(min-width:1500px){.hero{gap:72px}.hero-art{max-height:640px}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.hero{gap:30px;padding-top:45px}.hero-description{font-size:13px}.hero-actions{gap:18px}.button{padding:15px 18px;gap:18px}.hero-footnote{font-size:8px}.site-header nav{gap:22px}.wordmark-caption{display:none}h1{letter-spacing:-3.8px}.heading-star{font-size:42px}.floating-note{padding:12px 16px;right:-13px}.floating-note>span:last-child{font-size:9px}.floating-note em{font-size:14px}.art-caption{font-size:6px}.story-layout{gap:45px}.story-art{padding-inline:32px}.doodle-one{font-size:60px}.doodle-two{font-size:69px}.moments-grid{gap:26px}.card-category{font-size:7px;letter-spacing:1px}.card-title{font-size:25px}.encore h2{font-size:49px}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.site-header{height:88px;gap:20px}.wordmark{font-size:46px}.site-header nav{gap:18px;font-size:11px}.site-header nav a:last-child{display:none}.header-cta{font-size:10px;padding:10px 14px;gap:12px}.hero{gap:25px;padding-block:38px 72px}.hero-copy{padding-bottom:0}.hero .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:19px}h1{font-size:clamp(44px,7.6vw,63px);letter-spacing:-2.9px}.heading-star{font-size:30px;margin-left:8px}.hero-description{font-size:12px;line-height:1.85}.hero-actions{gap:12px}.hero-actions .button{font-size:10px;padding:13px 15px;gap:14px}.hero-actions .text-link{font-size:10px}.hero-footnote{font-size:7px;gap:7px;margin-top:25px}.footnote-line{width:15px}.hero-art{aspect-ratio:.76}.art-label{font-size:6px;letter-spacing:1.1px;top:17%;left:8%}.art-label>span:first-child{font-size:20px;top:-29px}.floating-note{bottom:10%;padding:9px 11px;gap:8px}.note-star{font-size:27px}.art-caption{font-size:5px;letter-spacing:1.2px;bottom:13px}.scroll-cue{font-size:7px;bottom:22px}.dance-ribbon{padding-block:16px}.dance-ribbon span{font-size:8px}.dance-ribbon>div{min-width:720px;gap:20px}.section-space{padding-block:65px}.section-heading{gap:25px}.section-heading>p{max-width:220px;font-size:11px}.eyebrow{font-size:8px;letter-spacing:1.6px}h2{font-size:37px}.gallery-hint{display:none}.dance-grid{gap:17px}.card-art{aspect-ratio:.87}.card-caption{padding-top:15px}.card-category{font-size:6px;letter-spacing:.6px;line-height:1.6}.card-title{font-size:23px}.card-sparkle{font-size:21px}.card-number{top:13px;left:12px;font-size:8px}.card-open{width:30px;height:30px;font-size:17px;right:10px;bottom:10px}.story-layout{gap:28px;padding-block:55px}.story-art{min-height:370px;padding-inline:19px}.story-paper{padding:34px 25px 28px}.story-paper p{font-size:31px}.paper-label{font-size:6px;letter-spacing:1px}.paper-signature{font-size:12px}.doodle-one{font-size:46px;left:-4px;top:33px}.doodle-two{font-size:55px;right:-9px}.story-art-caption{font-size:5px;letter-spacing:1px}.story-copy h2{font-size:33px;letter-spacing:-1.5px}.story-copy>p:not(.eyebrow){font-size:11px}.story-values{gap:12px;row-gap:5px}.story-values span{font-size:8px}.story-values i{font-size:17px}.moments-grid{gap:24px}.moment h3{font-size:21px}.moment p{font-size:11px}.moment-index{font-size:7px;letter-spacing:1px}.encore-star-left{font-size:72px;left:5%}.encore-star-right{font-size:60px;right:5%}.site-footer{flex-wrap:wrap;gap:15px}.site-footer small{font-size:7px}.site-footer>span{font-size:8px}}
@media(max-width:560px){.wrap{width:calc(100% - 40px)}.site-header{height:80px;gap:15px}.site-header nav{margin-left:auto;gap:17px;font-size:10px}.header-cta{display:none}.wordmark{font-size:44px}.brand-star{font-size:24px;margin-bottom:10px}.hero{grid-template-columns:1fr;gap:33px;padding-top:37px;padding-bottom:69px}.hero .eyebrow{font-size:8px;margin-bottom:20px}.hero-copy{position:relative}h1{font-size:clamp(51px,12.5vw,74px);line-height:1.02;letter-spacing:-3.2px;margin-bottom:24px}.heading-star{font-size:43px;margin-left:14px}.hero-description{max-width:350px;font-size:12px;margin-bottom:24px}.hero-actions{gap:22px}.hero-actions .button{font-size:11px;padding:16px 19px;gap:21px}.hero-actions .text-link{font-size:10px}.hero-footnote{display:none}.hero-art{aspect-ratio:1.02;max-width:420px;width:100%;margin-inline:auto;border-radius:48% 48% 3px 3px}.hero-illustration{object-position:center 43%}.art-label{font-size:8px;top:20%;left:9%}.art-label>span:first-child{font-size:26px;top:-36px}.floating-note{right:-8px;bottom:12%;padding:11px 17px;gap:11px}.floating-note>span:last-child{font-size:10px}.floating-note em{font-size:15px}.art-caption{font-size:6px;letter-spacing:1.6px;bottom:17px}.scroll-cue{font-size:7px;bottom:24px}.section-space{padding-block:53px}.section-heading{display:block;margin-bottom:27px}.section-heading .eyebrow{font-size:8px;margin-bottom:14px}h2{font-size:38px;letter-spacing:-1.5px}.section-heading>p{font-size:11px;margin:17px 0 0;max-width:310px}.gallery-toolbar{margin-bottom:22px}.filters{gap:4px}.filter{font-size:10px;padding:9px 13px}.filter span{font-size:7px;margin-left:5px}.dance-grid{grid-template-columns:1fr;gap:28px}.card-art{aspect-ratio:1.25}.card-caption{padding:16px 2px 0}.card-category{font-size:7px;letter-spacing:1.1px;margin-bottom:7px}.card-title{font-size:28px}.card-number{font-size:9px;top:17px;left:17px}.card-open{width:35px;height:35px;right:14px;bottom:14px;font-size:20px}.card-sparkle{font-size:29px}.collection-note{font-size:9px;line-height:1.8;max-width:260px;margin:26px auto 0}.story-layout{grid-template-columns:1fr;gap:36px;padding-block:46px}.story-art{order:2;max-width:350px;width:100%;margin:auto;min-height:380px}.story-copy .eyebrow{font-size:8px;margin-bottom:18px}.story-copy h2{font-size:38px}.story-copy>p:not(.eyebrow){font-size:12px;max-width:none}.story-values{max-width:none;gap:20px;margin-top:23px;padding-top:17px}.story-values span{font-size:9px}.story-paper{max-width:270px;padding:34px 32px 27px}.story-paper p{font-size:34px}.paper-label{font-size:6px;letter-spacing:1.5px}.paper-signature{font-size:14px}.doodle-one{font-size:63px;left:0;top:30px}.doodle-two{font-size:80px;right:0;bottom:35px}.story-art-caption{font-size:6px}.moments-section .section-heading{margin-bottom:27px}.moments-grid{grid-template-columns:1fr;gap:25px}.moment{display:grid;grid-template-columns:45px 1fr;column-gap:15px;padding-top:23px}.moment-icon{grid-column:1;grid-row:1/4;font-size:32px}.moment-index{margin:1px 0 9px;font-size:7px}.moment h3{font-size:24px;margin-bottom:9px}.moment p{grid-column:2;font-size:11px;max-width:none}.encore{padding:42px 20px 40px}.encore .eyebrow{font-size:6px;letter-spacing:1.3px}.encore h2{font-size:38px}.encore>p:not(.eyebrow):not(.sparkle-message){font-size:11px}.encore-star-left{font-size:40px;left:4%;top:118px}.encore-star-right{font-size:34px;right:4%;top:124px}.site-footer{padding-block:26px;gap:10px 20px}.site-footer .wordmark{font-size:35px}.site-footer .brand-star{font-size:18px}.site-footer>span{font-size:8px}.site-footer small{order:4;margin:0;width:100%;font-size:7px}.back-top{margin-left:auto;font-size:17px;padding:5px 9px}.story-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 30px)}.story-dialog>img{height:230px}.dialog-body{padding:25px 24px 20px}.dialog-body h2{font-size:37px}#dialog-description{font-size:12px}.sample-note{font-size:10px;padding:13px;gap:10px}.dialog-close{top:10px;right:10px}}


/* Olivia's photo collection and light-blue motion details. */
.motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0;background:#e9f3fb;border:1px solid #c5dbea;border-radius:50px;padding:12px 17px;min-height:42px;font-size:11px;transition:background .2s}
.motion-toggle:hover{background:#d8eaf8}
.motion-toggle>span:first-child:not([data-motion-label]){font-size:14px}
.hero-art{background:transparent;border-radius:0;aspect-ratio:.94;--pointer-x:0px;--pointer-y:0px;--tilt:0deg}
.hero-art::before{content:'';position:absolute;inset:14px -7px 8px -12px;background:linear-gradient(145deg,#e2f1fc,#c4dff3);border-radius:48% 48% 6px 6px;transform:rotate(-5deg);z-index:-1}
.hero-photo-frame{position:absolute;inset:5px 20px 30px 12px;overflow:hidden;border:9px solid #fcfeff;border-bottom-width:43px;border-radius:47% 47% 4px 4px;transform:translate3d(var(--pointer-x),var(--pointer-y),0) rotate(calc(2deg + var(--tilt)));transition:transform .25s ease-out;box-shadow:0 16px 42px #284b6917}
.hero-photo{height:100%;width:100%;object-fit:cover;object-position:50% 58%;border-radius:46% 46% 0 0}
.photo-caption{position:absolute;left:0;bottom:-34px;display:flex;align-items:center;justify-content:center;gap:25px;width:100%;height:26px;color:#4c6d86;font-size:8px;letter-spacing:2px}
.photo-caption span:last-child{font-size:18px;letter-spacing:0}
.hero-photo-frame{overflow:visible}
.hero-photo{overflow:hidden}
.hero-stamp{position:absolute;top:18%;left:-22px;padding:11px 13px;background:#f4faff;border:1px solid #d3e4f1;font-size:8px;letter-spacing:1.1px;display:flex;align-items:center;gap:8px;transform:rotate(-9deg);box-shadow:0 6px 16px #24465f09}
.hero-stamp>span{font-size:25px;color:#6d9cbe;animation:slow-spin 30s linear infinite}
.floating-note{right:-10px;bottom:15%;z-index:3;color:var(--ink);text-align:left;animation:note-float 6s ease-in-out infinite;transition:box-shadow .3s}
.floating-note:hover{box-shadow:0 10px 28px #32587820}
.floating-note:active .note-star{transform:scale(1.25)}
.note-star{display:inline-block;animation:slow-spin 22s linear infinite}
.art-caption{bottom:-10px;font-size:8px;letter-spacing:1.7px;color:#4c6d86}
.ambient-stars{position:absolute;inset:-15px;pointer-events:none;z-index:2}
.ambient-stars span{position:absolute;display:block;color:#6298bf;font-family:var(--serif);animation:star-drift 7s ease-in-out infinite;font-size:29px}
.ambient-stars span:nth-child(1){left:8%;top:4%;font-size:43px;animation-delay:-2s}
.ambient-stars span:nth-child(2){right:0;top:18%;font-size:18px;animation-delay:-4s}
.ambient-stars span:nth-child(3){right:-1%;top:51%;font-size:37px;animation-delay:-1s}
.ambient-stars span:nth-child(4){left:-1%;bottom:18%;font-size:21px;animation-delay:-3s}
.ambient-stars span:nth-child(5){right:16%;bottom:-1%;font-size:18px;animation-delay:-5s}
.heading-star{animation:heading-glimmer 5s ease-in-out infinite}
.dance-ribbon>.ribbon-track{display:flex;justify-content:flex-start;gap:0;min-width:0;max-width:none;width:max-content;margin:0;animation:ribbon-flow 38s linear infinite}
.ribbon-group{display:flex;align-items:center;justify-content:space-around;gap:42px;flex-shrink:0;padding-right:42px;min-width:max(100vw,1000px)}
.dance-ribbon:hover .ribbon-track{animation-play-state:paused}
.dance-ribbon span{color:#456985}
.dance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.card-art{aspect-ratio:.75;border-radius:120px 120px 4px 4px;background:#dbeaf5}
.card-stage img{object-position:51% 70%}
.card-pointe img{object-position:51% 51%}
.card-skate img{object-position:50% 62%}
.card-dress img{object-position:50% 45%}
.card-number{display:grid;place-items:center;top:auto;bottom:17px;left:16px;width:26px;height:26px;border-radius:50%;background:#f4faffec;color:#395971;font-size:9px}
.card-caption{align-items:flex-start;gap:8px}
.card-title{font-size:24px;line-height:1.22;display:block}
.card-category{font-size:8px;letter-spacing:1px;line-height:1.6}
.card-sparkle{flex-shrink:0;transition:transform .4s}
.dance-card:hover .card-sparkle{transform:rotate(100deg)}
.collection-note{font-size:11px;line-height:1.7}
.portrait-card{position:relative;width:min(100%,345px);background:#fcfeff;padding:11px 11px 19px;margin:0;transform:rotate(-5deg);box-shadow:0 13px 35px #355f7b15;border:1px solid #d7e5f0;transition:transform .45s}
.portrait-card:hover{transform:rotate(-1deg) translateY(-4px)}
.portrait-card img{width:100%;aspect-ratio:.88;object-fit:cover;object-position:50% 30%}
.portrait-card figcaption{font:14px/1.5 var(--serif);text-align:center;margin-top:17px;color:#496b87}
.portrait-card figcaption em{font-size:19px}
.portrait-card figcaption>span{padding-left:7px}
.story-art{padding-block:25px}
.story-doodle{animation:star-drift 8s ease-in-out infinite}
.doodle-two{animation-delay:-4s}
.encore{background:radial-gradient(ellipse at 50% 100%,#eef8ff,#dbeefa)}
.encore-star{animation:star-drift 9s ease-in-out infinite}
.encore-star-right{animation-delay:-4s}
.story-dialog{max-width:1000px;border-radius:12px}
.story-dialog[open]{display:grid;grid-template-columns:1.15fr 1fr;align-items:center}
.story-dialog>img{width:100%;height:min(76vh,700px);object-fit:contain;background:#e3eef6;touch-action:pan-y}
.dialog-body{padding:48px 32px 30px}
.dialog-body h2{font-size:37px;line-height:1.12}
.dialog-body .eyebrow{font-size:9px;letter-spacing:1.3px}
#dialog-description{font-size:13px}
.dialog-navigation{margin-top:29px;border-top:1px solid #d3e2ed;padding-top:13px}
.dialog-navigation button{min-height:44px;font-size:12px;padding-inline:5px}
.dialog-hint{font-size:10px;line-height:1.7;color:#526f84;text-align:center;margin:11px 0 0}
.dialog-close{box-shadow:0 3px 15px #253e5820}
@keyframes note-float{0%,100%{transform:translateY(0) rotate(5deg)}50%{transform:translateY(-9px) rotate(3deg)}}
@keyframes star-drift{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-13px) rotate(9deg)}}
@keyframes slow-spin{to{transform:rotate(360deg)}}
@keyframes heading-glimmer{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(.84) rotate(13deg)}}
@keyframes ribbon-flow{to{transform:translateX(-50%)}}
body.motion-paused *,body.motion-paused *::before,body.motion-paused *::after{animation-play-state:paused!important}
body.motion-paused .sparkle-particle{display:none}
body.motion-paused .hero-photo-frame{transform:rotate(2deg)}
@media(max-width:1100px){.dance-grid{gap:20px}.card-title{font-size:23px}.card-category{font-size:7px;letter-spacing:.7px}.hero-stamp{left:-13px;font-size:7px;padding:9px 11px}.hero-stamp>span{font-size:22px}.art-caption{font-size:7px}.story-layout{gap:60px}.portrait-card figcaption{font-size:12px}}
@media(max-width:900px){.dance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}.card-art{aspect-ratio:.88}.card-title{font-size:27px}.card-category{font-size:8px;letter-spacing:1px}.card-stage img{object-position:50% 78%}.site-header nav{gap:20px}}
@media(max-width:780px){.motion-toggle{font-size:10px;padding:10px 13px;gap:6px}.hero-art{aspect-ratio:.76}.hero-photo-frame{inset:4px 9px 25px 2px;border-width:7px;border-bottom-width:35px}.hero-stamp{top:14%;font-size:6px;gap:6px;left:-10px;padding:7px 9px}.hero-stamp>span{font-size:19px}.photo-caption{font-size:6px;gap:14px;letter-spacing:1px;bottom:-30px}.floating-note{right:-7px;bottom:8%}.art-caption{font-size:6px;letter-spacing:1.1px;bottom:-12px}.ambient-stars{inset:-8px}.ambient-stars span:nth-child(1){font-size:31px;left:5%}.ambient-stars span:nth-child(3){font-size:27px}.story-layout{gap:30px}.story-art{padding-inline:16px}.portrait-card{padding:8px 8px 14px}.portrait-card figcaption{font-size:11px;line-height:1.4;margin-top:12px}.portrait-card figcaption em{font-size:16px}.doodle-one{left:-9px;top:10px}.doodle-two{right:-8px;bottom:24px}.story-dialog[open]{grid-template-columns:1fr}.story-dialog>img{height:54vh;max-height:500px}.dialog-body{padding:27px 30px 23px}.dialog-body h2{font-size:35px}.dialog-navigation{margin-top:20px}.ribbon-group{gap:30px;padding-right:30px;min-width:950px}}
@media(max-width:560px){.site-header{gap:12px}.site-header nav{gap:15px;font-size:10px}.motion-toggle{font-size:9px;padding:9px 11px;min-height:36px;gap:5px}.motion-toggle>span:first-child:not([data-motion-label]){font-size:11px}.wordmark{font-size:40px}.brand-star{font-size:21px;margin-left:5px}.hero{gap:39px;padding-bottom:73px}.hero-art{aspect-ratio:.9;max-width:390px;width:calc(100% - 6px)}.hero-photo-frame{inset:2px 14px 29px 8px;border-width:8px;border-bottom-width:38px}.hero-photo{object-position:50% 57%}.hero-stamp{top:20%;left:-7px;font-size:8px;padding:9px 12px;gap:8px}.hero-stamp>span{font-size:23px}.floating-note{bottom:12%;right:-5px;padding:11px 16px}.floating-note>span:last-child{font-size:10px}.floating-note em{font-size:15px}.art-caption{bottom:-8px;font-size:7px;letter-spacing:1.3px}.photo-caption{font-size:7px;bottom:-32px}.ambient-stars span:nth-child(1){font-size:40px;left:5%}.ambient-stars span:nth-child(3){font-size:34px}.hero-description{max-width:360px;font-size:13px}.dance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 15px}.card-art{aspect-ratio:.7;border-radius:90px 90px 3px 3px}.card-caption{padding-top:12px;gap:4px}.card-title{font-size:22px}.card-category{font-size:7px;letter-spacing:.5px;line-height:1.65;margin-bottom:7px}.card-sparkle{font-size:20px}.card-number{width:23px;height:23px;bottom:11px;left:10px;font-size:8px}.card-open{width:29px;height:29px;bottom:9px;right:9px;font-size:18px}.collection-note{font-size:10px;max-width:310px;margin-top:25px}.story-art{order:0;min-height:0;padding:10px 25px 20px}.portrait-card{width:270px;padding:9px 9px 17px}.portrait-card figcaption{font-size:12px;margin-top:14px}.portrait-card figcaption em{font-size:18px}.story-copy h2{font-size:36px}.story-values{gap:16px}.story-values span{font-size:9px}.story-layout{gap:28px}.doodle-one{font-size:54px;left:2px;top:-9px}.doodle-two{font-size:62px;right:7px;bottom:5px}.dialog-body{padding:23px 22px 19px}.story-dialog>img{height:48vh}.dialog-body h2{font-size:31px}#dialog-description{font-size:12px}.dialog-hint{font-size:9px}.dialog-close{width:37px;height:37px}.filter{min-height:39px}.gallery-toolbar{margin-bottom:20px}.ribbon-group{min-width:900px}.dance-ribbon span{font-size:9px}.site-footer small{font-size:9px}.encore .eyebrow{font-size:8px;letter-spacing:1px}}
@media(max-width:360px){.site-header nav{gap:10px;font-size:9px}.motion-toggle{font-size:8px;padding:8px}.site-header{gap:8px}.card-title{font-size:20px}.card-category{font-size:6px}.card-sparkle{display:none}.hero-stamp{font-size:7px}.story-values{gap:12px}.story-values span{font-size:8px}}
@media(prefers-reduced-motion:reduce){html:has(body:not(.motion-enabled)){scroll-behavior:auto}body:not(.motion-enabled) *,body:not(.motion-enabled) *::before,body:not(.motion-enabled) *::after{animation:none!important;transition:none!important}body:not(.motion-enabled) .sparkle-particle{display:none}}

/* Full-figure fantasy ballet artwork; preserve pointe shoes and raised arms. */
.hero-photo-frame{inset:0 18px 27px 16px;border-radius:160px 160px 4px 4px;background:#dbeefa;overflow:hidden;border-bottom-width:38px}
.hero-photo{object-fit:cover;object-position:50% 50%;border-radius:151px 151px 0 0}
.hero-art{aspect-ratio:.72}
.photo-caption{bottom:-32px}
.hero-photo-frame{overflow:visible}
.dance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.card-art{aspect-ratio:2/3;border-radius:120px 120px 4px 4px}
.card-art img{object-fit:cover;object-position:center}
.portrait-card img{aspect-ratio:2/3;object-fit:cover;object-position:center}
.portrait-card{width:min(100%,310px)}
.hero-stamp{top:16%}
@media(max-width:900px){.dance-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card-title{font-size:23px}.card-category{font-size:7px}.card-sparkle{font-size:22px}}
@media(max-width:780px){.hero-art{aspect-ratio:.68}.hero-photo-frame{inset:0 9px 25px 4px;border-width:7px;border-bottom-width:33px}.photo-caption{bottom:-30px}.card-title{font-size:22px}.card-category{font-size:6px;letter-spacing:.6px}.card-sparkle{display:none}.site-header nav{gap:15px}}
@media(max-width:560px){.hero-art{aspect-ratio:.72;max-width:345px}.hero-photo-frame{inset:0 13px 26px 9px;border-width:8px;border-bottom-width:36px}.hero-stamp{top:15%;font-size:7px}.floating-note{bottom:10%}.dance-grid{grid-template-columns:1fr;gap:30px}.card-art{aspect-ratio:2/3;max-height:none;border-radius:140px 140px 4px 4px}.card-title{font-size:28px}.card-category{font-size:8px;letter-spacing:1px}.card-sparkle{display:block;font-size:27px}.card-caption{padding-top:18px}.portrait-card{width:250px}.site-header nav{font-size:9px;gap:11px}.site-footer small{font-size:8px}.filters{gap:2px}.filter{font-size:10px;padding-inline:12px}}
.hero-photo{object-fit:contain;background:#e0edf7}
.card-art{border-radius:10px}
@media(max-width:560px){.card-art{border-radius:10px}}
.journey-invite{display:flex;align-items:center;gap:25px;margin-top:37px;padding:26px 30px;border:1px solid #cbdfee;border-radius:9px;background:linear-gradient(120deg,#e1effb,#edf7fd)}
.journey-icon{font:53px/1 var(--serif);color:#6e9abd;flex-shrink:0}
.journey-invite h3{font-size:28px;letter-spacing:-.7px;margin-bottom:8px}
.journey-invite p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.journey-invite .button{margin-left:auto;white-space:nowrap}
@media(max-width:780px){.journey-invite{padding:23px;gap:17px}.journey-invite h3{font-size:24px}.journey-invite p{font-size:11px}.journey-icon{font-size:43px}.journey-invite .button{font-size:10px;padding:13px 16px;gap:15px}}
@media(max-width:560px){.journey-invite{flex-wrap:wrap;gap:12px;padding:23px 20px}.journey-invite>div{flex:1}.journey-invite h3{font-size:25px}.journey-invite .button{margin:5px 0 0 48px;font-size:11px}.journey-icon{font-size:37px}}
