html{scroll-behavior:smooth}.faq__item.is-open .faq__answer{height:auto}.languages.languages--visible{height:auto}.catalog__template{display:none!important}.migration-map{text-align:center;background:#edf1f3;font:18px latoregular,Arial,sans-serif}#location-map{height:470px;width:100%;z-index:0;text-align:left}.map-status{padding:16px;line-height:1.5}.map-status[hidden]{display:none}.gite-marker{background:transparent;border:0}.gite-marker span{display:block;width:30px;height:30px;background:#24445c;border:3px solid white;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 5px #0006;color:#bd995b;text-align:center;font:22px/28px Arial}.migration-map .leaflet-popup-content{font:15px/1.5 latoregular,Arial,sans-serif}.migration-map .leaflet-control-attribution{font:11px/1.5 Arial,sans-serif}@media(max-width:600px){#location-map{height:360px}}.migration-map>a{display:block;padding:20px}.migration-map a{color:#24445c}.contact-direct{font:18px/1.7 latoregular,Arial,sans-serif}.contact-direct a{text-decoration:underline;color:inherit}.contact-status{font:16px/1.5 latoregular,Arial,sans-serif;padding-top:18px}.nuits-lightbox{background:#142331;border:0;color:white;width:96vw;max-width:1400px;max-height:94vh;padding:22px}.nuits-lightbox::backdrop{background:#000d}.nuits-lightbox .viewer{display:flex;justify-content:center;align-items:center;gap:12px}.nuits-lightbox img{max-width:calc(100% - 100px);max-height:73vh;object-fit:contain}.nuits-lightbox button{font:16px latoregular,Arial,sans-serif;border:1px solid #ffffff80;background:#24445c;color:white;cursor:pointer;min-width:44px;min-height:44px;padding:8px}.nuits-lightbox .close{display:block;margin-left:auto;margin-bottom:15px}.nuits-lightbox p{text-align:center;padding-top:15px;font:16px latoregular,Arial,sans-serif}.price-dialog{padding:38px;max-width:750px;width:90vw;max-height:90vh;border:0}.price-dialog::backdrop{background:#000b}.price-dialog .close{float:right;cursor:pointer;padding:8px;background:#24445c;color:white;font:16px latoregular,Arial,sans-serif;margin:0 0 20px 20px}.price-dialog .product__txt{clear:both}.price-dialog h2{font:30px playfair_displayregular,Georgia,serif;margin:18px 0}.price-dialog .price{font:26px latobold,Arial,sans-serif;margin-bottom:22px}.price-dialog p{line-height:1.7}.price-dialog a{color:#24445c}a:focus-visible,button:focus-visible{outline:3px solid #bd995b;outline-offset:4px}@media(max-width:600px){.nuits-lightbox{padding:12px}.nuits-lightbox .viewer{gap:6px}.nuits-lightbox img{max-width:calc(100% - 90px)}.price-dialog{padding:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:39.99em){.about__album{height:21rem}.album__container{height:25rem}.about__album .about__btn,.album__container .album__btn{clip:auto;display:flex;align-items:center;justify-content:center;position:absolute;top:auto;bottom:0;width:44px;height:44px;padding:0;margin:0;background:#24445c;color:white;font-size:24px;z-index:10;text-decoration:none}.about__album .about__btn--left,.album__container .album__btn--left{left:8.54%;right:auto}.about__album .about__btn--right,.album__container .album__btn--right{right:8.54%;left:auto}}

/* A fixed stage keeps every gallery control still, including between image loads. */
.nuits-lightbox{box-sizing:border-box;height:90vh;height:90dvh;max-height:94vh;max-height:94dvh;overflow:hidden}
.nuits-lightbox[open]{display:grid;grid-template-rows:44px minmax(0,1fr) 3em;gap:12px}
.nuits-lightbox .close{justify-self:end;margin:0}
.nuits-lightbox .viewer{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;min-height:0;height:100%;width:100%}
.nuits-lightbox .viewer img{display:block;width:100%;height:100%;min-height:0;min-width:0;max-width:100%;max-height:100%;object-fit:contain}
.nuits-lightbox .viewer button{width:44px;height:44px;padding:0;align-self:center}
.nuits-lightbox p{margin:0;padding:0;overflow:auto;line-height:1.5}
.contact-status:empty{display:none}.contact-direct{margin-top:20px;font-size:15px;line-height:1.5}
@media(max-width:600px){.nuits-lightbox[open]{gap:8px}.nuits-lightbox .viewer{gap:6px}}

/* Match the original overlay, while keeping controls independent of photo size. */
@media(min-width:40em){.about__album .about__btn{display:none}}
.nuits-lightbox{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100vh;height:100dvh;max-height:none;padding:60px 80px;background:transparent;border:0;color:white}
.nuits-lightbox::backdrop{background:rgba(0,0,0,.82)}
.nuits-lightbox[open]{display:block}
.nuits-lightbox .viewer{display:block;height:100%;width:100%}
.nuits-lightbox .viewer img{width:100%;height:100%;object-fit:contain}
.nuits-lightbox .viewer button{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border:0;border-radius:50%;background:rgba(255,255,255,.75);color:#333;font-size:26px}
.nuits-lightbox .previous{left:20px}.nuits-lightbox .next{right:20px}
.nuits-lightbox .close{position:absolute;right:12px;top:8px;border:0;background:transparent;color:#fff;width:44px;height:44px;padding:0;font-size:34px}
.nuits-lightbox p{position:absolute;left:20px;right:70px;top:20px;text-align:left;font-size:14px;max-height:32px}
@media(max-width:600px){.nuits-lightbox{padding:60px 12px}.nuits-lightbox .previous{left:8px}.nuits-lightbox .next{right:8px}.nuits-lightbox .viewer button{width:44px;height:44px}}
/* Native anchors must not insert the old script's extra spacer into sections. */
.js :target::before{content:none}

/* White circular controls with mirrored, slender chevrons. */
.nuits-lightbox .viewer button{background:#fff;color:#292929;display:grid;place-items:center;padding:0}
.nuits-lightbox .viewer button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nuits-lightbox .viewer button:focus-visible{outline:3px solid #b88a45;outline-offset:4px}
