.joli-cases{padding:80px 0;background:linear-gradient(150deg,#f8f4f0,#f7f0fa 60%,#faf7f4);color:var(--ink,#3d3743)}
.joli-cases *{box-sizing:border-box}
.joli-cases__header{text-align:center;max-width:760px;margin:0 auto 40px}
.joli-cases__eyebrow{display:block;font-family:var(--font-lora,serif);font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:#9a6aac;margin-bottom:14px}
.joli-cases__header h2{font-family:var(--font-serif,serif);font-size:clamp(1.4rem,3vw,2rem);font-weight:600;line-height:1.6;margin:0 0 18px}
.joli-cases__header p{font-size:.88rem;line-height:1.9;color:var(--ink-mid,#655d6b);margin:0}
.joli-cases__header .joli-cases__intro-note{font-size:.78rem;margin:12px auto 0;max-width:660px}
.joli-cases__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1000px;margin:0 auto}
.joli-case{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(202,165,203,.24);border-radius:20px;overflow:hidden;box-shadow:0 6px 28px rgba(61,55,67,.045)}
.joli-case__heading{display:flex;gap:16px;align-items:center;padding:24px}
.joli-case__number{font-family:var(--font-lora,serif);font-size:2.2rem;line-height:1;color:#d6bfdc;font-style:italic}
.joli-case__category{display:block;font-size:.68rem;letter-spacing:.1em;color:#9665a5;margin-bottom:5px}
.joli-case h3{font-family:var(--font-serif,serif);font-size:1.04rem;font-weight:600;line-height:1.6;margin:0}
.joli-case__patient{font-size:.75rem;color:var(--ink-mid,#655d6b);margin:5px 0 0}
.joli-case figure{margin:0;background:#161616}
.joli-case figure img{display:block;width:100%;height:auto;object-fit:contain}
.joli-case figcaption{text-align:center;color:#fff;background:#28232b;padding:10px 14px;font-size:.76rem;letter-spacing:.05em;line-height:1.6}
.joli-case__details{padding:24px 24px 0;margin:0;font-size:.78rem;line-height:1.85;overflow-wrap:anywhere}
.joli-case__details>div{margin:0 0 13px}
.joli-case__details dt{font-weight:600;color:#896194;margin:0 0 3px}
.joli-case__details dd{margin:0;color:var(--ink-mid,#655d6b)}
.joli-case__individual-note{font-size:.72rem;line-height:1.7;padding:0 24px;color:var(--ink-mid,#655d6b);margin:0 0 18px}
.joli-case__source{margin:auto 24px 24px;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:14px;border-top:1px solid #eee4f0;color:#896194;font-size:.78rem;text-decoration:none;line-height:1.6}
.joli-case__source:hover{text-decoration:underline}
.joli-cases__footer{max-width:800px;margin:30px auto 0;text-align:center}
.joli-cases__footer p{font-size:.74rem;color:var(--ink-mid,#655d6b);line-height:1.9;margin:0 0 10px;text-align:left}
.joli-cases__cta{display:flex;align-items:center;justify-content:center;gap:16px;max-width:530px;margin:28px auto 0;padding:18px 24px;border-radius:100px;background:linear-gradient(135deg,#b07bbf,#9663aa);color:#fff;font-family:var(--font-serif,serif);font-size:.87rem;font-weight:600;line-height:1.7;text-decoration:none;box-shadow:0 5px 20px rgba(154,106,172,.18)}
.joli-cases__cta:hover{opacity:.9}
.joli-case__source:focus-visible,.joli-cases__cta:focus-visible{outline:3px solid #70417f;outline-offset:4px}
@media(max-width:640px){.joli-cases{padding:56px 0}.joli-cases__header{margin-bottom:26px}.joli-cases__header p{font-size:.83rem}.joli-cases__grid{grid-template-columns:minmax(0,1fr);gap:24px;max-width:440px}.joli-case__heading{padding:20px;gap:14px}.joli-case__details{padding:20px 20px 0;font-size:.79rem}.joli-case__individual-note{padding:0 20px}.joli-case__source{margin: auto 20px 20px}.joli-cases__cta{font-size:.83rem;padding:16px 20px;gap:10px}.joli-cases__footer{max-width:440px}}
