/* page-nos-vins.css — styles spécifiques à la page page-nos-vins (v17) */

/* ── INTRO APPELLATION ── */
.appellation-intro { background:#FDFAF4; padding:60px; max-width:1300px; margin:0 auto 2px; display:grid; grid-template-columns:1fr 2fr; gap:60px; align-items:center; border-bottom:1px solid rgba(107,31,42,.08); }
.appellation-label { font-family:'Montserrat',sans-serif; font-size:10px; letter-spacing:4px; text-transform:uppercase; color:var(--or); margin-bottom:10px; }
.appellation-name  { font-family:'Cormorant Garamond',serif; font-size:36px; font-weight:300; color:var(--bordeaux); }
.appellation-desc  { font-family:'Lato',sans-serif; font-size:15px; line-height:1.8; color:#5a4a3a; font-weight:300; }

/* ── GRILLE VINS ── */
#vins { padding:80px 60px 120px; background:#F5F0E8; }
.vins-header { max-width:1300px; margin:0 auto 60px; display:flex; justify-content:space-between; align-items:flex-end; }
.vins-filter { display:flex; gap:8px; flex-wrap:wrap; }
.filter-btn { font-family:'Montserrat',sans-serif; font-size:10px; letter-spacing:2px; text-transform:uppercase; padding:8px 18px; background:none; border:1px solid rgba(107,31,42,.3); color:#6B1F2A; cursor:pointer; transition:all .3s; }
.filter-btn:hover, .filter-btn.active { border-color:var(--bordeaux); color:var(--bordeaux); background:rgba(107,31,42,.06); }
.vins-grid { max-width:1300px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }

/* Carte vin — maintenant un <a> pour navigation directe vers la page dédiée */
.vin-card { position:relative; overflow:hidden; background:#111; aspect-ratio:3/4; display:block; text-decoration:none; color:inherit; }
.vin-card-bg { position:absolute; inset:0; overflow:hidden; transition:transform .7s var(--transition),filter .5s; filter:brightness(.55) saturate(.7); }
.vin-card-bg img { width:100%; height:100%; object-fit:cover; object-position:center; display:block; }
.vin-card:hover .vin-card-bg { transform:scale(1.08); filter:brightness(.4) saturate(.5); }
.vin-card-content { position:absolute; inset:0; padding:36px; display:flex; flex-direction:column; justify-content:flex-end; }
.vin-appellation  { font-family:'Montserrat',sans-serif; font-size:9px; letter-spacing:3px; text-transform:uppercase; color:#D4AF55; margin-bottom:8px; }
.vin-name         { font-family:'Cormorant Garamond',serif; font-size:28px; font-weight:300; color:var(--blanc); line-height:1.1; margin-bottom:6px; }
.vin-card-cepages { font-family:'Lato',sans-serif; font-size:12px; font-weight:300; letter-spacing:.5px; color:rgba(255,255,255,.65); font-style:italic; margin-bottom:12px; }
.vin-type-dot { width:10px; height:10px; border-radius:50%; display:inline-block; margin-right:8px; }
.vin-type { font-family:'Montserrat',sans-serif; font-size:10px; letter-spacing:2px; color:rgba(255,255,255,.85); text-transform:uppercase; display:flex; align-items:center; margin-bottom:20px; }
.vin-hover { max-height:0; overflow:hidden; transition:max-height .5s var(--transition); }
.vin-card:hover .vin-hover { max-height:200px; }
.vin-desc { font-family:'Lato',sans-serif; font-size:14px; line-height:1.6; color:rgba(255,255,255,.85); margin-bottom:16px; }
.vin-link { font-family:'Montserrat',sans-serif; font-size:10px; letter-spacing:2px; color:var(--or); text-decoration:none; text-transform:uppercase; display:inline-flex; align-items:center; gap:8px; }
.vin-link-arrow { transition:transform .3s; }
.vin-card:hover .vin-link-arrow { transform:translateX(6px); }
.vin-medal { position:absolute; top:20px; right:20px; width:48px; height:48px; background:var(--or); clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%); display:flex; align-items:center; justify-content:center; }
.vin-medal-star { color:var(--noir); font-size:18px; }

/* Filtrage : visibility + opacity pour éviter layout shift */
.vin-card { transition:opacity .3s ease, visibility .3s ease; }
.vin-card[aria-hidden="true"] { visibility:hidden; opacity:0; pointer-events:none; }

/* ════════════════════════════════════════════════
   PAGE DÉDIÉE VIN (v17) — template vin-detail
════════════════════════════════════════════════ */

/* ── HERO ── */
.vin-detail-hero {
  position: relative;
  background: #08060400;
  /* Héro pleine hauteur : la bouteille est l'élément vedette */
  min-height: clamp(620px, 90vh, 960px);
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
  background-color: #0a0704;
}
/* Grain de texture luxueux sur tout le héro */
.vin-detail-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
  opacity: .028;
  pointer-events: none;
  z-index: 10;
}
.vin-detail-hero-bg { display: none; }

/* Colonne gauche — texte */
.vin-detail-hero-left {
  position: relative;
  z-index: 2;
  padding: 60px 60px 60px 72px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  border-right: 1px solid rgba(255,255,255,.05);
  color: #ffffff;
}
/* Ligne décorative verticale gauche */
.vin-detail-hero-left::before {
  content: '';
  position: absolute;
  left: 40px;
  top: 20%;
  bottom: 20%;
  width: 1px;
  background: linear-gradient(to bottom, transparent, rgba(184,151,58,.35) 30%, rgba(184,151,58,.35) 70%, transparent);
}
/* Fil d'ariane sorti du flux */
.vin-detail-breadcrumb {
  position: absolute;
  top: 52px;
  left: 72px;
  right: 60px;
}
.vin-detail-hero-bottom {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.vin-detail-appellation-badge {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--or);
  margin-bottom: 18px;
}
.vin-detail-hero .vin-detail-h1 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(52px, 5.5vw, 84px);
  font-weight: 300;
  color: #ffffff !important;
  line-height: 1.0;
  margin-bottom: 22px;
}
.vin-detail-type-row {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.vin-detail-type-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255,255,255,.75);
  display: flex;
  align-items: center;
  gap: 8px;
}
.vin-detail-medal-badge {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--noir);
  background: var(--or);
  padding: 5px 14px;
  clip-path: polygon(6px 0%, 100% 0%, calc(100% - 6px) 100%, 0% 100%);
  white-space: nowrap;
}
.vin-detail-service-quick-item {
  font-family: 'Lato', sans-serif;
  font-size: 13px;
  font-weight: 300;
  color: rgba(255,255,255,.65);
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.vin-detail-service-quick-item strong {
  font-family: 'Montserrat', sans-serif;
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--or);
  font-weight: 500;
}

/* ── COLONNE BOUTEILLE — carte produit catalogue (v32) ── */

/* Panneau droit : fond ivoire chaud, séparé de la zone texte par une ligne dorée */
.vin-detail-hero-right {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 48px;
  background: #F4F0E6;
  border-left: 1px solid rgba(184,151,58,.2);
}

/* Vignette subtile aux bords — donne de la profondeur sans assombrir */
.vin-detail-hero-right::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 90% 90% at 50% 50%, transparent 55%, rgba(0,0,0,.07) 100%);
  pointer-events: none;
  z-index: 0;
}

/* Spotlight supprimé — inutile avec un fond clair */
.vin-detail-bottle-spotlight { display: none; }

/* Cadre produit — la carte encadrée qui contient la bouteille */
.vin-detail-bottle-wrap {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 340px;
  /* Format portrait : proportionné pour une bouteille de vin */
  aspect-ratio: 3 / 5;
  background: #FDFBF7;
  /* Encadrement fin doré — signature graphique du domaine */
  border: 1px solid rgba(184,151,58,.28);
  outline: 6px solid #F4F0E6;
  outline-offset: -7px;
  /* Ombre portée sur fond clair : élégante, non agressive */
  box-shadow:
    0 2px 4px rgba(0,0,0,.04),
    0 10px 32px rgba(0,0,0,.09),
    0 32px 72px rgba(0,0,0,.07);
  padding: 36px 28px;
  transition: box-shadow .6s cubic-bezier(.23,1,.32,1);
}

/* Légère augmentation de l'ombre au survol */
.vin-detail-hero:hover .vin-detail-bottle-wrap {
  box-shadow:
    0 2px 4px rgba(0,0,0,.05),
    0 16px 48px rgba(0,0,0,.13),
    0 48px 96px rgba(0,0,0,.10);
}

/* Trait décoratif doré en bas du cadre */
.vin-detail-bottle-wrap::after {
  content: '';
  position: absolute;
  bottom: 16px;
  left: 20%;
  right: 20%;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(184,151,58,.45), transparent);
}

/* La bouteille — propre, centrée, nette */
.vin-detail-hero-bottle {
  display: block;
  width: auto;
  height: 100%;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  /* Légère accentuation pour les photos produit */
  filter: contrast(1.02) saturate(1.03);
  transition: transform .8s cubic-bezier(.23,1,.32,1), filter .5s;
}

/* Hover : soulèvement discret de la bouteille dans son cadre */
.vin-detail-hero:hover .vin-detail-hero-bottle {
  transform: translateY(-8px);
  filter: contrast(1.03) saturate(1.05);
}

/* Variantes chromatiques du fond selon le type de vin */
.vin-detail-hero[data-type="blanc"] .vin-detail-hero-right { background: #F5F2E3; }
.vin-detail-hero[data-type="rose"]  .vin-detail-hero-right { background: #F5EDE8; }
.vin-detail-hero[data-type="rouge"] .vin-detail-hero-right { background: #F0EBE2; }

/* Reflet au sol : masqué — non pertinent sur fond clair */
.vin-detail-bottle-floor { display: none; }

/* Placeholder si pas d'image */
.vin-detail-hero-bottle-placeholder {
  width: 100%;
  max-width: 340px;
  aspect-ratio: 3 / 5;
  background: #FDFBF7;
  border: 1px solid rgba(184,151,58,.2);
}

/* ── MOBILE ── */
@media (max-width: 768px) {
  .vin-detail-hero-right {
    padding: 40px 24px 48px;
    border-left: none;
    border-top: 1px solid rgba(184,151,58,.15);
  }
  .vin-detail-bottle-wrap {
    max-width: 240px;
  }
}

/* Corps principal */
.vin-detail-body {
  background: var(--ivoire);
}

/* Description grande */
.vin-detail-desc-section {
  max-width: 1300px;
  margin: 0 auto;
  padding: 80px 60px 60px;
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 80px;
  align-items: start;
}
.vin-detail-desc-left {
  position: sticky;
  top: 100px;
}
.vin-detail-desc-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 9px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #7B3040;
  margin-bottom: 18px;
}
.vin-detail-aromes-text {
  font-family: 'Cormorant Garamond', serif;
  font-size: 22px;
  font-weight: 300;
  color: var(--bordeaux);
  line-height: 1.6;
  font-style: italic;
}
.vin-detail-description {
  font-family: 'Lato', sans-serif;
  font-size: 18px;
  line-height: 1.85;
  color: #5a4a3a;
  font-weight: 300;
  margin-bottom: 48px;
}

/* Grille technique */
.vin-detail-tech-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(107,31,42,.08);
  border: 1px solid rgba(107,31,42,.08);
  margin-bottom: 24px;
}
.vin-detail-tech-cell {
  background: #FDFAF4;
  padding: 20px 22px;
}
.vin-detail-tech-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #7B3040;
  margin-bottom: 7px;
}
.vin-detail-tech-val {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: var(--noir);
  font-weight: 300;
}

/* Élevage */
.vin-detail-elevage {
  padding: 18px 22px;
  background: rgba(107,31,42,.04);
  border-left: 2px solid var(--or);
  margin-bottom: 28px;
}
.vin-detail-elevage-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #7B3040;
  margin-bottom: 6px;
}
.vin-detail-elevage-val {
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  color: var(--noir);
  font-weight: 300;
}

/* Médaille détail */
.vin-detail-medaille {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  padding: 10px 18px;
  background: rgba(184,151,58,.08);
  border: 1px solid rgba(184,151,58,.25);
}
.vin-detail-medaille-star {
  color: var(--or);
  font-size: 16px;
}
.vin-detail-medaille-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--bordeaux);
  font-weight: 600;
}

/* Accords mets & vins — liste intégrée dans la fiche technique (v18) */
.vin-detail-accords-list {
  margin-top: 8px;
}
.vin-detail-accord-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  border-bottom: 0.5px solid rgba(107,31,42,.1);
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  font-weight: 300;
  color: #5a4a3a;
  line-height: 1.3;
}
.vin-detail-accord-item:last-child { border-bottom: none; }
.vin-detail-accord-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--or);
  flex-shrink: 0;
}

/* Navigation inter-vins */
/* Navigation inter-vins — v23 : fond bordeaux sombre pour se distinguer du footer */
.vin-detail-nav {
  background: #3a0e15;
  border-top: 2px solid var(--or);
  padding: 0;
}
.vin-detail-nav-inner {
  max-width: 1300px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: stretch;
}
.vin-detail-nav-link {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 32px 40px;
  text-decoration: none;
  transition: background .25s;
  border-right: 1px solid rgba(255,255,255,.1);
}
.vin-detail-nav-link:hover { background: rgba(0,0,0,.15); }
.vin-detail-nav-link.next { justify-content: flex-end; border-right: none; border-left: 1px solid rgba(255,255,255,.1); }
.vin-detail-nav-center {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 40px;
  text-decoration: none;
  border-left: 1px solid rgba(255,255,255,.1);
  border-right: 1px solid rgba(255,255,255,.1);
  transition: background .25s;
}
.vin-detail-nav-center:hover { background: rgba(0,0,0,.15); }
.vin-detail-nav-arrow {
  font-family: 'Montserrat', sans-serif;
  font-size: 20px;
  color: rgba(255,255,255,.45);
  transition: color .2s, transform .2s;
}
.vin-detail-nav-link:hover .vin-detail-nav-arrow,
.vin-detail-nav-center:hover .vin-detail-nav-arrow { color: var(--or); }
.vin-detail-nav-link:hover .vin-detail-nav-arrow.left { transform: translateX(-4px); }
.vin-detail-nav-link.next:hover .vin-detail-nav-arrow.right { transform: translateX(4px); }
.vin-detail-nav-label {
  font-family: 'Montserrat', sans-serif;
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  /* v28 : contraste WCAG AA */
  color: rgba(255,255,255,.82);
  margin-bottom: 4px;
}
.vin-detail-nav-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 18px;
  font-weight: 300;
  /* v23 : nom de cuvée bien visible */
  color: #ffffff;
  line-height: 1.2;
}
.vin-detail-nav-center-text {
  font-family: 'Montserrat', sans-serif;
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255,255,255,.82); /* v28 : contraste WCAG AA */
  text-align: center;
}

@media (max-width: 640px) {
  .vin-detail-cta {
    flex-direction: column;
    align-items: flex-start;
    padding: 20px 24px;
    gap: 12px;
  }
}

/* ── RESPONSIVE ── */
@media (max-width:1024px) {
  /* Grille */
  #vins { padding:60px 30px; }
  .vins-grid { grid-template-columns:1fr 1fr; }
  .vins-header { flex-direction:column; gap:24px; align-items:flex-start; }
  .appellation-intro { grid-template-columns:1fr; gap:20px; padding:40px 30px; }
  /* Détail vin */
  .vin-detail-hero { grid-template-columns: 1fr 1fr; min-height: clamp(500px, 75vh, 760px); }
  .vin-detail-hero-left { padding: 52px 44px 44px 52px; }
  .vin-detail-hero-left::before { left: 28px; }
  .vin-detail-breadcrumb { top: 48px; left: 52px; right: 44px; }
  .vin-detail-hero-bottle { height: clamp(380px, 68vh, 660px); max-width: min(240px, 52%); }
  .vin-detail-bottle-wrap { padding-bottom: 40px; }
  .vin-detail-desc-section { grid-template-columns:1fr; gap:32px; padding:50px 40px; }
  .vin-detail-desc-left { position:static; }

  .vin-detail-nav-inner { grid-template-columns:1fr 1fr; }
  .vin-detail-nav-center { display:none; }
}
@media (max-width:640px) {
  .vins-grid { grid-template-columns:1fr; }
  .vin-detail-tech-grid { grid-template-columns:1fr 1fr; }
  .vin-detail-hero { grid-template-columns:1fr; min-height:auto; }
  .vin-detail-hero-left { padding:52px 24px 36px 36px; border-right:none; border-bottom:1px solid rgba(255,255,255,.06); }
  .vin-detail-hero-left::before { display: none; }
  .vin-detail-breadcrumb { top:48px; left:36px; right:24px; }
  .vin-detail-hero-right { height: clamp(380px, 62vw, 500px); }
  .vin-detail-hero-bottle { height: clamp(300px, 56vw, 460px); max-width: min(200px, 52%); }
  .vin-detail-bottle-wrap { padding-bottom: 28px; }
  .vin-detail-desc-section { padding:36px 24px; }
  .vin-detail-nav-inner { grid-template-columns:1fr 1fr; }
  .vin-detail-nav-link { padding:24px 20px; }
}
/* fin page-nos-vins.css — v17 */
