/* Conteneur Principal */
.contact-container {
  display: flex;
  padding: 8rem 4vw 4rem;
  min-height: 100vh;
  align-items: start;
  background-image: 
    linear-gradient(
    to left,
    rgba(5, 3, 8, 0.85) 0%,
    rgba(5, 3, 8, 0.4) 10%,
    transparent 25% 100%
  ),
    url('assets/contact-bg.webp');
}

/* Colonne Image (Gauche) */
.contact-image-col {
  flex: 1;
}

.image-frame {
  max-height: 80vh;
  aspect-ratio: 3/5;
  position: relative;
  border-radius: 20px;
  padding: 1rem;
  box-shadow: 
    0 20px 60px rgba(0, 0, 0, 0.6),
    inset 0 1px 0 rgba(246, 229, 176, 0.2);
  transition: transform 0.4s ease;
  margin: auto;
}

.image-frame:hover {
  transform: scale(1.02);
}

.frame-inner {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

.frame-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Colonne Texte (Droite) */
.contact-text-col {
  flex: 2;
}

.contact-text-col .panel-frame {
  max-width: unset;
  margin-left: unset;
  margin-bottom: 2rem;
  backdrop-filter: blur(30px) saturate(1.6) grayscale(0.4) brightness(0.85);
  background: rgba(58, 22, 8, 0.33);
}

/* Responsive */
@media (max-width: 1920px) {
  .image-frame {
    max-height: 70vh;
  }
}

@media (max-width: 1024px) {
  .contact-container {
    grid-template-columns: 1fr;
    gap: 3rem;
    padding: 6rem 2vw 3rem;
  }
  
  .image-frame {
    max-width: 400px;
  }
}

@media (max-width: 768px) {
  .contact-panel {
    padding: 1.5rem;
  }
  
  .contact-panel h2 {
    font-size: 1.5rem;
  }
  
  .nav-links {
    gap: 1.5rem;
  }
}
