/* Preserve the full composition of article and project photos. */
.article-content img,.article-content img.feature-image{display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;aspect-ratio:auto;margin:30px auto;border-radius:5px}
.article-content img.photo-portrait{max-width:min(480px,100%)}.article-content figure{margin:30px 0}.article-content figure img{margin:0 auto}.article-content [data-enlarge]{cursor:zoom-in}.article-content [data-enlarge]:focus-visible{outline:3px solid var(--yellow);outline-offset:6px}
.editorial-card>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#111214}.projects-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:28px}.projects-intro>p:first-child{font-size:18px;max-width:760px;color:#c3c7cc}.project-total{color:var(--yellow);white-space:nowrap;font-size:15px}.project-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:38px}.project-filters button{min-height:48px;padding:13px 18px;border:1px solid #56585e;border-radius:3px;background:#242629;color:#eee;font:inherit;font-size:15px}.project-filters button.active{background:var(--yellow);color:#18191b;border-color:var(--yellow)}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.project-card{min-width:0;background:#232528;border:1px solid #404248;border-radius:5px;overflow:hidden}.project-card[hidden]{display:none}.project-photo{display:block;position:relative;width:100%;padding:0;border:0;background:#111214;cursor:zoom-in}.project-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.photo-zoom{position:absolute;right:12px;bottom:12px;font-size:12px;background:#141517e8;color:#fff;padding:8px 12px;border:1px solid #55575d;border-radius:3px}.project-caption{padding:24px}.project-caption .eyebrow{font-size:11px;letter-spacing:.8px;color:var(--yellow)}.project-caption h2{font-family:'DM Sans',Arial,sans-serif;font-size:22px;line-height:1.35;letter-spacing:-.5px;margin:12px 0}.project-caption>p:not(.eyebrow){font-size:16px;color:#b9bfc6}.project-caption .text-link{font-size:15px}.projects-section+.article-cta{position:static;margin:0 6% 70px;width:auto;max-width:800px}.photo-dialog{width:96vw;max-width:1500px;max-height:96dvh;padding:20px;background:#17191b;color:#fff;border:1px solid #60646a;border-radius:6px;overflow:auto}.photo-dialog::backdrop{background:#000e}.photo-dialog form{display:flex;justify-content:space-between;align-items:center;gap:20px}.photo-dialog h2{font-family:'DM Sans',Arial,sans-serif;font-size:18px;margin:0;line-height:1.5}.photo-dialog button{background:#303339;color:#fff;border:1px solid #656970;padding:12px 17px;font-size:16px;min-height:48px}.photo-dialog img{width:100%;height:auto;max-height:74dvh;object-fit:contain;margin:18px auto}.photo-dialog .photo-controls{display:flex;justify-content:space-between;gap:15px}
@media(max-width:1100px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.projects-grid{grid-template-columns:1fr;gap:25px}.projects-intro{display:block}.projects-intro>p:first-child,.project-caption>p:not(.eyebrow){font-size:17px}.project-caption h2{font-size:24px}.project-filters{gap:9px}.project-filters button{font-size:16px;padding:12px 15px}.project-total{font-size:16px}.project-photo img{aspect-ratio:4/3}.photo-zoom{font-size:14px}.project-caption .eyebrow{font-size:12px}.photo-dialog{padding:14px}.photo-dialog h2{font-size:16px}.article-content img{margin:24px auto}.editorial-card>img{height:auto;aspect-ratio:3/2;object-fit:contain}}
.home-projects{grid-template-columns:repeat(4,minmax(0,1fr))}.home-projects .project-caption{padding:20px}.home-projects h3{font-size:19px;line-height:1.4;margin:0}.showcase>.text-link{margin-top:30px}@media(max-width:1100px){.home-projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.home-projects{grid-template-columns:1fr}.home-projects h3{font-size:23px}}
.article-content img,.article-content img.feature-image{width:auto;max-width:100%;height:auto;max-height:none}.article-content img.photo-portrait{max-width:min(480px,100%)}
