/* Theme by IO200 CMS (https://www.IO200.com) */

/*#########################################################*/
/*##########LAYOUT#########################################*/
/*#########################################################*/
:root{--website-background:#fff;}
@media (min-width:1000px){html{scroll-behavior:smooth;scroll-padding-top:1rem;scroll-padding-top:calc(var(--header-height));}}
@media (max-width:999px){html{scroll-behavior:smooth;scroll-padding-top:0.25rem;}}
body{font-size:16px;font-family:sans-serif;color:#464646;background:var(--website-background);}
main h1,main h2,main h3,main h4,main h5,main h6{color:#222222;}

/*----------DESKTOP----------------------------------------*/
@media (min-width:1000px){
  div#container{width:100%;max-width:1800px;margin:2.5rem auto;padding:0 3rem;box-sizing:border-box;}
  header, main, footer{width:100%;}
  header{display:flex;gap:0.2em 2em;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;}
  main{margin:1rem 0;}
  footer{clear:both;}
}
/*header*/
@media (min-width:1000px){
  header span.website-title{color:#222222;font-size:2.3em;display:inline-block;}
  header span.website-title:hover{cursor:pointer;}
  header span.website-tagline{margin-top:0.1rem;font-size:0.92em;display:block;}
}
/*nav*/
@media (min-width:1000px){  
  header nav {font-size:1.1em;width:100%;}
  header nav ul{display:flex;flex-wrap:wrap;gap:0.5em 1.5em;list-style:none;}
  header nav ul li{position:relative;}
  header nav ul li .nav-item-title{color:#343434;text-decoration:none;letter-spacing:0.025em;font-weight:300;}
  header nav li a:hover, header nav li.active > a{color:#aaaaaa;}
  header nav > ul > li > ul {font-size:0.96em;z-index:100;display:none;position:absolute;margin-left:-0.4em;padding:0.4em;background:var(--website-background);box-shadow:0 0 0.25em 0 rgba(0,0,0,0.1);box-sizing:border-box;}
  header nav > ul > li:hover ul, header nav > ul > li:focus ul, header nav > ul > li:focus-within ul{display:block;}
  header nav > ul > li > ul li{line-height:2em;padding:0 0.2em 0.2em 0.2em;white-space:nowrap;}
  header nav > ul > li > ul li:last-child{padding-bottom:0;}
}
/*footer*/
@media (min-width:1000px){
  footer nav ul.secondary li{font-size:0.96em;}
}

/*----------MOBILE----------------------------------------*/
@media (max-width:999px){
  div#container{padding:0 1rem;width:100%;box-sizing:border-box;}
  header, main, footer{width:100%;box-sizing:border-box;}
  header{margin-top:0.2em;padding:1.2rem 36px 1.2rem 0;background-image:url(../img/menu_light.png);background-position:center right;background-repeat:no-repeat;background-size:16px 12px;}
  header.shownav{background-image:url(../img/menu-close_light.png);background-size:16px 16px;}
  body::after{position:absolute;width:0;height:0;overflow:hidden;z-index:-1;content:url(../img/menu-close_light.png);} /*preload image*/
  main{margin-top:1rem;margin-bottom:1rem;}
  footer{margin-bottom:2rem;}
}
/*header*/
@media (max-width:999px){
  header div.title-container{display:flex;align-items:center;justify-content:space-between;}
  header span.website-title{font-size:6vw;color:#222222;line-height:1em;display:inline-block;word-break:break-word;}
  header span.website-title:hover{cursor:pointer;}
  header span.website-title a{vertical-align:bottom;}
  header span.website-tagline{display:none;}
}
/*nav (modern)*/
@media (max-width:999px){
  header nav {position:static;}
  header nav ul {line-height:1.6em;list-style:none;}
  header nav > ul{margin-top:1.2rem;text-align:center;z-index:1000;display:none;position:absolute;left:0;width:100%;border:0;background:var(--website-background);box-shadow:0 6px 8px rgba(0, 0, 0, 0.2);border-top:1px solid #f4f4f4;}
  header.js-nav.shownav nav > ul, header:not(.js-nav):hover nav > ul, header:not(.js-nav):active nav > ul{display:block;}
  header nav > ul > li{padding:0.3rem;}
  header nav > ul li{width:100%;box-sizing:border-box;}
  header nav > ul li > .nav-item-title{color:#222222;font-size:1.1em;font-weight:700;padding:0.4rem 0.6rem;width:100%;display:inline-block;box-sizing:border-box;text-align:left;text-decoration:none;letter-spacing:0.04em;}
  header nav ul li a:hover, header nav ul li a:active{text-decoration:underline;text-underline-offset:0.2em;}
  header nav > ul ul{margin-top:-0.4rem;}
  header nav > ul ul li .nav-item-title{font-size:0.96em;font-weight:600;padding:0.3rem 0.6rem 0.3rem 1.6rem;}
}
@media (max-width:999px){ /*hide nav icon when no links*/
  header:not(:has(nav ul li)) nav {display:none;}
  header:not(:has(nav ul li)){background-image:none!important;}
}
@media (max-width:999px){ /*full height*/
  body.shownav header nav > ul {height:calc(100dvh - 1.2rem - 2.6rem - 1rem + 1rem);overflow:auto;}
  body.shownav header nav > ul > *:last-child{padding-bottom:2rem;}
  body.shownav{overflow:hidden;}
}
@media (max-width:999px){ /*effect*/
  header.js-nav nav > ul{display:block;} /*reset*/
  body header nav > ul {height:calc(100dvh - 1.2rem - 2.6rem - 1rem + 1rem);} /*reset*/
  header.js-nav nav ul {opacity:0;max-height:0;overflow:hidden;transition:max-height 0.25s ease-out;}
  header.js-nav.shownav nav ul{opacity:1;max-height:100vh;transition:max-height 0.25s ease-out;}
  header.js-nav nav > ul > li{opacity:0;transition:opacity 0.25s ease-out;}
  header.js-nav.shownav nav > ul > li{opacity:1;transition:opacity 0.8s 0.1s ease-out;}
}
/*footer*/
@media (max-width:999px){
  footer, footer *{justify-content:center;text-align:center;}
  footer ul.secondary{font-size:0.96em;}
}


/*#########################################################*/
/*##########CUSTOM#########################################*/
/*#########################################################*/
/*---Flavor:LAYOUT_RIGHT---*/
@media (min-width:1000px){
  header nav {width:auto;}
  footer nav{flex-basis:initial;}
  header span.website-tagline{margin-bottom:0.4rem;}
  header nav > ul > li:last-child > ul {right:0;text-align:right;} /*dropdown nav*/
  header nav > ul:has(li.linktemplate-basket:last-child) > li:nth-last-child(2) > ul {right:0;text-align:right;} /*dropdown nav*/
}
@media (min-width:1000px){ 
   main.template-startshowcase div.start-singlephoto img.photo{max-width:unset!important;}
}

/*---Flavor:LAYOUT_FULLWIDTH---*/
@media (min-width:1000px){ /*full width*/
  html{margin-left:0;}
  div#container{margin:0;padding:1rem 1rem;max-width:calc(100vw - 24px);}
  header{align-items:center;}
  header span.website-title{line-height:1em;margin:0;display:flex;}
  main{margin-bottom:0;}
  div#container main:has(.breadcrumb){margin-top:0;}
  main *:last-child{margin-bottom:0;}
}
@media (min-width:1000px){ /*scrollbar*/
  div#container{max-width:calc(100vw - 24px);}
}
@media (min-width:1000px){
  body.glightbox-open {overflow:clip;}
  /*.glightbox-open footer{position:fixed;left:1rem;width:calc(100vw - 2rem - 24px);}*/
}
@media (min-width:1000px){  
  div#container{display:flex;flex-direction:column;min-height:100vh;justify-content:space-between;}
  main{padding:0;}
}
@media (min-width:1000px){ /*header sticky*/
  div#container{padding-top:0;}
  header{padding:1rem;margin-left:-1rem;position:sticky;top:0;background:var(--website-background);z-index:100;}
}
@media (min-width:1000px){ /*footer sticky*/
  div#container{padding-bottom:0;}
  footer{padding-block:0.6rem;position:sticky;bottom:0;background:var(--website-background);z-index:100;}
  footer:empty, footer:not(:has(*)){padding-top:0;}
  footer:not(:has(*)){display:none;}
  div.action-bar{bottom:3.5rem;}
}
@media (min-width:1000px){ /*site width, centering*/ 
  div#container main:not(.template-page):not(.template-contact){flex:1;}
  div#container main.template-error404, 
  div#container main.template-page:not(.page-fullwidth),
  div#container main.template-contact{margin-inline:auto;max-width:54rem;}
  div#container main.template-photo{max-width:90rem;margin-inline:auto;}
  div#container main.template-timeline{max-width:90rem;margin-inline:auto;}
  div#container footer{flex:0;gap:1em;}
}
@media (min-width:1000px){ /*top*/ 
  main.template-photo, main.template-startshowcase{margin-top:0rem;}
  main.template-blog:has(.blog-article){margin-top:0rem;}
  main.template-set:has(.pagecover), main.template-album:has(.pagecover), main.template-albums:has(.pagecover){margin-top:0;}
}
@media (min-width:1000px){ /*blog*/
  div#container main.template-blog .sectioncontainer{max-width:128rem;margin-inline:auto;} 
  div#container main.template-blog .sectioncontainer.blog-article{max-width:90rem;margin-inline:auto;} 
  main.template-blog section.blog-posts:has(article.style-visual) h1{text-align:center;}
  main.template-blog section.blog-posts:has(article.style-visual) article{max-width:80em;margin-inline:auto;}
  main.template-blog section.blog-posts:has(article.style-visual) ul.pagination{text-align:center;}
  main.template-blog .sectioncontainer:has(article.style-visual) aside.sectionaside{width:auto;text-align:center;}   
  /*desktop fullsize featured image grey bg*/
  @media (min-width:92.5em){
	body.template-blog{overflow-x:hidden;}
    article.style-article .header .article-image div{background:#f8f8f8;}
    body.mode-dark article.style-article .header .article-image div{background:rgba(255,255,255,0.06);}
	article.style-article .header .article-image div img{max-width:90rem;margin:0 auto;}
  }
}
@media (min-width:1000px){ /*startshowcase*/
  html:has(body.template-startshowcase), body.template-startshowcase, body.template-startshowcase div#container{height:100%;}
  main.template-startshowcase, main.template-startshowcase:has(div.start-slideshow), main.template-startshowcase:has(div.start-singlephoto){display:flex;flex:1;overflow:hidden;}
  main.template-startshowcase div.start-singlephoto div.photo-wrapper{height:100%;}
  main.template-startshowcase div.start-singlephoto div.photo-wrapper img{object-fit:cover;height:100%;}
  main.template-startshowcase div.start-slideshow ul.gallery.layout-slideshow,
  main.template-startshowcase div.start-slideshow li.slideshow-content,
  main.template-startshowcase div.start-slideshow ul.slideshow{height:100%!important;}
  main.template-startshowcase div.start-slideshow li.slideshow-info{display:none;}
}
@media (min-width:1000px){ /*set/album/albums*/
  main.template-set p.collection-description, main.template-album p.collection-description, main.template-albums p.collection-description{max-width:60rem;}
}

/*---Flavor:NAV_UPPERCASE+UNDERLINE---*/
@media (min-width:1000px){
  header nav > ul > li > .nav-item-title{display:inline-block;font-size:0.86em;font-weight:400;line-height:1.5em;text-transform:uppercase;letter-spacing:1.5px;margin-top:1px;border-bottom:1px solid rgb(0 0 0 / 0%);}
  header nav > ul > li.active:not(:hover) > .nav-item-title{color:#343434;border-color:#343434;}
  header nav > ul > li:hover > .nav-item-title{color:#343434;}
  header nav > ul > li > a:last-child:hover{border-color:#343434;}
  header nav > ul ul li{text-transform:uppercase;font-size:0.92em;}
  header nav > ul ul a{letter-spacing:1.5px}
}
/*---Flavor:NAV_FONTWIDER---*/
@media (min-width:1000px){
  header nav > ul > li > .nav-item-title{letter-spacing:2px;}
}

/*---Flavor:MOBILE_TOP_WHEN_PHOTO_OR_ARTICLE---*/
@media (max-width:999px){
  main.template-photo div.photo-image,
  main.template-blog article.style-article .header .article-image.image-available{margin-top:-1rem;}
  main.template-photo:has(.breadcrumb) div.photo-image {margin-top:0.5rem;}
  main.template-blog:has(.breadcrumb) article.style-article .header .article-image.image-available{margin-top:0;}
}
/*---Flavor:MOBILE_TOP_WHEN_NOHEADING---*/
@media (max-width:999px){
  main{margin-top:0;}
  main:has(h1.mobile:first-child), main.template-photo{margin-top:1rem;}
  main:has(.breadcrumb){margin-top:1rem;}
}

/*---Flavor:FOOTER_ONELINE---*/
@media (min-width:1000px){
  footer{flex-wrap:nowrap;}
  footer > *{flex-basis:initial;}
  footer > p{flex:auto;text-align:right;}
  footer > nav:nth-child(2){order:3;}
  footer p.footer-info, footer a.footer-link{white-space:nowrap;}
  footer a.footer-link.has-successor{margin-left:1em;}
  footer p.footer-info a.footer-link.has-successor:before{display:none;}
}

/*---Flavor:PRETITLE_SLASH---*/
span.pretitle::after{content:'/\00a0'} /*span.pretitle*/

/*---Flavor:GALLERY_SET_LAYOUT_GRID-LEFT---*/
@media (min-width:1000px){
  ul.gallery.gallery-set.layout-grid li span {text-align:left;}
  ul.gallery.gallery-set.layout-grid li div.photo-wrapper.photo-portrait{margin-left:0;}
}
/*---Flavor:GALLERY_SET_LAYOUT_WALL-LEFT---*/
@media (min-width:1000px){
  ul.gallery.gallery-set.layout-wall li span {text-align:left;}
}


/*---Flavor:PREVNEXT_LARGE---*/
@media (min-width:1000px){  
  main.template-blog div.article-navigationlinks p.links-prevnext,
  main.template-blog div.article-navigationlinks p.links-prevnext.only-next{margin-block:1em;font-size:2em;line-height:1.25em;font-weight:400;}
  main.template-set p.links-prevnext, main.template-albums p.links-prevnext{margin-block:1em;font-size:2em;line-height:1.25em;text-transform:none;}
  main.template-set p.links-prevnext a, main.template-albums p.links-prevnext a{opacity:1;}
}

/*---Flavor:PHOTO---*/
/*portrait photo max height*/
@media (min-width:1000px){main.template-photo div.photo-image img.photo.photo-portrait{max-height:calc(100vh - 5.5em);}}
/*videolinked photo max width and centered*/
@media (min-width:1000px){main.template-photo .photo-image iframe {max-width:1200px;margin:0 auto;}}
/*photo position*/
main.template-photo div.photo-image img.photo{object-position:center 0!important;}
main.template-photo div.photo-image img.photo.photo-portrait{object-position:0 0!important;}
/*photo margin-bottom desktop*/
@media (min-width:1000px){
  main.template-photo div.photo-image{margin-bottom:1em;}
}
/*prev/next links outside*/
@media (min-width:1000px){
  main.template-photo p.photo-prevnext{position:fixed;}
  main.template-photo p.photo-prevnext a.link-prev,
  main.template-photo p.photo-prevnext a.link-next{opacity:1;position:fixed;top:calc(50% - 1em);visibility:hidden;}
  main.template-photo p.photo-prevnext a.link-prev{left:0.5rem;}
  main.template-photo p.photo-prevnext a.link-next{right:0.5rem;}
  main.template-photo p.photo-prevnext a.link-prev::before,
  main.template-photo p.photo-prevnext a.link-next::after{padding:0.2em;font-size:18px;font-family:sans-serif;font-weight:100;visibility:visible;}
  main.template-photo p.photo-prevnext a.link-prev::before{content:url("data:image/svg+xml,%3Csvg class='symbol' xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px'%3E%3Cpath d='m640-116 34-34-330-330 330-330-34-34-364 364 364 364Z'%3E%3C/path%3E%3C/svg%3E");}
  main.template-photo p.photo-prevnext a.link-next::after{content:url("data:image/svg+xml,%3Csvg class='symbol' xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px'%3E%3Cpath d='m320-116-34-34 330-330-330-330 34-34 364 364-364 364Z'/%3E%3C/svg%3E");}
  main.template-photo p.photo-prevnext svg{display:none;}
}
/*max width:center*/
@media (min-width:1000px){
  main.template-photo section.sectionaside-photo > *:not(.photo-image){max-width:64rem;margin-inline:auto;}
  main.template-photo aside.sectionaside-photo{max-width:64rem!important;margin-inline:auto;}
}
/*desktop fullsize photo grey bg*/
@media (min-width:1100px){ 
  body.template-photo{overflow-x:hidden;}
  body.template-photo footer{width:calc(100%);margin-left:-1rem;padding-left:1rem;padding-right:calc(1rem + 24px);}
  div#container main.template-photo{max-width:none;}
  main.template-photo div.sectioncontainer-photo {width:100vw;margin-left:-1rem;}
  main.template-photo div.photo-image{background:#f8f8f8;}
  body.mode-dark main.template-photo div.photo-image{background:rgba(255,255,255,0.06);}
  main.template-photo div.photo-image div.photo-wrapper{margin:0 auto;width:unset;min-width:64rem;max-width:120rem;max-height:calc(100vh - 8rem);}
}

/*---Flavor:STARTSHOWCASE---*/
/*desktop no bottom*/
@media (min-width:1000px){main.template-startshowcase{margin-bottom:0;}}
/*mobile fullsize*/
@media (max-width:999px){  
  main.template-startshowcase{margin-top:0;}
  body.template-startshowcase footer{margin-bottom:0.5rem;}
  main.template-startshowcase div.start-singlephoto{width:calc(100% + 2rem);margin-left:-1rem;}
  main.template-startshowcase ul.slideshow{height:calc(var(--viewport-initialheight, 2rem) - 0.2rem - var(--header-height, 2rem) - 1rem - var(--footer-height, 2rem));}
}

/*---Flavor:BLOG---*/
:root{--blog-articlewidth:62rem;}
/*article max width with header*/
@media (min-width:1000px){
  div#container main.template-blog section.blog-article article div.header .header-title,
  div#container main.template-blog section.blog-article article div.header .header-meta,
  div#container main.template-blog section.blog-article article div.content,
  div#container main.template-blog section.blog-article article div.footer,
  div#container main.template-blog section.blog-article div.article-comments{margin-inline:auto;max-width:var(--blog-articlewidth);}
}
/*article navigationlinks/previews max width*/
@media (min-width:1000px){
  main.template-blog div.article-navigationlinks,
  main.template-blog div.article-previews{max-width:var(--blog-articlewidth);margin-inline:auto;}
  main.template-blog div.article-previews h3,
  main.template-blog div.article-previews ul.gallery span.info.info-title{text-align:left;}
}
/*blog sidebar appearance2*/
@media (min-width:1000px){
  main.template-blog div.blog-article aside.blog-sidebar{margin-inline:auto;max-width:var(--blog-articlewidth);}
  main.template-blog div.blog-archive aside.blog-sidebar{width:fit-content;}
}
/*desktop fullsize header image grey bg*/
@media (min-width:94rem){ 
  main.template-blog section.blog-article div.header-image.image-available div.photo-wrapper{background:#f8f8f8;width:100vw;margin-left:calc(-100vw / 2 + 90rem / 2);}
  body.mode-dark main.template-blog section.blog-article div.header-image.image-available div.photo-wrapper{background:rgba(255,255,255,0.06);}
}

