@charset "utf-8";
/* CSS-only replacements for the former jQuery menu, carousel and photo viewer. */
.menu-state, .slide-state {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip-path:inset(50%); white-space:nowrap;
}
.menu > span {width:60%; height:1px; position:absolute; top:50%; left:20%; background:#333;}
.menu > span::before, .menu > span::after {content:""; width:100%; height:1px; position:absolute; left:0; background:#333;}
.menu > span::before {top:-7px;}
.menu > span::after {top:7px;}
.menu-state:focus-visible + .menu {outline:2px solid #996600; outline-offset:2px;}
.static-carousel {position:relative; float:left; width:100%; line-height:0;}
.slides {position:relative; width:100%;}
.slide {display:block; width:100%;}
.slide img {display:block; width:100%; height:auto;}
.slide-2 {position:absolute; inset:0; opacity:0; animation:banner-fade 10s infinite;}
@keyframes banner-fade {0%,40%,100%{opacity:0;} 50%,90%{opacity:1;}}
.slide-dots {position:absolute; bottom:28px; left:0; width:100%; text-align:center; line-height:0; z-index:1;}
.slide-dots label {display:inline-block; cursor:pointer; padding:5px 7px;}
.slide-dots span {display:block; width:10px; height:10px; border-radius:50%; background:#d6d6d6; box-shadow:0 0 10px rgba(0,0,0,.6);}
.slide-dots label:first-child span {background:#869791; animation:dot-first 10s infinite;}
.slide-dots label:last-child span {animation:dot-second 10s infinite;}
@keyframes dot-first {0%,40%,100%{background:#869791;} 50%,90%{background:#d6d6d6;}}
@keyframes dot-second {0%,40%,100%{background:#d6d6d6;} 50%,90%{background:#869791;}}
#slide-1:checked ~ .slide-dots span, #slide-2:checked ~ .slide-dots span {animation:none;}
#slide-1:checked ~ .slides .slide-2 {animation:none; opacity:0;}
#slide-2:checked ~ .slides .slide-2 {animation:none; opacity:1;}
#slide-2:checked ~ .slide-dots label:first-child span {background:#d6d6d6;}
#slide-2:checked ~ .slide-dots label:last-child span {background:#869791;}
.slide-state:focus-visible ~ .slide-dots {outline:2px solid #996600;}
.photo-view {display:none; position:fixed; inset:0; z-index:1000; background:rgba(30,30,30,.94); align-items:center; justify-content:center;}
.photo-view:target {display:flex;}
.photo-backdrop {position:absolute; inset:0;}
.photo-view > img {position:relative; max-width:calc(100% - 80px); max-height:90vh; width:auto; height:auto; object-fit:contain;}
.photo-close, .photo-prev, .photo-next {position:absolute; color:#fff; font:40px/1 Arial,sans-serif; padding:10px; text-align:center; z-index:1;}
.photo-close {right:8px; top:5px;}
.photo-prev {left:0; top:45%;}
.photo-next {right:0; top:45%;}
.photo-count {position:absolute; top:20px; left:20px; color:#ddd; font:14px Arial,sans-serif;}
[id^="thumb-"] {scroll-margin-top:100px;}
@media (max-width:767px) {
  #menu-state:checked ~ nav .nav {display:block;}
  #menu-state:checked + .menu > span {background:transparent;}
  #menu-state:checked + .menu > span::before {top:0; transform:rotate(45deg);}
  #menu-state:checked + .menu > span::after {top:0; transform:rotate(-45deg);}
  .photo-view > img {max-width:calc(100% - 64px); max-height:85vh;}
  [id^="thumb-"] {scroll-margin-top:80px;}
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after {animation:none !important; transition:none !important; scroll-behavior:auto !important;}
}
