/* Homepage only: a moving photograph, soft, moving daylight. */
.white-hero[data-hero-motion] .white-hero-copy{position:relative;z-index:2}
.hero-title-mask{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.hero-title-line{display:block}
.hero-light-field{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;user-select:none;opacity:0;transition:opacity .18s ease-out}
.motion-ready.motion-entered .hero-light-field{opacity:1}
.hero-light{position:absolute;pointer-events:none;border-radius:50%;opacity:0}
.hero-light-pearl{width:85%;height:90%;left:-30%;bottom:-50%;background:radial-gradient(ellipse,rgba(255,255,255,.85) 0%,rgba(255,255,255,.42) 27%,rgba(240,248,250,.14) 50%,transparent 72%)}
/* The first light frame is centered on the face, rather than travelling from the copy. */
.hero-light-silk{width:58%;height:105%;left:43%;top:-3%;background:radial-gradient(ellipse at 50% 42%,rgba(255,255,255,.38) 0%,rgba(255,255,255,.24) 25%,rgba(255,255,255,.06) 50%,transparent 70%)}
.hero-light-halo{width:62%;height:78%;right:-35%;top:-36%;background:radial-gradient(ellipse,rgba(255,255,255,.7),rgba(246,250,252,.17) 42%,transparent 70%)}
.white-hero-bottom{z-index:3}
.hero-bottom-controls{display:flex;align-items:center;gap:28px}
.hero-scroll-link{display:flex;align-items:center;gap:20px;font-size:8px;letter-spacing:.12em}
.hero-scroll-link>span{display:block;font-size:24px;line-height:1}
.hero-motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:106px;min-height:44px;padding:9px 15px;border:1px solid rgba(89,112,123,.18);border-radius:30px;background:rgba(255,255,255,.72);color:#354b55;font:inherit;font-size:10px;letter-spacing:0;cursor:pointer;transition:background .2s}
.hero-motion-toggle[hidden]{display:none}
.hero-motion-toggle:hover{background:rgba(255,255,255,.95)}
.hero-motion-toggle:focus-visible{outline:2px solid #354b55;outline-offset:4px}
.hero-motion-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hero-play-icon{display:none}
[data-motion-paused="true"] .hero-pause-icon{display:none}
[data-motion-paused="true"] .hero-play-icon{display:block}

@media(prefers-reduced-motion:no-preference){
 .motion-ready .white-hero-photo img{transform-origin:68% 46%;animation:skin-photo-breathe 22s ease-in-out infinite alternate;will-change:transform}
 .motion-ready .hero-light-pearl{animation:skin-pearl-drift 4s ease-in-out infinite alternate}
 .motion-ready .hero-light-silk{animation:skin-silk-light 4.5s ease-in-out infinite alternate}
 .motion-ready .hero-light-halo{animation:skin-halo-drift 3.5s ease-in-out infinite alternate}
 .motion-ready .hero-scroll-link>span{animation:skin-scroll-hint 2.8s ease-in-out infinite}
 .motion-ready:not(.motion-entered) .hero-title-line{animation:skin-title-in 1.1s cubic-bezier(.2,.7,.2,1) both}
 .motion-ready:not(.motion-entered) .hero-title-line-one{animation-delay:.2s}
 .motion-ready:not(.motion-entered) .hero-title-line-two{animation-delay:.38s}
 .motion-ready:not(.motion-entered) .hero-copy-reveal{animation:skin-copy-in 1s ease both}
 .motion-ready:not(.motion-entered) .hero-reveal-eyebrow{animation-delay:.08s}
 .motion-ready:not(.motion-entered) .hero-reveal-description{animation-delay:.64s}
 .motion-ready:not(.motion-entered) .hero-reveal-actions{animation-delay:.82s}
 .motion-ready:not(.motion-entered) .hero-light{animation-play-state:paused}
 .motion-ready[data-motion-running="false"] .white-hero-photo img,
 .motion-ready[data-motion-running="false"] .hero-light,
 .motion-ready[data-motion-running="false"] .hero-scroll-link>span{animation-play-state:paused}
 .motion-ready[data-motion-running="false"] .white-hero-photo img{will-change:auto}
}
@keyframes skin-photo-breathe{from{transform:scale(1.018) translate3d(0,0,0)}to{transform:scale(1.072) translate3d(-.35%,.2%,0)}}
@keyframes skin-pearl-drift{from{opacity:.58;transform:translate3d(-7%,7%,0) scale(.9)}to{opacity:.9;transform:translate3d(27%,-9%,0) scale(1.13)}}
@keyframes skin-silk-light{from{opacity:.8;transform:translate3d(0,0,0) scale(1)}to{opacity:.34;transform:translate3d(30%,-5%,0) scale(1.08)}}
@keyframes skin-halo-drift{from{opacity:.4;transform:translate3d(2%,0,0) scale(.95)}to{opacity:.8;transform:translate3d(-18%,17%,0) scale(1.12)}}
@keyframes skin-title-in{from{opacity:0;transform:translate3d(0,105%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes skin-copy-in{from{opacity:0;transform:translate3d(0,13px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes skin-scroll-hint{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(max-width:960px){.hero-bottom-controls{gap:16px}.hero-motion-toggle{min-width:44px;padding:10px}.hero-motion-toggle [data-motion-label]{display:none}}
@media(max-width:820px){
 .hero-light-field{top:280px}
 .hero-light-silk{width:110%;left:10%;height:100%;top:-2%}
 .motion-ready .white-hero-photo img{transform-origin:79% 46%}
 .hero-light-pearl{width:125%;left:-55%}
}
@media(max-width:640px){
 .hero-light-field{top:250px}
 .hero-bottom-controls{gap:12px}
 .hero-scroll-link{font-size:6px;gap:8px}
 .hero-scroll-link>span{font-size:20px}
 .hero-motion-toggle{position:absolute;right:0;bottom:65px;min-width:44px;min-height:44px;padding:11px}
}
@media(prefers-reduced-motion:reduce){
 .white-hero[data-hero-motion] *, .white-hero[data-hero-motion] *::before, .white-hero[data-hero-motion] *::after{animation:none!important;transition:none!important;will-change:auto!important}
 .hero-motion-toggle{display:none!important}
}
