
/* ---- gallery ---- */
.gallery{columns:4 240px;column-gap:14px;margin:2rem 0}
@media(max-width:1100px){.gallery{columns:3 220px}}
@media(max-width:700px){.gallery{columns:2 150px;column-gap:10px}}
.gallery a{display:block;margin:0 0 14px;break-inside:avoid;line-height:0}
.gallery img{width:100%;height:auto;border-radius:2px;transition:opacity .2s}
.gallery a:hover img{opacity:.85}
/* ---- sliders (reuse metaslider markup) ---- */
.metaslider{position:relative;overflow:hidden;max-width:800px;margin:0 auto}
.metaslider ul.slides{list-style:none;margin:0;padding:0;position:relative}
.metaslider ul.slides>li{display:none}
.metaslider ul.slides>li.is-active{display:block}
.metaslider ul.slides>li img{width:100%;height:auto;display:block}
.metaslider.is-fading ul.slides{display:grid}
.metaslider.is-fading ul.slides>li{grid-area:1/1;display:block;opacity:0;transition:opacity .8s;pointer-events:none}
.metaslider.is-fading ul.slides>li.is-active{opacity:1;pointer-events:auto}
/* ---- contact form ---- */
#contact-form{max-width:640px}
#contact-form label{display:block;font-weight:600;margin-bottom:.35rem}
#contact-form input[type=text],#contact-form input[type=email],#contact-form textarea{
  width:100%;padding:.65rem;border:1px solid #ccc;border-radius:3px;font:inherit;margin-bottom:1rem}
#contact-form button{padding:.7rem 1.6rem;border:0;background:#111;color:#fff;font:inherit;cursor:pointer;border-radius:3px}
#contact-form button[disabled]{opacity:.5;cursor:progress}
.form-status{min-height:1.4em;font-weight:600}
.form-status.ok{color:#1a7f37}.form-status.err{color:#b3261e}
