/*
  CARAVELLI COSTRUZIONI
  Édition V20 — VERT CARAVELLI · finition « Palazzo Verde »

  Identité chromatique propre, née de la profondeur Bottega mais rendue
  florentine, minérale, architecturale. Le vert n'est plus une couleur
  décorative : il devient une PROFONDEUR, presque noire.

    Vert Caravelli Nuit   #0E1A14   fonds vert-noir (hero, sections, pied)
    Vert Palazzo          #1D3428   surface verte de Maison
    Vert Bronze           #31483A   filets et nuances sur fond sombre
    Ivoire pierre         #F2EBDD   lecture, respiration
    Travertin chaud       #D8C6A8   neutre matière
    Bronze ancien         #8A6A43   unique accent (CTA, chiffres, détails)
    Encre noire douce     #111411   l'encre la plus profonde

  Direction : Vert Caravelli Nuit + Ivoire Pierre + Bronze Ancien + photos
  désaturées + silence typographique. Plus d'autorité, plus de matière, plus
  de silence — Florence, pierre, salons privés, argent ancien. Aucun vert vif :
  l'ancien « parakeet » est devenu bronze. Rien n'est retiré du contenu.
  (Les noms de variables --bt-* sont conservés ; seules leurs valeurs changent.)
*/

:root {
  --bt-vert: #1D3428;
  --bt-vert-sec: #31483A;
  --bt-vert-doux: #D8C6A8;
  --bt-vert-voile: rgba(29,52,40, .12);
  --bt-vert-ligne: rgba(29,52,40, .18);
  --bt-vert-ligne-forte: rgba(29,52,40, .34);
  --bt-vert-nuit: #0E1A14;
  --bt-vert-encre: #14201A;
  --bt-ivoire: #F2EBDD;
  --bt-ivoire-haut: #F7F1E6;
  --bt-ivoire-texte: rgba(242,235,221, .9);
  --bt-noir-doux: #111411;

  /* accent cuir — Hermès cognac, à utiliser avec parcimonie (CTA, chiffres, focus) */
  --bt-cognac: #8A6A43;
  --bt-cognac-doux: #A98654;
  --bt-cognac-l: rgba(138,106,67, .14);

  /* bijou — vert Parakeet Bottega, signature rare (point vivant, soulignement) */
  --bt-parakeet: #8A6A43;

  --noir: var(--bt-vert-nuit);
  --encre: var(--bt-vert-encre);
  --pierre: #8A7A60;
  --sable: #C2AE8A;
  --lin: #D8C6A8;
  --creme: var(--bt-ivoire);
  --blanc: var(--bt-ivoire-haut);
  --pur: #F6EFE3;
  --ocre: var(--bt-cognac);
  --ocre-l: var(--bt-cognac-l);
}

html {
  background: var(--bt-vert-nuit);
}

body {
  background:
    radial-gradient(circle at 18% 0%, rgba(29,52,40, .08), transparent 34vw),
    linear-gradient(180deg, var(--bt-ivoire-haut) 0%, var(--bt-ivoire) 100%);
  color: var(--bt-vert-encre);
}

::selection {
  background: rgba(29,52,40, .18);
  color: var(--bt-vert-nuit);
}

::-webkit-scrollbar-track {
  background: var(--bt-ivoire);
}

::-webkit-scrollbar-thumb {
  background: rgba(29,52,40, .5);
}

#pb {
  background: linear-gradient(90deg, var(--bt-vert-nuit), var(--bt-vert), var(--bt-vert-sec)) !important;
}

.cur-ring {
  border-color: rgba(29,52,40, .46);
}

.cur-dot {
  background: rgba(29,52,40, .72);
}

.cur-lbl {
  background: rgba(14,26,20, .9);
  border-color: rgba(242,235,221, .2);
  color: var(--bt-ivoire);
}

.hd.solid {
  background: rgba(247,241,230, .94);
  border-bottom-color: rgba(29,52,40, .14);
  box-shadow: 0 18px 60px rgba(14,26,20, .05);
}

.hd--dark.solid {
  background: rgba(14,26,20, .94);
  border-bottom-color: rgba(242,235,221, .1);
}

.logo-n,
.nl:hover,
.nl.active,
.lb.active,
.lb:hover,
.ntog span {
  color: var(--bt-vert-encre);
}

.logo-s,
.nl,
.lb,
.kicker,
.eyebrow,
.proj-cat,
.proj-lc,
.tsti-a,
.fig-l,
.ba-lbl,
.form-field label,
.form-note,
.est-opt-s,
.est-f label,
.ai-ps,
.vg-sub,
.vg-step-s,
.vg-ai-t {
  color: rgba(29,52,40, .62) !important;
}

.nl::after,
.sep {
  background: linear-gradient(90deg, transparent, rgba(29,52,40, .38), transparent);
}

.ncta {
  color: var(--bt-vert-encre);
  border-color: rgba(29,52,40, .28);
}

.ncta::before {
  background: var(--bt-vert);
}

.ncta:hover {
  color: var(--bt-ivoire);
  border-color: var(--bt-vert);
}

.hd:not(.solid) .nl,
.hd:not(.solid) .ncta,
.hd:not(.solid) .logo-n,
.hd:not(.solid) .lb.active {
  color: rgba(242,235,221, .92);
}

.hd:not(.solid) .logo-s,
.hd:not(.solid) .lb {
  color: rgba(216,198,168, .6);
}

.hd:not(.solid) .nl::after {
  background: rgba(242,235,221, .9);
}

.hd:not(.solid) .ncta {
  border-color: rgba(242,235,221, .34);
}

.display,
.h2,
.proj-nm,
.sf-t,
.tsti-q,
.est-opt-l,
.pensee-body-inner h2,
.folco-body,
.concierge-title {
  color: var(--bt-vert-encre);
}

.display em,
.h2 em,
.sf-t em,
.lead,
.body,
p.body {
  color: rgba(20,32,26, .7);
}

.sec--noir,
.cine,
.folco,
footer,
.ft,
.ft-top,
.ft-bot,
.est-res {
  background:
    radial-gradient(circle at 12% 0%, rgba(49,72,58, .22), transparent 34vw),
    linear-gradient(145deg, var(--bt-vert-encre), var(--bt-vert-nuit) 62%) !important;
  color: var(--bt-ivoire);
}

.sec--noir .display,
.sec--noir .h2,
.sec--noir .proj-nm,
.sec--noir .sf-t,
.sec--noir h1,
.sec--noir h2,
.sec--noir h3,
footer h1,
footer h2,
footer h3,
.ft h1,
.ft h2,
.ft h3 {
  color: var(--bt-ivoire) !important;
}

.sec--noir .display em,
.sec--noir .h2 em,
.sec--noir .lead,
.sec--noir .body,
.sec--noir p,
footer p,
.ft p {
  color: rgba(242,235,221, .72) !important;
}

.sec--noir .eyebrow,
.sec--noir .kicker,
.sec--noir .proj-cat,
.sec--noir .proj-lc,
footer a,
.ft a,
.ft-nav a {
  color: rgba(216,198,168, .62) !important;
}

.sec--creme,
.sec--sable,
.sec--ivoire,
.sec--blanc,
section[class*="--creme"],
section[class*="--sable"],
section[class*="--ivoire"],
section[class*="--blanc"] {
  background:
    linear-gradient(135deg, rgba(216,198,168, .3), transparent 38%),
    var(--bt-ivoire) !important;
}

.sec--clair,
.intro,
.method,
.portfolio,
.contact,
.services,
.savoir,
.pensee-body {
  background-color: var(--bt-ivoire) !important;
}

.hero {
  background: var(--bt-vert-nuit);
}

.hero-veil {
  background:
    radial-gradient(circle at 50% 20%, rgba(29,52,40, .2), transparent 36%),
    linear-gradient(90deg, rgba(14,26,20, .94) 0%, rgba(14,26,20, .62) 44%, rgba(29,52,40, .2) 100%) !important;
}

.hero-ey,
.hero-sub,
.hero-sc,
.cine-meta,
.proj-ovt {
  color: rgba(242,235,221, .82) !important;
}

.hero-h1,
.hero-h1 em {
  color: var(--bt-ivoire) !important;
  text-shadow: 0 24px 80px rgba(0, 0, 0, .34);
}

.hero-h1 .sli {
  animation: bt-hero-text-fallback 1ms 1800ms both;
  transform: translateY(0) !important;
}

.hero-ey,
.hero-sub,
.hero-act {
  animation: bt-hero-fade-fallback 1ms 1900ms both;
  opacity: 1 !important;
  transform: translateY(0) !important;
}

@keyframes bt-hero-text-fallback {
  to { transform: translateY(0); }
}

@keyframes bt-hero-fade-fallback {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.btn,
.btn-primary,
.btn-l,
.btn-line,
.btn-ghost,
button.btn,
.ck-btn,
.est-prev,
.est-nav a {
  border-color: rgba(29,52,40, .32);
}

.btn-n,
.btn-primary {
  background: var(--bt-cognac) !important;
  border-color: var(--bt-cognac) !important;
  color: var(--bt-ivoire) !important;
  box-shadow: 0 18px 52px rgba(138,106,67, .18);
}

.btn-n::before,
.btn-primary::before {
  background: var(--bt-vert-nuit) !important;
}

.btn-o,
.btn-line,
.btn-ghost {
  color: var(--bt-vert-encre) !important;
  border-color: rgba(29,52,40, .3) !important;
  background: rgba(247,241,230, .14);
}

.btn-o::before,
.btn-line::before,
.btn-ghost::before {
  background: rgba(29,52,40, .1) !important;
}

.btn-l {
  color: rgba(242,235,221, .88) !important;
  border-color: rgba(242,235,221, .32) !important;
}

.btn-l::before {
  background: rgba(242,235,221, .1) !important;
}

.btn:hover,
.btn-o:hover,
.btn-line:hover,
.btn-ghost:hover {
  color: var(--bt-vert-nuit) !important;
  border-color: var(--bt-vert) !important;
}

.sec--noir .btn-o,
.sec--noir .btn-line,
.sec--noir .btn-ghost,
.cine .btn-o,
.cine .btn-line,
.cine .btn-ghost,
footer .btn-o,
.ft .btn-o {
  color: var(--bt-ivoire) !important;
  border-color: rgba(242,235,221, .32) !important;
}

.sec--noir .btn-o::before,
.sec--noir .btn-line::before,
.sec--noir .btn-ghost::before,
.cine .btn-o::before,
footer .btn-o::before,
.ft .btn-o::before {
  background: rgba(242,235,221, .12) !important;
}

.proj-iw,
.proj-card,
.proj-c,
.project,
.card,
.tsti,
.est-opt,
.office-card,
.bureau-card,
.ai-pn,
.vg,
.sg-bubble {
  background: rgba(247,241,230, .66) !important;
  border-color: var(--bt-vert-ligne) !important;
  box-shadow: 0 22px 70px rgba(14,26,20, .05);
}

.proj-iw::after,
.proj-card::after,
.project::after,
.card::after {
  background: linear-gradient(180deg, transparent, rgba(14,26,20, .05));
}

.proj-ov {
  background: linear-gradient(to top, rgba(14,26,20, .72), rgba(29,52,40, .18) 58%, transparent) !important;
}

.proj-sl:hover .proj-iw,
.proj-card:hover,
.project:hover,
.card:hover,
.est-opt:hover,
.est-opt.sel {
  border-color: rgba(29,52,40, .46) !important;
  box-shadow: 0 28px 86px rgba(14,26,20, .09);
}

.pnb,
.ba-handle::before,
.ai-tr,
.concierge-icon,
.sg-trigger,
.ck {
  background: var(--bt-vert-nuit) !important;
  border-color: rgba(242,235,221, .16) !important;
  color: var(--bt-ivoire) !important;
}

.pnb:hover,
.ai-tr:hover,
.concierge-icon:hover,
.sg-trigger:hover {
  border-color: rgba(216,198,168, .46) !important;
  box-shadow: 0 22px 58px rgba(14,26,20, .26);
}

.ba-handle {
  background: rgba(216,198,168, .62) !important;
}

.ba-labels,
.figs,
.fig,
.tsti-grid,
.list-aside li,
.ft-top,
.ft-bot {
  border-color: var(--bt-vert-ligne) !important;
}

.fig-v,
.proj-number,
.chapitre-num,
.pm-rule,
.pensee-body-inner p:first-child::first-letter {
  color: rgba(138,106,67, .82) !important;
}

.sec--noir .fig-v,
.sec--noir .proj-number,
.sec--noir .chapitre-num {
  color: var(--bt-cognac-doux) !important;
}

.form-field input,
.form-field textarea,
.form-field select,
.est-f input,
input,
textarea,
select {
  color: var(--bt-vert-encre);
  border-color: rgba(29,52,40, .22) !important;
}

.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus,
.est-f input:focus,
input:focus,
textarea:focus,
select:focus {
  border-color: var(--bt-vert) !important;
  outline-color: rgba(29,52,40, .22) !important;
}

.form-field input::placeholder,
.form-field textarea::placeholder,
input::placeholder,
textarea::placeholder {
  color: rgba(138,122,96, .48) !important;
}

input[type="checkbox"] {
  accent-color: var(--bt-vert);
}

.est-step.active {
  color: var(--bt-vert-encre) !important;
  border-bottom-color: var(--bt-vert) !important;
}

.est-res-t {
  color: var(--bt-ivoire) !important;
}

.est-res-b {
  color: rgba(242,235,221, .72) !important;
}

.cine-bg,
.hero-vid video,
.folco-video,
.pensee-cine video {
  filter: saturate(.84) contrast(1.05) brightness(.88) sepia(.06);
}

img {
  filter: saturate(.86) contrast(1.03);
}

img[src*="/bureaux/"],
img[src*="/chantier/"],
img[src*="/projects/"],
img[src*="/archives/"] {
  filter: saturate(.8) contrast(1.04) brightness(.97) sepia(.07);
}

.hero::after,
.cine::after,
.folco::after,
.pensee-cine::after {
  background:
    linear-gradient(180deg, rgba(14,26,20, .16), transparent 42%, rgba(14,26,20, .22)),
    radial-gradient(circle at 70% 20%, rgba(29,52,40, .18), transparent 38%) !important;
}

.concierge-panel {
  background:
    linear-gradient(160deg, rgba(247,241,230, .98), rgba(216,198,168, .92)) !important;
  border-color: rgba(29,52,40, .22) !important;
  box-shadow: 0 34px 90px rgba(14,26,20, .18);
}

.concierge-head,
.concierge-form {
  border-color: rgba(29,52,40, .16) !important;
}

.concierge-key,
.concierge-subtitle,
.concierge-label,
.concierge-msg--typing,
.concierge-msg--limit {
  color: rgba(29,52,40, .62) !important;
}

.concierge-msg--agent {
  color: var(--bt-vert-encre) !important;
}

.concierge-msg--user {
  color: rgba(20,32,26, .68) !important;
  border-right-color: rgba(29,52,40, .2) !important;
}

.concierge-cta,
.concierge-send {
  color: var(--bt-cognac) !important;
  border-color: rgba(138,106,67, .3) !important;
}

.concierge-cta:hover,
.concierge-send:hover {
  background: var(--bt-cognac) !important;
  color: var(--bt-ivoire) !important;
}

.concierge-input {
  background: rgba(247,241,230, .64) !important;
  color: var(--bt-vert-encre) !important;
  border-color: rgba(29,52,40, .18) !important;
}

.vg-title,
.sg-title,
.ck-t,
.ai-pt {
  color: var(--bt-vert-encre) !important;
}

.vg-ai button,
[data-i="vg_ai_start"],
[style*="156,107,69"] {
  color: var(--bt-cognac) !important;
  border-color: rgba(138,106,67, .22) !important;
}

[data-i^="bur_"],
[data-i^="eng_"],
.stmt-sig em,
.stmt-sig2 {
  color: var(--bt-cognac) !important;
}

.dbloc,
.dbloc-i,
.pj-sec,
.sc-photo-cap,
section[style*="border-top"] {
  border-color: rgba(29,52,40, .16) !important;
}

.dbloc-l,
.pj-sec-n,
.sc-photo-n,
.tl-d,
.bc a:hover,
.bc-s,
.tl-t em {
  color: rgba(29,52,40, .66) !important;
}

.live-dot {
  background: var(--bt-cognac) !important;
}

.vg-step:hover,
.ck-btn:hover {
  background: rgba(29,52,40, .08) !important;
}

html[data-mode="velin"] {
  --vlm-bg: var(--bt-vert-nuit);
  --vlm-bg-card: #14201A;
  --vlm-bg-soft: #131A14;
  --vlm-ink: var(--bt-ivoire);
  --vlm-ink-soft: rgba(242,235,221, .72);
  --vlm-ink-mute: rgba(216,198,168, .46);
  --vlm-gold: var(--bt-cognac-doux);
  --vlm-gold-l: rgba(138,106,67, .14);
  --vlm-gold-m: rgba(138,106,67, .38);
  --vlm-gold-s: rgba(169,134,84, .85);
  --vlm-line: rgba(216,198,168, .16);
  --vlm-line-soft: rgba(216,198,168, .08);
}

html[data-mode="velin"] body,
html[data-mode="velin"] section {
  background-color: var(--bt-vert-nuit) !important;
}

html[data-mode="velin"] .hd.solid {
  background: rgba(14,26,20, .94) !important;
  border-bottom-color: rgba(216,198,168, .14) !important;
}

html[data-mode="velin"] .logo-n,
html[data-mode="velin"] .display,
html[data-mode="velin"] .h2,
html[data-mode="velin"] .proj-nm,
html[data-mode="velin"] .concierge-title {
  color: var(--bt-ivoire) !important;
}

html[data-mode="velin"] .btn-n,
html[data-mode="velin"] .btn-primary {
  background: var(--bt-cognac) !important;
  color: var(--bt-ivoire) !important;
  border-color: var(--bt-cognac) !important;
}

@media (max-width: 760px) {
  body {
    background: var(--bt-ivoire);
  }

  .hd.solid {
    background: rgba(247,241,230, .98);
  }

  .nav,
  body.nopen .nav {
    background:
      linear-gradient(160deg, rgba(29,52,40, .08), transparent 42%),
      var(--bt-ivoire-haut) !important;
  }

  body.nopen::before {
    background: rgba(14,26,20, .72) !important;
  }

  body.nopen .nl,
  body.nopen .ncta {
    color: var(--bt-vert-encre) !important;
  }

  .btn {
    letter-spacing: 3.2px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .btn,
  .ncta,
  .proj-iw img,
  .concierge-panel,
  .concierge-icon {
    transition-duration: .01ms !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   FINITION V18 — bijou parakeet · entrée en silence · lignes épurées
   (chargé en dernier : gouverne la finition sans toucher le contenu)
═══════════════════════════════════════════════════════════════ */

/* — Rendu typographique épuré (Bottega / Loro Piana : net, calme) — */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* — Lignes épurées : capitales d'étiquette aérées, filets htrue-hairline — */
.hero-ey,
.eyebrow,
.kicker,
.proj-cat,
.proj-lc,
.ba-lbl,
.sc-t,
.fig-l,
.vg-sub,
.dbloc-l,
.pj-sec-n {
  letter-spacing: .26em !important;
  text-transform: uppercase;
  font-weight: 400;
}
.sep,
.nl::after,
.hero-ey::before,
.sc-l,
.ba-labels,
.figs,
.fig,
.ft-top,
.ft-bot {
  border-width: .5px !important;
}

/* — L'ENTRÉE DE LA MAISON, EN SILENCE —
   voile vert-nuit profond, dégradé long et calme ; le seuil s'ouvre
   sans bruit, la vidéo passe en sourdine chromatique.                */
.hero-veil {
  background:
    radial-gradient(120% 90% at 50% 16%, rgba(14,26,20,.30), transparent 52%),
    linear-gradient(
      to top,
      rgba(14,26,20,.90) 0%,
      rgba(14,26,20,.62) 30%,
      rgba(14,26,20,.30) 60%,
      rgba(20,32,26,.10) 100%
    ) !important;
}
.hero-vid video {
  filter: saturate(.72) contrast(1.04) brightness(.80) sepia(.05) !important;
  transform: scale(1.02);
}
/* respiration lente du fond — un souffle, pas un mouvement */
@media (prefers-reduced-motion: no-preference) {
  .hero-vid video { animation: bt-hero-breathe 26s ease-in-out infinite alternate; }
}
@keyframes bt-hero-breathe {
  from { transform: scale(1.02); }
  to   { transform: scale(1.07); }
}
.hero-ey { color: rgba(210,198,172,.50) !important; }
.hero-ey::before { background: rgba(210,198,172,.30) !important; }
.hero-sub { color: rgba(216,198,168,.58) !important; }
.hero-h1 { color: rgba(242,235,221,.95) !important; }
.hero-h1 em { color: rgba(216,198,168,.74) !important; }
/* le seuil respire : indice de défilement très discret */
.sc-l  { background: linear-gradient(to bottom, transparent, rgba(216,198,168,.40)) !important; }
.sc-t  { color: rgba(216,198,168,.42) !important; }

/* — BIJOU PARAKEET — vert signature Bottega, par touches infimes — */
.live-dot {
  background: var(--bt-parakeet) !important;
  box-shadow: 0 0 0 4px rgba(138,106,67,.16);
}
/* soulignement de navigation : le trait actif vire au parakeet */
.nl.active::after,
.nl:hover::after {
  background: linear-gradient(90deg, transparent, var(--bt-parakeet), transparent) !important;
}
.hd:not(.solid) .nl.active::after,
.hd:not(.solid) .nl:hover::after {
  background: linear-gradient(90deg, transparent, rgba(138,106,67,.95), transparent) !important;
}
/* micro-CTA « → » sur fond sombre : pointe vivante */
.sec--noir [data-i="vg_ai_start"],
.cine [data-i="vg_ai_start"] {
  color: var(--bt-parakeet) !important;
}

/* — CTA principal : cuir Hermès, révélation vert-nuit au survol — */
.btn-n,
.btn-primary {
  letter-spacing: .22em;
}
.btn-n:hover,
.btn-primary:hover {
  color: var(--bt-ivoire-haut) !important;
}

/* — Conciergerie : panneau plus calme, accent cuir, vie en parakeet — */
.concierge-icon {
  box-shadow: 0 18px 48px rgba(14,26,20,.28);
}
.concierge-key {
  color: var(--bt-parakeet) !important;
  letter-spacing: .2em !important;
}
.concierge-cta,
.concierge-send {
  letter-spacing: .14em !important;
}

/* — Focus visible accessible, teinté maison — */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 1.5px solid rgba(138,106,67,.55) !important;
  outline-offset: 2px;
}

/* ═══════════════════════════════════════════════════════════════
   FINITION V20 — lisibilité du header + photos désaturées (Palazzo)
═══════════════════════════════════════════════════════════════ */

/* — HEADER SUR L'ACCUEIL : les liens flottaient sur la vidéo sans contraste.
   On pose un voile vert-nuit dégradé DANS la bande du header (72px), et on
   remonte les textes à l'ivoire pierre + une ombre douce pour la lisibilité.
   Quand on défile (.hd.solid), le fond ivoire opaque reprend la main.        */
.hd:not(.solid) {
  background: linear-gradient(
    to bottom,
    rgba(14, 26, 20, .66) 0%,
    rgba(14, 26, 20, .34) 55%,
    rgba(14, 26, 20, 0) 100%
  );
}
.hd:not(.solid) .nl {
  color: rgba(247, 241, 230, .94) !important;
  text-shadow: 0 1px 18px rgba(14, 26, 20, .6);
}
.hd:not(.solid) .nl:hover,
.hd:not(.solid) .nl.active {
  color: #FAF5EA !important;
}
.hd:not(.solid) .ncta {
  color: rgba(247, 241, 230, .94) !important;
  border-color: rgba(247, 241, 230, .42) !important;
  text-shadow: 0 1px 14px rgba(14, 26, 20, .5);
}
.hd:not(.solid) .logo-n {
  color: #FAF5EA !important;
  text-shadow: 0 1px 18px rgba(14, 26, 20, .55);
}
.hd:not(.solid) .logo-s {
  color: rgba(216, 198, 168, .82) !important;
}
.hd:not(.solid) .nl::after {
  background: var(--bt-cognac) !important;   /* soulignement bronze, lisible */
}
.hd:not(.solid) .lb {
  color: rgba(216, 198, 168, .58) !important;
}
.hd:not(.solid) .lb.active {
  color: rgba(247, 241, 230, .92) !important;
}

/* — PHOTOGRAPHIES DÉSATURÉES (registre Palazzo Verde : pierre, ombre, argent
   ancien). Plus minéral que la V18 ; jamais clinique.                        */
img {
  filter: saturate(.66) contrast(1.05) brightness(.98) !important;
}
img[src*="/projects/"],
img[src*="/bureaux/"],
img[src*="/chantier/"],
img[src*="/archives/"] {
  filter: saturate(.6) contrast(1.06) brightness(.95) sepia(.05) !important;
}
.cine-bg,
.hero-vid video,
.folco-video,
.pensee-cine video {
  filter: saturate(.58) contrast(1.06) brightness(.78) sepia(.05) !important;
}

/* — Densité « vert-noir dominant » : les sections sombres tirent vers le
   Nuit Caravelli, l'ivoire pierre reste chaud pour la lecture.               */
.sec--noir,
.cine,
.folco,
footer,
.ft,
.est-res {
  background:
    radial-gradient(circle at 12% 0%, rgba(49, 72, 58, .20), transparent 36vw),
    linear-gradient(150deg, var(--bt-vert-encre), var(--bt-vert-nuit) 64%) !important;
}
