/* v2: common geometry stays intact; precise media sizing and scoped content refinements. */
.hero-credit{font-size:12px;color:#999;text-align:right;line-height:1.5;margin-top:10px!important}
.rl-page .abc{gap:16px}
.rl-page .chapter .abc .badge{border-radius:0}
.model-cell{position:relative;overflow:hidden;aspect-ratio:1;margin-top:12px}
.journey .model-cell img{position:absolute;max-width:none;width:300%;height:200%;aspect-ratio:auto;object-fit:fill;left:calc(var(--col) * -100%);top:calc(var(--row) * -100%);margin:0}
.explain-visual{margin-top:48px}
.explain-labels{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;list-style:none;padding:0;margin:0}
.explain-labels li{border-top:1px solid #ddd;padding-top:18px;text-align:left}
.explain-labels b{display:block;color:var(--accent);font-size:13px;margin-bottom:8px}
.explain-labels strong{font-size:20px;font-weight:650}
.explain-labels p{font-size:17px;line-height:1.65;color:#666;margin-top:10px;word-break:keep-all}
.explain-labels.two{grid-template-columns:repeat(2,1fr)}
.compact-model{max-width:820px;margin-inline:auto}
.venue .vpin em{display:none}
.venue .vpin .badge{font-size:0}
.venue .vpin i{display:block;position:absolute;left:0;top:0;transform:translate(-50%,-50%);font-style:normal;font-size:13px;font-weight:750;color:white;z-index:3}
.venue-key{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;gap:14px 24px;padding:24px 0 0;margin-top:20px;border-top:1px solid #ddd}
.venue-key li{display:flex;align-items:center;gap:10px;font-size:16px;line-height:1.5}
.venue-key .badge{width:25px;height:25px;border-radius:50%;font-size:13px}
.rl-page .ui-row figure.ui img{border:0;outline:1px solid #e2e2e2;outline-offset:-1px}
.rl-page .ui-row figure video{border:0}
.rl-page .media-row>figure{flex-basis:0}
@media(max-width:700px){
 .hero-credit{font-size:11px;text-align:left}
 .model-cell{max-width:310px;margin-inline:auto!important}
 .explain-labels{grid-template-columns:1fr;gap:18px}
 .explain-labels.two{grid-template-columns:1fr}
 .explain-labels li{display:grid;grid-template-columns:25px 1fr;gap:0 10px;padding-top:14px}
 .explain-labels b{grid-row:1/3;padding-top:4px}.explain-labels p{grid-column:2;margin-top:7px}
 .explain-labels strong{font-size:18px}.explain-labels p{font-size:16px}
 .explain-visual{margin-top:30px}
 .venue-key{grid-template-columns:1fr 1fr;gap:12px}
 .venue-key li{font-size:14px;gap:7px}
 .vzone{display:none}
 .rl-page .chapter .abc{align-items:flex-start;gap:14px}
}
.rl-page .project-meta dd{word-break:keep-all;overflow-wrap:break-word}
