/* Escritorio según PDF. La redistribución móvil/tablet es una propuesta local. */
.about-page { background:#2a311f; }
.about-container { width:calc(100% - 80px); max-width:1600px; margin-inline:auto; }
.about-main { padding-top:168px; }
.about-eyebrow { font:400 16px/1.4 var(--font-body); text-transform:uppercase; margin-bottom:28px; }
.about-title { font-size:72px; line-height:.98; max-width:780px; }
.history-timeline { list-style:none; padding:0; margin:140px 0 0; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:70px 28px; }
.history-entry { display:contents; }
.history-entry__text { min-width:0; }
.history-entry h3 { font:400 28px/1.3 var(--font-body); margin-bottom:24px; }
.history-entry p { font-size:16px; line-height:1.5; }
.history-entry p+p { margin-top:24px; }
.history-entry__photos { display:flex; gap:18px; align-items:flex-start; min-width:0; }
.history-entry__photos img { min-width:0; width:100%; height:auto; object-fit:cover; }
.history-entry__photos:has(img+img) img { width:calc((100% - 18px)/2); }
.history-entry--1950 .history-entry__text { grid-column:1/span 4; grid-row:1; }
.history-entry--1950 .history-entry__photos { grid-column:7/span 6; grid-row:1; align-self:end; margin-top:170px; }
.history-entry--1996 .history-entry__text { grid-column:4/span 4; grid-row:2; }
.history-entry--1999 .history-entry__text { grid-column:8/span 4; grid-row:2; }
.history-entry--2003 .history-entry__text { grid-column:2/span 3; grid-row:3; padding-top:70px; }
.history-entry--2003 .history-entry__photos { grid-column:5/span 7; grid-row:3; padding-top:70px; }
.history-entry--2005 .history-entry__text { grid-column:9/span 4; grid-row:4; }
.history-entry--2008 .history-entry__text { grid-column:1/span 5; grid-row:5; }
.history-entry--2008 .history-entry__photos { grid-column:1/span 6; grid-row:6; align-self:start; }
.history-entry--2012 .history-entry__photos { grid-column:7/span 4; grid-row:5; }
.history-entry--2012 .history-entry__text { grid-column:7/span 3; grid-row:6; }
.history-entry--2013 .history-entry__text { grid-column:10/span 3; grid-row:6; }
.history-entry--2016 .history-entry__text { grid-column:2/span 4; grid-row:7; }
.history-entry--2017 .history-entry__text { grid-column:2/span 4; grid-row:8; }
.history-entry--2018 .history-entry__text { grid-column:2/span 4; grid-row:9; }
.history-entry--2018 .history-entry__photos { grid-column:6/span 4; grid-row:8/span 2; }
.history-entry--2022 .history-entry__text { grid-column:10/span 3; grid-row:9; align-self:end; }
.history-entry--2024 .history-entry__photos { grid-column:1/span 7; grid-row:10; margin-top:65px; }
.history-entry--2024 .history-entry__text { grid-column:8/span 3; grid-row:10; padding-top:65px; }
.history-entry--2025 .history-entry__text { grid-column:11/span 2; grid-row:10; padding-top:65px; }
.about-values { padding-top:170px; }
.about-values__list { list-style:none; margin:0; padding:0; }
.about-value { display:grid; grid-template-columns:minmax(0,4fr) minmax(0,2fr) minmax(0,6fr); gap:30px; border-top:1px solid #ffffff90; padding:34px 10px 48px; }
.about-value h3 { font:400 28px/1.15 var(--font-body); max-width:300px; }
.about-value__number { font-size:16px; padding-top:9px; }
.about-value>p { max-width:560px; font-size:18px; line-height:1.35; }
.about-projects { padding-top:100px; }
.about-projects__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:54px; }
.about-project { position:relative; min-width:0; }
.about-project h3:has(a) { position:static; }
.about-project h3>a { position:absolute; inset:0; display:flex; align-items:flex-end; padding:60px 18px 26px; background:linear-gradient(transparent 65%,#0007); }
.about-project h3:has(a) { padding:0; background:none; }
.about-project h3>a:focus-visible { outline-offset:-6px; }
.sustainable-card h3>a { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
.about-project img { width:100%; aspect-ratio:438/611; object-fit:cover; }
.about-project h3 { position:absolute; bottom:0; left:0; right:0; padding:60px 18px 26px; font:700 32px/1.1 var(--font-display); text-transform:uppercase; background:linear-gradient(transparent,#0007); }
.about-sustainability { padding-top:175px; padding-bottom:150px; }
.sustainability-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px 20px; margin-top:60px; }
.sustainable-card { min-width:0; min-height:487px; display:flex; flex-direction:column; padding:34px 28px; }
.sustainable-card h3 { font:400 48px/1.12 var(--font-display); text-transform:uppercase; overflow-wrap:break-word; }
.sustainable-card>img { width:100%; max-width:254px; height:175px; object-fit:contain; margin:auto auto 38px; padding-top:20px; }
.sustainable-card--red { background:#f24f30; }
.sustainable-card--clay { background:#bd9e8f; }
.sustainable-card--olive { background:#b0ae7e; }
.sustainable-card--mint { background:#bad9bc; }
.sustainable-card--coral { background:#dd8065; }
.sustainable-card--ochre { background:#dfab6c; }
.sustainable-card--cream { background:#f3efc0; color:#10100f; }
.sustainable-card--ecodorsal { font-size:18px; line-height:1.35; }
.sustainable-card__more { margin-top:auto; padding-top:32px; font-size:18px; }
@media(max-width:1100px) {
  .about-container { width:calc(100% - 48px); }
  .about-title { font-size:58px; }
  .history-timeline { display:block; margin-top:80px; }
  .history-entry { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; margin-bottom:55px; }
  .history-entry .history-entry__text,.history-entry .history-entry__photos { grid-column:auto; grid-row:auto; margin:0; padding:0; align-self:start; }
  .history-entry__text:only-child { grid-column:1/-1; max-width:650px; }
  .history-entry__photos { flex-wrap:wrap; }
  .history-entry__photos:has(img+img) img { width:calc((100% - 18px)/2); }
  .about-values { padding-top:50px; }
  .about-value { grid-template-columns:minmax(0,3fr) minmax(0,1fr) minmax(0,5fr); gap:20px; }
  .about-value h3 { font-size:24px; }
  .about-value>p { font-size:16px; }
  .about-project h3 { font-size:25px; padding-inline:14px; }
  .sustainability-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .about-sustainability { padding-block:100px; }
}
@media(max-width:600px) {
  .about-main { padding-top:140px; }
  .about-title { font-size:44px; line-height:1.03; }
  .about-eyebrow { font-size:14px; margin-bottom:22px; }
  .history-timeline { margin-top:65px; }
  .history-entry { display:flex; flex-direction:column; gap:26px; margin-bottom:50px; }
  .history-entry h3 { font-size:26px; margin-bottom:20px; }
  .history-entry__photos { width:100%; }
  .history-entry p { font-size:17px; }
  .about-values { padding-top:30px; }
  .about-value { grid-template-columns:minmax(0,1fr) auto; padding:26px 0 34px; gap:20px; }
  .about-value>p { grid-column:1/-1; font-size:17px; }
  .about-value__number { padding-top:3px; }
  .about-projects { padding-top:65px; }
  .about-projects__grid { grid-template-columns:minmax(0,1fr); margin-top:35px; gap:24px; }
  .about-project h3 { font-size:32px; padding:55px 22px 26px; }
  .about-sustainability { padding-block:75px; }
  .sustainability-grid { grid-template-columns:minmax(0,1fr); margin-top:36px; gap:24px; }
  .sustainable-card { min-height:440px; padding:32px 28px; }
  .sustainable-card h3 { font-size:46px; max-width:290px; }
  .sustainable-card>img { margin-bottom:20px; }
}

/* Regular confirmado en los títulos de Sostenibilidad. */
.about-sustainability .display-heading { font-weight:400; }

/* Misma transición fotográfica de Inicio, también accesible con teclado. */
.about-project { display:flex; flex-direction:column; }
.about-project h3:has(a) { position:relative; order:1; font:700 55px/64px var(--font-display); padding:20px 0 12px; }
.about-project h3>a { position:static; display:block; padding:0; background:none; }
.about-project>p { order:2; }
.about-project>a { order:3; align-self:flex-start; padding-block:14px; text-decoration:underline; text-underline-offset:4px; }
.about-sustainability-link { padding-block:56px 72px; }
@media(hover:hover) {
  .about-project>img { filter:grayscale(1); transition:filter .25s ease; }
  .about-project:hover>img,.about-project:focus-within>img { filter:grayscale(0); }
}
@media(prefers-reduced-motion:reduce) { .about-project>img { transition:none; } }
@media(max-width:600px) { .about-project h3:has(a) { font-size:clamp(32px,10vw,44px); line-height:1.16; } }
@media(min-width:601px) and (max-width:1100px) { .about-project h3:has(a) { font-size:clamp(32px,5vw,44px); line-height:1.16; } }


.about-transparency { padding-block:80px; }
.about-transparency p { max-width:100ch; margin-top:28px; }
