/* Shared public shell for lepotager.org: header + footer only. */
.lpw-shell-header,
.lpw-shell-footer {
  --lpw-shell-green:#203820;
  --lpw-shell-green-2:#345834;
  --lpw-shell-cream:#F7F4ED;
  --lpw-shell-paper:#FFFDF8;
  --lpw-shell-muted:#657067;
  --lpw-shell-line:#D8DDD4;
  --lpw-shell-content:1160px;
  box-sizing:border-box;
  color:#253029;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.lpw-shell-header *,
.lpw-shell-footer * { box-sizing:border-box; }
.lpw-shell-container { width:min(calc(100% - 2rem),var(--lpw-shell-content)); margin-inline:auto; }

.lpw-shell-header {
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(247,244,237,.96);
  border-bottom:1px solid rgba(32,56,32,.10);
}
.lpw-shell-header-inner { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:1.25rem; }
.lpw-shell-brand { display:inline-flex; align-items:center; gap:.72rem; min-width:0; color:inherit; text-decoration:none; }
.lpw-shell-brand img { width:42px; height:42px; flex:0 0 auto; display:block; }
.lpw-shell-brand-copy { display:grid; line-height:1.12; }
.lpw-shell-brand-copy strong { color:var(--lpw-shell-green); font-size:.98rem; }
.lpw-shell-brand-copy span { color:var(--lpw-shell-muted); font-size:.72rem; margin-top:.18rem; }
.lpw-shell-nav { display:flex; align-items:center; gap:.25rem; }
.lpw-shell-nav a { min-height:44px; display:inline-flex; align-items:center; padding:.55rem .78rem; border-radius:999px; color:inherit; text-decoration:none; font-size:.92rem; font-weight:650; }
.lpw-shell-nav a:hover,
.lpw-shell-nav a:focus-visible { background:#E8EEE5; color:var(--lpw-shell-green); }
.lpw-shell-nav .lpw-shell-nav-cta { background:var(--lpw-shell-green); color:#fff; padding-inline:1rem; }
.lpw-shell-nav .lpw-shell-nav-cta:hover,
.lpw-shell-nav .lpw-shell-nav-cta:focus-visible { background:var(--lpw-shell-green-2); color:#fff; }
.lpw-shell-menu-toggle { display:none; width:46px; height:46px; border:1px solid var(--lpw-shell-line); border-radius:12px; background:var(--lpw-shell-paper); color:var(--lpw-shell-green); cursor:pointer; align-items:center; justify-content:center; }
.lpw-shell-menu-toggle svg { width:22px; height:22px; }

.lpw-shell-footer { padding:2.2rem 0 3rem; border-top:1px solid var(--lpw-shell-line); background:var(--lpw-shell-cream); }
.lpw-shell-footer-inner { display:grid; grid-template-columns:1fr auto; gap:1.5rem; align-items:end; }
.lpw-shell-footer-brand { display:flex; align-items:center; gap:.7rem; }
.lpw-shell-footer-brand img { width:34px; height:34px; display:block; }
.lpw-shell-footer-brand div { display:grid; }
.lpw-shell-footer-brand strong { color:var(--lpw-shell-green); }
.lpw-shell-footer-brand span { color:var(--lpw-shell-muted); font-size:.82rem; }
.lpw-shell-footer-links { display:flex; flex-wrap:wrap; gap:.55rem 1rem; justify-content:flex-end; }
.lpw-shell-footer-links a { color:var(--lpw-shell-muted); font-size:.84rem; text-underline-offset:.18em; }
.lpw-shell-footer-meta { grid-column:1 / -1; padding-top:1rem; border-top:1px solid var(--lpw-shell-line); color:var(--lpw-shell-muted); font-size:.8rem; display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; }

/* Homepage RGPD spotlight */
.rgpd-spotlight { background:#203820; color:#fff; padding:clamp(4rem,8vw,7rem) 0; }
.rgpd-spotlight-card { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:clamp(2rem,6vw,5rem); align-items:center; }
.rgpd-spotlight h2 { color:#fff; max-width:14ch; }
.rgpd-spotlight .eyebrow { color:#f0a17e; }
.rgpd-spotlight .lead { color:#eef3ed; max-width:62ch; }
.rgpd-spotlight-note { max-width:62ch; color:#d9e4d7; margin:1.35rem 0 1.7rem; }
.rgpd-spotlight-note strong { color:#fff; }
.rgpd-spotlight-cta { width:max-content; min-width:160px; }
.rgpd-checks { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; }
.rgpd-checks div { min-height:132px; padding:1.15rem; border:1px solid rgba(255,255,255,.22); border-radius:16px; background:rgba(255,255,255,.06); }
.rgpd-checks strong { display:block; color:#fff; margin-bottom:.35rem; }
.rgpd-checks span { display:block; color:#d9e4d7; font-size:.9rem; line-height:1.45; }

@media (max-width:860px) {
  .lpw-shell-header { position:relative; }
  .lpw-shell-header-inner { min-height:68px; }
  .lpw-shell-menu-toggle { display:flex; }
  .lpw-shell-nav { position:absolute; left:1rem; right:1rem; top:calc(100% + 6px); display:none; flex-direction:column; align-items:stretch; gap:0; padding:.65rem; background:var(--lpw-shell-cream); border:1px solid var(--lpw-shell-line); border-radius:16px; box-shadow:0 16px 42px rgba(25,35,29,.12); }
  .lpw-shell-nav[data-open="true"] { display:flex; }
  .lpw-shell-nav a { padding:.75rem .7rem; }
  .lpw-shell-nav .lpw-shell-nav-cta { justify-content:center; margin-top:.25rem; }
  .lpw-shell-brand-copy span { display:none; }
  .rgpd-spotlight-card { grid-template-columns:1fr; }
}

@media (max-width:700px) {
  .lpw-shell-footer-inner { grid-template-columns:1fr; align-items:start; }
  .lpw-shell-footer-links { justify-content:flex-start; }
  .lpw-shell-footer-meta { grid-column:1; flex-direction:column; gap:.35rem; }
  .rgpd-checks { grid-template-columns:1fr; }
  .rgpd-checks div { min-height:auto; }
}
