/* Fitelo Offer Popup — visitor overlay */
.fop-overlay{
  position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;
  padding:20px;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .35s cubic-bezier(.22,1,.36,1),visibility .35s;
}
.fop-overlay[hidden]{display:none!important}
.fop-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}

.fop-backdrop{
  position:absolute;inset:0;border:0;margin:0;padding:0;cursor:pointer;
  background:rgba(34,9,15,.62);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}

.fop-dialog{
  position:relative;z-index:1;width:min(420px,92vw);
  transform:translateY(18px) scale(.96);opacity:0;
  transition:transform .4s cubic-bezier(.22,1,.36,1),opacity .35s ease;
}
.fop-overlay.is-open .fop-dialog{transform:translateY(0) scale(1);opacity:1}

.fop-close{
  position:absolute;top:-12px;right:-12px;z-index:2;
  width:40px;height:40px;border:0;border-radius:999px;cursor:pointer;
  display:grid;place-items:center;
  background:#fff;color:#4F0716;
  box-shadow:0 10px 28px -10px rgba(34,9,15,.45),inset 0 0 0 1px rgba(79,7,22,.08);
  transition:transform .2s,background .2s;
}
.fop-close:hover{transform:rotate(90deg);background:#FFF1EC}
.fop-close svg{display:block}

.fop-image-link{
  display:block;border-radius:24px;overflow:hidden;
  box-shadow:0 40px 80px -28px rgba(34,9,15,.55);
  transition:transform .25s ease;
}
.fop-image-link:hover{transform:scale(1.015)}
.fop-image-link img{
  display:block;width:100%;height:auto;max-height:min(78vh,720px);object-fit:cover;
}

@media (max-width:520px){
  .fop-overlay{align-items:center;justify-content:center;padding:16px}
  .fop-dialog{width:min(420px,92vw)}
  .fop-image-link{border-radius:20px}
  .fop-image-link img{max-height:min(72vh,640px)}
  .fop-close{top:-10px;right:-10px}
}

@media (prefers-reduced-motion:reduce){
  .fop-overlay,.fop-dialog,.fop-close,.fop-image-link{transition:none}
}
