/* V21 FR final: French visual + tri-language support */
.architecture-graphic-fr{
  height:auto;
  min-height:0;
  overflow:hidden;
  background:#f4f1ee;
}
.architecture-graphic-fr .architecture-fr-final{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
  background:#f4f1ee;
}
@media(max-width:1180px){
  .architecture-graphic-fr{height:auto}
}
@media(max-width:600px){
  .architecture-graphic-fr{height:auto}
}


/* V23 FR desktop/tablet hero hotfix.
   Mobile <=600px deliberately retains the accepted V21 line logic. */
.hero-title-fr .fr-break-base,
.hero-title-fr .fr-break-desktop,
.hero-title-fr .fr-break-mobile { display:none; }
.hero-title-fr .fr-mobile-space { display:inline; }

@media (min-width:601px){
  .hero-title-fr{
    font-size:clamp(2rem,4.15vw,2.35rem);
    line-height:1.06;
    letter-spacing:-0.028em;
    max-width:none;
  }
  .hero-title-fr .fr-break-base,
  .hero-title-fr .fr-break-desktop { display:block; }
  .hero-title-fr .fr-break-mobile { display:none; }
  .hero-title-fr .fr-mobile-space { display:none; }
}

@media (min-width:901px){
  .hero-title-fr{
    font-size:clamp(2rem,2.75vw,2.25rem);
    line-height:1.055;
  }
}

@media (max-width:600px){
  .hero-title-fr{
    font-size:clamp(1.55rem,6.85vw,1.84rem);
    line-height:1.09;
    letter-spacing:-.022em;
    max-width:100%;
  }
  .hero-title-fr .fr-break-base,
  .hero-title-fr .fr-break-mobile { display:block; }
  .hero-title-fr .fr-break-desktop { display:none; }
  .hero-title-fr .fr-mobile-space { display:inline; }
}
