.lp-fil { background: var(--sy-bg-surface); border-bottom: 1px solid var(--sy-border-light); }
.lp-fil ol {
display: flex; flex-wrap: wrap; gap: 4px 0;
margin: 0; padding: 12px 0; list-style: none;
font-size: 14px; line-height: 1.5; color: var(--sy-text-muted);
}
.lp-fil li { min-width: 0; }
.lp-fil li + li::before { content: "/"; margin: 0 10px; color: var(--sy-text-light); }
.lp-fil a { color: var(--sy-text-secondary); }
.lp-fil a:hover { color: var(--sy-primary); }
.lp-fil li[aria-current] { color: var(--sy-text-main); font-weight: 500; }
p.lp-apercu {
margin: 0 0 12px; padding: 10px 14px; border-radius: var(--ly-radius-sm);
background: var(--sy-warning-light); color: var(--sy-text-main);
border: 1px solid var(--sy-warning); font-size: 14px;
}
.vf-plan.lp-plan { min-height: min(64svh, 680px); }
.lp-plan .vf-plan__texte { padding-top: 96px; }
.vf-plan.lp-plan::after {
background: linear-gradient(90deg, rgba(14, 30, 51, .9) 0%, rgba(14, 30, 51, .78) 45%,
rgba(14, 30, 51, .2) 80%, rgba(14, 30, 51, .05) 100%);
}
h1.lp-h1 {
margin: 0 0 18px;
font-family: var(--sy-font-display); font-weight: 600;
font-size: clamp(34px, 4.2vw, 60px); line-height: 1.06; letter-spacing: -.02em;
text-wrap: balance;
}
.vf-plan h1.lp-h1 { color: var(--vf-texte-film); }
.lp-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.lp-entete {
background: var(--vf-pierre);
padding: clamp(56px, 8vh, 96px) 0 clamp(40px, 6vh, 64px);
border-bottom: 1px solid var(--sy-border-light);
}
.lp-entete .ly-wrap > * { max-width: 820px; }
.lp-entete h1.lp-h1 { color: var(--sy-primary); }
.lp-entete .ly-lead { font-size: 1.15rem; }
ul.lp-cartes {
display: grid; gap: 18px; margin: 0; padding: 0; list-style: none;
grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}
ul.lp-cartes--hub { grid-template-columns: repeat(auto-fit, minmax(min(340px, 100%), 1fr)); }
li.lp-carte { min-width: 0; }
li.lp-carte a {
display: flex; flex-direction: column; gap: 8px; height: 100%;
padding: 24px 26px; border-radius: var(--ly-radius);
background: var(--sy-bg-surface); border: 1px solid var(--sy-border-light);
color: var(--sy-text-main);
transition: border-color .2s, box-shadow .2s, transform .2s var(--ly-ease);
}
li.lp-carte a:hover {
text-decoration: none; border-color: var(--sy-accent);
box-shadow: 0 12px 30px rgba(31, 61, 99, .10); transform: translateY(-2px);
}
.lp-carte__rubrique {
font-family: var(--sy-font-mono); font-size: 12px; font-weight: 600;
letter-spacing: .1em; text-transform: uppercase; color: var(--sy-accent-ink);
}
.lp-carte__nom {
font-family: var(--sy-font-display); font-size: 1.12rem; font-weight: 600;
letter-spacing: -.01em; color: var(--sy-primary);
}
.lp-carte__resume { font-size: 15px; line-height: 1.6; color: var(--sy-text-muted); }
.lp-carte__etat {
align-self: flex-start; margin-top: 4px; padding: 3px 10px; border-radius: 999px;
font-size: 12.5px; font-weight: 600;
background: var(--sy-warning-light); color: var(--sy-text-main);
}
.lp-liees .ly-h3 { margin: 0 0 26px; }
.lp-cta .ly-h2 { color: var(--vf-texte-film); }
.lp-loi { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.lp-loi li {
display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: 6px 24px;
padding: 16px 0; border-top: 1px solid var(--sy-border-light);
}
.lp-loi li:first-child { border-top: 0; }
.lp-loi__ref {
font-family: var(--sy-font-mono); font-size: 14px; font-weight: 600;
color: var(--sy-accent-ink);
}
.lp-loi__texte { margin: 0; font-size: 16px; line-height: 1.6; color: var(--sy-text-main); }
.lp-partage {
display: grid; gap: 20px;
grid-template-columns: repeat(auto-fit, minmax(min(360px, 100%), 1fr));
}
.lp-partage .ly-switch__col { margin: 0; }
.lp-faq-titre { margin: 0 0 24px; }
.lp-guide__corps { padding: clamp(40px, 6vh, 72px) 0 clamp(56px, 8vh, 96px); }
.lp-prose { max-width: 760px; }
.lp-prose h2 {
margin: 48px 0 14px; font-family: var(--sy-font-display); font-weight: 600;
font-size: 1.5rem; line-height: 1.25; letter-spacing: -.015em; color: var(--sy-primary);
}
.lp-prose h3 {
margin: 32px 0 10px; font-family: var(--sy-font-display); font-weight: 600;
font-size: 1.15rem; color: var(--sy-primary);
}
.lp-prose p, .lp-prose li { font-size: 17px; line-height: 1.72; color: var(--sy-text-main); }
.lp-prose ul, .lp-prose ol { padding-left: 24px; }
.lp-prose li + li { margin-top: 6px; }
.lp-prose a { text-decoration: underline; text-underline-offset: 2px; }
.lp-prose table { width: 100%; border-collapse: collapse; margin: 24px 0; font-size: 15.5px; }
.lp-prose th, .lp-prose td {
padding: 10px 12px; text-align: left; vertical-align: top;
border-bottom: 1px solid var(--sy-border-light);
}
.lp-prose th { font-weight: 600; color: var(--sy-text-secondary); background: var(--sy-tint); }
.lp-prose .lp-encadre {
margin: 28px 0; padding: 18px 22px; border-left: 4px solid var(--sy-accent);
background: var(--sy-tint); border-radius: 0 var(--ly-radius-sm) var(--ly-radius-sm) 0;
}
.lp-prose .lp-encadre p { margin: 0; }
.lp-prose .lp-encadre p + p { margin-top: 10px; }
.lp-dates { margin: 20px 0 0; font-size: 14px; color: var(--sy-text-muted); }
.lp-sources { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--sy-border-light); }
.lp-sources h2 { margin-top: 0; font-size: 1.15rem; }
.lp-sources li { font-size: 15px; }
p.lp-avertissement {
margin: 40px 0 0; padding-top: 18px; border-top: 1px solid var(--sy-border-light);
font-size: 14px; line-height: 1.6; color: var(--sy-text-muted);
}
@media (max-width: 767px) {
.vf-plan.lp-plan { min-height: 62svh; }
.vf-plan.lp-plan::after { background: rgba(14, 30, 51, .76); }
.lp-plan .vf-plan__texte { padding-top: 72px; }
.lp-actions .ly-btn { width: 100%; }
.lp-loi li { grid-template-columns: minmax(0, 1fr); }
.lp-prose table { display: block; overflow-x: auto; }
}
@media (prefers-reduced-motion: reduce) {
li.lp-carte a:hover { transform: none; }
}
