/* ANTIK HOUSE 1880 — V24 PREMIUM FLOW
   Purpose: precise contrast, curated motion, no chaotic scroll choreography. */

/* Hard reset old reveal layers from V21/V23. Content must stay stable. */
html body .reveal,
html body .wow-reveal,
html body .v23-reveal{
  opacity:1!important;
  transform:none!important;
  translate:none!important;
  animation:none!important;
  transition:none!important;
  will-change:auto!important;
}
html body .v23-drift-left,
html body .v23-drift-right{animation:none!important;transform:none!important}

/* Booking lead: definitive contrast repair, loaded last with unique filename. */
html body .hero .booking-card > p,
html body .hero .booking-card > p:first-of-type,
html body .hero .booking-card p:first-of-type{
  color:#6a6054!important;
  opacity:1!important;
  -webkit-text-fill-color:#6a6054!important;
  text-shadow:none!important;
  mix-blend-mode:normal!important;
  filter:none!important;
  font-weight:550!important;
  line-height:1.65!important;
  letter-spacing:-.004em!important;
  position:relative!important;
  z-index:5!important;
}
html body .hero .booking-card h3{
  color:#231e18!important;
  -webkit-text-fill-color:#231e18!important;
  position:relative!important;
  z-index:5!important;
}
html body .hero .booking-card{isolation:isolate!important;overflow:hidden!important}
html body .hero .booking-card:before,
html body .hero .booking-card:after{z-index:0!important;pointer-events:none!important}
html body .hero .booking-card > *{position:relative;z-index:3}
html body .hero .booking-card .booking-accent-rail{
  z-index:7!important;height:5px!important;
  background:linear-gradient(90deg,#63d6ca 0%,#e3c46d 48%,#ef858b 100%)!important;
  box-shadow:0 0 18px rgba(227,196,109,.22)!important;
}

/* Curated motion: only section-level anchors, never every small object. */
.v24-motion-ready .v24-reveal{
  opacity:0;
  transform:translate3d(0,24px,0);
  transition:opacity .72s cubic-bezier(.22,.61,.21,1),transform .82s cubic-bezier(.22,.61,.21,1);
  transition-delay:var(--v24-delay,0ms);
  will-change:opacity,transform;
}
.v24-motion-ready .v24-reveal.v24-left{transform:translate3d(-30px,0,0)}
.v24-motion-ready .v24-reveal.v24-right{transform:translate3d(30px,0,0)}
.v24-motion-ready .v24-reveal.v24-up{transform:translate3d(0,24px,0)}
.v24-motion-ready .v24-reveal.v24-in{opacity:1;transform:none}

/* Hero entrance is balanced: copy from left, card from right. */
.v24-motion-ready .hero-copy.v24-reveal{transition-duration:.92s}
.v24-motion-ready .booking-card.v24-reveal{transition-duration:1s}

/* Editorial line only on selected major headings. */
.v24-heading-line{position:relative}
.v24-heading-line:after{
  content:"";display:block;width:0;height:1px;margin-top:13px;
  background:linear-gradient(90deg,var(--v21-bronze,#93692a),rgba(147,105,42,0));
  transition:width .95s cubic-bezier(.22,.61,.21,1) .16s;
}
.v24-heading-line.v24-in:after{width:min(116px,36%)}

/* Card groups receive a tiny staggered lift, no side-to-side chaos. */
.v24-card-stagger > *{
  opacity:0;transform:translateY(16px);
  transition:opacity .58s ease,transform .68s cubic-bezier(.22,.61,.21,1);
  transition-delay:var(--v24-card-delay,0ms);
}
.v24-card-stagger.v24-cards-in > *{opacity:1;transform:none}

/* Premium micro-interactions stay subtle. */
.hero .hero-location-proof div,
.privilege-card,.room-card,.gallery-item,.review-card,.faq-item,.map-card{
  transition:transform .32s cubic-bezier(.22,.61,.21,1),box-shadow .32s ease,border-color .32s ease!important;
}
.hero .hero-location-proof div:hover,
.privilege-card:hover,.gallery-item:hover,.review-card:hover,.faq-item:hover,.map-card:hover{
  transform:translateY(-3px)!important;
}

/* Real sun-like glow on the one place where it adds meaning. */
.summer-benefit.sun .summer-benefit-icon{
  animation:v24-sun 4.8s ease-in-out infinite;
  transform-origin:center;
}
@keyframes v24-sun{
  0%,100%{filter:drop-shadow(0 0 0 rgba(255,211,105,0));transform:scale(1)}
  50%{filter:drop-shadow(0 0 15px rgba(255,211,105,.55));transform:scale(1.045)}
}

/* One restrained continuous motion: booking card breathes by 3px only. */
@media(min-width:981px){
  .hero .booking-card{animation:v24-card-breathe 8.5s ease-in-out infinite!important}
  @keyframes v24-card-breathe{0%,100%{translate:0 0}50%{translate:0 -3px}}
}

@media(max-width:650px){
  html body .hero .booking-card > p{font-size:14px!important;line-height:1.58!important;max-width:100%!important}
  .v24-motion-ready .v24-reveal.v24-left,
  .v24-motion-ready .v24-reveal.v24-right{transform:translate3d(0,18px,0)}
}

@media(prefers-reduced-motion:reduce){
  .v24-motion-ready .v24-reveal,.v24-card-stagger>*{opacity:1!important;transform:none!important;transition:none!important}
  .summer-benefit.sun .summer-benefit-icon,.hero .booking-card{animation:none!important}
}
