
.wip-pages .bk-in > .bk-head:last-child { margin-bottom: 0; }
.wip-pages .pg-mono {
  font-family: var(--wip-mono);
  font-size: 0.64rem; letter-spacing: 0.12em; text-transform: uppercase;
}
.wip-pages .bk--dark .sct-title { color: var(--bone); }
.wip-pages .bk--dark .sct-title em { color: var(--sand); }
.wip-pages .bk--dark .sct-copy { color: var(--bone-65); }
.wip-pages .bk--dark .sct-eyebrow { color: var(--bone-75); }
.wip-pages .bk--bone { background: var(--bone); }

.wip-pages .pg-filters { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0; }
.wip-pages .pg-filter {
  display: inline-flex; align-items: center; gap: 0.6rem;
  padding: 0.36rem 1rem 0.36rem 0.36rem;
  border: 1px solid currentColor; border-radius: 999px;
  background: transparent; color: inherit;
  font: 500 0.58rem/1 'General Sans', sans-serif;
  letter-spacing: 0.24em; text-transform: uppercase;
  cursor: pointer; opacity: 0.7;
  transition: background 0.3s ease, color 0.3s ease, opacity 0.3s ease;
}
.wip-pages .pg-filter .wip-ring { width: 1.8rem; height: 1.8rem; font-size: 0.56rem; outline-offset: -4px; }
.wip-pages .pg-filter:hover { opacity: 1; }

.wip-pages .pg-brand-sect { isolation: isolate; }
.wip-pages .pg-brand-bg { position: fixed; inset: 0; z-index: -2; background: var(--soot); }
.wip-pages .pg-brand-bg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wip-pages .pg-brand-bg::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(28, 25, 22, 0.9) 0%, rgba(28, 25, 22, 0.72) 55%, rgba(28, 25, 22, 0.5) 100%);
}
.wip-pages .pg-brand-sect--flip .pg-brand-bg::after {
  background: linear-gradient(270deg, rgba(28, 25, 22, 0.9) 0%, rgba(28, 25, 22, 0.72) 55%, rgba(28, 25, 22, 0.5) 100%);
}
@media (max-width: 899px) {
  .wip-pages .pg-brand-sect .pg-brand-bg::after { background: rgba(28, 25, 22, 0.8); }
}
.wip-pages #db .pg-brand-bg img { filter: brightness(1.7) saturate(1.1); }
.wip-pages #db .pg-brand-bg::after {
  background: linear-gradient(90deg, rgba(28, 25, 22, 0.84) 0%, rgba(28, 25, 22, 0.6) 55%, rgba(28, 25, 22, 0.35) 100%);
}
@media (max-width: 899px) {
  .wip-pages #db .pg-brand-bg::after { background: rgba(28, 25, 22, 0.7); }
}
.wip-pages .pg-brand-sect .pg-why { backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); background: rgba(28, 25, 22, 0.35); }
.wip-pages .pg-brand-sect .sct-copy { color: var(--bone-75); }

.wip-pages .pg-brand { display: grid; grid-template-columns: 1fr; gap: var(--wip-gap-2) 24px; align-items: start; }
.wip-pages .pg-brand-text { display: flex; flex-direction: column; gap: 1.2rem; }
.wip-pages .pg-brand-text .bk-meta { margin-bottom: calc(var(--wip-gap-1) - 1.2rem); }
.wip-pages .pg-brand-title {
  margin-bottom: calc(var(--wip-gap-2) - 1.2rem);
  font-size: clamp(2.1rem, 4.4vw, 4.2rem);
  font-weight: 700; line-height: 0.94;
  letter-spacing: -0.04em; text-transform: uppercase;
  max-width: 16ch;
}
.wip-pages .pg-brand-title em { font-style: italic; font-weight: 300; color: var(--ash); }
.wip-pages .bk--dark .pg-brand-title em { color: var(--sand); }
.wip-pages .pg-brand-text .sct-copy { max-width: 58ch; }
.wip-pages .pg-why {
  margin-top: 0.8rem;
  padding: 1.4rem 1.6rem 1.5rem;
  border: 1px solid var(--wip-line); border-radius: var(--wip-r-card);
  background: var(--wip-panel);
}
.wip-pages .bk--dark .pg-why { background: rgba(248, 247, 243, 0.035); border-color: rgba(248, 247, 243, 0.16); }
.wip-pages .pg-why .pg-mono { display: block; margin-bottom: 0.6rem; }
.wip-pages .pg-why p { font-size: 0.95rem; line-height: 1.7; color: var(--ink); max-width: 58ch; }
.wip-pages .bk--dark .pg-why p { color: var(--bone-75); }

.wip-pages .pg-fiche {
  display: flex; flex-direction: column; gap: 1.2rem;
  padding: 1.4rem 1.6rem 1.6rem;
  border-radius: var(--wip-r-card);
}
.wip-pages .bk--dark .pg-fiche { border-color: var(--wip-panel); }
.wip-pages .pg-fiche-logo {
  display: grid; place-items: center;
  height: clamp(130px, 14vw, 180px);
  border-radius: 16px;
  background: var(--sand-light);
}
.wip-pages .pg-fiche-logo img { width: 58%; height: auto; max-height: 52%; object-fit: contain; filter: brightness(0); opacity: 0.88; }
.wip-pages .pg-fiche-logo img.is-raw { filter: none; opacity: 1; width: 46%; }
.wip-pages .pg-fiche dl { margin: 0; border-top: 1px solid var(--wip-line); }
.wip-pages .pg-fiche dl > div {
  display: grid; grid-template-columns: 7.5rem 1fr; gap: 1rem;
  padding: 0.6rem 0; border-bottom: 1px solid var(--wip-line);
  font-size: 0.84rem; line-height: 1.45;
}
.wip-pages .pg-fiche dt { font-family: var(--wip-mono); font-size: 0.6rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--stone); padding-top: 0.15rem; }
.wip-pages .pg-fiche dd { margin: 0; color: var(--ink); }
@media (min-width: 1024px) {
  .wip-pages .pg-brand { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .wip-pages .pg-brand-text { grid-column: 1 / span 7; }
  .wip-pages .pg-fiche { grid-column: 9 / span 4; position: sticky; top: 96px; }
  .wip-pages .pg-brand--flip .pg-brand-text { grid-column: 6 / span 7; }
  .wip-pages .pg-brand--flip .pg-fiche { grid-column: 1 / span 4; grid-row: 1; }
}

.wip-pages .wip-partners { padding-block: var(--wip-sec-y); }
.wip-partenaires .wip-partners-text > .wip-ctrl:first-child { margin-top: 0; padding-top: 0; border-top: 0; }

.wip-pages .pg-bio { display: grid; grid-template-columns: 1fr; gap: var(--wip-gap-2) 24px; }
.wip-pages .pg-bio-head .sct-title { margin-top: var(--wip-gap-1); }
.wip-pages .pg-bio-body { display: flex; flex-direction: column; gap: var(--wip-gap-p); max-width: 62ch; }
.wip-pages .pg-bio-body .sct-copy { margin: 0; }
.wip-pages .pg-bio-lead {
  margin: 0 0 calc(var(--wip-gap-p) * 0.6);
  font-size: clamp(1.2rem, 1.7vw, 1.6rem); line-height: 1.4;
  letter-spacing: -0.01em;
  color: var(--ink);
}
.wip-pages .bk--dark .pg-bio-lead { color: var(--bone); }
.wip-pages .pg-steps { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.wip-pages .pg-step { display: flex; flex-direction: column; gap: 0.7rem; padding: 1.8rem 0 2.2rem; border-top: 1px solid var(--wip-line); }
.wip-pages .pg-step .sct-copy { margin: 0; }
.wip-pages .pg-step-date { font-family: var(--wip-mono); font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--stone); }
.wip-pages .bk--dark .pg-step { border-top-color: rgba(248, 247, 243, 0.16); }
.wip-pages .bk--dark .pg-step-date { color: var(--bone-65); }
@media (min-width: 900px) {
  .wip-pages .pg-bio { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .wip-pages .pg-bio-head {
    grid-column: 1 / span 5;
    position: sticky; top: 7rem; align-self: start;
  }
  .wip-pages .pg-bio-body { grid-column: 7 / span 6; }
}

.wip-pages .pg-statement {
  font-size: clamp(2rem, 4.6vw, 4.6rem);
  font-weight: 500; line-height: 1.02; letter-spacing: -0.035em;
  max-width: 20ch;
}
.wip-pages .pg-statement em { font-style: italic; font-weight: 300; color: var(--stone); }
.wip-pages .bk--dark .pg-statement em { color: var(--sand); }
.wip-pages .pg-facts {
  display: grid; grid-template-columns: 1fr; gap: 0;
  margin: var(--wip-gap-3) 0 0;
  border-top: 1px solid rgba(28, 25, 22, 0.4);
}
.wip-pages .pg-facts > div { display: flex; flex-direction: column; gap: 0.8rem; padding: 1.3rem 0; border-bottom: 1px solid var(--wip-line); }
.wip-pages .pg-facts dt { font-family: var(--wip-mono); font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--stone); }
.wip-pages .pg-facts dd { margin: 0; font-size: 1.05rem; line-height: 1.5; color: var(--ink); max-width: 34ch; }
.wip-pages .bk--dark .pg-facts { border-top-color: rgba(248, 247, 243, 0.45); }
.wip-pages .bk--dark .pg-facts > div { border-color: rgba(248, 247, 243, 0.16); }
.wip-pages .bk--dark .pg-facts dt { color: var(--bone-65); }
.wip-pages .pg-quote { margin: clamp(2.5rem, 6vw, 4.5rem) 0 0; max-width: 52rem; }
.wip-pages .pg-quote blockquote { margin: 0; }
.wip-pages .pg-quote p { margin: 0; font-size: clamp(1.4rem, 2.6vw, 2.2rem); font-weight: 300; line-height: 1.3; }
.wip-pages .pg-quote figcaption { margin-top: 1.2rem; font-family: var(--wip-mono); font-size: 0.62rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--stone); }
.wip-pages .bk--dark .pg-quote p { color: var(--bone); }
.wip-pages .bk--dark .pg-quote figcaption { color: var(--bone-65); }
.wip-pages .bk--dark .pg-facts dd { color: var(--bone); }
.wip-pages .bk--dark .pg-statement { color: var(--bone); }
.wip-pages .pg-statement { margin-top: var(--wip-gap-1); }
@media (min-width: 900px) {
  .wip-pages .pg-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .wip-pages .pg-facts > div { border-bottom: 0; padding-right: 1.4rem; }
  .wip-pages .pg-facts > div + div { padding-left: 1.4rem; border-left: 1px solid var(--wip-line); }
}

.wip-pages .pg-soft-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }
@media (min-width: 760px)  { .wip-pages .pg-soft-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .wip-pages .pg-soft-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.wip-pages .pg-soft {
  display: flex; flex-direction: column; gap: 1.1rem;
  padding: 1.4rem 1.6rem 1.6rem;
  scroll-margin-top: 100px;
}
.wip-pages .pg-soft .bk-mono { text-align: right; }
.wip-pages .pg-soft-name {
  margin-top: clamp(1.4rem, 4vw, 3rem);
  font-size: clamp(1.7rem, 2.6vw, 2.5rem); font-weight: 700; line-height: 0.95;
  letter-spacing: -0.035em; text-transform: uppercase;
}
.wip-pages .pg-soft .bk-desc { flex: 1; }
.wip-pages .pg-soft dl { margin: 0; border-top: 1px solid var(--wip-line); }
.wip-pages .pg-soft dl > div {
  display: grid; grid-template-columns: 6.5rem 1fr; gap: 1rem;
  padding: 0.55rem 0; border-bottom: 1px solid var(--wip-line);
  font-size: 0.84rem; line-height: 1.45;
}
.wip-pages .pg-soft dt { font-family: var(--wip-mono); font-size: 0.6rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--stone); padding-top: 0.15rem; }
.wip-pages .pg-soft dd { margin: 0; color: var(--ink); }
.wip-pages .pg-soft .bk-formats { margin-top: 0; padding-top: 1.1rem; border-top: 0; }
.wip-pages .pg-soft .bk-fmt { transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease; }
.wip-pages .pg-soft .bk-fmt:hover { background: var(--soot); border-color: var(--soot); color: var(--bone); }
.wip-pages .pg-soft .bk-fmt--long:hover { background: var(--ink); border-color: var(--ink); }
.wip-pages .bk--dark .pg-soft .bk-desc { color: var(--stone); }

.wip-legal .pg-legal:first-child { padding-top: calc(var(--wip-sec-y) + var(--mv-head, 64px) + env(safe-area-inset-top, 0px)); }
.wip-legal .pg-legal .bk-in { max-width: 62ch; margin-left: max(0px, calc((100% - var(--max-w-wide)) / 2)); }
.wip-legal .pg-legal .sct-title { margin: var(--wip-gap-1) 0 var(--wip-gap-2); }
.wip-legal .pg-legal-sub {
  margin: calc(var(--wip-gap-1) - var(--wip-gap-2)) 0 var(--wip-gap-1);
  font-size: 1.1rem; font-weight: 500; letter-spacing: -0.01em;
}
.wip-legal .pg-legal-sub em { font-style: italic; font-weight: 300; }
.wip-legal .pg-legal .sct-copy + .sct-copy { margin-top: var(--wip-gap-p); }
.wip-legal .pg-legal a { text-decoration: underline; text-underline-offset: 3px; }

.wip-pages .pg-cmp {
  overflow-x: auto; -webkit-overflow-scrolling: touch;
  border: 1px solid var(--wip-line); border-radius: var(--wip-r-panel, 22px);
  background: rgba(242, 240, 236, 0.6);
}
.wip-pages .pg-cmp table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 0.88rem; line-height: 1.5; }
.wip-pages .pg-cmp th, .wip-pages .pg-cmp td { padding: 0.9rem 1.2rem; text-align: left; vertical-align: top; border-bottom: 1px solid var(--wip-line); }
.wip-pages .pg-cmp tbody tr:last-child > * { border-bottom: 0; }
.wip-pages .pg-cmp thead th {
  font-size: clamp(1.1rem, 1.6vw, 1.5rem); font-weight: 700; letter-spacing: -0.02em; text-transform: uppercase; line-height: 1;
  padding-top: 1.4rem; padding-bottom: 1.1rem;
}
.wip-pages .pg-cmp thead th a { color: inherit; text-decoration: none; }
.wip-pages .pg-cmp thead th a:hover { text-decoration: underline; text-underline-offset: 4px; }
.wip-pages .pg-cmp thead th span { font-family: var(--wip-mono); font-size: 0.6rem; font-weight: 400; letter-spacing: 0.08em; color: var(--stone); }
.wip-pages .pg-cmp tbody th {
  width: 11rem;
  font-family: var(--wip-mono); font-size: 0.6rem; font-weight: 400; letter-spacing: 0.1em; text-transform: uppercase; color: var(--stone);
  padding-top: 1.05rem;
}
.wip-pages .pg-cmp td { color: var(--ink); width: calc((100% - 11rem) / 2); }
.wip-pages .pg-cmp td + td { border-left: 1px solid var(--wip-line); }
.wip-pages .pg-cmp-note { margin-top: 1rem; font-family: var(--wip-mono); font-size: 0.66rem; line-height: 1.6; color: var(--stone); }
.wip-outils .sct-intro-body a { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 699.98px) {
  .wip-pages .pg-cmp table, .wip-pages .pg-cmp tbody, .wip-pages .pg-cmp tr, .wip-pages .pg-cmp th, .wip-pages .pg-cmp td { display: block; width: auto; min-width: 0; }
  .wip-pages .pg-cmp thead { display: none; }
  .wip-pages .pg-cmp tbody tr { padding: 1rem 1.1rem; border-bottom: 1px solid var(--wip-line); }
  .wip-pages .pg-cmp tbody tr:last-child { border-bottom: 0; }
  .wip-pages .pg-cmp tbody th, .wip-pages .pg-cmp td { padding: 0; border: 0; }
  .wip-pages .pg-cmp tbody th { margin-bottom: 0.6rem; }
  .wip-pages .pg-cmp td + td { border-left: 0; margin-top: 0.6rem; }
  .wip-pages .pg-cmp td::before {
    content: attr(data-outil); display: block; margin-bottom: 0.1rem;
    font-size: 0.72rem; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase;
  }
}

.wip-pages .pg-cmp-ouvrir { cursor: pointer; font-family: inherit; background: transparent; }
.pg-cmp-dialog {
  position: fixed; inset: 0; margin: auto; height: fit-content;
  width: min(1100px, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  inset: env(safe-area-inset-top, 0px) 0 env(safe-area-inset-bottom, 0px);
  padding: 0; border: 0; border-radius: var(--wip-r-panel);
  background: #F2F0EC; color: var(--ink); overflow: auto;
}
.pg-cmp-dialog::backdrop { background: rgba(28, 25, 22, 0.88); }
.pg-cmp-dialog-in { position: relative; padding: clamp(1.2rem, 3vw, 2.4rem); }
.pg-cmp-titre {
  margin: 0 3rem 1.4rem 0;
  font-size: clamp(1.5rem, 3vw, 2.6rem); font-weight: 700; line-height: 0.95; letter-spacing: -0.035em; text-transform: uppercase;
}
.pg-cmp-titre em { font-style: italic; font-weight: 300; color: var(--stone); }
.pg-cmp-fermer {
  position: absolute; top: 1rem; right: 1rem; width: 40px; height: 40px;
  border: 1px solid var(--wip-line); border-radius: 50%; background: none; color: var(--ink);
  font-size: 1.3rem; line-height: 1; cursor: pointer;
}
.pg-cmp-fermer:hover { background: var(--soot); border-color: var(--soot); color: var(--bone); }
.loupe-ouverte .site-head, body:has(.pg-cmp-dialog[open]) .site-head { visibility: hidden; }
