/* =========================================================
   Fantastico — Home (front-page) styles
   Images are referenced relative to this file: ../images/
   ========================================================= */

/* ---------- HERO ---------- */
.fc-hero{
  position: relative;
  overflow: hidden;
  min-height: 78vh;
  display: flex;
  align-items: center;
  background: #3b171c;
}
.fc-hero-bg{
  position: absolute; inset: 0;
  background-image: url(../images/hero-evo.webp);
  background-size: contain;
  background-position: right center;
  background-repeat: no-repeat;
}
.fc-hero-overlay{
  position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(60,23,31,.92) 0%, rgba(60,23,31,.55) 34%, rgba(60,23,31,0) 62%);
}
.fc-hero-in{
  position: relative; z-index: 2;
  width: 100%;
  max-width: 1180px;
  margin-inline: auto;
  padding: clamp(60px,9vw,110px) 26px;
}
.fc-hero-text{ max-width: 560px; }
.fc-hero .fc-hero-text h1{ color: var(--wp--preset--color--cream); line-height: 1.05; }
.fc-hero-sub{
  margin-top: 22px;
  max-width: 440px;
  color: rgba(255,250,240,.86);
  font-size: 1.08rem;
}
.fc-hero-text .wp-block-buttons{ margin-top: 34px; }

/* cream button variant (Enquire Now) */
.fc-btn-cream .wp-block-button__link,
.fc-btn-cream .wp-element-button{
  background-color: var(--wp--preset--color--header-cream) !important;
  color: var(--wp--preset--color--wine) !important;
  border-color: var(--wp--preset--color--header-cream) !important;
}
.fc-btn-cream .wp-block-button__link:hover,
.fc-btn-cream .wp-element-button:hover{
  background-color: #ffffff !important;
  border-color: #ffffff !important;
}

/* ---------- OUR STORY ---------- */
.fc-story{ padding-top: clamp(64px,9vw,120px); padding-bottom: clamp(64px,9vw,120px); }
.fc-story .fc-quote{
  font-family: var(--wp--preset--font-family--cormorant);
  font-style: italic;
  font-size: 1.22rem;
  line-height: 1.5;
  color: var(--wp--preset--color--muted);
}
.fc-story h2{ color: var(--wp--preset--color--wine); }
.fc-story .wp-block-buttons{ margin-top: 30px; }
/* the bottle slot (animation start) */
.fc-story-bottle{
  height: clamp(500px, 80vh, 720px);
  min-height: 480px;
}

/* ---------- FLYING BOTTLE ---------- */
/* Outer = scroll-driven position + size. Inner = entrance slide + dock fade. */
.fc-fly{
  position: fixed;
  top: 0; left: 0;
  z-index: 30;
  pointer-events: none;
  will-change: transform;
  opacity: 0;
}
.fc-fly-inner{
  width: 100%;
  height: 100%;
  background-image: url(../images/bottle.webp);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transform: translateX(120px);
  opacity: 0;
  transition: transform .9s cubic-bezier(.22,.61,.36,1), opacity .8s ease;
}
.fc-fly-inner.is-in{
  transform: translateX(0);
  opacity: 1;
}

/* ---------- FEATURED WINE COLLECTION ---------- */
.fc-featured{ padding-top: clamp(64px,9vw,120px); padding-bottom: clamp(64px,9vw,120px); }
.fc-featured h2{ color: var(--wp--preset--color--cream); }
.fc-featured .fc-intro{ color: rgba(255,250,240,.72); margin-top: 16px; }
.fc-cards{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 46px;
}
.fc-card{
  background: var(--wp--preset--color--cream);
  border: 1px solid rgba(92,34,53,.15);
  padding: 26px 22px 28px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: transform .3s, box-shadow .3s, border-color .3s;
  text-decoration: none;
}
.fc-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 24px 44px rgba(0,0,0,.26);
  border-color: rgba(184,147,58,.5);
}
.fc-card-img{
  position: relative;
  width: 100%;
  height: 300px;
  margin-bottom: 18px;
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
}
.fc-img-chiancaia{ background-image: url(../images/chiancaia.webp); }
.fc-img-topparello{ background-image: url(../images/topparello.webp); }
/* Morettino card: red wordmark always visible, bottle fades in on dock */
.fc-dock-bg, .fc-dock-bottle{
  position: absolute; inset: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: opacity .2s linear;
}
.fc-dock-bg{ background-image: url(../images/morbg.webp); opacity: 1; }
.fc-dock-bottle{ background-image: url(../images/bottle.webp); opacity: 0; background-size: auto 82%; }
.fc-anchor-featured{ position: absolute; inset: 0; pointer-events: none; }
.fc-card h3{
  font-family: var(--wp--preset--font-family--cormorant);
  font-weight: 500;
  font-size: 1.55rem;
  color: var(--wp--preset--color--wine);
  margin: 0 0 2px;
}
.fc-region{
  font-size: .82rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--wp--preset--color--muted);
}
.fc-featured .wp-block-buttons{ justify-content: center; margin-top: 42px; }

/* ---------- SPLIT SECTIONS (oil / travel) ---------- */
.fc-oil, .fc-travel{ padding-top: clamp(64px,9vw,120px); padding-bottom: clamp(64px,9vw,120px); }

/* Editable photo (Image block); shows a placeholder until a photo is added */
.fc-photo{ margin: 0; }
.fc-photo img{ width: 100%; height: auto; display: block; }
.fc-photo:empty{
  aspect-ratio: 4/3;
  position: relative;
  background:
    radial-gradient(120% 80% at 30% 20%, rgba(184,147,58,.22), transparent 60%),
    linear-gradient(135deg, #efe6d4, #e4d6bd);
}
.fc-photo:empty::after{
  content: "add photo";
  position: absolute; right: 12px; bottom: 10px;
  font-size: .6rem; letter-spacing: .18em; text-transform: uppercase;
  color: rgba(26,26,26,.32);
}
.fc-badge{
  display: inline-block;
  font-family: var(--wp--preset--font-family--jost);
  font-size: .7rem; font-weight: 500;
  letter-spacing: .2em; text-transform: uppercase;
  color: var(--wp--preset--color--gold);
  border: 1px solid rgba(184,147,58,.5);
  border-radius: 40px;
  padding: 7px 18px;
}
.fc-muted-link{ font-size: .95rem; color: var(--wp--preset--color--muted); }
.fc-muted-link a{ color: var(--wp--preset--color--wine); border-bottom: 1px solid var(--wp--preset--color--gold); }

/* ---------- GET IN TOUCH ---------- */
.fc-cta{
  background: var(--wp--preset--color--wine-deep);
  text-align: center;
  padding-top: clamp(64px,9vw,120px);
  padding-bottom: clamp(64px,9vw,120px);
}
.fc-cta h2{ color: var(--wp--preset--color--cream); max-width: 680px; margin-inline: auto; }
.fc-cta p{ color: rgba(255,250,240,.8); max-width: 620px; margin: 18px auto 0; }
.fc-cta .wp-block-buttons{ justify-content: center; margin-top: 30px; }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 860px){
  .fc-hero{ min-height: 70vh; }
  .fc-hero-bg{ background-size: cover; background-position: right center; }
  .fc-hero-overlay{ background: linear-gradient(90deg, rgba(59,23,28,.92) 0%, rgba(59,23,28,.6) 50%, rgba(59,23,28,.2) 100%); }
  .fc-cards{ grid-template-columns: 1fr; gap: 20px; }
  .fc-card--mor{ order: -1; }
  .fc-story-bottle{ height: clamp(230px, 38vh, 330px); min-height: 0; }
}
