/* HERO ZONE */
.hero-zone {
  position: relative;
  width: 100%;
  height: 880px;
  margin-bottom: 3rem;
  overflow: visible;
}

/* LOVA.WAV — position d'avant qui marchait */
.lova-wav-hero {
  position: absolute;
  width: 52vw;
  top: -80px;
  left: -2vw;
  transform: rotate(-1deg);
  z-index: 2;
}

/* BIENVENUE — sous lova.wav légèrement */
.bienvenue-img {
  position: absolute;
  width: 40vw;
  top: 330px;
  left: 4vw;
  transform: rotate(-1.5deg);
  z-index: 1;
}

/* CRÉATRICE DE RÊVES — même ligne que l'avatar, à sa droite */
.creatrice-img {
  position: absolute;
  width: 32vw;
  top: -90px;
  left: -28vw;
  transform: rotate(6deg);
  z-index: 3;
}

/* AVATAR — plus à gauche, plus grand */
.avatar-hero {
  position: absolute;
  height: 260px;
  width: auto;
  image-rendering: auto;
  top: 120px;
  left: -24vw;
  z-index: 4;
  animation: float 3s ease-in-out infinite;
  transition: filter 0.15s ease;
}

.avatar-hero:hover {
  animation: none;
  transform: scale(1.08) rotate(-1deg);
  z-index: 10;
}

/* BADGES FLOTTANTS */
.badge-flottant {
  position: absolute;
  display: block;
  transition: transform 0.15s ease;
}

.badge-flottant:hover {
  transform: scale(1.08) rotate(-1deg);
  z-index: 10;
}

.badge-flottant .badge-img {
  width: 100%;
  display: block;
}

/* PHOTOGRAPHE — réduit, décalé à gauche */
.badge-photographe {
  width: 20vw;
  top: 200px;
  left: -18vw;
  transform: rotate(-4deg);
  z-index: 5;
}

/* DEV — réduit, baissé, plus à gauche */
.badge-dev {
  width: 20vw;
  top: 360px;
  left: -18vw;
  transform: rotate(2deg);
  z-index: 5;
}

/* MUSICIENNE — plus à gauche, en dessous */
.badge-musicienne {
  width: 18vw;
  top: 320px;
  left: -28vw;
  transform: rotate(-2deg);
  z-index: 5;
}


.recent-section h2 {
  margin-bottom: 1rem;
}

.post-preview {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  padding: 0.5rem 1rem;
  width: 100%;
  box-sizing: border-box;
}

.post-date {
  font-size: 0.8rem;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--c4);
  -webkit-text-stroke: 0.5px #1a6e00;
  paint-order: stroke fill;
}

.post-title {
  font-family: var(--font-display);
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--c2);
  -webkit-text-stroke: 0.5px #8b001e;
  paint-order: stroke fill;
}

/* RÉSEAUX */
.socials-section {
  max-width: calc(100% - 440px);
}

.socials-section h2 {
  margin-bottom: 1rem;
}

.socials-row {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.nav-logo-img-full {
  height: 70px;
  width: auto;
  display: block;
}

/* COLONNE DROITE */
.right-col {
  position: absolute;
  top: 80px;
  right: 10px;
  width: 415px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  z-index: 50;
}



/* SOCIAL DOCK — bas gauche */
.social-dock {
  position: fixed;
  bottom: 150px;
  left: 70px;
  display: flex;
  flex-direction: row;
  gap: 14px;
  z-index: 150;
}

.social-dock-icon {
  width: 108px;
  height: 108px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.15s ease, filter 0.15s ease;
  text-decoration: none;
}

.social-dock-icon:nth-child(1) { background: #000; transform: rotate(-8deg); }
.social-dock-icon:nth-child(2) { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); transform: rotate(5deg); }
.social-dock-icon:nth-child(3) { background: #FF0000; transform: rotate(-3deg); }
.social-dock-icon:nth-child(4) { background: #FF5500; transform: rotate(9deg); }

.social-dock-icon svg {
  width: 54px;
  height: 54px;
}

.social-dock-icon:hover {
  transform: translateY(-8px) scale(1.15) rotate(-5deg);
  filter: drop-shadow(0 6px 12px rgba(0,0,0,0.4));
}
