/* Codex 49 : uniquement les deux pages piliers verre et inox. */
.c49-pillars {
  --c49-sky: linear-gradient(90deg,#dff4fa 0%,#f9fdfe 34%,#fff 50%,#f9fdfe 66%,#dff4fa 100%);
  background: var(--c49-sky);
}
.c49-pillars > :is(.pillar-hero,.pillar-quick,.pillar-models,.pillar-comparison,.pillar-editorial,.pillar-applications,.pillar-projects,.pillar-faq) { background: transparent; }
.c49-pillars .c49-hero-heading { width:100%; margin:0 auto 46px; text-align:center; }
.c49-pillars .c49-hero-heading h1 { max-width:none; margin:18px 0 0; font-size:clamp(2.06rem,4.09vw,4.16rem); line-height:1.06; }
.c49-pillars .pillar-hero-grid { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:60px; align-items:center; }
.c49-pillars .pillar-lead { margin-top:0; }
.c49-pillars .pillar-hero-media { align-self:center; }
.c49-pillars.pillar-glass .pillar-hero-media { min-height:0; aspect-ratio:4/3; }
.c49-pillars.pillar-glass .pillar-hero-shot img { object-position:50% 65%; }
/* Trois niveaux lisibles, sans centrer le contenu des cartes. */
.c49-pillars :is(.pillar-quick,.pillar-models,.pillar-comparison,.pillar-projects) > .pillar-container > .pillar-section-heading { display:flex; flex-direction:column; align-items:center; gap:20px; text-align:center; }
.c49-pillars :is(.pillar-quick,.pillar-models,.pillar-comparison,.pillar-projects) > .pillar-container > .pillar-section-heading h2 { max-width:1000px; margin-inline:auto; }
.c49-pillars :is(.pillar-quick,.pillar-models,.pillar-comparison,.pillar-projects) > .pillar-container > .pillar-section-heading > p { max-width:820px; }
.c49-pillars .pillar-model-group-heading { display:flex; flex-direction:column; align-items:center; gap:14px; text-align:center; }
.c49-pillars .pillar-model-group-heading > div { display:flex; flex-direction:column; align-items:center; gap:14px; }
.c49-pillars .pillar-model-group-heading p { max-width:820px; }
.c49-pillars :is(.pillar-priority-grid,.pillar-model-grid,.pillar-app-grid,.pillar-project-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); }
.c49-pillars .pillar-model-group-standard .pillar-model-card:nth-child(4) { grid-column:auto; }
.c49-pillars .pillar-model-image { aspect-ratio:3/2; padding:0; }
.c49-pillars .pillar-model-card { border:0; box-shadow:0 0 0 1px rgb(80 116 128 / 18%); }
.c49-pillars .pillar-model-copy { padding:30px; }
.c49-pillars .pillar-model-image img { width:100%; height:100%; object-fit:cover; }
/* Même position et même zoom que les trois modèles de l’accueil. */
.c49-pillars.pillar-glass #verre-poteaux-inox-pinces img { scale:1.65; transform-origin:38% 27%; object-position:38% 27%; }
.c49-pillars.pillar-glass #verre-cables img { scale:1.12; transform-origin:50% 60%; object-position:50% 60%; }
.c49-pillars.pillar-glass #verre-lisses img { scale:1.3; transform-origin:20% 75%; object-position:20% 75%; }
.c49-pillars.pillar-glass #pinces-sol img { object-position:50% 60%; }
.c49-pillars .pillar-project-grid > a { grid-template-rows:auto 1fr; border:0; background:#fff; box-shadow:0 0 0 1px var(--pillar-line); overflow:hidden; }
.c49-pillars .pillar-project-grid figure { aspect-ratio:3/2; }
.c49-pillars.pillar-steel .pillar-project-grid > a:last-child { grid-column:1/-1; }
.c49-pillars.pillar-steel .pillar-project-grid > a:last-child figure { aspect-ratio:2/1; }
/* Grandes photos éditoriales, jusqu’aux bords du cadre. */
.c49-pillars .pillar-editorial-section:not(.pillar-editorial-no-image) { grid-template-columns:85px minmax(0,1fr); }
.c49-pillars .pillar-editorial-image { grid-column:1/-1; width:75%; justify-self:center; padding:0; border:0; }
.c49-pillars .pillar-editorial-image img { max-height:none; height:auto; object-fit:cover; }
.c49-pillars .section-photos.section-photos { width:75%; justify-self:center; grid-template-columns:minmax(0,1fr); gap:30px; }
.c49-pillars .section-photo.section-photo { border:0; border-radius:0; }
.c49-pillars .section-photo .section-photo-link { padding:0; flex:none; background:transparent; overflow:hidden; }
.c49-pillars .section-photo.section-photo .section-photo-link img { width:100%; max-height:none; height:auto; object-fit:cover; }
.c49-pillars.pillar-glass #fixations .section-photo-link img { aspect-ratio:3/2; object-position:center 85%; }
.c49-pillars .pillar-table-group,.c49-pillars .pillar-table-wrap { min-width:0; }
/* Les blocs sombres conservés gardent leurs liens lisibles. */
.c49-pillars .pillar-tone-dark .pillar-related-links a { color:#fff; }
@media(max-width:980px) {
  .c49-pillars .pillar-hero-grid { grid-template-columns:1fr; gap:48px; }
  .c49-pillars .pillar-hero-media { width:100%; max-width:660px; justify-self:center; }
  .c49-pillars .pillar-hero-copy { width:100%; }
  .c49-pillars .pillar-lead { max-width:none; }
  .c49-pillars .pillar-editorial-image,.c49-pillars .section-photos.section-photos { width:100%; }
  .c49-pillars .pillar-editorial-section:not(.pillar-editorial-no-image) { grid-template-columns:65px minmax(0,1fr); }
}
@media(max-width:640px) {
  .c49-pillars .c49-hero-heading { margin-bottom:32px; }
  .c49-pillars .c49-hero-heading h1 { font-size:clamp(1.75rem,7.5vw,2.8rem); line-height:1.08; }
  .c49-pillars :is(.pillar-priority-grid,.pillar-model-grid,.pillar-app-grid,.pillar-project-grid) { grid-template-columns:minmax(0,1fr); }
  .c49-pillars .pillar-model-copy { padding:25px 21px; }
  .c49-pillars.pillar-steel .pillar-project-grid > a:last-child figure { aspect-ratio:3/2; }
  .c49-pillars .pillar-editorial-section:not(.pillar-editorial-no-image) { display:block; }
  .c49-pillars .pillar-hero-badge { right:0; }
}
