@font-face{font-family:Montserrat;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/montserrat-400.woff2) format("woff2")}
@font-face{font-family:Figtree;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/figtree-400.woff2) format("woff2")}
@font-face{font-family:Figtree;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/figtree-500.woff2) format("woff2")}
@font-face{font-family:Figtree;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/figtree-600.woff2) format("woff2")}

*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:#fff;color:#666;font:400 12px/1.6em proxima-nova,Figtree,Helvetica,Arial,sans-serif;letter-spacing:.02em;-webkit-font-smoothing:auto}
a,a:visited{color:#000;text-decoration:none}
h1{color:#121212;font-size:20px;font-weight:500;line-height:1.2em;letter-spacing:.01em;margin:1em 0}
p{margin:0 0 1em}
ul{list-style:none;margin:0;padding:0}
img{border:0}

/* Frame */
#canvas{padding:45px;max-width:1800px;min-width:900px}
#headerWrapper{position:absolute;top:45px;left:45px;width:163px;z-index:999;text-align:center}
#pageWrapper{margin-left:208px}

/* Sidebar */
#logo{margin-bottom:30px}
#logo h1{line-height:0;margin:0;display:block;max-width:163px}
#logo h1 img{width:100%;max-width:163px;height:auto;display:block}
.logo-subtitle{margin-top:.5em;font-size:12px;line-height:1.4em;letter-spacing:.04em;color:#aaa}
#topNav{margin-bottom:40px}
.main-nav a{display:block;padding:.2em;font:400 12px/1.6em Montserrat,Helvetica,Arial,sans-serif;letter-spacing:0;color:#000;cursor:pointer}
.main-nav .active-link>a,.main-nav .active-link>.folder-toggle{color:#878787}
.main-nav .folder .subnav{height:0;overflow:hidden}
.main-nav .folder.active-folder .subnav{height:auto}
.main-nav .subnav ul{padding:.5em 0 1em}
.main-nav .subnav li{margin-left:.5em}
.main-nav .subnav a{line-height:1.2em}
.main-nav .subnav .active-link>a{color:#878787}
.social-links{font-size:0;line-height:0}
.social-links a{display:inline-block;position:relative;width:16px;height:16px;margin:0 5px 10px;color:#000}
.social-links svg{position:absolute;left:-8px;top:-8px;width:32px;height:32px;fill:currentColor}

/* Mobile-only navigation */
#mobileNav{height:0;overflow:hidden;background:#878787}
#mobileNav.open{height:auto}
#mobileNav .wrapper{padding:2em 0}
#mobileNav li{text-align:center}
#mobileNav a,#mobileNav a:visited{display:block;color:rgba(255,255,255,.7);font:400 18px/2.5em Montserrat,Helvetica,Arial,sans-serif}
#mobileNav .active-link>a,#mobileNav a:hover{color:#fff}
#mobileNav .mobile-folder{margin:20px 0}
#mobileNav .mobile-folder>a{border-bottom:1px solid rgba(255,255,255,.4);width:50%;margin:0 auto}
#mobileMenuLink{display:none;margin:15px 0 0}
#mobileMenuLink a{display:inline-block;padding:20px;font:400 15px/1.6em Montserrat,Helvetica,Arial,sans-serif;letter-spacing:0;color:#878787;cursor:pointer}

/* Autoplay slideshow (home) */
.home-slideshow{position:relative;width:100%;overflow:hidden;background:rgba(175,175,175,.1)}
.home-slideshow .slide{position:absolute;inset:0;display:none;opacity:0;transition:opacity 1s ease}
.home-slideshow .slide.shown{display:block}
.home-slideshow .slide.active{opacity:1}
.home-slideshow img{display:block;width:100%;height:100%;object-fit:contain}

/* Gallery pages */
#galleryWrapper{position:absolute;top:0;left:0;width:100%}
#thumbnails{position:absolute;top:45px;left:243px;display:none}
.thumb-view #thumbnails{display:block}
.thumb{position:absolute;cursor:pointer;background:rgba(175,175,175,.1);transition:top 50ms ease-out,left 50ms ease-out}
.thumb img{display:block;width:100%;height:100%}
.thumb img:hover{opacity:.9}
#slideshowWrapper{display:none;position:fixed;top:45px;right:45px;bottom:45px;left:233px}
.slide-view #slideshowWrapper{display:block}
#slideshow{position:relative;width:100%;height:100%;overflow:hidden}
#slideshow .slide{position:absolute;inset:0;display:none;opacity:0;cursor:pointer;transition:opacity .5s ease}
#slideshow .slide.shown{display:block}
#slideshow .slide.active{opacity:1}
#slideshow img{display:block;width:100%;height:100%;object-fit:contain}
.meta{display:none;position:fixed;left:45px;bottom:45px;width:163px;z-index:999;text-align:left}
.slide-view .meta{display:block}
.gallery-controls,.thumbnail-toggle{font:400 10px/1.2em Montserrat,Helvetica,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.gallery-controls{padding-top:15px;color:rgba(176,176,176,0)}
.gallery-controls .control{color:#222;cursor:pointer}
.thumbnail-toggle{margin-top:15px;color:#666;cursor:pointer}

/* About */
.about-row{display:flex;margin:0 -17px}
.about-col{flex:0 0 50%;width:50%;padding:0 17px;min-width:0}
.about-text h1{margin-top:0}
.about-text p{white-space:pre-wrap}
.about-text p:last-child{margin-bottom:0}
.ig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ig-grid a{display:block;aspect-ratio:1;overflow:hidden}
.ig-grid img{display:block;width:100%;height:100%;object-fit:cover}
.about-contact{margin-top:54px}
.about-spacer{height:85px}
.about-contact p{margin:0;white-space:pre-wrap}

.not-found h1{margin-top:0}

@media only screen and (max-width:1023px){#canvas{min-width:0}}

@media only screen and (max-width:800px){
  html,body{height:auto}
  #canvas{padding:0}
  #headerWrapper{position:relative;top:auto;left:auto;width:auto;padding:0 20px 20px}
  #logo{margin-bottom:1em}
  #logo h1{margin:0 auto;max-width:163px}
  #topNav{display:none}
  #mobileMenuLink{display:block}
  #pageWrapper{margin:0;padding:20px}
  #galleryWrapper{position:static;width:auto}
  #thumbnails,.thumb-view #thumbnails{display:none}
  #slideshowWrapper,.thumb-view #slideshowWrapper{display:block;position:static}
  #slideshow{height:auto;overflow:visible}
  #slideshow .slide,#slideshow .slide.shown,#slideshow .slide.active{display:block;position:static;opacity:1;margin-bottom:20px;cursor:default}
  #slideshow img{height:auto}
  .meta,.slide-view .meta{display:none}
  .home-slideshow{margin-top:17px}
}

@media only screen and (max-width:640px){
  .about-row{display:block;margin:0}
  .about-col{width:100%;padding:0}
  .about-text{padding-top:17px}
  .ig-col{margin-top:34px}
  .ig-grid{grid-template-columns:repeat(2,1fr)}
  .about-spacer{height:17px}
}

@media (prefers-reduced-motion:reduce){.home-slideshow .slide,#slideshow .slide{transition:none}}
