.replica-loader{position:fixed;inset:0;z-index:999999;background:#fff;transition:opacity .1s linear;pointer-events:none}
.replica-loader[hidden]{display:none!important}
.replica-loader.is-done{opacity:0}
.replica-dots{position:absolute;left:50%;top:50%;width:64px;height:64px;transform:translate(-50%,-50%)}
.replica-dots i{position:absolute;top:27px;width:11px;height:11px;border-radius:50%;animation-duration:.6s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(0,1,1,0)}
.replica-dots i:nth-child(1){left:6px;background:#314638;animation-name:replica-grow}
.replica-dots i:nth-child(2){left:6px;background:#357443;animation-name:replica-shift}
.replica-dots i:nth-child(3){left:26px;background:#d6e68f;animation-name:replica-shift}
.replica-dots i:nth-child(4){left:45px;background:#cfe39e;animation-name:replica-shrink}
@keyframes replica-grow{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes replica-shift{from{transform:translateX(0)}to{transform:translateX(19px)}}
@keyframes replica-shrink{from{transform:scale(1)}to{transform:scale(0)}}
@media(prefers-reduced-motion:reduce){.replica-dots i,.wow{animation:none!important}.replica-loader{transition:none}}
.replica-photo-open{display:block;width:100%;padding:0;background:none;border:0;cursor:zoom-in}
.replica-photo-dialog{width:min(940px,92vw);max-width:none;padding:0;border:0;overflow:visible;background:transparent}
.replica-photo-dialog::backdrop{background:rgba(22,43,49,.83)}
.replica-photo-dialog img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain}
.replica-photo-close{position:absolute;right:0;top:-48px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#314638;font:26px/1 sans-serif;cursor:pointer}
.replica-inquiry-switch{margin:0 0 22px;border:1px solid #bacbb5;border-radius:8px;background:#fff}
.replica-inquiry-switch summary{padding:12px 17px;cursor:pointer;font-size:16px}
.replica-inquiry-switch summary::after{content:'⌄';margin-left:auto}
.replica-inquiry-switch>div{display:grid;gap:8px;padding:4px 17px 15px}
.replica-inquiry-switch a{color:#2e613c;text-decoration:underline}
.replica-filter-label{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 22px;font-size:16px}
.replica-post-filter{border:1px solid #bacbb5;border-radius:6px;background:white;color:#314638;padding:10px 13px;font:inherit}

@keyframes replica-mobile-reveal{from{opacity:0}to{opacity:1}}
@media(max-width:767px){
  .wow:is(.swing,.fadeInLeft,.fadeInRight,.fadeInUp){
    animation-name:replica-mobile-reveal!important;
    animation-duration:.3s!important;
    animation-delay:0s!important
  }
}
