/* Light passing through a scene. Only the three small layers move. */
.airflow{position:absolute;pointer-events:none;overflow:hidden;contain:layout paint;width:100%;height:220px;left:0;bottom:14%;z-index:-1}
.airflow svg{display:block;width:100%;height:100%;overflow:visible}
.airflow path{fill:none;stroke-width:1;vector-effect:non-scaling-stroke}
.airflow-line{transform-origin:center;opacity:0;animation:airflow-drift 18s ease-in-out infinite;animation-play-state:paused}
.airflow-line-two{animation-duration:23s;animation-delay:-8s}
.airflow-line-three{animation-duration:27s;animation-delay:-17s}
.airflow.is-active .airflow-line{animation-play-state:running}
.airflow-line-two path{stroke-width:.7}
.airflow-line-three path{stroke-width:.55}
.exhibition-intro{position:relative;isolation:isolate}
.airflow-collection{bottom:0;height:170px;width:70%;opacity:.75}
@keyframes airflow-drift{0%{opacity:0;transform:translate(-60px,12px)}25%{opacity:.5}65%{opacity:.28}100%{opacity:0;transform:translate(70px,-12px)}}
@media(max-width:700px){.airflow-hero{height:140px;bottom:24%;width:140%;left:-20%;opacity:.8}.airflow-collection{width:100%;height:120px;opacity:.65}.airflow-line-three{display:none}}
@media(prefers-reduced-motion:reduce){.airflow{display:none}.airflow-line{animation:none}}

/* One quiet opening below the title, and one meeting of light at Contact. */
#work-title,.contact-invitation h3{position:relative}
.chapter-trace{position:absolute;display:block;pointer-events:none;overflow:hidden;contain:layout paint;left:0;width:100%;height:12px;bottom:-12px}
.chapter-trace>span{position:absolute;display:block;height:1px;top:5px;opacity:0;animation-play-state:paused!important}
.chapter-trace.is-active>span{animation-play-state:running!important}
.chapter-trace-selected{max-width:540px}
.chapter-trace-selected>span{width:62%;background:linear-gradient(90deg,transparent,#d35c4a 50%,#f1d3b0 83%,transparent)}
.chapter-trace-selected.has-entered>span{animation:chapter-opening 5.2s .65s cubic-bezier(.22,.55,.3,1) both}
.chapter-trace-contact{bottom:auto;top:-22px;height:14px;max-width:520px}
.chapter-trace-contact>span{width:51%;background:linear-gradient(90deg,transparent,#c75746 60%,#efc9a4);transform-origin:right}
.chapter-trace-contact .chapter-trace-b{right:0;transform-origin:left;background:linear-gradient(90deg,#efc9a4,#c75746 40%,transparent)}
.chapter-trace-contact.has-entered .chapter-trace-a{animation:chapter-meeting-left 4.8s .4s ease-in-out both}
.chapter-trace-contact.has-entered .chapter-trace-b{animation:chapter-meeting-right 4.8s .4s ease-in-out both}
@keyframes chapter-opening{0%{opacity:0;transform:translateX(-100%)}22%{opacity:.8}65%{opacity:.8}100%{opacity:0;transform:translateX(165%)}}
@keyframes chapter-meeting-left{0%{opacity:0;transform:translateX(-35px) scaleX(.35)}45%,65%{opacity:.75;transform:translateX(0) scaleX(1)}100%{opacity:0;transform:translateX(0) scaleX(1)}}
@keyframes chapter-meeting-right{0%{opacity:0;transform:translateX(35px) scaleX(.35)}45%,65%{opacity:.75;transform:translateX(0) scaleX(1)}100%{opacity:0;transform:translateX(0) scaleX(1)}}
@media(prefers-reduced-motion:reduce){.chapter-trace{display:none}.chapter-trace>span{animation:none!important}}
