/* ============================================================
   L'ENTREPRISE-PROPAGANDE — page de vente
   Palette : noir profond, crème papier, un seul accent rouge sec
   ============================================================ */

:root{
  --noir:#0A0A0A;
  --noir-panel:#121110;
  --noir-line:rgba(239,233,221,.14);
  --noir-line-soft:rgba(239,233,221,.07);
  --creme:#ECE4D3;
  --creme-2:#E4DBC6;
  --ink:#16130F;
  --ink-soft:rgba(22,19,15,.66);
  --ink-faint:rgba(22,19,15,.42);
  --creme-line:rgba(22,19,15,.18);
  --paper-light:#F4EEE0;
  --rouge:#971b13;
  --rouge-bright:#b22418;
  --serif:Georgia,'Times New Roman','Iowan Old Style',serif;
  --mono:'Courier New',ui-monospace,'SFMono-Regular',monospace;
  --maxw:1180px;
  --gut:clamp(20px,5vw,64px);
}

*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--noir);
  color:var(--creme);
  font-family:var(--serif);
  font-size:17px;
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}

/* ---------- layout primitives ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--gut);padding-right:var(--gut);}
.narrow{max-width:680px;}
section{position:relative;}
.sec{padding:clamp(56px,9vw,116px) 0;}
.sec-sm{padding:clamp(40px,7vw,80px) 0;}

.noir{background:var(--noir);color:var(--creme);}
.noir-2{background:var(--noir-panel);color:var(--creme);}
.creme{background:var(--creme);color:var(--ink);}

/* ---------- type ---------- */
h1,h2,h3{font-weight:400;line-height:1.04;letter-spacing:-.01em;margin:0;}
.display{
  font-size:clamp(2.7rem,11.5vw,6.4rem);
  line-height:.98;
  letter-spacing:-.02em;
}
.h2{font-size:clamp(1.9rem,5.4vw,3.3rem);line-height:1.06;}
.h3{font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.12;}
p{margin:0 0 1.15em;text-wrap:pretty;}
.lede{font-size:clamp(1.15rem,2.4vw,1.5rem);line-height:1.5;}
strong{font-weight:700;}

/* kicker — dossier déclassifié */
.kicker{
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.26em;
  text-transform:uppercase;
  display:inline-flex;
  align-items:center;
  gap:.7em;
  margin:0 0 1.6em;
  color:inherit;
  opacity:.82;
}
.kicker::before{
  content:"";
  width:7px;height:7px;
  background:var(--rouge);
  flex:0 0 auto;
}
.creme .kicker{opacity:.7;}

/* thin rules */
.rule{height:1px;border:0;background:var(--noir-line);margin:0;}
.creme .rule{background:var(--creme-line);}

/* page reference (mono) */
.pg{font-family:var(--mono);font-size:.82em;letter-spacing:.04em;color:var(--rouge);}
.creme .pg{color:var(--rouge);}

/* ---------- pull quotes (▎) ---------- */
.pull{
  font-style:italic;
  font-size:clamp(1.3rem,3.2vw,2rem);
  line-height:1.32;
  letter-spacing:-.01em;
  border-left:3px solid var(--rouge);
  padding:.1em 0 .1em 1.05em;
  margin:1.9em 0;
  max-width:30ch;
}
.pull.wide{max-width:none;}
.pull .src{
  display:block;
  font-style:normal;
  font-family:var(--mono);
  font-size:.62em;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:.55;
  margin-top:1em;
}

/* ---------- buttons / CTA ---------- */
.cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.7em;
  background:var(--rouge);
  color:var(--creme);
  font-family:var(--mono);
  font-size:.95rem;
  letter-spacing:.07em;
  text-transform:uppercase;
  text-decoration:none;
  padding:1.05em 1.9em;
  border:1px solid var(--rouge);
  border-radius:1px;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
  line-height:1;
  text-align:center;
}
.cta:hover{background:var(--rouge-bright);border-color:var(--rouge-bright);}
.cta:active{transform:translateY(1px);}
.cta .price{font-weight:700;letter-spacing:.04em;}
.cta .price::before{content:"\B7  ";}
.cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:2.2em;}
/* Mobile : CTA in-text empile le libelle au-dessus du prix (sticky bottom exclu) */
@media(max-width:640px){
  .cta{flex-direction:column;gap:.35em;}
  .cta .price::before{content:"";}
  .hero .cta{flex-direction:row;gap:.7em;}
  .hero .cta .price::before{content:"\B7  ";}
  .sticky-cta .cta{flex-direction:row;gap:.7em;}
}

.btn-ghost{
  display:inline-flex;align-items:center;justify-content:center;gap:.7em;
  background:transparent;
  color:inherit;
  font-family:var(--mono);
  font-size:.88rem;letter-spacing:.07em;text-transform:uppercase;
  text-decoration:none;
  padding:1.05em 1.8em;
  border:1px solid currentColor;
  border-radius:1px;
  cursor:pointer;
  transition:background .18s ease,color .18s ease;
  line-height:1;
}
.creme .btn-ghost:hover{background:var(--ink);color:var(--creme);}
.noir .btn-ghost{border-color:var(--noir-line);}
.noir .btn-ghost:hover{background:var(--creme);color:var(--noir);border-color:var(--creme);}

/* stamp — première édition */
.stamp{
  font-family:var(--mono);
  font-size:.62rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  display:inline-block;
  padding:.55em .8em;
  border:1px solid var(--noir-line);
  color:rgba(239,233,221,.6);
}
.creme .stamp{border-color:var(--creme-line);color:var(--ink-faint);}
.stamp-rot{transform:rotate(-3deg);}

/* ---------- announce bar ---------- */
.bandeau{
  background:#060606;
  border-bottom:1px solid var(--noir-line-soft);
  text-align:center;
}
.bandeau .wrap{
  display:flex;justify-content:center;gap:.9em;flex-wrap:wrap;
  padding-top:11px;padding-bottom:11px;
  font-family:var(--mono);
  font-size:.66rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(239,233,221,.62);
}
.bandeau .dot{color:var(--rouge);}

/* ---------- hero ---------- */
.hero{padding-top:clamp(34px,6vw,64px);padding-bottom:clamp(48px,8vw,96px);overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:1fr;gap:clamp(34px,5vw,60px);align-items:center;}
.hero h1{margin:.12em 0 .5em;}
.hero-book-title{
  font-size:clamp(1rem,2.4vw,1.35rem);
  letter-spacing:.01em;
  color:rgba(239,233,221,.58);
  margin:0 0 .35em;
  font-style:italic;
}
.hero-promise{
  font-size:clamp(2.05rem,6vw,3.7rem);
  line-height:1.03;
  letter-spacing:-.02em;
}
.hero .sub1{font-size:clamp(1.25rem,3.4vw,1.85rem);line-height:1.34;margin-bottom:.9em;font-style:italic;color:var(--creme);}
.hero .sub2{color:rgba(239,233,221,.78);max-width:46ch;}
.hero .sub3{color:rgba(239,233,221,.62);font-size:.96rem;max-width:46ch;}
.hero .specs{
  font-family:var(--mono);font-size:.84rem;letter-spacing:.02em;
  color:rgba(239,233,221,.82);margin:1.5em 0 0;line-height:1.7;
}
.hero .specs b{color:var(--creme);font-weight:700;}
.cover-stage{position:relative;display:flex;justify-content:center;padding:clamp(24px,4vw,48px) 0 clamp(18px,3vw,34px);}
.cover-stage img{
  width:min(72%,330px);
  position:relative;z-index:2;
  filter:drop-shadow(0 34px 38px rgba(0,0,0,.65)) drop-shadow(0 6px 12px rgba(0,0,0,.5));
}
/* lumiere qui tombe du haut de la section */
.cover-glow{
  position:absolute;left:50%;top:-14%;transform:translateX(-50%);
  width:130%;height:115%;
  background:radial-gradient(ellipse 52% 46% at 50% 22%,rgba(236,228,211,.16),rgba(236,228,211,.05) 52%,transparent 74%);
  pointer-events:none;z-index:1;
}
/* ombre au sol : le livre est pose la */
.cover-stage::after{
  content:"";position:absolute;left:50%;bottom:clamp(8px,2vw,20px);transform:translateX(-50%);
  width:min(60%,300px);height:22px;border-radius:50%;
  background:radial-gradient(ellipse closest-side,rgba(0,0,0,.7),transparent 78%);
  filter:blur(6px);z-index:0;
}
.hero-stamp{display:none;position:absolute;top:6%;right:var(--gut);z-index:3;}

@media(min-width:880px){
  .hero-stamp{display:block;}
  .hero-grid{grid-template-columns:1.05fr .95fr;}
  .cover-stage img{width:min(88%,380px);}
  .hero-stamp{right:calc(var(--gut) + 8px);}
}

/* ---------- generic content ---------- */
.eyebrow-h2{margin-bottom:.7em;}
.lead-q{margin-bottom:2.2em;}

/* trois faits */
.fait{
  border-top:1px solid var(--creme-line);
  padding:2em 0;
  display:grid;grid-template-columns:1fr;gap:.2em;
}
.fait .no{
  font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--rouge);margin-bottom:.7em;
}
.fait .ref{display:block;font-family:var(--mono);font-size:.78rem;color:var(--ink-faint);margin-top:.8em;letter-spacing:.02em;}
.fait .ref a{color:var(--rouge);text-decoration:underline;text-underline-offset:2px;}
@media(min-width:760px){
  .fait{grid-template-columns:max-content 1fr;gap:0 2.4em;align-items:start;}
  .fait .no{margin-top:.35em;}
}

/* la lettre */
.lettre p{font-size:clamp(1.05rem,2vw,1.18rem);line-height:1.8;}
.lettre .sign{font-family:var(--mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-top:2.4em;}
.drop::first-letter{
  initial-letter:3;
  -webkit-initial-letter:3;
  font-weight:700;margin-right:.08em;color:var(--rouge);
}

/* disqualification list */
.disq{display:grid;gap:0;margin:2em 0 0;}
.disq li{
  list-style:none;
  border-top:1px solid var(--creme-line);
  padding:1.5em 0 1.5em 2.4em;
  position:relative;
}
.disq li::before{
  content:"✕";
  position:absolute;left:0;top:1.45em;
  font-family:var(--mono);color:var(--rouge);font-size:1rem;
}
.disq li b{display:block;margin-bottom:.25em;}
.disq .keep{
  border-top:1px solid var(--creme-line);
  padding:1.8em 0 0;margin-top:.4em;
  font-size:1.1rem;
}

/* le manuel — noir */
.manuel-names{
  font-family:var(--mono);font-size:.84rem;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(239,233,221,.6);line-height:2;margin:1.4em 0;
}
.manuel-names span{white-space:nowrap;}
.manuel-names .sep{color:var(--rouge);margin:0 .5em;}

/* ce que le livre te donne */
.gives{counter-reset:g;display:grid;gap:0;margin-top:1em;}
.give{
  counter-increment:g;
  border-top:1px solid var(--creme-line);
  padding:2.2em 0;
  display:grid;grid-template-columns:1fr;gap:.4em;
}
.give .num{
  font-family:var(--mono);font-size:1.5rem;color:var(--rouge);line-height:1;
}
.give .num::before{content:counter(g,decimal-leading-zero);}
.give h3{margin-bottom:.5em;}
.give p{color:var(--ink-soft);font-size:1.04rem;margin-bottom:.6em;}
.give .miniq{font-style:italic;color:var(--ink);border-left:2px solid var(--rouge);padding-left:.9em;margin:.6em 0 0;font-size:1.02rem;}
@media(min-width:780px){
  .give{grid-template-columns:96px 1fr;gap:0 2.4em;}
}
.framework-fig{margin:2.6em 0 0;}
.framework-fig img{width:100%;background:var(--paper-light);border:1px solid var(--creme-line);}
.framework-fig figcaption{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-top:1em;text-align:center;}

/* iceberg — noir */
.iceberg-list{display:grid;gap:0;margin:2em 0;}
.iceberg-list li{
  list-style:none;border-top:1px solid var(--noir-line);
  padding:1.4em 0 1.4em 1.6em;position:relative;color:rgba(239,233,221,.84);
}
.iceberg-list li::before{content:"▾";position:absolute;left:0;top:1.35em;color:var(--rouge);font-size:.8rem;}
.iceberg-list b{color:var(--creme);}

/* table des matières */
.toc-intro{margin-bottom:1.6em;}
.toc-pre{
  border:1px solid var(--creme-line);padding:1.4em 1.5em;margin-bottom:1.6em;
  display:grid;grid-template-columns:max-content 1fr;gap:0 1.4em;align-items:baseline;
}
.toc-pre .lbl{font-family:var(--mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rouge);}
.toc-pre .txt{color:var(--ink-soft);font-size:.98rem;}
.toc-pre .txt b{color:var(--ink);display:block;font-size:1.08rem;margin-bottom:.2em;}

details.acte{border-top:1px solid var(--creme-line);}
details.acte:last-of-type{border-bottom:1px solid var(--creme-line);}
details.acte summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:baseline;justify-content:space-between;gap:1em;
  padding:1.5em 0;
}
details.acte summary::-webkit-details-marker{display:none;}
details.acte summary .a-name{font-size:clamp(1.3rem,3vw,1.7rem);letter-spacing:-.01em;}
details.acte summary .a-name small{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--rouge);margin-bottom:.5em;}
details.acte summary .a-toggle{font-family:var(--mono);font-size:1.4rem;color:var(--ink-faint);line-height:1;flex:0 0 auto;}
details.acte[open] summary .a-toggle{color:var(--rouge);}
.acte-body{padding-bottom:1.4em;}
.entry{
  display:grid;grid-template-columns:max-content 1fr;gap:0 1.4em;
  padding:1.1em 0;border-top:1px solid var(--creme-line);align-items:start;
}
.entry .e-pg{font-family:var(--mono);font-size:.82rem;color:var(--rouge);letter-spacing:.02em;padding-top:.18em;white-space:nowrap;}
.entry .e-title{font-size:1.1rem;margin-bottom:.2em;}
.entry .e-desc{color:var(--ink-soft);font-size:.96rem;line-height:1.6;}
.entry .e-desc i{color:var(--ink);}
.toc-last{
  border-top:1px solid var(--creme-line);margin-top:0;
  padding:1.4em 0 0;font-style:italic;color:var(--ink-soft);
}

/* objection — noir short */
.objection .pull{max-width:24ch;}

/* auteur */
.auteur-grid{display:grid;grid-template-columns:1fr;gap:clamp(28px,5vw,56px);align-items:start;}
.auteur-photo img{width:100%;border:1px solid var(--creme-line);filter:grayscale(1) contrast(1.02);}
.auteur-photo .cap{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-top:1em;}
.auteur .pull{font-size:clamp(1.15rem,2.5vw,1.55rem);max-width:none;}
@media(min-width:820px){.auteur-grid{grid-template-columns:300px 1fr;}}

/* objet-livre — noir */
.objet-spread{margin:2.4em 0;border:1px solid var(--noir-line);}
.objet-spread img{width:100%;}
.objet-spread.is-mockup{
  border:none;position:relative;display:flex;justify-content:center;
  padding:clamp(20px,4vw,44px) 0;
  background:radial-gradient(ellipse 58% 52% at 50% 30%,rgba(236,228,211,.09),transparent 72%);
}
.objet-spread.is-mockup img{
  width:min(86%,560px);
  filter:drop-shadow(0 30px 34px rgba(0,0,0,.6)) drop-shadow(0 5px 10px rgba(0,0,0,.45));
}
.objet-list{display:grid;gap:0;margin:1.4em 0;}
.objet-list li{
  list-style:none;border-top:1px solid var(--noir-line);
  padding:1.15em 0 1.15em 1.7em;position:relative;color:rgba(239,233,221,.82);
}
.objet-list li::before{content:"▪";position:absolute;left:0;top:1.05em;color:var(--rouge);}
.objet-list b{color:var(--creme);}
.derniere-page{
  margin:2.6em 0;background:#000;border:1px solid var(--noir-line);
  aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;text-align:center;
  position:relative;overflow:hidden;
}
.derniere-page .blur{
  filter:blur(7px);opacity:.5;color:#fff;font-family:var(--mono);
  font-size:.9rem;letter-spacing:.3em;line-height:2.4;text-transform:uppercase;
}
.derniere-page .tag{
  position:absolute;bottom:14px;left:0;right:0;
  font-family:var(--mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(239,233,221,.5);
}
.quatrieme{
  border-left:3px solid var(--rouge);padding-left:1.3em;margin:2.2em 0;
  font-size:clamp(1.02rem,2vw,1.18rem);line-height:1.7;
}
.quatrieme .strong-line{font-style:italic;font-size:1.15em;}

/* offre */
.offre-card{
  border:1px solid var(--creme-line);
  padding:clamp(28px,5vw,52px);
  text-align:center;
  max-width:640px;margin:0 auto;
  background:var(--paper-light);
}
.offre-price{font-size:clamp(3.4rem,11vw,5.5rem);line-height:1;letter-spacing:-.02em;margin:.1em 0 .2em;}
.offre-price small{font-size:.32em;vertical-align:.7em;}
.offre-card .no-bundle{font-family:var(--mono);font-size:.82rem;letter-spacing:.04em;color:var(--ink-soft);text-transform:none;margin-bottom:1.4em;}
.offre-card .micro{font-family:var(--mono);font-size:.74rem;letter-spacing:.03em;color:var(--ink-faint);line-height:1.7;margin-top:1.6em;}

/* feuilletage */
.feuille{text-align:center;}
.feuille .note{color:var(--ink-soft);max-width:54ch;margin-left:auto;margin-right:auto;}

/* faq */
.faq-q{border-top:1px solid var(--creme-line);padding:1.8em 0;}
.faq-q:last-of-type{border-bottom:1px solid var(--creme-line);}
.faq-q h3{margin-bottom:.55em;font-size:clamp(1.18rem,2.6vw,1.5rem);}
.faq-q p{color:var(--ink-soft);margin-bottom:.7em;}
.faq-q p:last-child{margin-bottom:0;}
.faq-close{margin-top:2.4em;font-size:1.12rem;}

/* ps — noir */
.ps-block{border-top:1px solid var(--noir-line);padding:1.8em 0;color:rgba(239,233,221,.8);}
.ps-block b{color:var(--creme);font-family:var(--mono);font-size:.84em;letter-spacing:.1em;margin-right:.3em;}

/* cta final */
.final-cta{text-align:center;}
.final-cta .display{margin-bottom:.6em;}

/* footer */
footer{background:#060606;border-top:1px solid var(--noir-line-soft);}
footer .wrap{padding-top:42px;padding-bottom:42px;}
footer .meta{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;color:rgba(239,233,221,.5);line-height:1.9;}
footer .meta a{color:rgba(239,233,221,.72);text-decoration:none;border-bottom:1px solid var(--noir-line);}
footer .meta a:hover{color:var(--creme);}
footer .links{margin-top:.6em;display:flex;gap:1.4em;flex-wrap:wrap;}

/* ---------- sticky mobile CTA ---------- */
.sticky-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:rgba(8,8,8,.92);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border-top:1px solid var(--noir-line);
  padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  transform:translateY(120%);
  transition:transform .32s cubic-bezier(.2,.7,.2,1);
}
.sticky-cta.show{transform:translateY(0);}
.sticky-cta .cta{width:100%;padding:1.05em 1em;font-size:.92rem;}
@media(min-width:880px){.sticky-cta{display:none;}}

/* fade-in on scroll */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;}}


/* ---------- mockup hero (scene integree, pas de cadre) ---------- */
.cover-stage img.is-mockup{border:none;box-shadow:none;}
.objet-spread.is-mockup{border:none;}

/* ---------- FAQ accordeons ---------- */
details.faq{border-top:1px solid var(--creme-line);}
details.faq:last-of-type{border-bottom:1px solid var(--creme-line);}
details.faq summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:baseline;justify-content:space-between;gap:1em;
  padding:1.3em 0;
}
details.faq summary::-webkit-details-marker{display:none;}
details.faq summary h3{font-size:clamp(1.08rem,2.4vw,1.35rem);margin:0;line-height:1.3;}
details.faq summary .f-toggle{font-family:var(--mono);font-size:1.25rem;color:var(--ink-faint);line-height:1;flex:0 0 auto;transition:transform .2s ease;}
details.faq[open] summary .f-toggle{color:var(--rouge);transform:rotate(45deg);}
details.faq .faq-a{padding:0 0 1.5em;color:var(--ink-soft);max-width:62ch;}
details.faq .faq-a p{margin-bottom:.7em;}
details.faq .faq-a p:last-child{margin-bottom:0;}

/* ---------- visionneuse feuilletage ---------- */
.viewer{
  position:fixed;inset:0;z-index:100;background:rgba(5,5,5,.97);
  display:none;flex-direction:column;align-items:center;justify-content:center;
  padding:16px;
}
.viewer.open{display:flex;}
.viewer img{
  max-width:min(94vw,560px);max-height:78vh;width:auto;height:auto;
  background:#F4EEE0;border:1px solid rgba(239,233,221,.18);
  box-shadow:0 30px 80px rgba(0,0,0,.7);
  user-select:none;-webkit-user-drag:none;
}
.viewer .v-bar{
  display:flex;align-items:center;gap:18px;margin-top:16px;
  font-family:var(--mono);font-size:.8rem;letter-spacing:.12em;color:rgba(239,233,221,.75);
}
.viewer button{
  background:transparent;border:1px solid rgba(239,233,221,.3);color:var(--creme);
  font-family:var(--mono);font-size:1rem;padding:.55em 1em;cursor:pointer;border-radius:1px;
  min-width:48px;
}
.viewer button:hover{border-color:var(--creme);}
.viewer .v-close{
  position:absolute;top:14px;right:14px;font-size:1.1rem;
  padding:.5em .85em;
}
.viewer .v-hint{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(239,233,221,.4);}
