html { scroll-behavior: smooth; }
body { margin: 0; }
.elem { visibility: visible; }
body.menu-open { overflow: hidden; }
body.menu-open #mobile-nav { display: block; transform: translateX(0); left: 0; }
body.menu-open #mobile-body-overly { display: block; position: fixed; inset: 0; background: rgba(0,0,0,.7); z-index: 9999; }
body.menu-open #mobile-nav { z-index: 10000; }
.replica-menu-close { display:none; position:fixed; z-index:10001; top:14px; right:9px; width:26px; height:26px; border:0; background:transparent; padding:0; }
.replica-menu-close::before,.replica-menu-close::after { content:'';position:absolute;top:12px;left:0;width:26px;height:1px;background:white;transform:rotate(45deg); }
.replica-menu-close::after { transform:rotate(-45deg); }
body.menu-open .replica-menu-close { display:block; }
#mobile-nav #mobile-menu { padding-left:0; list-style:none; margin:0; }
#mobile-nav #mobile-menu .dropdown-menu { position:static; float:none; width:100%; box-shadow:none; border:0; }
#mobile-nav .menu-has-children > i { cursor:pointer; }
#mobile-nav .menu-has-children.expanded > .dropdown-menu { display:block; }
#mobile-nav .menu-has-children.expanded > i { transform:rotate(180deg); }
.gallery-item .over-box { pointer-events:none; }
body .gallery-item a[data-gallery] { cursor:zoom-in; }
body .gallery-item a[data-gallery] .img-wrapper img { transform:scale(1); transition:transform 500ms cubic-bezier(.2,0,.2,1); }
body .gallery-item a[data-gallery] .over-box { top:0; left:0; opacity:0; box-shadow:inset 0 0 0 1px rgba(255,255,255,.28); transition:opacity 260ms ease-out; }
body .gallery-item a[data-gallery] .bg-box { background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.34)); opacity:1; }
body .gallery-item a[data-gallery] .view-text { display:flex; align-items:center; justify-content:center; top:auto; left:auto; right:12px; bottom:12px; width:28px; height:28px; padding:0; border:0; border-radius:0; background:none; color:white; transform:none; }
.replica-zoom-icon { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 1px 3px rgba(0,0,0,.35)); }
body .gallery-item a[data-gallery]:focus-visible { outline-color:#fff; outline-offset:2px; }
body .gallery-item a[data-gallery]:focus-visible .over-box { opacity:1; }
body .gallery-item a[data-gallery]:focus-visible .img-wrapper img { transform:scale(1.025); }
@media (hover:hover) and (pointer:fine) {
 body .gallery-item a[data-gallery]:hover .over-box { opacity:1; }
 body .gallery-item a[data-gallery]:hover .img-wrapper img { transform:scale(1.025); }
}
.replica-crossfade.carousel-fade .carousel-inner > .item { display:block; position:absolute; inset:0; opacity:0; z-index:0; transform:none; transition:opacity .5s ease-in-out; }
.replica-crossfade.carousel-fade .carousel-inner > .item.active { opacity:1; z-index:2; }
.replica-crossfade.carousel-fade .carousel-inner > .item.is-leaving { z-index:1; }
.replica-crossfade.carousel-fade .control-box { z-index:3; }
.replica-crossfade.carousel-fade .carousel-indicators { z-index:4; }
.replica-crossfade .carousel-indicators [data-slide-to] { cursor:pointer; }
#replica-gallery[hidden] { display:none !important; }
#replica-gallery:not([hidden]) { display:block; opacity:0; z-index:11000; background:rgba(0,0,0,.8); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); isolation:isolate; cursor:zoom-out; transition:opacity 300ms ease-in-out; }
#replica-gallery:not([hidden]).is-visible { opacity:1; }
#replica-gallery:not(.is-visible),#replica-gallery:not(.is-visible) * { pointer-events:none; }
.replica-slide { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; overflow:hidden; z-index:1; }
.replica-slide-leaving { pointer-events:none; }
.replica-slide img { max-width:100%; max-height:100%; object-fit:contain; cursor:default; box-shadow:0 12px 60px rgba(0,0,0,.25); }
#replica-gallery button { border:0; color:#ddd; background:transparent; padding:0; font-family:Arial,sans-serif; font-weight:200; cursor:pointer; z-index:2; text-shadow:0 1px 8px rgba(0,0,0,.5); }
.replica-prev,.replica-next { position:absolute; top:50%; margin-top:-35px; width:60px; height:70px; font-size:66px; line-height:60px; }
.replica-prev { left:7px; }.replica-next { right:7px; }
#replica-gallery .replica-close { position:absolute; right:15px; top:10px; width:48px; height:43px; border-radius:2px; background:rgba(80,80,80,.35); font-size:38px; line-height:38px; }
.replica-counter { position:absolute; left:25px; bottom:18px; color:#ddd; font-family:Arial,sans-serif; font-size:16px; z-index:2; text-shadow:0 1px 8px rgba(0,0,0,.5); }
#replica-gallery .replica-play { position:absolute; right:25px; bottom:18px; font-size:32px; line-height:30px; }
#replica-gallery button:hover { color:#fff; }
#replica-gallery.gallery-loading::after { content:''; position:absolute; inset:auto; top:50%; left:50%; width:40px; height:40px; margin:-20px; border:4px solid #aaa; border-top-color:transparent; border-radius:50%; background:none; z-index:3; animation:replica-spin 1s linear infinite; }
@keyframes replica-spin { to { transform:rotate(360deg); } }
body.gallery-open { overflow:hidden; }
.form-status { color:white; font-size:13px; padding:10px 0; margin:0; text-align:center; }
.form-status:empty { display:none; }
.form-status.error { color:#ffb0a5; }
[aria-invalid="true"] { border-color:#e46854 !important; }
.form-inline [data-form-submit][aria-disabled="true"] { opacity:.6; cursor:wait; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,[role="button"]:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.skip-link { position:fixed; top:-60px; left:10px; background:#fff; color:#000; padding:8px; z-index:12000; }.skip-link:focus { top:10px; }
@media (max-width:768px) {
 #mobile-nav { position:fixed; top:0; bottom:0; width:90%; height:100dvh; background:white; overflow-y:auto; left:-100%; }
 #mobile-nav #mobile-menu a { display:block; padding:15px 20px; line-height:19px; font-size:15px; font-family:'SangSangTitle'; color:#00253c; }
 #mobile-nav #mobile-menu > li { position:relative; }
 #mobile-nav .menu-has-children > i { position:absolute; right:15px; top:20px; color:#00253c; z-index:2; }
 #mobile-nav .dropdown-menu a { padding-left:35px !important; }
 #replica-gallery .replica-close { right:8px; }
 .replica-prev,.replica-next { width:40px; font-size:50px; }
}
@media (prefers-reduced-motion:reduce) {html {scroll-behavior:auto;}[data-aos]{transition:none!important;transform:none!important;opacity:1!important;}.replica-crossfade.carousel-fade .carousel-inner > .item,body .gallery-item a[data-gallery] .over-box,body .gallery-item a[data-gallery] .img-wrapper img,#replica-gallery {transition:none!important;}body .gallery-item a[data-gallery] .img-wrapper img {transform:none!important;}}
