@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 800;
  font-stretch: normal;
  src: url(/assets/fonts/a03683cc9383b9fb.ttf) format('truetype');
}

/* Native gallery; the photo list is ordinary HTML shared by all languages. */
html:has(.gallery-page) {scrollbar-gutter:stable;}
html.gallery-open {overflow:hidden;scrollbar-gutter:auto;}
html.gallery-open body,html.gallery-open .site-header {padding-right:var(--gallery-scrollbar,0px);}
.gallery-page {padding-top:130px;color:#212529;font:400 15px/1.5 var(--body-font);}
.gallery-container {width:100%;max-width:1140px;margin-inline:auto;}
.gallery-content {width:calc(100% - 15px);margin-left:15px;container:photos / inline-size;}
.gallery-section,.gallery-feedback {padding:50px 0;}
.gallery-section .gallery-content {margin-bottom:30px;}
.gallery-heading {margin:0 0 8px;color:var(--wine);font:800 30px/30px Roboto,sans-serif;}
.photo-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7.5px 2.5px 2.5px;}
.photo-grid a {display:block;overflow:hidden;}
.photo-grid img {display:block;width:100%;height:auto;backface-visibility:hidden;transition:opacity 1s,transform 1s;}
.photo-grid a:is(:hover,:focus-visible) img {opacity:.4;transform:scale3d(1.1,1.1,1);}
@container photos (width < 615px) {.photo-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@container photos (width < 410px) {.photo-grid {grid-template-columns:minmax(0,1fr);}}
.feedback-content {display:flow-root;width:calc((100% - 30px)/2);margin:0 auto 30px;}
.gallery-feedback h2 {margin:0 0 70px;color:#212529;text-align:center;font:700 36px/39px var(--heading-font);}
.feedback-form {display:flow-root;}
.feedback-form .form-honeypot {position:absolute;left:-10000px;}
.feedback-field {padding-top:22.5px;margin-bottom:16px;}
.feedback-field input,.feedback-field textarea {display:block;width:100%;padding:12px;border:1px solid #ced4da;border-radius:0;color:#495057;background:#fff;font:400 16px/24px var(--body-font);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;}
.feedback-field textarea {height:145.6px;resize:vertical;}
.feedback-field :is(input,textarea):focus {outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem rgb(0 123 255 / 25%);}
.gallery-breadcrumb li:nth-child(n+3)::before {display:inline-block;padding:0 8px;color:#6c757d;content:'/';}

/* Only previous, next and close controls. The native dialog traps focus. */
.gallery-lightbox {position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#ccc;overflow:hidden;}
.gallery-lightbox::backdrop {width:100vw;height:100dvh;background:rgba(0,0,0,.75);animation:gallery-fade-in .5s;}
.lightbox-stage {width:100%;height:100%;padding:44px;touch-action:pan-y;}
.lightbox-frame {position:relative;width:100%;height:100%;transition:opacity .5s;}
.lightbox-photo {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:100%;max-height:100%;user-select:none;}
.lightbox-control {position:absolute;z-index:1;display:block;margin:0;border:0;border-radius:0;color:#ccc;cursor:pointer;}
.lightbox-control:hover {color:#fff;}
.lightbox-control:focus-visible {outline:2px solid #fff;outline-offset:-3px;}
.lightbox-control svg {display:block;width:100%;height:100%;fill:currentColor;}
.lightbox-close {top:0;right:0;width:44px;height:44px;padding:10px;background:rgba(30,30,30,.6);}
.lightbox-prev,.lightbox-next {top:calc(50% - 50px);width:60px;height:100px;padding:17px;background:transparent;}
.lightbox-prev {left:0;}
.lightbox-next {right:0;}
.gallery-lightbox.is-closing::backdrop {animation:none;opacity:0;transition:opacity .5s;}
.gallery-lightbox.is-closing .lightbox-frame {opacity:0;}
@keyframes gallery-fade-in {from {opacity:0;} to {opacity:1;}}
@media(min-width:992px) and (max-width:1199px) {.gallery-container {max-width:960px;}}
@media(min-width:768px) and (max-width:991px) {
    .gallery-container {max-width:720px;}
    .gallery-section .gallery-content {margin-bottom:20px;}
    .feedback-content {width:100%;padding-block:1px;margin-bottom:20px;}
}
@media(min-width:576px) and (max-width:767px) {.gallery-container {max-width:540px;}}
@media(max-width:767px) {
    .gallery-container {padding-inline:10px;}
    .gallery-content {width:100%;margin-left:0;}
    .gallery-section .gallery-content {margin-bottom:10px;}
    .feedback-content {width:100%;padding-block:1px;margin-bottom:10px;}
    .language-en .feedback-content {width:calc(100% - 15px);margin-left:15px;}
    .gallery-feedback h2 {margin-bottom:10px;}
    .feedback-submit {text-align:center;}
    .lightbox-stage {padding:44px 6px;}
}
@media(prefers-reduced-motion:reduce) {
    .photo-grid img,.lightbox-frame,.gallery-lightbox::backdrop {animation:none;transition:none;}
}
