/* Project sequence: a directional image curtain with independent typography. */
.reel-enhanced{--reel-ease:cubic-bezier(.19,1,.22,1);border-radius:0}
.reel-enhanced .reel-index{z-index:5}
.reel-enhanced .reel-slide{opacity:0;visibility:hidden;z-index:0;transition:none;clip-path:inset(0)}
.reel-enhanced .reel-slide.active,.reel-enhanced .reel-slide.is-outgoing{opacity:1;visibility:visible;z-index:2}
.reel-enhanced .reel-slide img,.reel-enhanced .reel-slide.core img{animation:none;scale:1;transform:scale(1);transition:transform 1.5s var(--reel-ease);will-change:auto}
.reel-enhanced .reel-slide.is-outgoing{z-index:1}
.reel-enhanced .reel-slide.is-outgoing img{transform:scale(.96)}
.reel-enhanced .reel-slide.is-incoming{z-index:3;clip-path:inset(100% 0 0);transition:clip-path 1.1s var(--reel-ease);will-change:clip-path}
.reel-enhanced .reel-slide.is-incoming.from-previous{clip-path:inset(0 0 100%)}
.reel-enhanced .reel-slide.is-incoming img{transform:translateY(5%) scale(1.16);will-change:transform}
.reel-enhanced .reel-slide.is-incoming.from-previous img{transform:translateY(-5%) scale(1.16)}
.reel-enhanced .reel-slide.is-incoming.is-revealed{clip-path:inset(0)}
.reel-enhanced .reel-slide.is-incoming.is-revealed img{transform:translateY(0) scale(1)}
.reel-enhanced .reel-caption{bottom:105px;left:36px;right:36px;align-items:flex-end}
.reel-enhanced .reel-caption strong,.reel-enhanced .reel-caption small{overflow:hidden}
.reel-enhanced .reel-caption strong{font-size:clamp(40px,5vw,74px);line-height:1.13;letter-spacing:-.06em}
.reel-text-line{display:block;transform:translateY(0);transition:transform 1s var(--reel-ease),opacity .7s}
.is-incoming:not(.is-revealed) .reel-text-line{transform:translateY(115%);opacity:0}
.is-incoming.is-revealed .reel-caption small .reel-text-line{transition-delay:.28s}
.is-incoming.is-revealed .reel-caption strong .reel-text-line{transition-delay:.38s}
.reel-enhanced .reel-caption a{position:relative;overflow:hidden;padding:13px 0;border-bottom:1px solid #ffffff50;transition:opacity .6s,transform .8s var(--reel-ease);color:#f4f0e6}
.reel-enhanced .reel-caption a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .5s var(--reel-ease)}
.reel-enhanced .reel-caption a:hover:after,.reel-enhanced .reel-caption a:focus-visible:after{transform:scaleX(1);transform-origin:left}
.is-incoming:not(.is-revealed) .reel-caption a{opacity:0;transform:translateY(20px)}
.is-incoming.is-revealed .reel-caption a{transition-delay:.5s}
.reel-controls{position:absolute;bottom:25px;left:36px;right:36px;z-index:5;display:flex;align-items:center;gap:20px;color:#f4f0e6}
.reel-control{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #ffffff55;border-radius:50%;padding:0;background:#091b2526;color:inherit;cursor:pointer;transition:background .3s,border-color .3s,transform .5s var(--reel-ease)}
.reel-control svg{height:18px;width:18px;fill:none;stroke:currentColor;stroke-width:1.2;transition:transform .4s var(--reel-ease)}
.reel-previous svg{transform:rotate(180deg)}
.reel-control:hover{background:#f3efe522;border-color:#f3efe5b3}
.reel-next:hover svg{transform:translateX(3px)}
.reel-previous:hover svg{transform:rotate(180deg) translateX(3px)}
.reel-control:active{transform:scale(.91)}
.reel-control:disabled{opacity:.5;cursor:default}
.reel-rotation{font-family:Arial,sans-serif;font-size:12px}
.reel-navigation{margin-left:auto;display:flex;gap:8px}
.reel-indicators{display:flex;gap:14px;align-items:center}
.reel-indicator{width:clamp(42px,6vw,100px);height:44px;display:flex;flex-direction:column;justify-content:center;gap:8px;align-items:flex-start;border:0;padding:0;background:transparent;color:#ffffff70;font:9px/1 Arial,sans-serif;letter-spacing:.13em;cursor:pointer;transition:color .3s}
.reel-indicator[aria-current=true],.reel-indicator:hover{color:#fff}
.reel-rail{height:2px;display:block;width:100%;background:#ffffff35;position:relative;overflow:hidden}
.reel-rail>span{display:block;position:absolute;inset:0;background:#f4f0e6;transform:scaleX(var(--reel-progress,0));transform-origin:left}
.reel-indicator[aria-current=true] .reel-rail{background:#ffffff6b}
.reel-control:focus-visible,.reel-indicator:focus-visible,.reel-caption a:focus-visible{outline:2px solid #fff;outline-offset:5px}
.reel-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:750px){
 .reel-enhanced{height:420px}
 .reel-enhanced .reel-caption{left:22px;right:22px;bottom:95px;display:block}
 .reel-enhanced .reel-caption strong{font-size:46px}
 .reel-enhanced .reel-caption a{display:inline-block;margin-top:12px;padding:8px 0}
 .reel-enhanced .reel-caption small{font-size:8px;margin-bottom:8px}
 .reel-controls{left:22px;right:22px;bottom:20px;gap:14px}
 .reel-indicators{gap:8px;flex:1}
 .reel-indicator{width:auto;flex:1;min-width:18px;max-width:50px}
 .reel-navigation{gap:6px}
 .reel-control{width:44px;height:44px;flex-basis:44px}
 .reel-enhanced .reel-index{top:24px;right:22px}
}
@media(prefers-reduced-motion:reduce){
 .reel-enhanced .reel-slide,.reel-enhanced .reel-slide img,.reel-text-line,.reel-enhanced .reel-caption a,.reel-control,.reel-control svg,.reel-indicator,.reel-enhanced .reel-caption a:after{transition:none!important;animation:none!important}
}
