/* Float Spa – 2026. november 12. – december 20. foglalási akció */
.vr-winter-offer {
  margin-top: 18px;
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 18px 20px;
  border: 1px solid #a3cfca;
  border-left: 5px solid #086776;
  border-radius: 16px;
  background: linear-gradient(110deg, #e8f5f2, #f8faf7);
  box-shadow: 0 8px 25px rgba(8, 103, 118, .08);
  color: #16474d;
}
.vr-winter-offer-icon { font-size: 27px; line-height: 1.2; flex: none; }
.vr-winter-offer strong { color: #086776; display: block; font-weight: 800; font-size: 16px; line-height: 1.45; }
.vr-winter-offer p { margin: 5px 0 !important; font-size: 14px !important; line-height: 1.65 !important; }
.vr-winter-offer small { color: #50686b; display: block; line-height: 1.5; font-size: 12px; }

/* Akciós felugró ablak csak a főoldalon */
.fspa-promo[hidden] { display: none !important; }
.fspa-promo {
  position: fixed; inset: 0; z-index: 10000;
  display: grid; place-items: center; padding: 18px;
}
.fspa-promo__backdrop {
  position: absolute; inset: 0; background: rgba(8, 32, 37, .64);
  backdrop-filter: blur(4px);
}
.fspa-promo__dialog {
  position: relative; isolation: isolate;
  width: min(100%, 510px); max-height: min(90dvh, 720px);
  overflow-y: auto; border-radius: 24px;
  background: #fbf8f4; color: #173f45;
  box-shadow: 0 30px 90px rgba(8, 32, 37, .27);
  border: 1px solid #e0e9e4; padding: clamp(25px, 5vw, 38px);
  text-align: center;
}
.fspa-promo__close {
  position: absolute; top: 12px; right: 13px;
  display: grid; place-items: center; width: 38px; height: 38px;
  border: none; border-radius: 50%; color: #086776;
  background: #e7f3ef; font-size: 26px; cursor: pointer;
}
.fspa-promo__close:hover { background: #d5ebe5; }
.fspa-promo__eyebrow { letter-spacing: .15em; font-weight: 800; font-size: 12px; color: #086776; }
.fspa-promo__icon { display: block; margin: 13px auto 7px; font-size: 38px; }
.fspa-promo__dialog h2 {
  margin: 8px 0 12px; font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(27px, 5vw, 38px); line-height: 1.2; color: #086776;
}
.fspa-promo__lead { font-size: 17px; line-height: 1.65; margin: 8px 0; }
.fspa-promo__date { display: inline-block; background: #e4f2ef; color: #086776;
  border-radius: 999px; font-weight: 700; padding: 8px 16px; margin: 13px 0 9px; font-size: 14px; }
.fspa-promo__details { font-size: 14px; line-height: 1.65; margin: 7px 0; }
.fspa-promo__notice { font-size: 13px; line-height: 1.6; color: #52696d;
  border-top: 1px solid #dce8e3; padding-top: 13px; margin: 15px 0; }
.fspa-promo__cta { display: inline-flex; align-items: center; justify-content: center;
  border-radius: 999px; background: #086776; color: white !important;
  font-weight: 800; padding: 13px 22px; text-decoration: none; margin: 5px 0 0;
}
.fspa-promo__cta:hover { background: #07515d; }
.fspa-promo__secondary { display: block; margin: 13px auto 0;
  border: none; background: transparent; color: #086776;
  text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
  font-size: 13px; }
.fspa-promo :focus-visible { outline: 3px solid #d4a373; outline-offset: 3px; }
body.fspa-promo-open { overflow: hidden; }
@media (max-width: 560px) {
  .vr-winter-offer { padding: 15px 14px; gap: 9px; }
  .fspa-promo { padding: 12px; }
  .fspa-promo__dialog { border-radius: 18px; }
}
@media (prefers-reduced-motion: no-preference) {
  .fspa-promo__dialog { animation: fspa-pop-in .24s ease both; }
  @keyframes fspa-pop-in { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }
}
