/* Paris T’aime V2 — pt-lieu-story */
.pt-lieu-story__tabs{position:sticky;top:0;z-index:30;width:100%;display:flex;gap:clamp(18px,4vw,58px);overflow-x:auto;padding:17px clamp(20px,6.6vw,104px);border-top:1px solid rgba(242,235,221,.10);border-bottom:1px solid rgba(242,235,221,.10);background:rgba(3,4,6,.88);backdrop-filter:blur(18px);scrollbar-width:none}.pt-lieu-story__tabs::-webkit-scrollbar{display:none}.pt-lieu-story__tabs a{flex:0 0 auto;color:rgba(244,238,225,.60);font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.pt-lieu-story{width:min(1480px,calc(100% - clamp(32px,7vw,116px)));max-width:100%;min-width:0;display:grid;gap:clamp(30px,4.2vw,58px);margin:0 auto;padding:clamp(64px,8vw,112px) 0 clamp(76px,9vw,130px);overflow:hidden}.pt-lieu-story *{box-sizing:border-box}
.pt-lieu-story__eyebrow,.pt-lieu-video-rail__eyebrow{margin:0 0 13px;color:#661919;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.pt-lieu-story__opening{display:grid;grid-template-columns:minmax(0,.92fr) minmax(320px,.62fr);gap:clamp(22px,4vw,50px);align-items:stretch}
.pt-lieu-story__copy,.pt-lieu-story__map-card,.pt-lieu-story__collection,.pt-lieu-story__gallery,.pt-lieu-story__trace,.pt-lieu-story__related{min-width:0;border:1px solid rgba(242,235,221,.13);border-radius:3px;background:radial-gradient(circle at 18% 0%,rgba(102,25,25,.16),transparent 19rem),linear-gradient(145deg,rgba(8,13,22,.96),rgba(3,4,6,.98))}
.pt-lieu-story__copy,.pt-lieu-story__map-card{min-height:430px;display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,52px);box-shadow:0 32px 90px rgba(0,0,0,.42)}
.pt-lieu-story__copy h2,.pt-lieu-story__collection h2,.pt-lieu-story__gallery h2,.pt-lieu-story__trace h2,.pt-lieu-story__related h2{margin:0;color:#f4eee1;font-family:var(--pt-serif,Georgia,serif);font-size:clamp(2.6rem,5vw,6.1rem);font-weight:850;letter-spacing:-.06em;line-height:.88;overflow-wrap:anywhere}
.pt-lieu-story__copy p,.pt-lieu-story__trace p,.pt-lieu-story__collection p,.pt-lieu-story__map-card p{max-width:920px;color:rgba(244,238,225,.62);font-size:clamp(15px,1.08vw,17px);line-height:1.72}.pt-lieu-story__copy p{margin:24px 0 0}
.pt-lieu-story__copy a,.pt-lieu-story__map-link{width:fit-content;display:inline-flex;align-items:center;gap:10px;margin-top:28px;color:#f4eee1;font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.pt-lieu-story__copy a span{width:26px;height:26px;display:grid;place-items:center;border-radius:3px;background:#661919}
.pt-lieu-story__map-card h3{margin:0;color:#f4eee1;font-family:var(--pt-serif,Georgia,serif);font-size:clamp(2.2rem,4vw,5rem);font-weight:850;letter-spacing:-.06em;line-height:.9;overflow-wrap:anywhere}
.pt-lieu-story__map-points{position:relative;min-height:160px;margin-top:26px;border:1px solid rgba(242,235,221,.10);border-radius:3px;overflow:hidden;background:linear-gradient(90deg,rgba(102,25,25,.18) 1px,transparent 1px),linear-gradient(180deg,rgba(102,25,25,.12) 1px,transparent 1px),rgba(3,4,6,.42);background-size:44px 44px}.pt-lieu-story__map-points span{position:absolute;width:11px;height:11px;border-radius:50%;background:#661919;box-shadow:0 0 0 7px rgba(102,25,25,.14)}.pt-lieu-story__map-points span:nth-child(1){left:18%;top:24%}.pt-lieu-story__map-points span:nth-child(2){left:58%;top:34%}.pt-lieu-story__map-points span:nth-child(3){left:36%;top:66%}
.pt-lieu-story__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.pt-lieu-story__stats article{min-height:120px;padding:20px;border:1px solid rgba(242,235,221,.13);border-radius:3px;background:linear-gradient(145deg,rgba(8,13,22,.92),rgba(3,4,6,.98))}.pt-lieu-story__stats strong{display:block;color:#f4eee1;font-family:var(--pt-serif,Georgia,serif);font-size:clamp(1.45rem,1.85vw,2.35rem);font-weight:850;letter-spacing:-.05em;line-height:.96}.pt-lieu-story__stats em{display:block;margin-top:10px;color:rgba(244,238,225,.62);font-size:12px;font-style:normal;line-height:1.35}
.pt-lieu-story__collection,.pt-lieu-story__gallery,.pt-lieu-story__trace,.pt-lieu-story__related{padding:clamp(28px,4vw,52px)}.pt-lieu-story__collection header p:not(.pt-lieu-story__eyebrow),.pt-lieu-story__trace p:not(.pt-lieu-story__eyebrow){max-width:920px;margin:24px 0 0}
.pt-lieu-story__rail{display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding:26px 0 12px;scrollbar-width:thin;scrollbar-color:#661919 rgba(255,255,255,.08);-webkit-overflow-scrolling:touch}.pt-lieu-story__rail::-webkit-scrollbar{height:8px}.pt-lieu-story__rail::-webkit-scrollbar-thumb{background:#661919;border-radius:3px}
.pt-lieu-story__universe-card{flex:0 0 clamp(280px,30vw,420px);min-width:0;scroll-snap-align:start;overflow:hidden;border:1px solid rgba(242,235,221,.12);border-radius:3px;background:rgba(3,4,6,.38)}.pt-lieu-story__universe-media{display:block;aspect-ratio:16/9;overflow:hidden;background:#080d16}.pt-lieu-story__universe-media img{width:100%;height:100%;object-fit:cover}.pt-lieu-story__universe-body{display:block;padding:18px}.pt-lieu-story__universe-body small{display:block;color:#661919;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.pt-lieu-story__universe-body strong{display:block;margin-top:10px;color:#f4eee1;font-family:var(--pt-serif,Georgia,serif);font-size:clamp(1.55rem,2.2vw,2.8rem);font-weight:850;letter-spacing:-.05em;line-height:.96}.pt-lieu-story__universe-body em{display:block;margin-top:9px;color:rgba(244,238,225,.62);font-size:12px;font-style:normal;line-height:1.45}
.pt-lieu-story__face-card{flex:0 0 clamp(220px,22vw,310px);min-height:220px;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;scroll-snap-align:start;padding:14px;border:1px solid rgba(242,235,221,.11);border-radius:3px;background:rgba(3,4,6,.38)}.pt-lieu-story__face-media{width:72px;height:72px;display:grid;place-items:center;overflow:hidden;border-radius:3px;background:#661919;color:#fff8ec;font-size:13px;font-weight:900}.pt-lieu-story__face-media img{width:100%;height:100%;object-fit:cover}.pt-lieu-story__face-card strong{display:block;color:#f4eee1;font-family:var(--pt-serif,Georgia,serif);font-size:1.6rem;letter-spacing:-.045em;line-height:.98}.pt-lieu-story__face-card em{display:block;margin-top:7px;color:rgba(244,238,225,.62);font-size:12px;font-style:normal}
.pt-lieu-story__gallery-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr;gap:10px}.pt-lieu-story__gallery-grid figure{margin:0;aspect-ratio:1/1;overflow:hidden;border-radius:3px;background:#080d16}.pt-lieu-story__gallery-grid figure:first-child{grid-row:span 2;aspect-ratio:auto}.pt-lieu-story__gallery-grid img{width:100%;height:100%;object-fit:cover}
.pt-lieu-story__full-rail{width:100%;max-width:100%;min-width:0;overflow:hidden}
.pt-lieu-story__final{position:relative;width:min(1480px,calc(100% - clamp(32px,7vw,116px)));isolation:isolate;overflow:hidden;margin:0 auto clamp(70px,9vw,130px);padding:clamp(58px,9vw,124px);border:1px solid rgba(102,25,25,.42);border-radius:3px;background:radial-gradient(circle at 18% 20%,rgba(102,25,25,.24),transparent 28rem),linear-gradient(135deg,#120814 0%,#080d16 48%,#05070c 100%);box-shadow:0 32px 90px rgba(0,0,0,.42)}.pt-lieu-story__final blockquote{width:min(980px,100%);margin:0}.pt-lieu-story__final blockquote>span{display:block;height:34px;color:#661919;font-family:Georgia,serif;font-size:88px;line-height:.8}.pt-lieu-story__final p{margin:0;color:#f4eee1;font-family:var(--pt-serif,Georgia,serif);font-size:clamp(2.5rem,6.2vw,7.2rem);font-weight:850;letter-spacing:-.065em;line-height:.9;text-wrap:balance}.pt-lieu-story__final cite{display:block;width:min(720px,100%);margin-top:24px;color:rgba(244,238,225,.78);font-size:clamp(15px,1.2vw,18px);font-style:normal;line-height:1.65}.pt-lieu-story__empty{color:rgba(244,238,225,.62)}
@media(max-width:1020px){.pt-lieu-story__opening{grid-template-columns:1fr}}@media(max-width:720px){.pt-lieu-story{width:calc(100% - 28px);gap:30px;padding-top:46px;padding-bottom:76px}.pt-lieu-story__tabs{padding:15px 18px}.pt-lieu-story__copy,.pt-lieu-story__map-card{min-height:auto;padding:26px 20px}.pt-lieu-story__collection,.pt-lieu-story__gallery,.pt-lieu-story__trace{padding:24px 18px}.pt-lieu-story__copy h2,.pt-lieu-story__collection h2,.pt-lieu-story__gallery h2,.pt-lieu-story__trace h2,.pt-lieu-story__final p{font-size:clamp(2.15rem,10.5vw,3.75rem);line-height:.9}.pt-lieu-story__stats{grid-template-columns:1fr}.pt-lieu-story__universe-card{flex-basis:84vw}.pt-lieu-story__face-card{flex-basis:78vw;min-height:185px}.pt-lieu-story__gallery-grid{grid-template-columns:1fr 1fr}.pt-lieu-story__gallery-grid figure,.pt-lieu-story__gallery-grid figure:first-child{grid-row:auto;aspect-ratio:1/1}.pt-lieu-story__final{width:calc(100% - 28px);padding:38px 22px}}


/* =========================================================
   Lieu detail — section visages organisée
   Remplace l’ancienne logique “petite vignette dans grande carte”.
   ========================================================= */

#pt-lieu-faces {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden !important;
}

#pt-lieu-faces header {
  width: min(960px, 100%);
  max-width: 100%;
  min-width: 0;
}

#pt-lieu-faces h2 {
  max-width: 920px !important;
  font-size: clamp(2.35rem, 4.2vw, 5.1rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  overflow-wrap: anywhere !important;
  text-wrap: balance;
}

.pt-lieu-story__faces-title-context {
  width: fit-content;
  max-width: 100%;
  margin: 14px 0 0 !important;
  padding: 7px 10px;
  border: 1px solid rgba(102, 25, 25, .42);
  border-radius: 3px;
  background: rgba(102, 25, 25, .16);
  color: rgba(244, 238, 225, .78) !important;
  font-family: var(--pt-sans, Inter, system-ui, sans-serif);
  font-size: 11px !important;
  font-weight: 900;
  letter-spacing: .1em;
  line-height: 1.25 !important;
  text-transform: uppercase;
}

#pt-lieu-faces .pt-lieu-story__rail {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: flex !important;
  gap: 16px !important;
  align-items: stretch !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  padding: 26px 0 14px !important;
  scrollbar-width: thin;
  scrollbar-color: #661919 rgba(255, 255, 255, .08);
  -webkit-overflow-scrolling: touch;
}

#pt-lieu-faces .pt-lieu-story__face-card {
  flex: 0 0 clamp(190px, 16vw, 250px) !important;
  width: clamp(190px, 16vw, 250px) !important;
  min-width: 190px !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  gap: 0 !important;
  justify-content: initial !important;
  align-content: start !important;
  scroll-snap-align: start !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid rgba(242, 235, 221, .12) !important;
  border-radius: 3px !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(102, 25, 25, .12), transparent 14rem),
    linear-gradient(145deg, rgba(8, 13, 22, .94), rgba(3, 4, 6, .98)) !important;
}

#pt-lieu-faces .pt-lieu-story__face-media {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 4 !important;
  display: block !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  background: #080d16 !important;
}

#pt-lieu-faces .pt-lieu-story__face-media img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
}

#pt-lieu-faces .pt-lieu-story__face-card > span:last-child {
  min-width: 0 !important;
  display: block !important;
  padding: 14px !important;
}

#pt-lieu-faces .pt-lieu-story__face-card strong {
  display: block !important;
  max-width: 100% !important;
  color: #f4eee1 !important;
  font-family: var(--pt-serif, Georgia, serif) !important;
  font-size: clamp(1.35rem, 1.55vw, 1.85rem) !important;
  letter-spacing: -.045em !important;
  line-height: .96 !important;
  overflow-wrap: anywhere !important;
}

#pt-lieu-faces .pt-lieu-story__face-card em {
  display: -webkit-box !important;
  max-width: 100% !important;
  margin-top: 8px !important;
  overflow: hidden !important;
  color: rgba(244, 238, 225, .62) !important;
  font-family: var(--pt-sans, Inter, system-ui, sans-serif) !important;
  font-size: 12px !important;
  font-style: normal !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media (max-width: 720px) {
  #pt-lieu-faces h2 {
    font-size: clamp(2.15rem, 10.5vw, 3.75rem) !important;
  }

  #pt-lieu-faces .pt-lieu-story__rail {
    gap: 12px !important;
    padding-top: 20px !important;
  }

  #pt-lieu-faces .pt-lieu-story__face-card {
    flex-basis: 62vw !important;
    width: 62vw !important;
    min-width: 0 !important;
  }
}

@media (max-width: 420px) {
  #pt-lieu-faces .pt-lieu-story__face-card {
    flex-basis: 72vw !important;
    width: 72vw !important;
  }
}

