/* Chapter-specific editorial openings, adapted from the approved print portfolio. */
.folio-opener{--chapter:#ad3f35;max-width:1680px;margin:0 auto;padding:28px 4% 54px;color:#171918;background:white}
.folio-kicker{display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:11px;letter-spacing:1.6px;border-top:1px solid #dedfdb;padding-top:17px;margin-bottom:34px;color:#666b67}
.folio-kicker>span:first-child{color:var(--chapter)}
.folio-opener .folio-display{font:700 clamp(54px,7.2vw,112px)/.92 Arial,sans-serif;letter-spacing:-.06em;margin:0 0 24px;text-wrap:initial;color:#171918}
.folio-opener h2{font:400 clamp(24px,2.2vw,35px)/1.35 Arial,"Microsoft YaHei",sans-serif;margin:0 0 15px}
.folio-opener h3{font:500 23px/1.5 Arial,"Microsoft YaHei",sans-serif;margin:0 0 15px}
.folio-opener p{font-size:15px;line-height:1.9;color:#646764;margin:0 0 20px;max-width:none}
.folio-opener .folio-statement{font-size:16px;line-height:1.9;color:#555b55;margin:28px 0}
.folio-opener figure{margin:0;min-width:0}.folio-opener figure img{display:block;width:100%;height:auto}
.folio-opener figcaption{font-size:11px;line-height:1.6;letter-spacing:.25px;color:#737771;margin:10px 0 0}
.folio-opener .folio-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:30px 0 8px;gap:28px}
.folio-facts>div{border-top:1px solid #dedfdb;padding-top:16px;min-width:0}.folio-facts dt{font-size:12px;color:#757a74;margin-bottom:10px}.folio-facts dd{font-size:14px;line-height:1.8;margin:0;color:#333833}
.folio-start{display:flex;justify-content:space-between;align-items:center;gap:32px;width:max-content;max-width:100%;border-bottom:1px solid var(--chapter);padding:12px 0;font-size:14px;min-height:48px;color:#171918}.folio-start:hover{color:var(--chapter)}.folio-start>span:last-child{font-size:20px;color:var(--chapter)}
.folio-split-grid{display:grid;grid-template-columns:minmax(235px,.65fr) minmax(0,1.6fr);gap:6%;align-items:stretch}
.folio-title-column{display:flex;flex-direction:column;align-items:start;padding:16px 0 6px}.folio-title-column .folio-display{font-size:clamp(82px,9vw,145px)}
.folio-edition{color:var(--chapter);font:600 23px/1.4 Arial,sans-serif;border-bottom:1px solid #dedfdb;padding-bottom:14px;width:100%;letter-spacing:1px}
.folio-title-column .folio-facts{display:block;margin:5px 0 20px}.folio-title-column .folio-facts>div{border:0;padding:8px 0}.folio-title-column .folio-facts dt{margin-bottom:4px}.folio-title-column .folio-start{margin-top:auto;width:100%}
.folio-main{display:flex;flex-direction:column}.folio-main>img{height:clamp(520px,45vw,720px)!important;object-fit:cover;object-position:56% center}.folio-nanyuan .folio-main>img{object-position:50% center}
.folio-background{max-width:1680px;padding:0 4% 22px;margin:0 auto;color:#60655f}.folio-background summary{cursor:pointer;font-size:13px;padding:15px 0;border-top:1px solid #dedfdb}.folio-background .section{padding:28px 0!important}.folio-background .section-head h2,.folio-background .project-intro h2{font-size:30px}.folio-background .project-intro{border:0}.folio-background .lead{font-size:17px}
.folio-title-row{display:grid;grid-template-columns:1.35fr 1fr;gap:8%;align-items:end;margin-bottom:26px}.folio-title-row .folio-display{margin:0}.folio-title-row .folio-statement{margin:14px 0 4px}
.folio-wide>img{aspect-ratio:2.35;object-fit:cover}.folio-panorama>.folio-start{margin-top:25px}
.folio-furnace{--chapter:#995b70}.folio-furnace .folio-display{font-size:clamp(44px,5.4vw,88px)}.folio-furnace .folio-wide>img{aspect-ratio:3.2}
.folio-concept-grid{display:grid;grid-template-columns:1fr 1.2fr .65fr;gap:4%;margin-top:32px;align-items:center}.folio-concept-grid .folio-diagram img{aspect-ratio:1.7;object-fit:contain}.folio-moves{margin:0;padding:0;list-style:none;display:grid;gap:20px}.folio-moves li{display:flex;gap:18px;align-items:baseline;font-size:17px}.folio-moves li>span{font-size:11px;color:var(--chapter)}.folio-moves small{display:block;font-size:11px;line-height:1.65;color:#71766f;margin-top:6px}
.folio-market{--chapter:#456d5d}.folio-market .folio-display,.folio-nautical .folio-display{font-size:clamp(44px,6vw,96px);color:var(--chapter)}
.folio-slices{display:grid;grid-template-columns:repeat(var(--slices),minmax(0,1fr));gap:16px}
.folio-slice-window{aspect-ratio:.65;position:relative;overflow:hidden;background:#eef0ea}.folio-slice-window img{position:absolute;inset:0 auto 0 calc(var(--slice) * -100%);width:calc(var(--slices) * 100%)!important;height:100%!important;max-width:none;object-fit:fill}
.folio-slices figcaption{display:flex;gap:12px;align-items:baseline;padding-top:4px}.folio-slices figcaption>span{color:var(--chapter);font-size:11px}.folio-slices strong{font-size:14px;font-weight:500;color:#2f3e35}
.folio-brief{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15%;padding-top:30px}.folio-brief p{max-width:700px;margin-bottom:0}
.folio-nautical{--chapter:#325565}.folio-nautical .folio-slice-window{aspect-ratio:.82}.folio-nautical .folio-slices strong{font-size:18px;color:var(--chapter);font-weight:600}.folio-city-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:12px}.folio-city-notes p{font-size:13px}
.folio-hanguang{--chapter:#3496a6}.folio-hanguang-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:20px 30px;grid-template-rows:auto 1fr}.folio-hanguang-copy{grid-column:1/3;grid-row:1;z-index:1;pointer-events:none}.folio-hanguang-copy>*{pointer-events:auto;width:max-content;max-width:100%}.folio-hanguang-copy .folio-display{font-size:clamp(54px,8.5vw,136px);margin-bottom:20px}.folio-hanguang-copy .folio-statement{max-width:390px}.folio-hanguang-copy .folio-start{margin-bottom:14px}
.folio-hanguang-street{grid-column:1;grid-row:2;align-self:end}.folio-hanguang-interior{grid-column:2;grid-row:1/3;align-self:end;padding-top:180px}.folio-hanguang-street img{aspect-ratio:1.8;object-fit:cover}.folio-hanguang-interior img{aspect-ratio:.96;object-fit:cover}.folio-hanguang-interior figcaption{padding-bottom:13px;border-bottom:2px solid var(--chapter)}
@media(min-width:1800px){.folio-opener .folio-display{font-size:112px}.folio-title-column .folio-display{font-size:145px}.folio-furnace .folio-display{font-size:88px}.folio-market .folio-display,.folio-nautical .folio-display{font-size:96px}}
@media(max-width:1000px){.folio-split-grid{grid-template-columns:.8fr 1.3fr;gap:4%}.folio-title-column .folio-display{font-size:95px}.folio-main>img{height:620px!important}.folio-concept-grid{grid-template-columns:1fr 1fr}.folio-moves{grid-column:1/3;grid-template-columns:repeat(3,1fr);padding-top:15px}.folio-title-row{gap:4%}.folio-hanguang-copy .folio-display{font-size:9vw}.folio-hanguang-interior{padding-top:220px}}
@media(max-width:800px){.folio-opener{padding:24px 5% 32px}.folio-kicker{font-size:10px;letter-spacing:.8px;margin-bottom:25px;gap:10px}.folio-kicker>span:last-child{display:none}.folio-split-grid{grid-template-columns:1fr}.folio-title-column{padding:0}.folio-title-column .folio-display{font-size:84px;line-height:.92;margin:0 0 18px}.folio-title-column .folio-display br{display:none}.folio-title-column .folio-display br:after{content:' '}.folio-title-column .folio-display{max-width:100%}.folio-title-column .folio-display br{display:initial}.folio-title-column h2{font-size:27px}.folio-title-column .folio-statement{margin:20px 0}.folio-title-column .folio-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 16px}.folio-title-column .folio-start{width:100%;margin-bottom:22px}.folio-main>img{height:auto!important;aspect-ratio:1.13;object-fit:cover}.folio-background{padding:0 5% 16px}.folio-title-row{grid-template-columns:1fr;gap:22px}.folio-opener .folio-display{font-size:clamp(46px,11vw,80px)}.folio-title-column .folio-display{font-size:80px}.folio-title-row h2{font-size:25px}.folio-title-row .folio-statement{font-size:15px;margin:10px 0 0}.folio-wide>img{aspect-ratio:1.6}.folio-opener .folio-facts{grid-template-columns:1fr;gap:17px;margin:22px 0 0}.folio-facts>div{padding-top:13px}.folio-facts dt{margin-bottom:6px}.folio-furnace .folio-display{font-size:clamp(40px,8.8vw,69px)}.folio-furnace .folio-wide>img{aspect-ratio:2.5}.folio-concept-grid{grid-template-columns:1fr;gap:22px;margin-top:25px}.folio-concept-grid .folio-diagram img{aspect-ratio:1.55}.folio-moves{grid-column:auto;grid-template-columns:1fr;gap:17px;border-top:1px solid #dedfdb;padding-top:22px}.folio-moves small{margin-top:3px}.folio-slices{gap:9px}.folio-market .folio-slices{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.folio-market .folio-slice-window{aspect-ratio:.68}.folio-brief{grid-template-columns:1fr;gap:16px;padding-top:25px}.folio-nautical .folio-display{font-size:clamp(36px,8.7vw,68px)}.folio-nautical .folio-slices{gap:8px}.folio-nautical .folio-slice-window{aspect-ratio:.57}.folio-nautical .folio-slices figcaption{display:block}.folio-nautical .folio-slices figcaption>span{display:none}.folio-nautical .folio-slices strong{font-size:clamp(10px,2.7vw,16px)}.folio-city-notes{gap:8px}.folio-city-notes p{font-size:11px}.folio-hanguang-grid{display:flex;flex-direction:column;gap:22px}.folio-hanguang-copy .folio-display{font-size:clamp(44px,10.7vw,78px);letter-spacing:-.045em}.folio-hanguang-copy .folio-statement{margin:20px 0}.folio-hanguang-copy>*{width:auto}.folio-hanguang-interior{padding:0;order:2}.folio-hanguang-street{order:3;align-self:stretch}.folio-hanguang-interior img{aspect-ratio:1.2}.folio-hanguang-street img{aspect-ratio:1.8}.folio-hanguang-copy .folio-start{margin:0}}
/* Preserve source-render proportions at every viewport. */
.folio-nautical .folio-slice-window{aspect-ratio:866.6667/1181}.folio-market .folio-slice-window{aspect-ratio:650/1063}
/* Constrain the existing three-city diagrams within their reading columns. */
.reading-content .cp-city>*{min-width:0}.reading-content .cp-city figure{margin:0}.reading-content .cp-city img{display:block;width:100%;height:auto}
