:root{--black:#080808;--grey:#3a3a3a;--light:#f5f5f5;--max:980px}*{box-sizing:border-box}body{margin:0;background:#fff;color:#050505;font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.45}.site-header{padding:22px 24px 44px;text-align:center}.breadcrumb{display:block;text-align:left;font-size:12px;color:#7b7b7b;text-decoration:none}.brand{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;margin-top:22px;padding:3px 10px 8px;background:#111;color:#fff;text-decoration:none;line-height:.9;letter-spacing:.04em}.brand span{font-size:18px}.brand strong{font-size:34px}.main-nav ul,.site-footer ul{display:flex;justify-content:center;gap:24px;list-style:none;margin:20px 0 0;padding:0}.main-nav a,.site-footer a{color:inherit;text-decoration:none}.section{max-width:var(--max);margin:0 auto;padding:40px 24px}.narrow{max-width:580px;margin-left:auto;margin-right:auto}.hero-books{padding:0}.book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:840px;margin:0 auto}.book-card a{display:block;text-decoration:none;color:inherit}.book-cover{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:4px}.book-card h2{position:absolute;width:1px;height:1px;overflow:hidden}.intro{padding:34px 0 4px;text-align:center}.intro small{font-size:11px;letter-spacing:.2em;color:#6b6b6b}.newsletter-block{border-top:18px solid #000;text-align:center;padding:45px 24px 70px}.newsletter-block h2{font-size:42px;line-height:1.08;font-weight:400;margin:0 0 54px}.newsletter-card{max-width:630px;margin:0 auto;background:var(--light);border-radius:12px;padding:44px 28px;text-align:left}.newsletter-card h3{text-align:center;font-size:34px;font-weight:400;letter-spacing:.25em;margin:0 0 26px}.newsletter-card label{display:block;font-weight:700;margin-bottom:8px}.newsletter-card input{width:100%;padding:12px;border:1px solid #bbb;border-radius:4px}.button,.newsletter-card button{display:inline-block;width:auto;background:#000;color:#fff;border:0;border-radius:4px;padding:13px 30px;margin-top:24px;text-decoration:none;font-weight:700}.newsletter-card button{width:100%}.site-footer{background:#3b3b3b;color:#e7e7e7;font-size:12px;padding:54px 24px}.footer-inner{max-width:1100px;margin:0 auto;border-top:1px solid #666;padding-top:18px;display:flex;justify-content:space-between;gap:24px}.site-footer ul{margin:0;justify-content:flex-start}.single h1{font-size:46px;line-height:1.05}.single-book-layout{display:grid;grid-template-columns:280px 1fr;gap:44px}.single-cover{width:100%;height:auto}.lead{font-size:22px}.meta{color:#666}.authors,.videos{margin-top:54px}.author{display:flex;gap:20px;border-top:1px solid #ddd;padding:22px 0}.author-photo{width:92px;height:92px;object-fit:cover;border-radius:50%}.video-frame iframe{width:100%;aspect-ratio:16/9;height:auto}.press-list{display:grid;gap:24px}.press-card{border-top:1px solid #ddd;padding-top:24px}.press-logo{max-width:130px;height:auto}.press-logo.large{max-width:180px}.big-quote{font-size:32px;line-height:1.2;border-left:8px solid #000;margin:36px 0;padding-left:24px}.scan{max-width:100%;height:auto;margin:30px 0}@media (max-width:800px){.book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.single-book-layout{grid-template-columns:1fr}.newsletter-block h2{font-size:32px}.footer-inner{display:block}.single h1{font-size:34px}}



.single-book-page {
  max-width: 930px;
  margin: 55px auto 75px;
  padding: 0 24px;
}

.single-book-layout {
  display: grid;
  grid-template-columns: 210px 1fr;
  gap: 42px;
  align-items: start;
}

.single-book-cover img {
  width: 210px;
  height: auto;
  display: block;
}

.single-book-content {
  max-width: 560px;
  text-align: center;
}

.single-book-content h1 {
  margin: 0px 0 20px;
  text-align: center;
  font-size: 40px;
  font-weight: 700;
}

.single-book-author {
  margin: 0 0 28px;
  font-size: 16px;
  text-decoration: underline;
}

.single-book-summary {
  font-size: 13px;
  line-height: 1.55;
}

.single-book-button {
  display: inline-block;
  margin-top: 12px;
  padding: 8px 18px;
  border-radius: 999px;
  background: #000;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.single-book-extra {
  max-width: 720px;
  margin: 38px auto 0;
  font-size: 13px;
  line-height: 1.55;
}

@media (max-width: 760px) {
  .single-book-layout {
    grid-template-columns: 1fr;
    gap: 28px;
    text-align: center;
  }

  .single-book-cover img {
    margin: 0 auto;
  }

  .single-book-content {
    max-width: none;
  }
}

.home-books-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  max-width: 430px;
  margin: 24px auto 44px;
  align-items: start;
}

.home-books-grid a {
  display: block;
  text-decoration: none;
}

.home-books-grid img {
  width: 100%;
  height: 190px;
  object-fit: contain;
  object-position: center bottom;
  display: block;
}
.hero-books {
  margin: 0 auto;
  padding: 0;
  text-align: left;
}

.book-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  align-items: end;
  margin: 20px auto 42px;
}

.book-card {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
  height: 200px;
  text-decoration: none;
}

.book-card img {
  max-width: 100%;
  max-height: 200px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

.intro {
  font-size: 12px;
  line-height: 1.45;
}

.intro small {
  display: block;
  margin-top: 18px;
  font-size: 9px;
  letter-spacing: 0.08em;
  color: #777;
}

.newsletter-block {
  display: none;
}

@media (max-width: 520px) {
  .hero-books {
    max-width: 100%;
  }

  .book-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.hero-books {
  max-width: 920px;
  margin: 0 auto;
  padding: 0;
  text-align: left;
}

.book-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px;
  max-width: 600px;
  margin: 0 auto 0;
}

.book-card {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 2 / 3;
  text-decoration: none;
}

.book-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.mogul-newsletter {
  max-width: 760px;
  margin: 0px auto 0px;
  padding: 0 24px;
}

.mogul-h2 {
  margin: 0 0 34px;
  font-size: 28px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.04em;
}

.mogul-newsletter__form {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mogul-newsletter__field label {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 600;
}

.mogul-newsletter__field input[type="email"] {
  width: 100%;
  height: 48px;
  padding: 0 16px;
  border: 1px solid #000;
  background: #fff;
  font-size: 15px;
  box-sizing: border-box;
}

.mogul-newsletter__options {
  border: 0;
  padding: 0;
  margin: 0;
}

.mogul-newsletter__options legend {
  margin-bottom: 12px;
  font-size: 14px;
  font-weight: 700;
}

.mogul-newsletter__options label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  font-size: 14px;
}

.mogul-newsletter__rgpd {
  font-size: 11px;
  line-height: 1.6;
  color: #555;
}

.mogul-newsletter__rgpd a {
  color: inherit;
}

.mogul-newsletter__submit {
  width: fit-content;
  min-width: 180px;
  height: 46px;
  padding: 0 28px;
  border: 0;
  border-radius: 999px;
  background: #000;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.mogul-newsletter__message {
  font-size: 13px;
  font-weight: 600;
}

.mogul-newsletter__message.is-success {
  color: #0a7a32;
}

.mogul-newsletter__message.is-error {
  color: #b10000;
}

.mogul-newsletter__message.is-loading {
  color: #555;
}

.mogul-newsletter {
  max-width: 760px;
  margin: 0px auto 30px;
  padding: 48px 54px;
  background: #fff;
  border: 1px solid #d8d8d8;
  box-shadow: 0 12px 30px rgba(0,0,0,0.06);
  box-sizing: border-box;
}

.mogul-h2 {
  margin: 0 0 42px;
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.mogul-newsletter__form {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mogul-newsletter__field label {
  display: block;
  margin-bottom: 10px;
  text-align: center;
  font-size: 15px;
  font-weight: 700;
}

.mogul-newsletter__field input[type="email"] {
  width: 100%;
  height: 54px;
  padding: 0 18px;
  border: 1px solid #111;
  background: #fff;
  font-size: 16px;
  box-sizing: border-box;
}

.mogul-newsletter__options {
  border: 0;
  padding: 0;
  margin: 0;
}

.mogul-newsletter__options legend {
  width: 100%;
  margin-bottom: 18px;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}

.mogul-newsletter__options label {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  font-size: 15px;
}

.mogul-newsletter__rgpd {
  font-size: 12px;
  line-height: 1.75;
  color: #555;
  text-align: center;
}

.mogul-newsletter__rgpd a {
  color: inherit;
}

.mogul-newsletter__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px auto 0;
  min-width: 180px;
  height: 48px;
  padding: 0 32px;
  border: 0;
  border-radius: 999px;
  background: #000;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.mogul-newsletter__submit:hover {
  opacity: 0.85;
}

.mogul-newsletter__message {
  text-align: center;
  font-size: 14px;
  font-weight: 600;
}

@media (max-width: 760px) {

  .mogul-newsletter {
    padding: 34px 24px;
    margin: 0px 20px 0px;
  }

  .mogul-h2 {
    font-size: 24px;
  }

}

.mogul-h2 {
  margin-top: 0;
}

.mogul-newsletter {
  max-width: 920px;
  margin: 0px auto 30px;
  padding: 55px 70px;

  background: #f3f3f3;
  border: 1px solid #e2e2e2;
  border-radius: 12px;

  box-sizing: border-box;
}


.mogul-newsletter__form {
  max-width: 840px;
  margin: 0 auto;
}

.archive-presse {
  max-width: 1100px;
}

.mogul-page-title {
  margin: 0px 0 0px;
  text-align: center;
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.press-grid {
  display: flex;
  flex-direction: column;
  gap: 54px;
}

.press-card {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 42px;
  align-items: start;
}

.press-card__image img {
  width: 100%;
  height: auto;
  display: block;
}

.press-card__content h2 {
  margin: 0 0 18px;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
}

.press-card__content h2 a {
  color: #000;
  text-decoration: none;
}

.press-card__excerpt {
  margin-bottom: 24px;
  font-size: 15px;
  line-height: 1.7;
}

@media (max-width: 760px) {

  .press-card {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .press-card__image {
    max-width: 240px;
    margin: 0 auto;
  }

  .press-card__content {
    text-align: center;
  }

}

.press-card__meta {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}

.press-card__media-logo img {
  max-width: 120px;
  max-height: 42px;
  width: auto;
  height: auto;
  display: block;
}

.press-card__media-name {
  font-size: 18px;
  font-weight: 700;
}

.press-card__infos {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  font-size: 13px;
  color: #666;
}

.press-card__date::before {
  content: "•";
  margin-right: 14px;
}

.press-related-book {
  margin: 70px auto 40px;
  text-align: center;
}

.press-related-book__cover {
  display: block;
  width: 220px;
  margin: 0 auto 24px;
}

.press-related-book__cover img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

.book-press-review {
  max-width: 720px;
  margin: 70px auto 0;
  text-align: center;
}

.book-press-review h2 {
  margin-bottom: 34px;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.book-press-list {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.book-press-item h3 {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 700;
}

.book-press-item h3 a {
  color: #000;
  text-decoration: none;
}

.book-press-item h3 a:hover {
  text-decoration: underline;
}

.book-press-meta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  font-size: 13px;
  color: #666;
}

.book-press-meta span + span::before {
  content: "•";
  margin-right: 14px;
}

.book-press-logo img {
  max-width: 110px;
  max-height: 36px;
  width: auto;
  height: auto;
  display: block;
}

.book-press-media {
  font-weight: 700;
  color: #000;
}

.single-book-press-review {
  max-width: 900px;
  margin: 80px auto 0;
}

.press-card--book {
  display: block;
  border-top: 1px solid #ddd;
  padding-top: 28px;
}

.press-card--book h2 {
  margin-bottom: 14px;
}

.press-card--book .press-card__meta {
  margin-bottom: 0;
}

.single-press .press-card__meta {
  justify-content: left;
  margin: 18px 0 32px;
}

.single-press .press-card__media-logo img {
  max-width: 90px;
  max-height: 32px;
}

.single-book-gallery {
  max-width: 1100px;
  margin: 90px auto 0;
}

.single-book-gallery .mm-mosaique {
  padding: 0;
  gap: 12px;
}

.single-book-videos {
  max-width: 900px;
  margin: 80px auto 40px;
}

.single-book-videos__grid {
  display: grid;
  gap: 36px;
}

.single-book-video h3 {
  margin: 0 0 16px;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
}

.single-book-video__embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
}

.single-book-video__embed iframe {
  width: 100%;
  height: 100%;
  display: block;
}

.home-press-review {
  max-width: 900px;
  margin: 0px auto 40px;
  padding: 0 24px;
}

.home-press-grid {
  display: grid;
  gap: 28px;
}

.press-card--home {
  display: block;
  border-top: 1px solid #ddd;
  padding-top: 24px;
}

.press-card--home h2 {
  margin-bottom: 14px;
}

.home-press-more {
  margin-top: 36px;
  text-align: center;
}
/* Homepage — grille de livres configurable */

.book-grid.book-grid--3-cols {
    grid-template-columns: repeat(3, 1fr);
    max-width: 448px;
}

.book-grid.book-grid--4-cols {
    grid-template-columns: repeat(4, 1fr);
    max-width: 606px;
}

@media (max-width: 520px) {
    .book-grid.book-grid--3-cols,
    .book-grid.book-grid--4-cols {
        grid-template-columns: repeat(2, 1fr);
        max-width: 100%;
    }
}

/* ==================================================
   HOMEPAGE — LIVRE MIS EN AVANT
   ================================================== */

.home-featured-book {
    width: min(1100px, calc(100% - 40px));
    margin: 80px auto;
    padding: 50px;

    display: grid;
    grid-template-columns: minmax(180px, 320px) 1fr;
    gap: 60px;
    align-items: center;

    background: #f3f3f3;
}

.home-featured-book__cover img {
    display: block;
    width: 100%;
    height: auto;
}

.home-featured-book__label {
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .15em;
}

.home-featured-book__content h2 {
    margin: 0 0 25px;
    font-size: clamp(32px, 5vw, 64px);
    line-height: .95;
}

.home-featured-book__resume {
    max-width: 600px;
    margin-bottom: 30px;
    font-size: 17px;
    line-height: 1.6;
}

.home-featured-book__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

@media (max-width: 700px) {

    .home-featured-book {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 30px;
        margin: 50px auto;
    }

    .home-featured-book__cover {
        max-width: 260px;
        margin: 0 auto;
    }

    .home-featured-book__content h2 {
        font-size: 36px;
    }

}

/* ==================================================
   PAGINATION PRESSE
   ================================================== */

.press-pagination {
    display: flex;
    justify-content: center;
    margin: 50px 0 20px;
}

.press-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    margin: 0 4px;

    border: 1px solid #000;
    border-radius: 999px;

    color: #000;
    text-decoration: none;

    font-size: 13px;
    font-weight: 700;
}

.press-pagination .page-numbers.current,
.press-pagination a.page-numbers:hover {
    background: #000;
    color: #fff;
}

.press-pagination .dots {
    border-color: transparent;
}

/* Mobile */
@media (max-width: 600px) {

    .press-pagination {
        flex-wrap: wrap;
        gap: 6px;
    }

    .press-pagination .page-numbers {
        margin: 0;
    }

}


/* ==================================================
   MARGES LATÉRALES MOBILE
   Pages Livre + Presse + Archive Presse
   ================================================== */

@media (max-width: 760px) {

    /* ------------------------------
       FICHE LIVRE
       ------------------------------ */

    .single-book-page {
        padding-left: 20px;
        padding-right: 20px;
    }


    /* Les blocs situés hors de .single-book-page */
    .single-book-videos,
    .single-book-custom-html,
    .single-book-press-review,
    .single-book-gallery {
        margin-left: 20px;
        margin-right: 20px;
    }


    /* ------------------------------
       FICHE PRESSE
       ------------------------------ */

    .single-press {
        padding-left: 20px;
        padding-right: 20px;
    }


    /* ------------------------------
       LISTE / ARCHIVE PRESSE
       ------------------------------ */

    .archive-presse {
        padding-left: 20px;
        padding-right: 20px;
    }

}