/* Editorial layout, loaded exclusively by sobre.php. */
.about-page { background:#F7F6F2; color:#171717; }
.about-page__inner { width:calc(100% - 64px); max-width:1320px; margin-inline:auto; }
.about-page__intro { padding:48px 0 56px; }
.about-page__intro-grid { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); align-items:start; gap:32px 48px; }
.about-page__intro-grid > *, .about-page__story-grid > *, .about-page__values-grid > * { min-width:0; }
.about-page__intro-grid > :only-child, .about-page__story-grid > :only-child, .about-page__work-intro > :only-child, .about-page__values-grid > :only-child { grid-column:1 / -1; }
.about-page__eyebrow { margin:0 0 16px; color:#53634F; font-size:.75rem; font-weight:600; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
.about-page h1 { max-width:580px; margin:0; color:#173A24; font-size:clamp(2rem,3.2vw,2.875rem); line-height:1.12; font-weight:650; letter-spacing:-.025em; }
.about-page__lead { max-width:660px; font-size:1rem; line-height:1.65; }
.about-page__lead p, .about-page__copy p { margin-bottom:12px; }
.about-page__lead p:last-child, .about-page__copy p:last-child, .about-page__work-list p:last-child, .about-page__value p:last-child { margin-bottom:0; }
.about-page__section { padding-block:var(--section-padding, 56px); }
.about-page__history { padding-top:0; padding-bottom:56px; }
.about-page__story-grid { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); align-items:center; gap:clamp(24px,4vw,48px); }
.about-page__story-grid--text-only { grid-template-columns:minmax(0,680px); }
.about-page__story-image { margin:0; }
.about-page__story-image img { display:block; width:100%; aspect-ratio:4 / 3; border-radius:6px; object-fit:cover; }
.about-page h2 { margin:0 0 16px; color:#173A24; font-size:clamp(1.5rem,2vw,2rem); line-height:1.15; font-weight:600; letter-spacing:-.015em; }
.about-page__copy { min-width:0; font-size:1rem; line-height:1.65; }
.about-page__copy p { color:#4F574E; }
.about-page__work { background:#FFFFFF; }
.about-page__work-intro { max-width:720px; }
.about-page__work-intro--with-image { display:grid; grid-template-columns:minmax(0,6fr) minmax(0,4fr); align-items:center; gap:32px; max-width:none; }
.about-page__work-image { display:block; width:100%; aspect-ratio:3 / 2; border-radius:6px; object-fit:cover; }
.about-page__work-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:24px; margin:32px 0 0; padding:0; list-style:none; }
.about-page__work-list:first-child { margin-top:0; }
.about-page__work-list li { min-width:0; padding-top:16px; border-top:1px solid #D9DFD5; }
.about-page__number { display:block; margin-bottom:16px; color:#65755F; font-size:.75rem; line-height:1.4; font-variant-numeric:tabular-nums; }
.about-page__work-list h2, .about-page__work-list h3 { margin:0 0 10px; color:#173A24; font-size:1.125rem; line-height:1.35; font-weight:600; letter-spacing:0; }
.about-page__work-list p, .about-page__value p { color:#4F574E; font-size:.9375rem; line-height:1.65; }
.about-page__values { padding-block:48px; }
.about-page__values-grid { display:grid; grid-template-columns:minmax(0,4fr) minmax(0,8fr); gap:32px; }
.about-page__values-list { min-width:0; }
.about-page__values-list:only-child { grid-column:1 / -1; }
.about-page__value { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,3fr); gap:20px; padding-block:20px; border-top:1px solid #D9DFD5; }
.about-page__value:last-child { border-bottom:1px solid #D9DFD5; }
.about-page__value h2, .about-page__value h3 { margin:0; color:#173A24; font-size:.875rem; line-height:1.6; font-weight:650; letter-spacing:.045em; text-transform:uppercase; }
.about-page__value > :only-child { grid-column:1 / -1; }
.about-page__institutional { padding-top:24px; padding-bottom:48px; }
.about-page__photograph { margin:0; }
.about-page__photograph img { display:block; width:100%; aspect-ratio:16 / 7; border-radius:6px; object-fit:cover; }
.about-page__photograph figcaption { margin-top:14px; color:#616B5D; font-size:.8125rem; line-height:1.6; }
.about-page__institutional-copy { max-width:680px; margin:24px 0 0 auto; }
.about-page__institutional-copy:first-child { margin-top:0; }
.about-page__contact { padding-block:32px 40px; border-top:1px solid #D9DFD5; }
.about-page__contact-grid { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px 32px; }
.about-page__contact h2 { margin-bottom:12px; font-size:1.5rem; }
.about-page__contact .about-page__copy { max-width:760px; }
.about-page__button { display:inline-flex; flex-shrink:0; align-items:center; justify-content:center; min-height:var(--button-height, 40px); max-width:100%; padding:8px 18px; border:1px solid #2E6B46; border-radius:8px; background:#2E6B46; color:#FFFFFF; font-size:.875rem; line-height:1.4; font-weight:600; text-align:center; text-decoration:none; overflow-wrap:anywhere; transition:background-color .18s ease,border-color .18s ease; }
.about-page__button:hover { background:#24573A; border-color:#24573A; }
.about-page :focus-visible { outline:3px solid #173A24; outline-offset:4px; }
@media (max-width:1100px) {
    .about-page__intro-grid { gap:32px; }
    .about-page__story-grid { gap:28px; }
    .about-page__values-grid { grid-template-columns:minmax(0,3fr) minmax(0,7fr); gap:24px; }
}
@media (max-width:800px) {
    .about-page__inner { width:calc(100% - 40px); }
    .about-page__intro { padding:32px 0 40px; }
    .about-page__intro-grid, .about-page__story-grid, .about-page__work-intro--with-image, .about-page__values-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
    .about-page__section { padding-block:var(--section-padding-compact, 40px); }
    .about-page__history { padding-top:0; }
    .about-page__work-list { grid-template-columns:minmax(0,1fr); gap:24px; margin-top:24px; }
    .about-page__number { margin-bottom:16px; }
    .about-page__photograph img { aspect-ratio:4 / 3; }
    .about-page__contact-grid { align-items:flex-start; flex-direction:column; }
    .about-page__contact { padding-block:28px 32px; }
}
@media (max-width:479px) {
    .about-page__inner { width:calc(100% - 32px); }
    .about-page__eyebrow { margin-bottom:16px; }
    .about-page__lead { font-size:1rem; }
    .about-page__value { grid-template-columns:minmax(0,1fr); gap:10px; }
}
@media (prefers-reduced-motion:reduce) {
    .about-page__button { transition:none; }
}
