/* price-info.css — grand bandeau « plus on est nombreux, moins le prix par personne est élevé » */
.price-info { display: grid; grid-template-columns: 1.4fr 1fr; gap: 22px; align-items: center; margin: 0 0 18px; padding: 22px 24px;
    background: linear-gradient(135deg, #fff, var(--cream)); border: 2px solid var(--red); border-left-width: 8px; border-radius: 4px; box-shadow: 0 4px 14px rgba(0, 0, 0, .08); }
.pi-tag { display: inline-block; margin-bottom: 8px; padding: 2px 14px; background: var(--red); color: #fff; font-size: 12px; font-weight: 900; letter-spacing: .12em; border-radius: 2px; }
.pi-title { margin: 0 0 10px; font-size: 24px; font-weight: 900; line-height: 1.45; color: #222; }
.pi-title em { font-style: normal; color: var(--red); background: linear-gradient(transparent 62%, var(--yellow) 62%); }
.pi-text { margin: 0 0 8px; font-size: 14px; line-height: 1.95; color: #444; }
.pi-note { margin: 0 0 14px; font-size: 12px; line-height: 1.8; color: #777; }
.pi-cta { display: inline-block; padding: 12px 24px; background: var(--red); color: #fff; border-bottom: 4px solid var(--red-dark); border-radius: 3px; font-size: 14px; font-weight: 900; text-decoration: none; }
.pi-cta:hover { background: var(--red-hot); }
.pi-cta:active { transform: translateY(2px); border-bottom-width: 2px; }

/* Schéma : le prix par personne baisse quand le groupe grandit (image seulement) */
.pi-chart { padding: 14px 14px 10px; background: #fff; border: 1px solid var(--line); border-radius: 4px; }
.pi-chart-title { margin: 0 0 8px; text-align: center; font-size: 12px; font-weight: 900; color: #555; }
.pi-bars { display: flex; align-items: flex-end; justify-content: space-around; gap: 8px; height: 130px; border-bottom: 2px solid #ccc; }
.pi-bar { flex: 1; max-width: 54px; border-radius: 3px 3px 0 0; background: linear-gradient(180deg, var(--red), var(--red-dark)); }
.pi-bar:nth-child(2) { background: linear-gradient(180deg, var(--orange), #d9780f); }
.pi-bar:nth-child(3) { background: linear-gradient(180deg, #4fbf7a, var(--green)); }
.pi-bar:nth-child(4) { background: linear-gradient(180deg, #2fb86a, #087a35); }
.pi-labels { display: flex; justify-content: space-around; gap: 8px; margin-top: 6px; font-size: 12px; font-weight: 900; color: #444; }
.pi-labels span { flex: 1; max-width: 54px; text-align: center; }
.pi-foot { margin: 8px 0 0; text-align: center; font-size: 10.5px; color: #888; }

@media (max-width: 720px) {
    .price-info { grid-template-columns: 1fr; padding: 18px 16px; }
    .pi-title { font-size: 19px; }
    .pi-cta { display: block; text-align: center; }
}