/* Clear, anchored navigation; the artwork provides the movement. */
.site-header{height:96px}
.wordmark-caption{font-size:9px;letter-spacing:1.5px;width:96px}
.site-header nav{font-size:14px;gap:30px}
.hero{grid-template-columns:1.05fr 1fr;gap:60px;padding-block:40px 58px}
.hero-copy{padding-bottom:0}
.hero h1{font-size:clamp(64px,7.5vw,104px);letter-spacing:-5px;line-height:1.02;margin-bottom:25px}
.hero .eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:22px}
.hero-description{max-width:420px;font-size:15px;line-height:1.85;margin-bottom:26px}
.hero-actions .button{font-size:13px;padding:17px 24px;animation:none;box-shadow:none}
.hero-art{width:min(100%,400px);aspect-ratio:2/3;max-height:none;justify-self:center}
.hero-photo-frame{inset:0 10px 25px 6px}
.stardust-hint{font-size:11px;color:#526f87}
.dance-ribbon{padding-block:16px}
.dance-ribbon span{font-size:10px}
.section-space{padding-block:80px}
.section-heading{margin-bottom:32px}
.section-heading>p{font-size:14px;max-width:340px;line-height:1.75}
.section-heading .eyebrow,.story-copy .eyebrow,.friends-copy .eyebrow{font-size:10px}
.dance-grid{gap:28px}
.dance-card{border-radius:12px}
.card-art{border-radius:12px}
.card-caption{padding-top:20px}
.card-category{font-size:9px;letter-spacing:1px}
.card-title{font-size:28px}
.card-number{display:none}
.card-sparkle{display:none}
.dance-card:hover .card-art img{transform:none}
.collection-note{font-size:12px;margin-top:28px;line-height:1.7}
.story-layout{gap:100px;padding-block:68px}
.story-copy h2{font-size:clamp(38px,3.8vw,54px)}
.story-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;max-width:440px}
.story-values{font-size:12px;max-width:440px;gap:24px}
.story-values span{font-size:12px}
.portrait-card figcaption{font-size:15px}
.friends-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}
.friends-copy{max-width:470px}
.friends-copy .eyebrow{color:var(--muted);margin-bottom:20px}
.friends-copy h2{font-size:clamp(38px,3.8vw,54px);margin-bottom:24px}
.friends-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--muted);max-width:430px}
.friends-signoff{margin-top:25px}
.friends-signoff span{display:block;font:italic 28px/1.5 var(--serif);color:var(--blue);margin-top:15px}
.site-footer{border-top:1px solid var(--line);padding-block:28px;gap:23px}
.footer-signature{font:italic 44px/1 var(--serif)!important;color:var(--ink)!important;letter-spacing:-3px}
.footer-signature span{display:inline-block;font:25px/1 var(--serif);color:var(--blue);margin-left:7px;letter-spacing:0}
.site-footer>span:not(.footer-signature){font-size:11px}
.site-footer small{font-size:10px;line-height:1.7}
#dialog-description{font-size:15px}
.dialog-body .eyebrow{line-height:1.7}
@media(max-width:1000px){.hero{gap:30px}.hero h1{font-size:clamp(60px,8vw,82px);letter-spacing:-3.5px}.hero-description{font-size:14px}.story-layout{gap:55px}.card-title{font-size:25px}.card-category{font-size:8px}.friends-section{gap:35px}.friends-copy>p:not(.eyebrow),.story-copy>p:not(.eyebrow){font-size:14px}}
@media(max-width:780px){.site-header{height:84px;gap:15px}.site-header nav{font-size:12px;gap:23px}.site-header nav a:last-child{display:block}.hero h1{font-size:clamp(49px,8.5vw,66px);letter-spacing:-3px}.hero .eyebrow{font-size:8px;letter-spacing:1.1px}.hero-description{font-size:13px;line-height:1.8}.hero-actions .button{font-size:11px;padding:15px 17px;gap:14px}.hero-art{width:100%;aspect-ratio:2/3}.hero-photo-frame{inset:0 9px 25px 4px}.stardust-hint{font-size:9px}.section-heading>p{font-size:12px;max-width:255px}.dance-grid{gap:18px}.card-title{font-size:23px}.card-category{font-size:7px;letter-spacing:.65px}.story-layout{gap:28px}.story-copy h2,.friends-copy h2{font-size:36px}.story-values{gap:16px}.story-values span{font-size:10px}.friends-section{gap:22px}.friends-copy>p:not(.eyebrow){font-size:13px}.collection-note{font-size:11px}.site-footer small{font-size:9px}}
@media(max-width:560px){.site-header{height:78px;gap:12px}.site-header nav{gap:17px;margin-left:auto;font-size:11px}.motion-toggle{width:36px;height:36px;padding:0;gap:0}.motion-toggle [data-motion-label]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.motion-toggle>span:first-child:not([data-motion-label]){font-size:14px}.hero{grid-template-columns:1fr;gap:34px;padding-block:30px 46px}.hero h1{font-size:clamp(58px,15vw,80px);line-height:1.02;letter-spacing:-3.5px;margin-bottom:20px}.hero .eyebrow{font-size:9px;margin-bottom:18px}.hero-description{font-size:14px;max-width:380px;line-height:1.8;margin-bottom:22px}.hero-actions .button{font-size:12px;padding:16px 21px;gap:22px}.stardust-hint{font-size:10px}.hero-art{width:calc(100% - 16px);max-width:360px;aspect-ratio:2/3}.section-space{padding-block:52px}.section-heading .eyebrow,.story-copy .eyebrow,.friends-copy .eyebrow{font-size:9px}.section-heading h2{font-size:40px}.section-heading>p{font-size:13px;max-width:none}.dance-grid{gap:31px}.card-caption{padding-top:16px}.card-title{font-size:29px}.card-category{font-size:9px}.collection-note{font-size:11px;max-width:320px;line-height:1.8}.story-layout{gap:29px;padding-block:44px}.story-art{order:1}.story-copy{order:0}.story-copy h2,.friends-copy h2{font-size:38px}.story-copy>p:not(.eyebrow),.friends-copy>p:not(.eyebrow){font-size:14px;line-height:1.85}.story-values{gap:22px}.story-values span{font-size:11px}.friends-section{grid-template-columns:1fr;gap:12px}.friends-copy{max-width:none}.friends-signoff{margin-bottom:0}.friends-signoff span{font-size:27px}.site-footer{gap:12px 20px}.site-footer small{font-size:9px;width:100%;margin:0}.site-footer>span:not(.footer-signature){font-size:11px}#dialog-description{font-size:14px}}

/* Touch controls stay easy to reach in portrait and landscape. */
.site-header nav a{display:inline-flex;align-items:center;min-height:44px;padding-block:10px}
.motion-toggle{min-width:44px;min-height:44px}
a,button{touch-action:manipulation}
.story-dialog{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
.story-dialog[open]{display:block}
.story-dialog .dialog-close{position:sticky;display:flex;align-items:center;justify-content:center;top:12px;right:auto;width:44px;height:44px;min-width:44px;min-height:44px;margin:12px 12px -56px auto;z-index:4;padding:0}
.dialog-content{display:grid;grid-template-columns:1.15fr 1fr;align-items:center}
.dialog-content>#dialog-image{width:100%;height:min(76vh,700px);height:min(76dvh,700px);object-fit:contain;background:#e3eef6;user-select:none;-webkit-user-drag:none}
.dialog-navigation button{min-width:74px;min-height:44px}
@media(max-width:780px){.dialog-content{grid-template-columns:1fr}.dialog-content>#dialog-image{height:min(48vh,500px);height:min(48dvh,500px)}}
@media(max-width:560px){.motion-toggle{width:44px;height:44px;min-width:44px;min-height:44px}.site-header nav{gap:14px}.site-header nav a:last-child{display:inline-flex}.story-dialog .dialog-close{top:10px;margin:10px 10px -54px auto}}
@media(max-width:360px){.site-header{gap:8px}.site-header nav{gap:10px;font-size:10px}}
@media(max-height:560px) and (orientation:landscape){
  .story-dialog{width:calc(100% - 24px);max-width:1000px}
  .dialog-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
  .dialog-content>#dialog-image{height:calc(100vh - 24px);height:calc(100dvh - 24px)}
  .dialog-content .dialog-body{padding:36px 24px 18px}
  .dialog-content .eyebrow,.dialog-content .dialog-hint{display:none}
  .dialog-content .dialog-body h2{font-size:28px;line-height:1.12;margin:0 36px 12px 0}
  .dialog-content #dialog-description{font-size:13px;line-height:1.7;margin-bottom:0}
  .dialog-content .dialog-navigation{margin-top:14px;padding-top:8px}
}
@media(hover:none),(any-pointer:coarse){
  .button:active{background:var(--blue-dark)}
  .dance-card:active .card-art{outline:3px solid #88badd;outline-offset:3px}
  .dance-card:hover{translate:none}
  .portrait-card:hover{transform:rotate(-5deg)}
}
