
/* Brand and project editorial pages. */
:root{--line-soft:#ffffff22;--soft:#939b9b}body{background:#181b1c}.header .brand-sub{display:block}.header .wordmark{font-size:23px;letter-spacing:.025em}.header .nav{gap:30px}.header .nav a[aria-current=page]{color:var(--text);border-bottom:1px solid var(--accent)}.crumb{display:flex;gap:12px;color:var(--soft);font-size:10px;letter-spacing:.06em;padding-top:28px}.crumb a:hover{color:var(--text)}.page-opening{padding:57px 0 47px;display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:end}.page-opening h1{font-size:clamp(48px,7.3vw,108px);letter-spacing:-.065em;line-height:1.1;margin-top:20px}.page-opening .opening-note{max-width:31em;font-size:15px;color:var(--muted);line-height:2}.page-opening .opening-note p+p{margin-top:16px}.opening-phrase{font-size:clamp(24px,2.7vw,39px);line-height:1.6;letter-spacing:-.055em;color:var(--text);margin-bottom:16px}.visual{position:relative;overflow:hidden}.visual>img{width:100%;height:clamp(300px,40vw,610px);object-fit:cover;object-position:center}.visual .visual-caption{position:absolute;left:20px;bottom:18px;padding:6px 10px;background:#181b1cdb;font-size:10px;letter-spacing:.08em;color:var(--text)}.editorial{padding:80px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;border-bottom:1px solid var(--line-soft)}.editorial .section-label{display:flex;gap:30px;align-items:start;font-size:10px;letter-spacing:.08em;color:var(--muted)}.editorial h2{font-size:clamp(27px,3vw,41px);line-height:1.55;letter-spacing:-.055em;white-space:pre-line;margin-bottom:26px}.editorial .copy{font-size:14px;color:var(--muted);line-height:2.1;max-width:44em}.editorial .copy p+p{margin-top:20px}.topic-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.topic-row span{border:1px solid var(--line-soft);font-size:10px;padding:5px 12px;color:var(--muted)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:70px 0 28px}.section-heading h2{font-size:30px;letter-spacing:-.045em;line-height:1.4}.section-heading p{font-size:12px;color:var(--muted)}.project-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 24px;margin-bottom:80px}.project-card{display:block;min-width:0}.project-card .card-image{overflow:hidden;background:var(--panel)}.project-card img{width:100%;height:auto;aspect-ratio:1.32;object-fit:cover;transition:transform .6s}.project-card:hover img{transform:scale(1.035)}.card-meta{display:flex;justify-content:space-between;gap:16px;padding-top:15px;border-top:1px solid var(--line);margin-top:12px}.card-meta h3{font-size:18px;letter-spacing:-.035em;line-height:1.5}.card-meta span{font-size:18px;color:var(--muted)}.card-note{font-size:11px;color:var(--muted);margin-top:7px}.brand-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.brand-card{display:block;border-top:1px solid var(--line);padding-top:18px}.brand-card .brand-card-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.brand-card h3{font-size:29px;letter-spacing:-.04em;line-height:1.3}.brand-card-title>span{font-size:26px;color:var(--muted)}.brand-card img{width:100%;aspect-ratio:1.7;object-fit:cover}.brand-card p{font-size:13px;color:var(--muted);margin-top:18px}.scope-list{border-top:1px solid var(--line);margin-top:34px}.scope{padding:25px 0;border-bottom:1px solid var(--line-soft);display:grid;grid-template-columns:42px 1fr;gap:18px}.scope small{font-size:10px;color:var(--muted);padding-top:5px}.scope h3{font-size:21px;line-height:1.5;margin-bottom:12px;letter-spacing:-.04em}.scope p{font-size:13px;color:var(--muted);line-height:2}.two-visuals{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:65px}.two-visuals figure:nth-child(2){margin-top:90px}.two-visuals img{width:100%;aspect-ratio:1.15;object-fit:cover}.two-visuals figcaption,.photo-caption{font-size:11px;line-height:1.8;color:var(--muted);margin-top:12px}.bridge{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;padding:55px 0 65px;border-bottom:1px solid var(--line-soft)}.bridge h2{font-size:clamp(25px,3vw,40px);letter-spacing:-.055em;line-height:1.5}.bridge .copy{color:var(--muted);font-size:14px;line-height:2}.bridge .text-link{margin-top:22px}.project-opening h1{font-size:clamp(42px,7.2vw,94px);line-height:1.17;overflow-wrap:anywhere}.project-opening{padding-bottom:39px}.project-opening .opening-phrase{margin:0;font-size:clamp(23px,2.5vw,34px)}.project-hero img{height:clamp(320px,47vw,690px)}.project-info{display:grid;grid-template-columns:.8fr 1.2fr;gap:72px;padding:33px 0 36px;border-bottom:1px solid var(--line-soft)}.project-info p{font-size:11px;line-height:1.9;color:var(--soft);margin-top:10px}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:0}.facts div{min-width:0}.facts dt{font-size:10px;color:var(--muted);margin-bottom:10px}.facts dd{margin:0;font-size:13px}.fact-pending{color:#818a89}.chapter-photo{margin-top:64px}.photo-button{display:block;width:100%;padding:0;text-align:left;background:var(--panel);overflow:hidden}.photo-button img{width:100%;height:auto;transition:transform .5s}.photo-button:hover img{transform:scale(1.012)}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 24px;margin:42px 0 75px;align-items:start}.photo-grid .photo-button img{width:100%;aspect-ratio:1.36;object-fit:cover}.photo-grid figure:nth-child(even){margin-top:65px}.photo-caption{display:flex;gap:17px}.photo-caption span:first-child{font-size:9px;color:#7d8785;white-space:nowrap;padding-top:2px}.project-navigation{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:28px 0 55px;border-top:1px solid var(--line)}.project-navigation a:last-child{text-align:right}.project-navigation small{display:block;font-size:9px;color:var(--muted);letter-spacing:.1em;margin-bottom:8px}.project-navigation strong{font-size:21px;font-weight:400;letter-spacing:-.035em}.footer.wrap{padding-bottom:35px}.footer-bottom span:last-child{text-align:right}.viewer{width:calc(100vw - 50px);height:calc(100dvh - 50px);max-height:none;border-color:var(--line);background:#131717;padding:0}.viewer::backdrop{background:#060909ef;backdrop-filter:blur(4px)}.viewer-inner{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 22px}.viewer-top p{font-size:12px}.viewer-top button{height:40px;min-width:44px;font-size:22px;border:1px solid var(--line-soft)}.viewer-image{width:100%;height:100%;object-fit:contain;min-height:0}.viewer-bottom{font-size:11px;color:var(--muted);border-top:1px solid var(--line-soft)}.viewer-buttons{display:flex;gap:10px}.viewer-buttons button{border:1px solid var(--line-soft);min-height:40px;min-width:44px}.viewer-message{font-size:12px;text-align:center;padding:12px 20px;color:var(--muted)}
@media(min-width:1700px){.page-opening{gap:90px}.visual>img{height:650px}.project-hero>img{height:740px}}
@media(max-width:1100px){.page-opening{gap:35px}.editorial,.bridge,.project-info{gap:38px;grid-template-columns:.7fr 1.3fr}.project-list{gap:34px 20px}.facts{gap:16px;grid-template-columns:1fr 1fr}.card-meta h3{font-size:17px}}
@media(max-width:760px){.header .header-inner{height:74px}.header .nav{display:none}.header .brand-sub{font-size:9px;margin-top:6px}.header .wordmark{font-size:21px}.crumb{padding-top:23px;font-size:9px;gap:9px;flex-wrap:wrap}.page-opening{padding:35px 0 30px;grid-template-columns:1fr;gap:26px}.page-opening h1{font-size:clamp(42px,10.4vw,74px);margin-top:17px;letter-spacing:-.06em}.page-opening .opening-note{font-size:13px;max-width:38em}.opening-phrase{font-size:26px;margin-bottom:13px}.visual>img{height:330px}.visual .visual-caption{left:12px;bottom:12px;font-size:9px}.editorial{grid-template-columns:1fr;gap:30px;padding:42px 0}.editorial h2{font-size:28px;margin-bottom:21px}.editorial .copy{font-size:13px;line-height:2}.editorial .section-label{gap:18px;font-size:9px}.section-heading{margin:45px 0 24px;align-items:start;flex-direction:column;gap:10px}.section-heading h2{font-size:26px}.section-heading p{font-size:11px}.project-list{grid-template-columns:1fr 1fr;gap:29px 16px;margin-bottom:45px}.card-meta{gap:10px;padding-top:11px;margin-top:10px}.card-meta h3{font-size:16px}.card-note{font-size:10px;line-height:1.7}.brand-grid{grid-template-columns:1fr;gap:35px}.brand-card h3{font-size:27px}.brand-card p{font-size:12px}.two-visuals{gap:14px;padding-top:38px}.two-visuals figure:nth-child(2){margin-top:48px}.two-visuals img{aspect-ratio:.85}.two-visuals figcaption{font-size:10px}.bridge{grid-template-columns:1fr;gap:22px;padding:38px 0 42px}.bridge h2{font-size:28px}.bridge .copy{font-size:13px}.project-opening h1{font-size:clamp(38px,9.3vw,65px)}.project-opening .opening-phrase{font-size:25px}.project-hero img{height:330px}.project-info{grid-template-columns:1fr;gap:25px;padding:25px 0 29px}.project-info p{font-size:10px}.facts{gap:20px 26px;grid-template-columns:1fr 1fr}.facts dt{font-size:9px;margin-bottom:6px}.facts dd{font-size:12px}.chapter-photo{margin-top:35px}.photo-caption{font-size:10px;gap:12px}.photo-grid{gap:28px 14px;margin:28px 0 45px}.photo-grid figure:nth-child(even){margin-top:38px}.photo-grid .photo-button img{aspect-ratio:.88}.project-navigation{gap:20px;padding-bottom:34px}.project-navigation strong{font-size:17px}.project-navigation small{font-size:8px}.footer.wrap{padding-bottom:32px}.footer-bottom span:last-child{text-align:left}.viewer{width:calc(100vw - 20px);height:calc(100dvh - 20px)}.viewer-top,.viewer-bottom{padding:12px;gap:12px}.viewer-top p{font-size:11px}.viewer-bottom{font-size:10px}.viewer-bottom>span{max-width:58%}}
@media(max-width:370px){.page-opening h1{font-size:39px}.project-opening h1{font-size:35px}.opening-phrase,.project-opening .opening-phrase{font-size:23px}.project-list{grid-template-columns:1fr}.visual>img,.project-hero img{height:280px}}

.project-name-detail{display:block;font-size:clamp(15px,1.8vw,25px);line-height:1.5;letter-spacing:-.025em;margin-top:16px;color:var(--muted)}
.card-meta h3{min-width:0;overflow-wrap:anywhere}.project-navigation a{min-width:0}.project-navigation strong{display:block;overflow-wrap:anywhere}

/* A continuous photo sequence, with columns sized to each original image ratio. */
.selected-project-page .project-opening{display:block;padding:40px 0 32px}
.selected-project-page .project-opening h1{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 24px;font-size:clamp(42px,6.4vw,88px);margin-top:16px}
.selected-project-page .project-name-detail{margin-top:0}
.selected-project-page .project-hero>img{height:auto;max-height:none;object-fit:contain}
.selected-project-page .photo-grid{grid-template-columns:var(--photo-columns,repeat(2,minmax(0,1fr)));gap:24px;margin:32px 0 0;scroll-margin-top:110px}
.selected-project-page .photo-grid+.photo-grid{margin-top:40px}
.selected-project-page .photo-grid figure{min-width:0}
.selected-project-page .photo-grid figure:nth-child(even){margin-top:0}
.selected-project-page .photo-grid .photo-button img{height:auto;aspect-ratio:auto;object-fit:contain}
.selected-project-page .photo-caption{margin-top:12px;gap:12px}
.selected-project-page .project-navigation{margin-top:48px;padding-bottom:28px}
.selected-project-page .detail-contact{margin-top:20px}
@media(max-width:760px){
  .selected-project-page .project-opening{padding:28px 0 26px}
  .selected-project-page .project-opening h1{gap:8px 16px;font-size:clamp(36px,9.3vw,60px);margin-top:14px}
  .selected-project-page .photo-grid{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:24px;scroll-margin-top:94px}
  .selected-project-page .photo-grid+.photo-grid{margin-top:28px}
  .selected-project-page .photo-caption{margin-top:10px}
  .selected-project-page .project-navigation{margin-top:36px;padding:24px 0}
  .selected-project-page .detail-contact{margin-top:12px}
}
