/* PRESSE — partial layout shared across the 6 avocat demos.
   Theme variables (--c-brand, --c-line, --c-ink, etc.) come from each demo's inline <style> + themes.css.
   Per-demo accent (--c-accent) drives the kicker color.
   Class prefix `pp-` to avoid collisions with parent demo prefixes (af-, fa-, etc.). */

.pp-h { padding: 90px 0 60px; background: var(--c-bg-warm, #F4F1E9); border-bottom: 1px solid var(--c-line); }
.pp-h__inner { max-width: 1180px; margin: 0 auto; padding: 0 36px; }
.pp-h__pre { font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.74rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-accent, var(--c-brand)); padding-bottom: 8px; border-bottom: 1px solid var(--c-accent, var(--c-brand)); display: inline-block; font-weight: 600; }
.pp-h__t { font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.1; font-weight: 400; margin-top: 20px; letter-spacing: -0.01em; max-width: 22ch; }
.pp-h__t em { font-style: italic; color: var(--c-accent, var(--c-brand)); }
.pp-h__lead { margin-top: 22px; font-size: 1.16rem; line-height: 1.65; color: var(--c-ink-soft); max-width: 60ch; }

.pp-stat { margin-top: 40px; padding-top: 30px; border-top: 1px solid var(--c-line); display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
@media (max-width: 720px) { .pp-stat { grid-template-columns: 1fr 1fr; gap: 22px; } }
.pp-stat__num { font-size: 2.2rem; font-weight: 500; color: var(--c-accent, var(--c-brand)); line-height: 1; letter-spacing: -0.01em; }
.pp-stat__lbl { display: block; margin-top: 6px; font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.78rem; color: var(--c-ink-soft); letter-spacing: 0.04em; }

.pp-sec { padding: 90px 0; }
.pp-sec--alt { background: var(--c-bg-warm, #F4F1E9); }
.pp-wrap { max-width: 1180px; margin: 0 auto; padding: 0 36px; }
.pp-sec__head { margin-bottom: 50px; max-width: 760px; }
.pp-sec__chap { font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.74rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--c-accent, var(--c-brand)); padding-bottom: 6px; border-bottom: 1px solid var(--c-accent, var(--c-brand)); display: inline-block; font-weight: 600; }
.pp-sec__h { font-size: clamp(1.8rem, 3.4vw, 2.6rem); line-height: 1.15; font-weight: 400; margin-top: 18px; letter-spacing: -0.01em; }
.pp-sec__h em { font-style: italic; color: var(--c-accent, var(--c-brand)); }

.pp-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; border-top: 1px solid var(--c-line); }
@media (max-width: 760px) { .pp-list { grid-template-columns: 1fr; } }
.pp-item { display: grid; grid-template-columns: 130px 1fr; gap: 26px; padding: 30px 28px; border-bottom: 1px solid var(--c-line); transition: background .15s; align-items: start; }
.pp-item:nth-child(odd) { border-right: 1px solid var(--c-line); }
@media (max-width: 760px) { .pp-item:nth-child(odd) { border-right: none; } }
.pp-item:hover { background: var(--c-bg-warm, #F4F1E9); }
.pp-item__date { font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.76rem; color: var(--c-muted); letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.5; padding-top: 4px; }
.pp-item__date strong { display: block; font-size: 1.08rem; color: var(--c-accent, var(--c-brand)); font-weight: 500; line-height: 1; margin-bottom: 4px; letter-spacing: 0; text-transform: none; font-family: inherit; }
.pp-item__media { font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.72rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--c-accent, var(--c-brand)); font-weight: 600; }
.pp-item__title { font-size: 1.18rem; line-height: 1.35; margin-top: 10px; color: var(--c-ink); font-weight: 500; letter-spacing: -0.005em; }
.pp-item__desc { margin-top: 10px; font-size: 1rem; line-height: 1.65; color: var(--c-ink-soft); }
.pp-item__author { display: block; margin-top: 10px; font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.74rem; color: var(--c-muted); letter-spacing: 0.04em; }

.pp-medias { display: grid; grid-template-columns: repeat(6, 1fr); gap: 24px; margin-top: 40px; align-items: center; }
@media (max-width: 980px) { .pp-medias { grid-template-columns: repeat(3, 1fr); gap: 20px; } }
@media (max-width: 540px) { .pp-medias { grid-template-columns: repeat(2, 1fr); } }
.pp-medias__item { font-size: 1rem; font-style: italic; color: var(--c-ink-soft); text-align: center; padding: 14px 8px; border: 1px solid var(--c-line); transition: all .2s; }
.pp-medias__item:hover { border-color: var(--c-accent, var(--c-brand)); background: var(--c-bg, #fff); color: var(--c-accent, var(--c-brand)); }

.pp-cta { background: var(--c-bg-dark, #14213D); color: #fff; padding: 80px 0; }
.pp-cta__inner { max-width: 880px; margin: 0 auto; padding: 0 36px; text-align: center; }
.pp-cta__pre { font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.74rem; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.78); padding-bottom: 6px; border-bottom: 1px solid rgba(255,255,255,0.40); display: inline-block; font-weight: 600; }
.pp-cta__h { font-size: clamp(2rem, 4vw, 2.8rem); line-height: 1.2; font-weight: 400; margin: 18px 0 0; letter-spacing: -0.01em; color: #fff; }
.pp-cta__h em { font-style: italic; color: rgba(255,255,255,0.78); }
.pp-cta__lead { margin-top: 18px; font-size: 1.10rem; line-height: 1.65; color: rgba(255,255,255,0.78); max-width: 60ch; margin-left: auto; margin-right: auto; }
.pp-cta__btns { margin-top: 32px; display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.pp-cta__btn { font-family: var(--font-sans, 'Inter', sans-serif); font-size: 0.86rem; font-weight: 600; padding: 14px 28px; background: #fff; color: var(--c-bg-dark, #14213D); transition: all .15s; letter-spacing: 0.04em; }
.pp-cta__btn:hover { transform: translateY(-1px); opacity: 0.92; }
.pp-cta__btn--ghost { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.40); }
.pp-cta__btn--ghost:hover { background: rgba(255,255,255,0.10); transform: none; }
