/* Ex Æquo — direction artistique par livre, pilotée depuis le Studio 2.14 */
.book-v23{
  --exq-builder-accent:#8b1010;
  --exq-builder-background:#fffdf9;
  --exq-builder-text:#14363f;
  --exq-builder-surface:#f3eee5;
  --exq-hero-background:#14363f;
  --exq-hero-background-secondary:#14363f;
  --exq-hero-text:#fffdf9;
  --exq-hero-overlay:.42;
  --exq-builder-radius:0px;
  color:var(--exq-builder-text);
  background:var(--exq-builder-background);
}
.book-v23 .eyebrow:not(.light),.book-v23 .text-link{color:var(--exq-builder-accent)}
.book-v23 .author-feature-bio{max-width:680px;font-family:var(--serif);font-size:20px;line-height:1.6}
.book-v23 .author-feature-bio p{margin:0 0 1em}.book-v23 .author-feature-bio p:last-child{margin-bottom:0}

/* Échelle, rythme, largeur et géométrie globale */
.book-v23.exq-builder-title-compact .book-hero-copy h1{font-size:clamp(48px,5.1vw,82px)}
.book-v23.exq-builder-title-impact .book-hero-copy h1{font-size:clamp(76px,8.4vw,138px)}
.book-v23.exq-builder-spacing-compact .book-body{padding-top:68px;padding-bottom:72px}
.book-v23.exq-builder-spacing-compact .book-resource-section,.book-v23.exq-builder-spacing-compact .book-editions-section,.book-v23.exq-builder-spacing-compact .book-related-section,.book-v23.exq-builder-spacing-compact .book-recommend-section{padding-top:68px;padding-bottom:72px}
.book-v23.exq-builder-spacing-generous .book-body{padding-top:145px;padding-bottom:150px}
.book-v23.exq-builder-spacing-generous .book-resource-section,.book-v23.exq-builder-spacing-generous .book-editions-section,.book-v23.exq-builder-spacing-generous .book-related-section,.book-v23.exq-builder-spacing-generous .book-recommend-section{padding-top:145px;padding-bottom:150px}
.book-v23.exq-builder-content-wide .wrap,.book-v23.exq-builder-content-wide>.exact-meta-list{max-width:min(1600px,94vw)}
.book-v23.exq-builder-content-full .wrap,.book-v23.exq-builder-content-full>.exact-meta-list{width:100%;max-width:none;padding-inline:clamp(24px,5vw,90px)}
.book-v23.exq-builder-corners-soft{--exq-builder-radius:16px}.book-v23.exq-builder-corners-round{--exq-builder-radius:30px}
.book-v23.exq-builder-corners-soft :is(.book-card,.book-editions-grid article,.book-resources-grid>*),.book-v23.exq-builder-corners-round :is(.book-card,.book-editions-grid article,.book-resources-grid>*){border-radius:var(--exq-builder-radius);overflow:hidden}

/* Héros : fond, texte et image */
.book-v23 .book-hero{position:relative;isolation:isolate;min-height:760px;color:var(--exq-hero-text)!important;background:var(--exq-hero-background)!important;overflow:hidden}
.book-v23 .book-hero::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none}
.book-v23 .book-hero-inner{min-height:760px;transition:min-height .25s ease,grid-template-columns .25s ease}
.book-v23 .book-hero-copy,.book-v23 .book-hero-copy h1,.book-v23 .book-author-link,.book-v23 .book-purchase strong{color:inherit!important}
.book-v23 .book-hook{color:color-mix(in srgb,var(--exq-hero-text) 78%,transparent)!important}
.book-v23 .crumbs,.book-v23 .book-purchase div span{color:color-mix(in srgb,var(--exq-hero-text) 56%,transparent)!important}
.book-v23 .book-purchase{border-color:color-mix(in srgb,var(--exq-hero-text) 24%,transparent)!important}
.book-v23 .book-backdrop{opacity:.18;transition:opacity .25s ease}.book-v23 .book-backdrop::after{background:rgba(8,20,24,var(--exq-hero-overlay))}
.book-v23.exq-hero-bg-color .book-backdrop,.book-v23.exq-hero-bg-gradient .book-backdrop,.book-v23.exq-hero-bg-image .book-backdrop{display:none}
.book-v23.exq-hero-bg-gradient .book-hero{background:linear-gradient(125deg,var(--exq-hero-background) 0%,var(--exq-hero-background-secondary) 100%)!important}
.book-v23.exq-hero-bg-image .book-hero::before{background:linear-gradient(rgba(8,20,24,var(--exq-hero-overlay)),rgba(8,20,24,var(--exq-hero-overlay))),var(--exq-hero-image) center/cover no-repeat}
.book-v23.exq-hero-position-top .book-hero::before{background-position:top}.book-v23.exq-hero-position-bottom .book-hero::before{background-position:bottom}.book-v23.exq-hero-position-left .book-hero::before{background-position:left}.book-v23.exq-hero-position-right .book-hero::before{background-position:right}
.book-v23.exq-hero-height-compact .book-hero,.book-v23.exq-hero-height-compact .book-hero-inner{min-height:610px}
.book-v23.exq-hero-height-cinema .book-hero,.book-v23.exq-hero-height-cinema .book-hero-inner{min-height:min(940px,92vh)}
.book-v23 .book-hero-cover img{width:min(65%,390px);transition:width .25s ease,max-height .25s ease,transform .25s ease}
.book-v23.exq-hero-cover-small .book-hero-cover img{width:min(52%,300px);max-height:480px}
.book-v23.exq-hero-cover-large .book-hero-cover img{width:min(86%,520px);max-height:720px}
.book-v23.exq-builder-hero-cover-right .book-hero-cover{order:2}.book-v23.exq-builder-hero-cover-right .book-hero-copy{order:1}
.book-v23.exq-builder-hero-centered .book-hero-inner{grid-template-columns:1fr;gap:36px;align-content:center;text-align:center}
.book-v23.exq-builder-hero-centered .book-hero-cover img{width:min(28vw,330px);max-height:410px}
.book-v23.exq-builder-hero-centered .book-hero-copy{display:grid;justify-items:center}.book-v23.exq-builder-hero-centered .crumbs{justify-content:center;margin-bottom:12px}.book-v23.exq-builder-hero-centered .book-hook,.book-v23.exq-builder-hero-centered .book-purchase{margin-inline:auto}
.book-v23.exq-builder-hero-immersive .book-hero-inner{grid-template-columns:1.05fr .95fr;max-width:none;padding-inline:clamp(35px,8vw,150px)}
.book-v23.exq-builder-hero-immersive .book-hero-cover{order:2;align-self:end;height:88%}.book-v23.exq-builder-hero-immersive .book-hero-cover img{width:min(86%,560px);max-height:780px;transform:translateY(8%);filter:drop-shadow(35px 45px 65px rgba(0,0,0,.38))}
.book-v23.exq-builder-hero-immersive .book-hero-copy{order:1;position:relative;z-index:2}
.book-v23.exq-hero-align-center:not(.exq-builder-hero-centered) .book-hero-copy{text-align:center;display:grid;justify-items:center}.book-v23.exq-hero-align-center:not(.exq-builder-hero-centered) .crumbs{justify-content:center}.book-v23.exq-hero-align-center:not(.exq-builder-hero-centered) .book-hook{margin-inline:auto}

/* Préréglages : chaque preset reste ensuite entièrement ajustable */
.book-v23.exq-builder-preset-spotlight .book-hero::after{content:"ÉDITION\AEX ÆQUO";white-space:pre;position:absolute;right:-.04em;bottom:-.15em;color:color-mix(in srgb,var(--exq-hero-text) 7%,transparent);font:400 clamp(130px,23vw,390px)/.62 var(--serif);letter-spacing:-.08em;pointer-events:none}
.book-v23.exq-builder-preset-nocturne .book-hero-cover img{box-shadow:0 55px 110px rgba(0,0,0,.62)}
.book-v23.exq-builder-preset-nocturne .book-card :is(h2,h3),.book-v23.exq-builder-preset-nocturne .section-heading h2{color:var(--exq-builder-text)}
.book-v23.exq-builder-preset-minimal .book-hero{border-block:1px solid color-mix(in srgb,var(--exq-builder-text) 15%,transparent)}
.book-v23.exq-builder-preset-minimal .book-hero-cover img{box-shadow:18px 24px 50px rgba(20,54,63,.15)}

/* Styles indépendants de section */
.book-v23 [data-exq-builder-block]:not(.book-hero){position:relative;color:var(--exq-block-text,var(--exq-builder-text));transition:background-color .22s ease,color .22s ease,max-width .22s ease,padding .22s ease}
.book-v23 [data-exq-builder-block]:not(.book-hero) :is(h1,h2,h3,h4,strong){color:inherit}
.book-v23 [data-exq-builder-block]:not(.book-hero) .eyebrow,.book-v23 [data-exq-builder-block]:not(.book-hero) .text-link{color:var(--exq-block-accent,var(--exq-builder-accent))}
.book-v23 .exq-block-surface-default{background:transparent}
.book-v23 .exq-block-surface-transparent{background:transparent!important}
.book-v23 .exq-block-surface-paper{background:var(--exq-builder-surface)!important;color:var(--exq-builder-text)!important}
.book-v23 .exq-block-surface-dark{background:#14363f!important;color:#fffdf9!important;--exq-block-accent:#e9dcb1}
.book-v23 .exq-block-surface-accent{background:var(--exq-builder-accent)!important;color:#fffdf9!important;--exq-block-accent:#e9dcb1}
.book-v23 .exq-block-surface-custom{background:var(--exq-block-background)!important;color:var(--exq-block-text)!important}
.book-v23 .exq-block-surface-dark :is(.book-body-nav span,.book-body-nav a,.book-details-grid span,.book-details-grid strong),.book-v23 .exq-block-surface-accent :is(.book-body-nav span,.book-body-nav a,.book-details-grid span,.book-details-grid strong){color:inherit;border-color:color-mix(in srgb,currentColor 25%,transparent)}
.book-v23 .exq-block-width-wide.wrap,.book-v23 .exq-block-width-wide>.wrap{width:min(94vw,1600px);max-width:none}
.book-v23 .exq-block-width-full.wrap,.book-v23 .exq-block-width-full>.wrap{width:100%;max-width:none;padding-inline:clamp(24px,5vw,90px)}
.book-v23 .exact-meta-list.exq-block-width-wide,.book-v23 .exact-meta-list.exq-block-width-full{width:100%;max-width:none}
.book-v23 .exq-block-padding-compact{padding-block:55px!important}.book-v23 .exact-meta-list.exq-block-padding-compact{padding-block:0!important}
.book-v23 .exq-block-padding-generous{padding-block:150px!important}.book-v23 .exact-meta-list.exq-block-padding-generous{padding-block:34px!important}
.book-v23 .exq-block-frame-line{border:1px solid color-mix(in srgb,currentColor 18%,transparent);border-top:4px solid var(--exq-block-accent,var(--exq-builder-accent))}
.book-v23 .exq-block-frame-card{margin-block:42px;border:1px solid color-mix(in srgb,currentColor 14%,transparent);border-radius:var(--exq-builder-radius,18px);box-shadow:0 32px 85px rgba(20,54,63,.12)}
.book-v23 .author-feature.exq-block-surface-default{background:var(--exq-builder-surface)}
.book-v23 .book-resource-section.exq-block-surface-default{background:linear-gradient(135deg,var(--exq-builder-surface),var(--exq-builder-background))}
.book-v23 .book-related-section.exq-block-surface-default{background:var(--exq-builder-surface)}
.book-v23 .exq-block-surface-dark .book-resources-grid>*,.book-v23 .exq-block-surface-accent .book-resources-grid>*{background:color-mix(in srgb,currentColor 8%,transparent);border-color:color-mix(in srgb,currentColor 22%,transparent)}
.book-v23 .exq-block-surface-dark .book-editions-grid article,.book-v23 .exq-block-surface-accent .book-editions-grid article{color:inherit;background:color-mix(in srgb,currentColor 8%,transparent);border-color:color-mix(in srgb,currentColor 22%,transparent)}
.book-v23 .exq-block-surface-dark .book-card,.book-v23 .exq-block-surface-accent .book-card{color:inherit}

.book-v23 .exq-builder-empty{grid-column:1/-1;padding:42px;border:1px dashed rgba(20,54,63,.24);color:rgba(20,54,63,.58);font:700 11px/1.5 var(--sans);letter-spacing:.08em;text-align:center;text-transform:uppercase}

@media(max-width:900px){
  .book-v23.exq-builder-hero-immersive .book-hero-inner{grid-template-columns:.8fr 1.2fr;padding-inline:30px}
  .book-v23.exq-builder-hero-centered .book-hero-cover img{width:min(45vw,310px)}
}
@media(max-width:720px){
  .book-v23.exq-builder-title-impact .book-hero-copy h1{font-size:68px}
  .book-v23.exq-builder-hero-cover-right .book-hero-cover,.book-v23.exq-builder-hero-cover-right .book-hero-copy,.book-v23.exq-builder-hero-immersive .book-hero-cover,.book-v23.exq-builder-hero-immersive .book-hero-copy{order:initial}
  .book-v23.exq-builder-hero-immersive .book-hero-inner{grid-template-columns:1fr;padding-inline:20px}.book-v23.exq-builder-hero-immersive .book-hero-cover{height:auto;align-self:auto}.book-v23.exq-builder-hero-immersive .book-hero-cover img{transform:none;max-height:420px}
  .book-v23.exq-hero-height-cinema .book-hero,.book-v23.exq-hero-height-cinema .book-hero-inner{min-height:780px}
  .book-v23 .exq-block-width-full.wrap,.book-v23 .exq-block-width-full>.wrap{padding-inline:20px}
  .book-v23 .exq-block-frame-card{margin-inline:12px}
}


/* 2.32.3 — Adaptive single-book hero title
   Server-side title classes keep every title readable and balanced without
   relying on viewport-only font sizing. */
body.single-exq_book .book-v23 .book-hero-copy h1{
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  max-width:none;
  transition:font-size .2s ease,line-height .2s ease,max-width .2s ease;
}
body.single-exq_book .book-v23.exq-title-short .book-hero-copy h1{
  max-width:680px;
  font-size:clamp(76px,7vw,116px)!important;
  line-height:.84!important;
  letter-spacing:-.06em!important;
}
body.single-exq_book .book-v23.exq-title-medium .book-hero-copy h1{
  max-width:760px;
  font-size:clamp(64px,5.9vw,96px)!important;
  line-height:.88!important;
  letter-spacing:-.056em!important;
}
body.single-exq_book .book-v23.exq-title-long .book-hero-copy h1{
  max-width:820px;
  font-size:clamp(52px,4.75vw,76px)!important;
  line-height:.93!important;
  letter-spacing:-.048em!important;
}
body.single-exq_book .book-v23.exq-title-xlong .book-hero-copy h1{
  max-width:860px;
  font-size:clamp(44px,3.95vw,64px)!important;
  line-height:.98!important;
  letter-spacing:-.04em!important;
}
body.single-exq_book .book-v23.exq-title-has-long-word .book-hero-copy h1{
  overflow-wrap:anywhere;
  letter-spacing:-.035em!important;
}
body.single-exq_book .book-v23.exq-title-long:not(.exq-builder-hero-centered):not(.exq-builder-hero-immersive) .book-hero-inner{
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:clamp(48px,6vw,94px);
}
body.single-exq_book .book-v23.exq-title-xlong:not(.exq-builder-hero-centered):not(.exq-builder-hero-immersive) .book-hero-inner{
  grid-template-columns:minmax(270px,.68fr) minmax(0,1.32fr);
  gap:clamp(42px,5.2vw,82px);
}
body.single-exq_book .book-v23.exq-title-short:not(.exq-hero-height-cinema) .book-hero,
body.single-exq_book .book-v23.exq-title-short:not(.exq-hero-height-cinema) .book-hero-inner{
  min-height:690px;
}
body.single-exq_book .book-v23.exq-title-xlong:not(.exq-hero-height-compact) .book-hero,
body.single-exq_book .book-v23.exq-title-xlong:not(.exq-hero-height-compact) .book-hero-inner{
  min-height:810px;
}
body.single-exq_book .book-v23.exq-title-long .book-hook,
body.single-exq_book .book-v23.exq-title-xlong .book-hook{
  max-width:700px;
}
@media(max-width:1180px){
  body.single-exq_book .book-v23.exq-title-short .book-hero-copy h1{font-size:clamp(66px,7.4vw,92px)!important}
  body.single-exq_book .book-v23.exq-title-medium .book-hero-copy h1{font-size:clamp(58px,6.6vw,82px)!important}
  body.single-exq_book .book-v23.exq-title-long .book-hero-copy h1{font-size:clamp(48px,5.6vw,68px)!important}
  body.single-exq_book .book-v23.exq-title-xlong .book-hero-copy h1{font-size:clamp(42px,4.8vw,58px)!important}
}
@media(max-width:980px){
  body.single-exq_book .book-v23.exq-title-short .book-hero-copy h1{font-size:clamp(58px,9vw,76px)!important}
  body.single-exq_book .book-v23.exq-title-medium .book-hero-copy h1{font-size:clamp(52px,8.2vw,68px)!important}
  body.single-exq_book .book-v23.exq-title-long .book-hero-copy h1{font-size:clamp(46px,7.4vw,60px)!important;line-height:.96!important}
  body.single-exq_book .book-v23.exq-title-xlong .book-hero-copy h1{font-size:clamp(40px,6.6vw,54px)!important;line-height:1!important}
  body.single-exq_book .book-v23.exq-title-xlong:not(.exq-hero-height-compact) .book-hero,
  body.single-exq_book .book-v23.exq-title-xlong:not(.exq-hero-height-compact) .book-hero-inner{min-height:auto}
}
@media(max-width:620px){
  body.single-exq_book .book-v23 .book-hero-copy h1{max-width:100%!important;text-wrap:pretty}
  body.single-exq_book .book-v23.exq-title-short .book-hero-copy h1{font-size:clamp(48px,13vw,62px)!important}
  body.single-exq_book .book-v23.exq-title-medium .book-hero-copy h1{font-size:clamp(43px,11.5vw,56px)!important;line-height:.94!important}
  body.single-exq_book .book-v23.exq-title-long .book-hero-copy h1{font-size:clamp(38px,10vw,48px)!important;line-height:.99!important}
  body.single-exq_book .book-v23.exq-title-xlong .book-hero-copy h1{font-size:clamp(34px,9vw,43px)!important;line-height:1.03!important;letter-spacing:-.03em!important}
}


/* 2.33.0 — Lecteur Calaméo éditorial */
.book-v23 .book-calameo-section{position:relative;overflow:hidden;padding:clamp(64px,7vw,108px) 0;background:radial-gradient(circle at 82% 18%,rgba(255,255,255,.055),transparent 34%),linear-gradient(145deg,#123f47,#082f36 78%);color:#fff}
.book-v23 .book-calameo-section::before{content:"Æ";position:absolute;right:-2vw;bottom:-10vw;color:rgba(255,255,255,.035);font:italic clamp(190px,28vw,430px)/1 Georgia,serif;pointer-events:none}
.book-v23 .book-calameo-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(250px,.62fr) minmax(0,1.38fr);gap:clamp(38px,6vw,88px);align-items:center}
.book-v23 .book-calameo-copy{max-width:430px}.book-v23 .book-calameo-copy .eyebrow{color:#e7c98d}
.book-v23 .book-calameo-copy h2{margin:18px 0 22px;color:#fff;font:400 clamp(46px,5.2vw,76px)/.92 Georgia,serif;letter-spacing:-.055em;text-wrap:balance}
.book-v23 .book-calameo-copy p{margin:0 0 30px;color:rgba(255,255,255,.72);font:17px/1.68 Georgia,serif}.book-v23 .book-calameo-open{display:inline-flex}
.book-v23 .book-calameo-reader{position:relative;padding:18px;background:#f7f0e5;border:1px solid rgba(255,255,255,.16);box-shadow:0 34px 76px rgba(0,0,0,.30)}
.book-v23 .book-calameo-reader::before{content:"";position:absolute;left:18px;right:18px;top:0;height:3px;background:var(--exq-builder-accent,#8B1010)}
.book-v23 .book-calameo-reader__label{min-height:58px;padding:8px 4px 14px;display:flex;justify-content:space-between;gap:24px;align-items:flex-end;color:#14363f;border-bottom:1px solid rgba(20,54,63,.12)}
.book-v23 .book-calameo-reader__label span{color:var(--exq-builder-accent,#8B1010);font:800 8px/1.2 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.book-v23 .book-calameo-reader__label strong{max-width:68%;text-align:right;font:400 16px/1.2 Georgia,serif}
.book-v23 .book-calameo-frame{position:relative;width:100%;min-height:430px;aspect-ratio:16/10;margin-top:16px;overflow:hidden;background:#e8e0d5}
.book-v23 .book-calameo-frame iframe{width:100%;height:100%;min-height:430px;display:block;border:0;background:#fff}
.book-v23 .book-calameo-placeholder{width:100%;height:100%;min-height:430px;display:grid;place-content:center;gap:12px;text-align:center;color:#14363f;background:linear-gradient(145deg,#eee5d8,#faf6ef)}
.book-v23 .book-calameo-placeholder span{color:var(--exq-builder-accent,#8B1010);font:800 9px/1 system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.book-v23 .book-calameo-placeholder strong{max-width:300px;font:400 20px/1.35 Georgia,serif}
@media(max-width:980px){.book-v23 .book-calameo-layout{grid-template-columns:1fr;gap:36px}.book-v23 .book-calameo-copy{max-width:720px}.book-v23 .book-calameo-frame,.book-v23 .book-calameo-frame iframe,.book-v23 .book-calameo-placeholder{min-height:360px}}
@media(max-width:620px){.book-v23 .book-calameo-section{padding:56px 0}.book-v23 .book-calameo-copy h2{font-size:clamp(40px,12vw,56px)}.book-v23 .book-calameo-reader{padding:12px}.book-v23 .book-calameo-reader__label{display:block;min-height:0;padding:7px 2px 12px}.book-v23 .book-calameo-reader__label strong{display:block;max-width:none;margin-top:8px;text-align:left;font-size:14px}.book-v23 .book-calameo-frame{aspect-ratio:3/4}.book-v23 .book-calameo-frame,.book-v23 .book-calameo-frame iframe,.book-v23 .book-calameo-placeholder{min-height:440px}}


/* 2.33.2 — Lecteur Calaméo rééquilibré */
.book-v23 .book-calameo-section{
  position:relative;
  overflow:hidden;
  padding:clamp(64px,6.5vw,96px) 0;
  background:#f2ece2!important;
  color:#123b43!important;
}
.book-v23 .book-calameo-section::before{
  display:none!important;
}
.book-v23 .book-calameo-layout{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(260px,.58fr) minmax(0,1.42fr);
  gap:clamp(34px,5vw,72px);
  align-items:center;
}
.book-v23 .book-calameo-copy{
  max-width:390px;
  padding:10px 0;
}
.book-v23 .book-calameo-copy .eyebrow,
.book-v23 .book-calameo-copy .eyebrow.light{
  color:var(--exq-builder-accent,#8B1010)!important;
}
.book-v23 .book-calameo-copy h2{
  margin:16px 0 18px;
  color:#123b43!important;
  font:400 clamp(40px,4.2vw,62px)/.96 Georgia,serif!important;
  letter-spacing:-.045em!important;
  text-wrap:balance;
}
.book-v23 .book-calameo-copy p{
  max-width:360px;
  margin:0 0 26px;
  color:rgba(18,59,67,.74)!important;
  font:17px/1.65 Georgia,serif!important;
}
.book-v23 .book-calameo-open{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  background:#ead9a4!important;
  border-color:#ead9a4!important;
  color:#123b43!important;
  box-shadow:none!important;
}
.book-v23 .book-calameo-open:hover{
  background:#f0e1b3!important;
  border-color:#f0e1b3!important;
  color:#123b43!important;
}
.book-v23 .book-calameo-reader{
  position:relative;
  width:100%;
  max-width:790px;
  margin-left:auto;
  padding:16px;
  background:#fbf8f2!important;
  border:1px solid rgba(18,59,67,.12)!important;
  box-shadow:0 24px 58px rgba(18,59,67,.14)!important;
}
.book-v23 .book-calameo-reader::before{
  left:16px;
  right:16px;
  height:2px;
}
.book-v23 .book-calameo-reader__label{
  min-height:50px;
  padding:7px 4px 12px;
  align-items:center;
  color:#123b43!important;
}
.book-v23 .book-calameo-reader__label span{
  color:var(--exq-builder-accent,#8B1010)!important;
}
.book-v23 .book-calameo-reader__label strong{
  max-width:70%;
  color:#123b43!important;
  font-size:15px!important;
}
.book-v23 .book-calameo-frame{
  width:100%;
  height:clamp(410px,43vw,540px);
  min-height:0!important;
  aspect-ratio:auto!important;
  margin-top:14px;
  overflow:hidden;
  background:#fff!important;
}
.book-v23 .book-calameo-frame iframe{
  width:100%;
  height:100%;
  min-height:0!important;
  display:block;
  border:0;
  background:#fff;
}
.book-v23 .book-calameo-placeholder{
  min-height:0!important;
  height:100%;
}
@media(max-width:980px){
  .book-v23 .book-calameo-layout{
    grid-template-columns:1fr;
    gap:30px;
  }
  .book-v23 .book-calameo-copy{
    max-width:680px;
  }
  .book-v23 .book-calameo-copy p{
    max-width:620px;
  }
  .book-v23 .book-calameo-reader{
    max-width:none;
    margin-left:0;
  }
  .book-v23 .book-calameo-frame{
    height:clamp(390px,65vw,520px);
  }
}
@media(max-width:620px){
  .book-v23 .book-calameo-section{
    padding:52px 0;
  }
  .book-v23 .book-calameo-copy h2{
    font-size:clamp(36px,11vw,50px)!important;
  }
  .book-v23 .book-calameo-copy p{
    font-size:16px!important;
  }
  .book-v23 .book-calameo-reader{
    padding:10px;
  }
  .book-v23 .book-calameo-reader__label{
    display:block;
    min-height:0;
    padding:8px 2px 11px;
  }
  .book-v23 .book-calameo-reader__label strong{
    display:block;
    max-width:none;
    margin-top:7px;
    text-align:left;
    font-size:14px!important;
  }
  .book-v23 .book-calameo-frame{
    height:520px;
  }
}


/* 2.34.0 — Fiche livre : rythme éditorial et sections mieux différenciées */
body.single-exq_book .book-v23{
  --exq-book-paper:#fffdf9;
  --exq-book-paper-warm:#f4eee4;
  --exq-book-paper-deep:#eae2d6;
  --exq-book-ink:#14363f;
  --exq-book-red:#8b1010;
  --exq-book-gold:#dfc98f;
  background:var(--exq-book-paper);
}
body.single-exq_book .book-v23 [data-exq-builder-block]:not(.book-hero){
  isolation:isolate;
}
body.single-exq_book .book-v23 [data-exq-builder-block]:not(.book-hero) > *{
  position:relative;
  z-index:1;
}

/* Full-bleed section bands preserve the inner .wrap widths and Studio controls. */
body.single-exq_book .book-v23 .book-body.exq-block-surface-default::before,
body.single-exq_book .book-v23 .author-feature.exq-block-surface-default::before,
body.single-exq_book .book-v23 .book-editions-section.exq-block-surface-default::before,
body.single-exq_book .book-v23 .book-related-section.exq-block-surface-default::before,
body.single-exq_book .book-v23 .book-recommend-section.exq-block-surface-default::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  pointer-events:none;
}
body.single-exq_book .book-v23 .book-body.exq-block-surface-default::before{
  background:var(--exq-book-paper);
  border-bottom:1px solid rgba(20,54,63,.08);
}
body.single-exq_book .book-v23 .author-feature.exq-block-surface-default::before{
  background:linear-gradient(135deg,#f0e9df 0%,#f7f2ea 100%);
  border-block:1px solid rgba(20,54,63,.07);
}
body.single-exq_book .book-v23 .book-editions-section.exq-block-surface-default::before{
  background:#fffaf3;
  border-block:1px solid rgba(20,54,63,.07);
}
body.single-exq_book .book-v23 .book-related-section.exq-block-surface-default::before{
  background:linear-gradient(135deg,#eae2d6,#f2ebe1);
  border-block:1px solid rgba(20,54,63,.08);
}
body.single-exq_book .book-v23 .book-recommend-section.exq-block-surface-default::before{
  background:var(--exq-book-paper);
  border-bottom:1px solid rgba(20,54,63,.07);
}

/* A coherent section-heading signature without decorative numbering. */
body.single-exq_book .book-v23 :is(.book-editions-section,.book-related-section,.book-recommend-section) .section-heading{
  position:relative;
  margin-bottom:34px;
  padding-top:19px;
  border-top:1px solid rgba(20,54,63,.14);
}
body.single-exq_book .book-v23 :is(.book-editions-section,.book-related-section,.book-recommend-section) .section-heading::before{
  content:"";
  position:absolute;
  left:0;
  top:-1px;
  width:78px;
  height:3px;
  background:var(--exq-block-accent,var(--exq-builder-accent));
}
body.single-exq_book .book-v23 :is(.book-editions-section,.book-related-section,.book-recommend-section) .section-heading h2{
  max-width:760px;
  margin-top:9px;
  font-size:clamp(38px,4.4vw,62px);
  line-height:.96;
  letter-spacing:-.045em;
  text-wrap:balance;
}

/* Summary: a clearer reading column and a useful, restrained sticky index. */
body.single-exq_book .book-v23 .book-body.exq-block-surface-default{
  padding-top:clamp(88px,9vw,138px)!important;
  padding-bottom:clamp(94px,10vw,150px)!important;
  grid-template-columns:minmax(150px,190px) minmax(0,760px);
  justify-content:center;
  column-gap:clamp(58px,8vw,126px);
}
body.single-exq_book .book-v23 .book-body-nav{
  position:sticky;
  top:135px;
  align-self:start;
  padding:22px 0 20px 18px;
  border-left:2px solid rgba(20,54,63,.12);
}
body.single-exq_book .book-v23 .book-body-nav a{
  position:relative;
  padding:10px 0;
  color:rgba(20,54,63,.52);
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
body.single-exq_book .book-v23 .book-body-nav a::before{
  content:"";
  position:absolute;
  left:-20px;
  top:50%;
  width:5px;
  height:5px;
  border-radius:50%;
  background:transparent;
  transform:translateY(-50%);
}
body.single-exq_book .book-v23 .book-body-nav a:hover,
body.single-exq_book .book-v23 .book-body-nav a.active{
  color:var(--exq-builder-accent);
}
body.single-exq_book .book-v23 .book-body-nav a:hover::before,
body.single-exq_book .book-v23 .book-body-nav a.active::before{
  background:var(--exq-builder-accent);
}
body.single-exq_book .book-v23 .book-body article{
  min-width:0;
}
body.single-exq_book .book-v23 .book-body article > .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
}
body.single-exq_book .book-v23 .book-body article > .eyebrow::after{
  content:"";
  width:48px;
  height:1px;
  background:currentColor;
  opacity:.35;
}
body.single-exq_book .book-v23 .book-lead{
  color:#183d45;
  font-size:clamp(18px,1.5vw,21px);
  line-height:1.78;
}
body.single-exq_book .book-v23 .book-lead > :first-child{
  margin-top:0;
}
body.single-exq_book .book-v23 .book-lead :is(h1,h2,h3){
  margin:0 0 30px;
  color:var(--exq-builder-text);
  font-size:clamp(25px,2.5vw,36px);
  line-height:1.12;
  letter-spacing:-.025em;
  text-align:left;
}
body.single-exq_book .book-v23 .book-lead p{
  margin:0 0 1.25em;
}
body.single-exq_book .book-v23 .book-details-grid{
  margin-top:58px;
  padding-top:22px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  border-top:1px solid rgba(20,54,63,.12);
}
body.single-exq_book .book-v23 .book-details-grid > span{
  min-height:92px;
  padding:17px 18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border:1px solid rgba(20,54,63,.08);
  background:#faf6ef;
}
body.single-exq_book .book-v23 .book-details-grid strong{
  margin-top:12px;
  font-family:var(--serif);
  font-size:17px;
  font-weight:400;
}

/* Author: more incarnated, with an editorial card rather than a loose strip. */
body.single-exq_book .book-v23 .author-feature.exq-block-surface-default{
  width:min(1180px,calc(100% - 80px));
  max-width:1180px;
  margin-inline:auto;
  padding-top:clamp(74px,8vw,116px)!important;
  padding-bottom:clamp(74px,8vw,116px)!important;
  grid-template-columns:minmax(190px,260px) minmax(0,680px);
  justify-content:center;
  gap:clamp(44px,7vw,100px);
}
body.single-exq_book .book-v23 .author-feature::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:clamp(38px,4vw,58px) 0;
  border:1px solid rgba(20,54,63,.10);
  background:rgba(255,253,249,.55);
  box-shadow:0 20px 54px rgba(20,54,63,.06);
}
body.single-exq_book .book-v23 .feature-portrait{
  position:relative;
  width:100%;
  max-width:240px;
  aspect-ratio:1;
  margin:auto;
  border:1px solid rgba(20,54,63,.12);
  background:#123b43;
  box-shadow:18px 22px 0 rgba(139,16,16,.07);
  overflow:hidden;
}
body.single-exq_book .book-v23 .feature-portrait::after{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(231,201,141,.35);
  pointer-events:none;
}
body.single-exq_book .book-v23 .feature-portrait img{
  width:100%;
  height:100%;
  object-fit:cover;
}
body.single-exq_book .book-v23 .feature-portrait > span{
  display:grid;
  width:100%;
  height:100%;
  place-items:center;
  color:#e7c98d;
  font:400 clamp(44px,6vw,82px)/1 var(--serif);
}
body.single-exq_book .book-v23 .author-feature h2{
  max-width:660px;
  margin:12px 0 18px;
  font-size:clamp(38px,4.5vw,62px);
  line-height:.96;
  letter-spacing:-.045em;
}
body.single-exq_book .book-v23 .author-feature-bio{
  max-width:650px;
  color:rgba(20,54,63,.78);
  font-size:18px;
  line-height:1.72;
}
body.single-exq_book .book-v23 .author-feature .text-link{
  display:inline-flex;
  margin-top:20px;
}

/* Calaméo gets a cleaner top transition from the author block. */
body.single-exq_book .book-v23 .book-calameo-section{
  border-top:1px solid rgba(20,54,63,.08);
  border-bottom:1px solid rgba(20,54,63,.08);
}
body.single-exq_book .book-v23 .book-calameo-copy h2{
  max-width:420px;
}

/* Editions: the commercial choice becomes a real section, not a tiny card. */
body.single-exq_book .book-v23 .book-editions-section.exq-block-surface-default{
  padding-top:clamp(78px,8vw,116px)!important;
  padding-bottom:clamp(84px,9vw,126px)!important;
}
body.single-exq_book .book-v23 .book-editions-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));
  gap:20px;
}
body.single-exq_book .book-v23 .book-editions-grid article{
  min-height:250px;
  padding:26px;
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  align-items:center;
  gap:26px;
  border:1px solid rgba(20,54,63,.11);
  border-top:3px solid var(--exq-builder-accent);
  background:#fffdf9;
  box-shadow:0 18px 45px rgba(20,54,63,.07);
}
body.single-exq_book .book-v23 .book-editions-grid article > img{
  width:112px;
  max-height:170px;
  margin:auto;
  object-fit:contain;
  filter:drop-shadow(10px 14px 15px rgba(20,54,63,.16));
}
body.single-exq_book .book-v23 .book-editions-grid h3{
  margin:8px 0 6px;
  font-size:clamp(25px,2.5vw,34px);
  line-height:1;
}
body.single-exq_book .book-v23 .book-editions-grid article > div > strong{
  display:block;
  margin:8px 0;
  color:var(--exq-builder-accent);
  font:400 21px/1 var(--serif);
}
body.single-exq_book .book-v23 .book-editions-grid article p{
  min-height:20px;
  margin:0 0 18px;
  color:rgba(20,54,63,.56);
  font-size:11px;
}
body.single-exq_book .book-v23 .book-editions-grid .button{
  min-height:44px;
  padding-inline:18px;
}

/* Related and recommendations: distinct bands and stronger card rhythm. */
body.single-exq_book .book-v23 :is(.book-related-section,.book-recommend-section).exq-block-surface-default{
  padding-top:clamp(82px,8vw,120px)!important;
  padding-bottom:clamp(88px,9vw,132px)!important;
}
body.single-exq_book .book-v23 :is(.book-related-section,.book-recommend-section) .book-grid{
  gap:clamp(18px,2vw,28px);
}
body.single-exq_book .book-v23 :is(.book-related-section,.book-recommend-section) .book-card{
  transition:transform .24s ease,box-shadow .24s ease;
}
body.single-exq_book .book-v23 :is(.book-related-section,.book-recommend-section) .book-card:hover{
  transform:translateY(-5px);
  box-shadow:0 22px 46px rgba(20,54,63,.10);
}

/* “Du même auteur” injected by the commerce layer joins the same visual language. */
body.single-exq_book .exq-book-author-more{
  position:relative;
  isolation:isolate;
  margin-top:0;
  margin-bottom:0;
  padding-top:clamp(82px,8vw,118px);
  padding-bottom:clamp(88px,9vw,130px);
}
body.single-exq_book .exq-book-author-more::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:#f1eadf;
  border-block:1px solid rgba(20,54,63,.08);
}
body.single-exq_book .exq-book-author-more>header{
  position:relative;
  margin-bottom:32px;
  padding-top:19px;
  border-top:1px solid rgba(20,54,63,.14);
}
body.single-exq_book .exq-book-author-more>header::before{
  content:"";
  position:absolute;
  left:0;
  top:-1px;
  width:78px;
  height:3px;
  background:#8b1010;
}
body.single-exq_book .exq-book-author-more>header h2{
  max-width:820px;
  margin-top:9px;
  font-size:clamp(38px,4.4vw,60px);
  line-height:.97;
  letter-spacing:-.04em;
}
body.single-exq_book .exq-book-commerce-assurances{
  margin-top:0;
  padding-top:52px;
}

@media(max-width:980px){
  body.single-exq_book .book-v23 .book-body.exq-block-surface-default{
    grid-template-columns:1fr;
    row-gap:42px;
  }
  body.single-exq_book .book-v23 .book-body-nav{
    position:static;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    padding:0 0 16px;
    border-left:0;
    border-bottom:1px solid rgba(20,54,63,.12);
  }
  body.single-exq_book .book-v23 .book-body-nav a{
    padding:8px 11px;
    border:1px solid rgba(20,54,63,.10);
    border-radius:999px;
    background:#faf6ef;
  }
  body.single-exq_book .book-v23 .book-body-nav a::before{display:none}
  body.single-exq_book .book-v23 .author-feature.exq-block-surface-default{
    grid-template-columns:minmax(150px,220px) minmax(0,1fr);
    width:min(100% - 50px,900px);
  }
}
@media(max-width:700px){
  body.single-exq_book .book-v23 .book-body.exq-block-surface-default{
    padding-top:70px!important;
    padding-bottom:78px!important;
  }
  body.single-exq_book .book-v23 .book-details-grid{
    grid-template-columns:1fr;
    margin-top:42px;
  }
  body.single-exq_book .book-v23 .book-details-grid > span{
    min-height:76px;
  }
  body.single-exq_book .book-v23 .author-feature.exq-block-surface-default{
    width:calc(100% - 28px);
    grid-template-columns:1fr;
    gap:28px;
    padding-top:64px!important;
    padding-bottom:68px!important;
  }
  body.single-exq_book .book-v23 .author-feature::after{
    inset:28px 0;
  }
  body.single-exq_book .book-v23 .feature-portrait{
    width:170px;
  }
  body.single-exq_book .book-v23 .book-editions-grid article{
    grid-template-columns:86px minmax(0,1fr);
    min-height:210px;
    padding:19px;
    gap:18px;
  }
  body.single-exq_book .book-v23 .book-editions-grid article > img{
    width:78px;
    max-height:120px;
  }
  body.single-exq_book .book-v23 :is(.book-related-section,.book-recommend-section).exq-block-surface-default,
  body.single-exq_book .exq-book-author-more{
    padding-top:68px!important;
    padding-bottom:76px!important;
  }
}


/* 2.54.2 — Icône audiolivre sur la fiche produit */
.book-v23 .book-format-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:14px 0 8px;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:var(--exq-hero-text);
  box-shadow:0 16px 34px rgba(0,0,0,.12);
  backdrop-filter:blur(8px);
}
.book-v23 .book-format-badge__icon{
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.16);
  flex:0 0 30px;
}
.book-v23 .book-format-badge__icon svg{
  width:16px;
  height:16px;
  display:block;
}
.book-v23 .book-format-badge__label{
  font:800 12px/1 var(--sans,system-ui,sans-serif);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.book-v23.is-audiobook-page .book-hero-copy .book-hook{
  margin-top:10px;
}
.book-v23.is-audiobook-page .book-purchase{
  margin-top:22px;
}
@media(max-width:620px){
  .book-v23 .book-format-badge{
    margin-top:12px;
    padding:9px 12px;
    gap:8px;
  }
  .book-v23 .book-format-badge__icon{
    width:26px;
    height:26px;
    flex-basis:26px;
  }
  .book-v23 .book-format-badge__icon svg{
    width:14px;
    height:14px;
  }
  .book-v23 .book-format-badge__label{
    font-size:11px;
    letter-spacing:.14em;
  }
}


/* 2.54.4 — Formats reliés entre plusieurs fiches du même ouvrage */
.book-v23 .book-edition-card{position:relative}
.book-v23 .book-edition-card__cover{display:block;align-self:stretch}
.book-v23 .book-edition-card__cover img{height:100%;object-fit:cover}
.book-v23 .book-edition-current{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin:0 0 10px;
  padding:7px 10px;
  border-radius:999px;
  background:var(--exq-builder-accent,#8b1010);
  color:#fff;
  font:800 11px/1 var(--sans,system-ui,sans-serif);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.book-v23 .book-edition-page-link{
  display:inline-flex;
  margin:4px 0 16px;
  color:var(--exq-builder-accent,#8b1010);
  font:750 14px/1.35 var(--sans,system-ui,sans-serif);
  text-decoration:none;
}
.book-v23 .book-edition-page-link:hover{text-decoration:underline}
.book-v23 .book-editions-grid article.is-current-edition{
  outline:2px solid color-mix(in srgb,var(--exq-builder-accent,#8b1010) 55%,transparent);
  outline-offset:-2px;
}
@media(max-width:620px){
  .book-v23 .book-edition-current{font-size:10px}
  .book-v23 .book-edition-page-link{font-size:14px}
}
