/* ── FONTS ── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=DM+Sans:wght@300;400;500&display=swap');

/* ── RESET / BASE ── */
html { scroll-behavior: smooth; }
body { overflow-x: hidden; font-family: 'DM Sans', system-ui, sans-serif; }

/* ── HERO BACKGROUND ── */
.hero-bg {
  background-image:
    linear-gradient(to right, rgba(45,31,36,.52) 0%, rgba(45,31,36,.20) 55%, rgba(45,31,36,.05) 100%),
    url('../img/hero.png');
  background-size: cover;
  background-position: center;
}

/* ── WHAT AWAITS BACKGROUND ── */
.what-awaits-bg {
  background-image:
    linear-gradient(to bottom, rgba(251,240,244,.92), rgba(251,240,244,.88)),
    url('../img/what-awaits-bg.png');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

/* ── PETAL TEXTURE ── */
.bg-petal-texture {
  background:
    radial-gradient(circle at 15% 80%, rgba(228,180,196,.22) 0%, transparent 50%),
    radial-gradient(circle at 85% 20%, rgba(201,168,117,.12) 0%, transparent 50%),
    #FBF0F4;
}

/* ── SHIMMER CTA ── */
@keyframes shimmer {
  0%   { background-position: -200% center; }
  100% { background-position:  200% center; }
}
.btn-cta {
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(105deg, transparent 40%, rgba(255,255,255,.22) 50%, transparent 60%);
  background-size: 200% auto;
  animation: shimmer 10s linear infinite;
  transition: transform .25s ease, box-shadow .25s ease;
}
.btn-cta:hover { transform: translateY(-2px); box-shadow: 0 8px 28px rgba(156,79,104,.35); }
.btn-cta:focus-visible { outline: 3px solid #C9A875; outline-offset: 4px; }

/* ── NAVBAR ── */
.nav-scrolled {
  background: rgba(253,246,239,.96) !important;
  backdrop-filter: blur(8px);
  box-shadow: 0 1px 0 rgba(196,116,140,.12);
}

/* ── GALLERY ── */
.gallery-img {
  transition: transform .4s ease, box-shadow .4s ease;
  cursor: pointer;
}
.gallery-img:hover {
  transform: scale(1.04);
  box-shadow: 0 12px 40px rgba(45,31,36,.18);
}


/* ── SCROLL REVEAL ── */
.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .7s ease, transform .7s ease;
}
.reveal.visible {
  opacity: 1;
  transform: none;
}

/* ── STICKY CTA (mobile only) ── */
@media (max-width: 767px) {
  .sticky-cta {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    z-index: 50;
    padding: .75rem 1rem;
    background: rgba(253,246,239,.96);
    backdrop-filter: blur(8px);
    border-top: 1px solid #E8B4C4;
  }
}

/* ── WHAT AWAITS — усиленный фон ── */
.what-awaits-bg-strong {
  background-image:
    linear-gradient(to bottom, rgba(244,220,228,.78), rgba(244,220,228,.72)),
    url('../img/what-awaits-bg.png');
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  background-color: #F4DCE4;
}
