/* Shared project shell; section geometry is preserved by the reusable layouts. */
.vl-project-site{font-size:16px;line-height:1.3}.vl-project-site .vl-project-hero{height:100vh;min-height:0;max-height:none}.vl-project-site .vl-project-hero h1{font:500 4.3rem/1.3 Urbanist,sans-serif;padding:0 2rem}.vl-project-site .vl-project-hero:after{background:rgba(0,0,0,.34)}.vl-project-hero>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.vl-project-site .vl-project-summary{max-width:1920px;width:100%;padding:7rem 2rem;margin:0 auto}.vl-project-summary .vl-prose{max-width:none;width:75%;font:400 1.4rem/1.6 Urbanist,sans-serif}.vl-project-summary .vl-prose p{margin:0}.vl-project-site .vl-project-facts{gap:2rem;margin:5rem 0 0}.vl-project-site .vl-project-facts dt{font:400 1.5rem/1.9 Urbanist,sans-serif;padding:.75rem 0;margin:0}.vl-project-site .vl-project-facts dd{font:400 1.4rem/1.6 Urbanist,sans-serif;color:inherit}.vl-project-facts a{display:block}.vl-project-content{width:100%;overflow:clip}.vl-project-content>.vl-reference{max-width:none;margin:0;padding:0}.vl-reference{--charcoal:#161616;--white:#fff;--black:#000;--white-smoke:#f4f4f4;--light-grey:#f4f4f4;--dark-grey:#3d3d3d;--yellow-green:#c1cc1300;min-width:0;width:100%;font:400 16px/1.3 Urbanist,sans-serif}.vl-reference img{height:100%;width:100%;object-fit:cover;max-width:100%;display:block}.vl-reference p:empty{display:none}.vl-reference video{display:block;max-width:100%;object-fit:cover}.vl-reference .vlc-video-container{position:relative}.vlc-video-toggle{position:absolute;bottom:16px;right:16px;width:36px;height:36px;display:grid;place-items:center;border:1px solid #ffffffb3;border-radius:50%;color:white;background:rgba(0,0,0,.35);z-index:8;font:400 14px/1 Urbanist,sans-serif;cursor:pointer}.vlc-video-preview{aspect-ratio:16/9;display:grid;place-items:center;background:#f4f4f4;color:#555}.vl-project-content>.vl-component{max-width:1920px;padding:0 2rem 7rem}.vl-project-content>.vl-component.vl-slider{max-width:none}.vl-project-content .vl-slider-controls{margin-bottom:1rem;gap:1rem}.vl-project-content .vl-slider-controls>button{width:3.75rem;height:3.75rem;border-color:currentColor}.vl-project-content .vl-slide-markers button{width:29px}.vl-project-content .vl-slide-markers button span{width:15px;height:15px}.editor-styles-wrapper .vl-reference{font-size:16px;max-width:none}.editor-styles-wrapper .vl-reference *{box-sizing:border-box}.editor-styles-wrapper .vl-reference video{pointer-events:none}
@media(max-width:991px){.vl-project-site .vl-project-hero h1{font-size:3.2rem;line-height:1.2}.vl-project-site .vl-project-summary{padding:5rem 2rem}.vl-project-summary .vl-prose{width:100%;font-size:1.2rem}.vl-project-site .vl-project-facts{grid-template-columns:1fr 1fr;margin-top:4rem}.vl-project-site .vl-project-facts dd{font-size:1.2rem}.vl-project-content>.vl-component{padding-bottom:5rem}}
@media(max-width:767px){.vl-project-site .vl-project-hero h1{font-size:2.5rem}.vl-project-site .vl-project-summary{padding:3rem 2rem}.vl-project-summary .vl-prose,.vl-project-site .vl-project-facts dd{font-size:1.1rem}.vl-project-site .vl-project-facts{margin-top:3rem;gap:1rem}.vl-project-content>.vl-component{padding-bottom:3rem}.vl-project-content .vl-slider-controls>button{width:44px;height:44px}.vl-project-content .vl-slider-controls{gap:10px}}
@media(max-width:479px){.vl-project-site .vl-project-summary{padding:3rem 1rem}.vl-project-summary .vl-prose,.vl-project-site .vl-project-facts dd{font-size:1rem}.vl-project-site .vl-project-facts dt{font-size:1.1rem;padding:.55rem 0;margin:1rem 0}.vl-project-content>.vl-component{padding-right:1rem;padding-left:1rem}.vl-project-site .vl-project-hero h1{padding:0 1rem}}

/* Keep background clips in their own stacking context. */
.vl-reference .vlr-w-background-video{isolation:isolate}.vl-reference .vlr-w-background-video > video{z-index:0}

/* The source image rail runs to the right edge; the controls keep the page inset. */
.vl-project-content>.vl-component.vl-slider{max-width:1920px;padding-right:0;padding-bottom:0}.vl-project-content .vl-slider:not(.vl-component)>.vl-slider-controls{height:72px;margin:0 32px 16px 0}.vl-project-content .vl-slider-controls>button{flex:none}
@media(max-width:479px){.vl-project-content .vl-slider:not(.vl-component)>.vl-slider-controls{margin-right:16px}}

.vl-project-content .vl-slider:not(.vl-component)>.vl-slider-controls>button{width:56px;height:56px}
@media(max-width:991px){.vl-project-content>.vl-component.vl-slider{padding-right:32px}.vl-project-content .vl-slider:not(.vl-component)>.vl-slider-controls{margin-right:0}}
@media(max-width:479px){.vl-project-content>.vl-component.vl-slider{padding-left:3vw;padding-right:3vw}.vl-project-content .vl-slider:not(.vl-component)>.vl-slider-controls{height:56px;margin-right:0}.vl-project-content .vl-slider:not(.vl-component)>.vl-slider-controls>button{width:40px;height:40px}}
