/* Florska V2 — À propos (maquette APropos.dc.html). */

.plain { list-style: none; margin: 0; padding: 0; }

.fl-about__intro { padding-top: clamp(48px, 6vw, 88px); }
.fl-about__intro .g12 { align-items: start; }
.fl-about__text { display: flex; flex-direction: column; gap: 24px; }
.fl-about__text .eyebrow { margin: 0; }
.fl-about__text .fl-fact { max-width: 58ch; }
.fl-about__story { display: flex; flex-direction: column; gap: 20px; max-width: 58ch; }
.fl-about__story p { margin: 0; font-size: clamp(17px, 1.3vw, 19px); line-height: 1.65; color: var(--fl-text-2); }
.fl-about__story a { color: var(--fl-text); text-decoration: underline; text-underline-offset: 3px; }
.fl-about__todo { margin: 0; line-height: 1.8; }
.fl-about__portrait .fl-img { width: 100%; object-fit: cover; }
.fl-about__portrait .cap { display: flex; justify-content: space-between; gap: 16px; align-items: baseline; margin-top: 12px; }

/* Blocs Privé / Institutionnel */
.fl-about__work { margin-top: 32px; align-items: start; }
.fl-about__blk { display: flex; flex-direction: column; gap: 24px; }
.fl-about__blkt { font-size: clamp(28px, 3vw, 44px); }
.fl-about__blkp { margin: 0; color: var(--fl-text-2); max-width: 52ch; }
.proj {
  display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 16px; align-items: center;
  padding: 16px 0; border-top: 1px solid var(--fl-line); text-decoration: none; color: var(--fl-text);
}
.fl-about__blk li:last-child .proj { border-bottom: 1px solid var(--fl-line); }
.proj__media { display: block; overflow: hidden; }
.proj__media .fl-img, .proj__media .ph { width: 96px; height: 96px; object-fit: cover; transition: scale var(--fl-t-m) var(--fl-ease-out); }
.proj__txt { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.proj__title { font-weight: 600; }
.proj:is(:hover, :focus-visible) .proj__title { box-shadow: inset 0 -1px 0 var(--fl-accent); }
.proj:hover .proj__media .fl-img { scale: 1.04; }

/* Références */

.fl-endcta__in { display: flex; flex-direction: column; gap: 32px; align-items: flex-start; }

@media (prefers-reduced-motion: reduce) {
  .proj:hover .proj__media .fl-img { scale: none; }
}

/* L'Arsenal : cartes matériel (3 colonnes, 2 sur tablette et mobile) */
.fl-gear__title { margin-bottom: 32px; padding-left: 20px; border-left: 3px solid var(--fl-accent); }
.fl-gear__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 24px); }
.fl-gear__card { display: flex; flex-direction: column; background: var(--fl-surface); border: 1px solid var(--fl-line); }
.fl-gear__visual { display: grid; place-items: center; aspect-ratio: 1 / 1; padding: clamp(16px, 2.4vw, 32px); background: var(--fl-surface-2); }
.fl-gear__visual img { display: block; width: 100%; height: 100%; object-fit: contain; }
.fl-gear__body { display: flex; flex-direction: column; gap: 6px; padding: clamp(14px, 1.6vw, 22px); }
.fl-gear__cat { text-transform: uppercase; letter-spacing: .06em; }
.fl-gear__name { margin: 0; font-size: clamp(20px, 1.8vw, 26px); line-height: 1.15; }
.fl-gear__desc { margin: 0; font-size: 15px; line-height: 1.5; color: var(--fl-text-2); }
@media (max-width: 899px) { .fl-gear__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 479px) { .fl-gear__body { padding: 12px; } .fl-gear__name { font-size: 18px; } .fl-gear__desc { font-size: 14px; } }

/* 320 px : « HOUTMANN » tient dans la colonne */
@media (max-width: 379px) { .fl-about__text .h1 { font-size: 34px; } }

/* Titre : reste dans sa colonne, jamais sur le portrait. */
.fl-about__text, .fl-about__portrait { min-width: 0; }
.fl-about__text .h1 { max-width: 100%; font-size: clamp(34px, 5vw, var(--fl-fs-h1)); overflow-wrap: break-word; }
.fl-about__portrait .fl-img, .fl-about__portrait img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
@media (min-width: 900px) { .fl-about__intro .g12 { column-gap: clamp(32px, 5vw, 80px); } }
