/* Reading prose stays justified; use character distribution to avoid wide rivers. */
.aa-visual-refined .site main :is(
  .expertises-hero__note, .expertise-detail-hero__note,
  .expertise-detail-intro p, .expertise-detail-prose p,
  .single-analysis__body p, .single-analysis__body li,
  .cabinet-rework__hero-intro > p:not(.section-kicker), .page-content > .narrow p
) {
  text-align: justify !important;
  text-align-last: left;
  text-justify: inter-word;
  text-wrap: pretty;
  word-spacing: normal;
  letter-spacing: normal;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  overflow-wrap: normal;
  word-break: normal;
}
/* Long-form reading balances word and character spacing on narrow measures. */
.aa-visual-refined .site main :is(
  .single-analysis__body p, .single-analysis__body li,
  .expertise-detail-prose p, .expertise-detail-intro p
) {
  text-justify: inter-word !important;
  word-spacing: normal !important;
}
.refined-intro-sentence { display: block; }
.refined-intro-sentence + .refined-intro-sentence { margin-top: .65em; }
.aa-visual-refined .expertises-hero__grid {
  grid-template-columns: minmax(0,1fr) minmax(0,480px);
  gap: clamp(40px,5vw,72px);
}
.aa-visual-refined .site main .expertises-hero__note {
  width: 100%; max-width: none;
  font: 400 20px/1.5 var(--font-serif);
  color: #455047;
}

/* Reframe within the existing portrait: no image scaling or enlargement. */
.aa-visual-refined .cabinet-rework__portrait-image.is-position-center-top {
  object-position: center 66% !important;
}

/* One continuous map, quieter in the reading area and visible at its edges. */
body.aa-visual-refined {
  background-image:
    linear-gradient(90deg,rgba(247,243,235,.82),rgba(247,243,235,.88) 16%,rgba(247,243,235,.90) 50%,rgba(247,243,235,.88) 84%,rgba(247,243,235,.82)),
    url('../images/carte-mediterranee-perf.webp');
}
.aa-visual-refined .home-hero--photo-fullscreen + .quick-section { background: transparent; }

/* Entry cards keep their bottom link arrow; remove its upper duplicate. */
.aa-visual-refined .site main .widgets-grid > a.aa-card--interactive::before {
  content: none;
  display: none;
}

/* More of the publication grid is visible on arrival. */
.aa-visual-refined .page-hero.veille-hero {
  padding-top: clamp(40px,4vw,58px);
  padding-bottom: 28px;
}
.aa-visual-refined .veille-hero .veille-hero__note {
  margin: 18px 0 0;
  max-width: 62ch;
  justify-self: start;
}
.aa-visual-refined .veille-page--editorial > .container { gap: 20px; }

/* A restrained common colour grade; original photographs remain untouched. */
.aa-visual-refined :is(.veille-card__media, .single-analysis__media, .expertise-related-card) img {
  filter: saturate(.90) contrast(.97) brightness(1.04) sepia(.045);
}
@media(max-width:1000px) {
  .aa-visual-refined .expertises-hero__grid { grid-template-columns: 1fr; gap: 26px; }
  .aa-visual-refined .site main .expertises-hero__note { max-width: 620px; justify-self: start; }
}
@media(max-width:760px) {
  body.aa-visual-refined {
    background-image:
      linear-gradient(90deg,rgba(247,243,235,.84),rgba(247,243,235,.90) 20%,rgba(247,243,235,.90) 80%,rgba(247,243,235,.84)),
      url('../images/carte-mediterranee-mobile-perf.webp');
  }
}
@media(max-width:700px) {
  .aa-visual-refined .cabinet-rework__portrait-image.is-position-center-top {
    object-position: center 44% !important;
  }
  .aa-visual-refined .site main .cabinet-rework__hero-intro > p:not(.section-kicker) {
    text-align: justify !important;
  }
}
@media(max-width:640px) {
  .aa-visual-refined .site main .expertises-hero__note { font-size: 17px; line-height: 1.6; }
  .aa-visual-refined .page-hero.veille-hero { padding-top: 32px; padding-bottom: 22px; }
  .aa-visual-refined .veille-hero .veille-hero__note { margin-top: 14px; }
}

/* Four final editorial refinements. */
.aa-visual-refined .site-footer .footer-grid h2 {
  color:#d5b66d;
  font-size:12px;
  line-height:1.5;
  letter-spacing:.16em;
}
.aa-visual-refined .menu-card.is-current-section .menu-card-title {
  text-decoration:underline;
  text-decoration-color:#a47c2a;
  text-decoration-thickness:1px;
  text-underline-offset:.22em;
  text-decoration-skip-ink:auto;
}
@media(max-width:640px) {
  .aa-visual-refined .single-analysis__hero h1 {
    font-size:clamp(29px,8.2vw,36px);
    line-height:1.14;
    letter-spacing:-.025em;
    hyphens:none;
    -webkit-hyphens:none;
    word-break:normal;
    overflow-wrap:normal;
    text-wrap:balance;
  }
  .aa-visual-refined .single-analysis__hero h1.analysis-title--long {
    font-size:clamp(27px,7.5vw,33px);
    line-height:1.16;
  }
}
