/* ═══════════════════════════════════════════════════════════
   EDMOND'S & COMPANY — Direction « Héritage » (maquette)
   Identité agni : une histoire en sept objets du patrimoine, un par
   partie du site ; images en noir et blanc qui passent à la couleur
   au survol ou au toucher ; motif adinkra en filigrane sur toute la page.
   Couleurs inchangées : or, brun, crème.
   ═══════════════════════════════════════════════════════════ */
:root { --hx-black: #000; --hx-glyph: url('/heritage/akofena.svg'); --hx-pattern: url('/heritage/pattern-adinkra.svg'); --hx-pattern-clair: url('/heritage/pattern-adinkra-clair.svg'); }

/* ── Titres : capitales grasses, symbole de la maison ── */
body:not(.page-inner) section h2:not(#nl-title) { font-family: var(--font-n); font-weight: 800; text-transform: uppercase; letter-spacing: -.005em; line-height: 1.08; font-size: clamp(1.75rem, 3.2vw, 2.7rem); }
body:not(.page-inner) section h2:not(#nl-title) em { font-style: normal; color: var(--gold); }
#maison h2 em, #contact h2 em, .hx-signature h2 em { color: var(--gold-l); }
body:not(.page-inner) .section-eyebrow { display: inline-flex; align-items: center; gap: .75rem; font-weight: 700; letter-spacing: .2em; }
body:not(.page-inner) .section-eyebrow::before { content: ''; width: 26px; height: 26px; flex: none; background: var(--hx-glyph) center / contain no-repeat; }
.motion .section-eyebrow.rv::after { display: none; }

/* ── Accueil : I · Le siège ── */
#hero { background: #000 var(--hx-pattern); }
#hero::before, #hero .hero-bg-img { display: none; }
.hx-hero-fig { position: absolute; z-index: 1; top: calc(var(--nav-h, 90px) + 1.5rem); right: 0; height: min(60vh, 600px); width: 52%; margin: 0; overflow: hidden; }
.hx-hero-fig picture, .hx-hero-fig img { display: block; width: 100%; height: 100%; }
.hx-hero-fig img { object-fit: cover; object-position: center 55%; }
.hx-hero-fig::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, #000 0%, rgba(0,0,0,.6) 20%, rgba(0,0,0,0) 50%), linear-gradient(to bottom, #000 0%, rgba(0,0,0,0) 14%, rgba(0,0,0,0) 70%, rgba(0,0,0,.85) 100%); }
.hx-hero-fig figcaption { position: absolute; z-index: 2; right: 2.5rem; top: 1.2rem; max-width: 320px; text-align: right; font-size: .66rem; letter-spacing: .08em; line-height: 1.6; color: rgba(240,232,214,.7); }
#hero .hero-overlay { background: none; }
#hero h1 { font-family: var(--font-n); font-weight: 800; font-size: clamp(2.4rem, 5vw, 4.4rem); line-height: 1.04; letter-spacing: -.02em; }
#hero h1 em { font-style: normal; color: var(--gold); }
#hero .hero-eyebrow { display: inline-flex; align-items: center; gap: .75rem; }
#hero .hero-eyebrow::before { content: ''; width: 24px; height: 24px; background: var(--hx-glyph) center / contain no-repeat; }
#hero .hero-stats { border-top-color: rgba(184,154,106,.25); }

/* ── Notre signature ── */
.hx-signature { background: var(--cream-l) var(--hx-pattern-clair); padding: 7rem 0; }
.hx-sig-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 5rem; align-items: center; }
.hx-sig-img { margin: 0; background: #e9e1d3; position: relative; max-width: 480px; }
.hx-sig-img::after { content: ''; position: absolute; inset: 16px -16px -16px 16px; border: 1px solid var(--gold); z-index: -1; }
.hx-sig-img img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 20%; }
.hx-sig-text h2 { color: var(--brown); margin: .4rem 0 1.6rem; }
.hx-sig-text p:not(.section-eyebrow) { color: var(--brown-s); font-size: 1rem; line-height: 1.9; margin: 0 0 1.1rem; max-width: 560px; }

/* ── Expertises : deux panneaux sombres à motif ── */
#expertise .exp-card { background: #2e2116 var(--hx-pattern); color: var(--cream); border: 0; }
#expertise .exp-card.exp-card-dark { background: #121010 var(--hx-pattern); }
#expertise .exp-card h3, #expertise .exp-card .exp-link strong { color: #fff; }
#expertise .exp-card h3 { font-family: var(--font-n); font-weight: 800; text-transform: uppercase; font-size: 1.45rem; line-height: 1.15; display: flex; gap: .9rem; align-items: flex-start; }
#expertise .exp-card h3::before { content: ''; width: 34px; height: 34px; flex: none; margin-top: .1rem; background: var(--hx-glyph) center / contain no-repeat; }
#expertise .exp-card .exp-desc, #expertise .exp-card .exp-link span { color: rgba(240,232,214,.72); }
#expertise .exp-card .exp-num { color: rgba(184,154,106,.35); }
#expertise .exp-card .exp-more, #expertise .exp-card .exp-cta { color: var(--gold-l); }
#expertise .exp-card .exp-list li { border-color: rgba(184,154,106,.18); }

/* ── Bandeau : disque d'or ── */
.hx-band { position: relative; background: var(--hx-black) var(--hx-pattern); overflow: hidden; min-height: 460px; display: flex; align-items: center; padding: 5rem 0; }
.hx-band-img { position: absolute; right: 0; top: 0; bottom: 0; width: min(46%, 620px); }
.hx-band-img picture { display: block; height: 100%; }
.hx-band-img img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.hx-band-img::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, var(--hx-black) 0%, rgba(11,9,7,.2) 45%, rgba(11,9,7,0) 100%); }
.hx-band .container { position: relative; z-index: 1; width: 100%; }
.hx-band-q { font-family: var(--font-n); font-weight: 800; text-transform: uppercase; color: #fff; font-size: clamp(1.9rem, 4vw, 3.4rem); line-height: 1.08; letter-spacing: -.01em; margin: 0; max-width: 680px; }
.hx-band-q em { font-style: normal; color: var(--gold); }
.hx-band-q::before { content: ''; display: block; width: 42px; height: 42px; margin-bottom: 1.6rem; background: var(--hx-glyph) center / contain no-repeat; }

/* ── Motif adinkra en filigrane, de haut en bas ── */
#signature, #expertise, #demarche, #publications { background-image: var(--hx-pattern-clair); }
#maison, .nl-band, #outils, #contact, footer, .ticker, .hero-ticker { background-image: var(--hx-pattern); }
.mx-value { background: rgba(255,255,255,.025); border-top: 2px solid var(--gold); }
.mx-value strong { font-family: var(--font-n); font-weight: 800; text-transform: uppercase; font-size: 1.05rem; letter-spacing: .04em; }

/* Équipe : photos en noir et blanc, couleur au survol (unifie les fonds) */
.tm-photo img, .mx-word .mx-photo img { filter: grayscale(1) contrast(1.05); }
.tm-open:hover .tm-photo img, .tm-open:focus-visible .tm-photo img { filter: grayscale(0); }
.tm-name { font-family: var(--font-n); font-weight: 700; font-size: 1.15rem; text-transform: uppercase; letter-spacing: .01em; }

.footer-credits { font-size: .62rem; line-height: 1.6; color: rgba(240,232,214,.35); margin-top: .6rem; }
.footer-credits a { color: inherit; }

/* ── Chapitres II à VII : un objet par partie du site ── */
.hx-chap { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 3.5rem; align-items: center; margin: 3rem 0 4.5rem; text-align: left; }
.hx-chap--rev .hx-chap-img { order: 2; }
.hx-chap-img { position: relative; overflow: hidden; aspect-ratio: 16 / 10; background: #111; }
.hx-chap-img picture, .hx-chap-img img { display: block; width: 100%; height: 100%; }
.hx-chap-img img { object-fit: cover; }
.hx-chap-img::after { content: ''; position: absolute; inset: 12px; border: 1px solid rgba(212,185,138,.0); transition: border-color .6s; pointer-events: none; }
.hx-chap-img:hover::after, .hx-chap-img.is-color::after { border-color: rgba(212,185,138,.65); }
.hx-chap figcaption { display: flex; flex-direction: column; gap: .7rem; max-width: 480px; }
.hx-chap-n { display: inline-flex; align-items: center; gap: .7rem; font-size: .66rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: var(--gold); }
.hx-chap-n::before { content: ''; width: 22px; height: 22px; background: var(--hx-glyph) center / contain no-repeat; }
.hx-hero-fig .hx-chap-n::before { display: none; }
.hx-chap strong { font-family: var(--font-n); font-weight: 800; text-transform: uppercase; font-size: clamp(1.3rem, 2.2vw, 1.75rem); line-height: 1.12; color: var(--brown); }
.hx-chap-t { font-size: .95rem; line-height: 1.85; color: var(--brown-s); }
#maison .hx-chap strong, #outils .hx-chap strong, #contact .hx-chap strong { color: #fff; }
#maison .hx-chap-t, #outils .hx-chap-t, #contact .hx-chap-t { color: rgba(240,232,214,.75); }
#demarche .hx-chap, #publications .hx-chap, #outils .hx-chap { margin-top: 3.5rem; }
.hx-chap--tall { grid-template-columns: minmax(0, .75fr) minmax(0, 1fr); gap: 4.5rem; }
.hx-chap--tall.hx-chap--rev { grid-template-columns: minmax(0, 1fr) minmax(0, .75fr); }
.hx-chap--tall .hx-chap-img { aspect-ratio: 4 / 5; max-height: 600px; }
#maison .hx-chap-img img { object-position: center 40%; }
#outils .hx-chap-img { background: #fff; }
#outils .hx-chap-img img { object-fit: contain; }
#contact .hx-chap-img img { object-position: center 35%; }

/* ── Noir et blanc, couleur au survol ou au toucher ── */
.hx-bw img { filter: grayscale(1) contrast(1.06); transition: filter .9s ease, transform 1.4s cubic-bezier(.2,.7,.2,1); }
.hx-bw:hover img, .hx-bw.is-color img { filter: grayscale(0) contrast(1); transform: scale(1.025); }
.hx-bw { cursor: pointer; -webkit-tap-highlight-color: transparent; }
@media (prefers-reduced-motion: reduce) { .hx-bw img { transition: none; } .hx-bw:hover img, .hx-bw.is-color img { transform: none; } }

@media (max-width: 900px) {
  .hx-chap { grid-template-columns: 1fr; gap: 1.6rem; margin: 2rem 0 3rem; }
  .hx-chap--rev .hx-chap-img { order: 0; }
  .hx-hero-fig { left: 0; top: 0; width: 100%; height: 46vh; }
  .hx-chap--tall, .hx-chap--tall.hx-chap--rev { grid-template-columns: 1fr; }
  .hx-chap--tall .hx-chap-img { max-height: 70vh; }
  .hx-hero-fig::after { background: linear-gradient(to bottom, rgba(0,0,0,.5) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,.2) 60%, #000 100%); }
  .hx-hero-fig figcaption { display: none; }
  #hero .hero-inner { padding-top: 40vh; }
  .hx-sig-grid { grid-template-columns: 1fr; gap: 3rem; }
  .hx-sig-img { max-width: 520px; margin-right: 16px; }
  .hx-band { min-height: 0; padding: 0 0 4rem; flex-direction: column; align-items: stretch; }
  .hx-band-img { position: relative; width: 100%; height: 340px; }
  .hx-band-img::after { background: linear-gradient(to bottom, rgba(11,9,7,0) 50%, var(--hx-black) 100%); }
  .hx-band .container { margin-top: -2rem; }
}

/* ── Actualités ── */
#actualites { background: var(--cream-l) var(--hx-pattern-clair); padding: 7rem 0; }
#actualites .section-header { max-width: 720px; margin-bottom: 3rem; }
.nw-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.6rem; }
.nw-card { position: relative; display: flex; flex-direction: column; gap: .9rem; padding: 2.2rem 2rem 2rem; background: #1a1410 var(--hx-pattern); border-top: 2px solid var(--gold); color: var(--cream); transition: transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s; }
.nw-card:hover { transform: translateY(-5px); box-shadow: 0 22px 46px rgba(26,20,16,.22); }
.nw-card::before { content: ''; width: 30px; height: 30px; background: var(--hx-glyph) center / contain no-repeat; }
.nw-meta { display: flex; gap: .9rem; margin: 0; font-size: .64rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--gold); }
.nw-meta span + span { color: rgba(240,232,214,.5); }
.nw-card h3 { margin: 0; font-family: var(--font-n); font-weight: 800; text-transform: uppercase; font-size: 1.12rem; line-height: 1.3; color: #fff; }
.nw-card p:not(.nw-meta) { margin: 0; font-size: .9rem; line-height: 1.75; color: rgba(240,232,214,.72); flex: 1; }
.nw-link { align-self: flex-start; margin-top: .4rem; font-size: .68rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--gold-l); text-decoration: none; border-bottom: 1px solid rgba(212,185,138,.5); padding-bottom: .2rem; }
.nw-link:hover { color: #fff; border-color: #fff; }
@media (max-width: 900px) { .nw-grid { grid-template-columns: 1fr; } #actualites { padding: 5rem 0; } }
#actualites .section-desc { margin-left: 0; margin-right: 0; text-align: left; }

/* Prologue : le symbole, sur fond noir, à la place d'une statuette */
.hx-sig-sym { background: #000 var(--hx-pattern); aspect-ratio: 4 / 5; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2rem; padding: 2rem; }
.hx-sig-sym img { width: 46%; height: auto; aspect-ratio: auto !important; filter: drop-shadow(0 0 30px rgba(184,154,106,.25)); transition: transform 1.6s cubic-bezier(.2,.7,.2,1); }
.hx-sig-sym:hover img { transform: rotate(-4deg) scale(1.04); }
.hx-sig-sym figcaption { font-size: .66rem; letter-spacing: .18em; text-transform: uppercase; color: rgba(240,232,214,.55); text-align: center; max-width: 260px; line-height: 1.7; }

/* Accueil : défilement lent de trois visuels (fondu enchaîné) */
.hx-slides .hx-slide { position: absolute; inset: 0; opacity: 0; animation: hxSlide 21s infinite; }
.hx-slides .hx-slide:nth-child(1) { animation-delay: 0s; }
.hx-slides .hx-slide:nth-child(2) { animation-delay: 7s; }
.hx-slides .hx-slide:nth-child(3) { animation-delay: 14s; }
.hx-slides .hx-slide picture, .hx-slides .hx-slide img { display: block; width: 100%; height: 100%; }
.hx-slides .hx-slide img { object-fit: cover; object-position: center 40%; animation: hxZoom 21s infinite; }
.hx-slides .hx-slide:nth-child(1) img { object-position: center 30%; }
.hx-slides .hx-slide:nth-child(2) img, .hx-slides .hx-slide:nth-child(2) { animation-delay: 7s; }
.hx-slides .hx-slide:nth-child(3) img, .hx-slides .hx-slide:nth-child(3) { animation-delay: 14s; }
.hx-slides .hx-slide figcaption { position: absolute; z-index: 2; right: 2.5rem; top: 1.2rem; max-width: 320px; text-align: right; font-size: .66rem; letter-spacing: .08em; color: rgba(240,232,214,.75); }
@keyframes hxSlide { 0% { opacity: 0; } 6% { opacity: 1; } 33% { opacity: 1; } 40% { opacity: 0; } 100% { opacity: 0; } }
@keyframes hxZoom { 0% { transform: scale(1.06); } 40% { transform: scale(1); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .hx-slides .hx-slide, .hx-slides .hx-slide img { animation: none; } .hx-slides .hx-slide:first-child { opacity: 1; } }
@media (max-width: 900px) { .hx-slides .hx-slide figcaption { display: none; } }
.hx-slides::after { display: none; }
.hx-slides .hx-slide::after { content: ''; position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(90deg, #000 0%, rgba(0,0,0,.6) 20%, rgba(0,0,0,0) 50%), linear-gradient(to bottom, #000 0%, rgba(0,0,0,0) 14%, rgba(0,0,0,0) 70%, rgba(0,0,0,.85) 100%); }
.hx-slides .hx-slide figcaption { z-index: 3; }
@media (max-width: 900px) { .hx-slides .hx-slide::after { background: linear-gradient(to bottom, rgba(0,0,0,.5) 0%, rgba(0,0,0,0) 30%, rgba(0,0,0,.2) 60%, #000 100%); } }

/* Actualité principale : image + texte sur toute la largeur */
.nw-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.nw-feature { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 2.6rem; align-items: center; padding: 2rem; }
.nw-feature::before { display: none; }
.nw-img { margin: 0; position: relative; overflow: hidden; aspect-ratio: 3 / 4; background: #000; }
.nw-img picture, .nw-img img { display: block; width: 100%; height: 100%; }
.nw-img img { object-fit: cover; }
.nw-img figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 2.4rem 1rem .9rem; font-size: .66rem; line-height: 1.55; color: rgba(240,232,214,.85); background: linear-gradient(to top, rgba(0,0,0,.85), rgba(0,0,0,0)); }
.nw-body { display: flex; flex-direction: column; gap: .9rem; }
.nw-feature h3 { font-size: clamp(1.25rem, 2.2vw, 1.7rem); }
.nw-feature .nw-body > p:not(.nw-meta) { font-size: .98rem; }
@media (max-width: 900px) { .nw-grid { grid-template-columns: 1fr; } .nw-feature { grid-template-columns: 1fr; padding: 1.4rem; } .nw-img { max-width: 360px; } }

/* Bandeaux : variante image à gauche, et objets détourés sur fond clair (tabouret) */
.hx-band--left .hx-band-img { right: auto; left: 0; }
.hx-band--left .hx-band-img::after { background: linear-gradient(270deg, var(--hx-black) 0%, rgba(11,9,7,.2) 45%, rgba(11,9,7,0) 100%); }
.hx-band--left .hx-band-q { margin-left: auto; text-align: right; }
.hx-band--left .hx-band-q::before { margin-left: auto; }
.hx-band--soft .hx-band-img img { object-fit: contain; padding: 3rem 1rem 3rem 3rem; }
.hx-band--soft .hx-band-img { background: #000; }
@media (max-width: 900px) {
  .hx-band--left .hx-band-q { margin-left: 0; text-align: left; }
  .hx-band--left .hx-band-q::before { margin-left: 0; }
  .hx-band--left .hx-band-img::after { background: linear-gradient(to bottom, rgba(11,9,7,0) 50%, var(--hx-black) 100%); }
}

/* Expertises : chaque service porte le symbole de sa page */
#expertise .exp-link strong { display: flex; align-items: center; gap: .7rem; }
#expertise .exp-link strong::before { content: ''; width: 22px; height: 22px; flex: none; background: center / contain no-repeat; }
#expertise a[href*="office-of-the-cfo"] strong::before { background-image: url('/heritage/sym/nyansapo.svg'); }
#expertise a[href*="financial-health"] strong::before { background-image: url('/heritage/sym/sankofa.svg'); }
#expertise a[href*="valuation"] strong::before { background-image: url('/heritage/sym/akoma-ntoso.svg'); }
#expertise a[href*="debt-advisory"] strong::before { background-image: url('/heritage/sym/boa-me.svg'); }
#expertise a[href*="restructuring"] strong::before { background-image: url('/heritage/sym/nkyinkyim.svg'); }
#expertise a[href*="project-finance"] strong::before { background-image: url('/heritage/sym/kontire-ne-akwamu.svg'); }

/* Accueil : les sections reprennent le symbole de leur page */
#publications { --hx-glyph: url('/heritage/sym/nea-onnim.svg'); }
#outils { --hx-glyph: url('/heritage/sym/nkyimu.svg'); }

/* Actualités : chaque carte a son image */
.nw-card.nw-has-img::before { display: none; }
.nw-card:not(.nw-feature) .nw-img { aspect-ratio: 16 / 10; margin: -2.2rem -2rem .5rem; max-width: none; }
@media (max-width: 900px) { .nw-card:not(.nw-feature) .nw-img { max-width: none; } }

/* Accueil, Publications : mêmes cartes illustrées que la page Études */
#publications .etudes-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.6rem; padding-bottom: 80px; }
#publications .etude { display: flex; flex-direction: column; gap: 0; padding: 0; background: #1a1410 var(--hx-pattern); border: 0; border-top: 2px solid var(--gold); color: var(--cream, #f0e8d6); overflow: hidden; transition: transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s; }
#publications .etude:hover { transform: translateY(-6px); box-shadow: 0 24px 50px rgba(26,20,16,.25); border-color: var(--gold); }
#publications .etude-img { position: relative; margin: 0; aspect-ratio: 16 / 10; overflow: hidden; background: #000; }
#publications .etude-img picture, #publications .etude-img img { display: block; width: 100%; height: 100%; }
#publications .etude-img img { object-fit: cover; filter: grayscale(1) contrast(1.05); transform: scale(1.02); transition: filter .9s ease, transform 1.4s cubic-bezier(.2,.7,.2,1); }
#publications .etude:hover .etude-img img, #publications .etude:focus-visible .etude-img img { filter: none; transform: scale(1.07); }
#publications .etude-img::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.82) 0%, rgba(0,0,0,.15) 55%, rgba(0,0,0,0) 100%); pointer-events: none; }
#publications .etude-stat { position: absolute; z-index: 1; left: 1.4rem; bottom: 1.1rem; right: 1.4rem; font-family: var(--font-s); font-size: 2.4rem; font-weight: 400; color: var(--gold-l, #d4b98a); line-height: 1; }
#publications .etude-stat small { display: block; margin-top: .45rem; font-family: var(--font-n); font-size: .58rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: rgba(240,232,214,.75); }
#publications .etude-body { display: flex; flex-direction: column; gap: .7rem; padding: 1.6rem 1.5rem 1.7rem; flex: 1; }
#publications .etude-kicker { margin: 0; font-size: .6rem; font-weight: 700; letter-spacing: .18em; color: var(--gold); }
#publications .etude .etude-body h2 { margin: 0; font-family: var(--font-n); font-weight: 800; text-transform: uppercase; font-size: 1.02rem; line-height: 1.3; color: #fff; }
#publications .etude-body > p:not(.etude-kicker) { margin: 0; font-size: .86rem; line-height: 1.7; color: rgba(240,232,214,.7); flex: 1; }
#publications .etude-go { align-self: flex-start; margin-top: .4rem; font-size: .64rem; font-weight: 700; letter-spacing: .16em; color: var(--gold-l, #d4b98a); border-bottom: 1px solid rgba(212,185,138,.5); padding-bottom: .2rem; }
/* La première carte, à la une, sur toute la largeur */
#publications .etude--feature { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
#publications .etude--feature .etude-img { aspect-ratio: auto; min-height: 380px; }
#publications .etude--feature .etude-body { justify-content: center; padding: 2.6rem 2.6rem; gap: 1rem; }
#publications .etude.etude--feature .etude-body h2 { font-size: clamp(1.4rem, 2.4vw, 2rem); line-height: 1.15; }
#publications .etude--feature .etude-body > p:not(.etude-kicker) { flex: 0; font-size: .95rem; }
#publications .etude--feature .etude-stat { font-size: 3.2rem; }
#publications .etude[hidden] { display: none; }
@media (max-width: 1000px) { #publications .etudes-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  #publications .etudes-list { grid-template-columns: 1fr; }
  #publications .etude--feature { grid-template-columns: 1fr; }
  #publications .etude--feature .etude-img { min-height: 0; aspect-ratio: 16 / 10; }
  #publications .etude--feature .etude-body { padding: 1.6rem 1.5rem 1.8rem; }
}
#publications .rs-list { max-width: none; margin: 3rem 0 0; padding: 0; }
#publications .etude .etude-body h2 { font-size: 1.02rem; }
#publications .etude.etude--feature .etude-body h2 { font-size: clamp(1.4rem, 2.4vw, 2rem); }
#publications .latest-notes { display: none !important; }
#publications .pub-cta-wrap { margin-top: 3.2rem; }

/* Menu noir sur toutes les pages, y compris après défilement */
#navbar.scrolled, .page-inner #navbar { background: rgba(0,0,0,.94); box-shadow: 0 1px 0 rgba(184,154,106,.25); backdrop-filter: blur(8px); }
#navbar.scrolled .nav-links a, .page-inner #navbar .nav-links a { color: rgba(240,232,214,.82); }
#navbar.scrolled .nav-links a:hover, .page-inner #navbar .nav-links a:hover { color: var(--gold-l, #d4b98a); }
#navbar.scrolled .nav-links .nav-cta, .page-inner #navbar .nav-links .nav-cta { border-color: rgba(240,232,214,.6); color: #fff; }
#navbar.scrolled .nav-links .nav-cta:hover, .page-inner #navbar .nav-links .nav-cta:hover { background: var(--gold, #b89a6a); border-color: var(--gold, #b89a6a); color: #000; }
#navbar.scrolled .burger span, .page-inner #navbar .burger span { background: rgba(240,232,214,.85); }
#navbar .lang-switch { color: rgba(240,232,214,.85); }
.mobile-menu { background: #000; border-top-color: rgba(184,154,106,.25); }
.mobile-menu a { color: rgba(240,232,214,.85); }

/* Équipe : cartes centrées tant que l'équipe compte peu de membres */
.tm-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 2rem; }
.tm-grid > .tm-card { width: min(100%, 280px); }

/* Accueil mobile : page plus courte (un seul bandeau d'objet, deux analyses) */
@media (max-width: 700px) {
  .hx-band.hx-band--left, .hx-band:has(img[src*="atumpan"]) { display: none; }
  #publications .rs-list > .etude:nth-child(n+3) { display: none; }
}

/* Notre signature : photo de la lagune, le symbole de la maison en surimpression */
.hx-sig-photo { background: #000; aspect-ratio: 4 / 5; overflow: hidden; }
.hx-sig-photo picture, .hx-sig-photo picture img { display: block; width: 100%; height: 100%; }
.hx-sig-photo picture img { object-fit: cover; aspect-ratio: auto; }
.hx-sig-photo::before { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,0) 45%); }
.hx-sig-photo .hx-sig-glyph { position: absolute; z-index: 2; left: 1.8rem; bottom: 1.8rem; width: 76px; height: 76px; aspect-ratio: 1; filter: drop-shadow(0 0 18px rgba(0,0,0,.6)) !important; }

/* Démarche : une image en bandeau au-dessus des étapes */
.dm-img { margin: 0 0 3.5rem; overflow: hidden; }
.dm-img picture, .dm-img img { display: block; width: 100%; }
.dm-img img { aspect-ratio: 21 / 9; object-fit: cover; }

/* Contact : une image sous les coordonnées */
.ct-img { margin: 2.6rem 0 0; overflow: hidden; border-top: 2px solid var(--gold); }
.ct-img picture, .ct-img img { display: block; width: 100%; }
.ct-img img { aspect-ratio: 4 / 3; object-fit: cover; }

/* Mobile : seule l'actualité principale */
@media (max-width: 700px) { #actualites .nw-card:not(.nw-feature) { display: none; } }

/* Outils : la balance akan à peser l'or, emblème de la mesure */
.ot-emblem { margin: 0 auto 1.2rem; width: clamp(200px, 22vw, 300px); }
.ot-emblem img { filter: grayscale(1) brightness(1.35) contrast(1.1) !important; }
.ot-emblem:hover img, .ot-emblem.is-color img { filter: brightness(1.2) !important; }
.ot-emblem picture, .ot-emblem img { display: block; width: 100%; height: auto; }
.ot-emblem img { mix-blend-mode: lighten; }
/* Notre signature : l'objet détouré sur fond noir, sans dégradé */
.hx-sig-photo::before { display: none; }

/* Équipe : emplacement en attente de photo (le symbole de la maison) */
.tm-photo--wait { background: #000 var(--hx-pattern); display: flex; align-items: center; justify-content: center; }
.tm-photo--wait img { width: 34% !important; height: auto !important; object-fit: contain !important; filter: drop-shadow(0 0 24px rgba(184,154,106,.3)) !important; }
.tm-open:hover .tm-photo--wait img { transform: rotate(-4deg) scale(1.05); }
.tm-dlg-inner .tm-dlg-photo img[src*="akofena"] { aspect-ratio: 4 / 5; object-fit: contain; padding: 30% 28%; background: #000 var(--hx-pattern); }
