/* Local interactions for the portable public website. */
body[data-portable-copy] .gallery-strips-item,body[data-portable-copy] .gallery-masonry-item,body[data-portable-copy] .gallery-reel-item{opacity:1!important;visibility:visible!important;transform:none!important}
body.header--menu-open .header-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.header--menu-open{overflow:hidden}
.sqs-video-wrapper .portable-video{position:absolute;inset:0;width:100%;height:100%;border:0}
.gallery-strips-wrapper{display:flex!important;flex-wrap:wrap;position:relative!important}
.gallery-strips-item{position:relative!important;margin:0!important;flex:none}
.gallery-strips-item-wrapper,.gallery-masonry-item-wrapper{width:100%!important;height:100%!important}
.gallery-strips-item img,.gallery-masonry-item img{width:100%!important;height:100%!important;object-fit:cover}
.gallery-masonry-wrapper{position:relative!important}
.gallery-masonry-item{position:absolute!important;margin:0!important}
.gallery-reel-list{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;scrollbar-width:none;transform:none!important;height:100%}
.gallery-reel-item{position:relative!important;flex:0 0 100%;width:100%!important;height:100%;scroll-snap-align:start}
.gallery-reel-item-wrapper,.gallery-reel-item img{width:100%!important;height:100%!important;object-fit:cover}
.portable-lightbox{box-sizing:border-box;border:0;background:rgba(0,0,0,.96);color:white;max-width:none;max-height:none;width:100vw;height:100vh;padding:48px 60px}
.portable-lightbox::backdrop{background:black}
.portable-lightbox img{display:block;width:100%;height:calc(100% - 40px);object-fit:contain}
.portable-lightbox p{text-align:center;margin:10px 0;font:16px/1.4 sans-serif}
.portable-lightbox button{position:absolute;border:0;background:transparent;color:white;font:32px sans-serif;cursor:pointer;padding:10px}
.portable-lightbox .close{top:4px;right:12px}.portable-lightbox .prev{left:8px;top:45%}.portable-lightbox .next{right:8px;top:45%}
@media(max-width:600px){.portable-lightbox{padding:50px 35px}}
body[data-portable-copy] .gallery-strips-item-wrapper,body[data-portable-copy] .gallery-masonry-item-wrapper{opacity:1!important;animation:none!important}
body[data-portable-copy] .gallery-reel-item-src{display:block!important;opacity:1!important;animation:none!important}
body[data-portable-copy] .preFade,body[data-portable-copy] .preScale,body[data-portable-copy] .preSlide,body[data-portable-copy] .preClip{opacity:1!important;transform:none!important;clip-path:none!important}
/* Portfolio cover photographs and horizontal project galleries. */
body[data-portable-copy] .portfolio-hover-base-sticky{position:sticky;top:0}
body[data-portable-copy] .portfolio-hover-bg-img{opacity:0!important;transition:opacity 700ms ease!important}
body[data-portable-copy] .portfolio-hover-bg-img img{display:block!important;width:100%;height:100%;object-fit:cover}
body[data-portable-copy] .portfolio-hover-bg.portable-selected .portfolio-hover-bg-img{opacity:1!important}
body[data-portable-copy] .portfolio-hover-bg-overlay{z-index:1}
body[data-portable-copy] .user-items-list-carousel__gutter{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
body[data-portable-copy] .user-items-list-carousel__slides{display:flex!important;gap:var(--portable-gap,20px)!important;opacity:1!important;width:100%;transform:none!important}
body[data-portable-copy] .user-items-list-carousel__slide{flex:0 0 calc((100% - (var(--portable-columns,3) - 1)*var(--portable-gap,20px))/var(--portable-columns,3));width:auto;transform:none!important;pointer-events:auto;scroll-snap-align:start}
body[data-portable-copy] .user-items-list-carousel__media-inner{padding-bottom:0!important;height:auto!important;position:relative}
body[data-portable-copy] .user-items-list-carousel__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body[data-portable-copy] .portable-native-video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
body[data-portable-copy] .portable-background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(max-width:767px){body[data-portable-copy] .user-items-list-carousel{--portable-columns:2!important}}
@media(max-width:575px){body[data-portable-copy] .user-items-list-carousel{--portable-columns:1!important}}
@media(prefers-reduced-motion:reduce){body[data-portable-copy] .portfolio-hover-bg-img{transition:none!important}}
