/* Focused presentation refinements, using native text and extracted graphics. */
.furniture-tables .table-photos{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;background:transparent}
.table-photos>.web-figure{flex:1 1 calc(100% / min(var(--photos),2) - 5px);min-width:0;max-width:100%}
.furniture-tables .table-photos .image-open,.furniture-tables .table-photos img{background:transparent;border:0}
.furniture-tables .table-photos img{height:120px;object-fit:contain}
.wayfinding-intro{max-width:900px;font-size:14px;line-height:1.6;margin:16px 0}
.wayfinding28{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.wayfinding28 h4{font-size:21px;font-weight:800;color:var(--clay);margin:8px 0 14px}
.wayfinding-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:16px 10px;align-items:start}
.wayfinding28 .web-figure{display:flex;flex-direction:column;margin:0;min-width:0}
.wayfinding28 .image-open,.wayfinding28 .paired-signage{height:220px;background:transparent}
.wayfinding28 img{height:220px;max-height:none;width:100%;object-fit:contain;background:transparent}
.paired-signage{display:flex;gap:4px;overflow:hidden}.paired-signage .image-open{flex:1;min-width:0}
.wayfinding28 figcaption{position:static;display:block;min-height:78px;font-size:14px;line-height:1.5;font-weight:650;padding:10px 8px;background:#eae6dc;color:#153f59;border:0}
.wayfinding28 figcaption>span:last-child:not(:first-child){display:none}
.utility-native-grid .current-enclosure{outline:3px solid #ad6d50;outline-offset:3px;background:#eee0d5}
.utility-native-grid .current-enclosure figcaption{padding:8px;color:#78452f;font-weight:800}
.ambience-pair.whole-lighting{grid-template-columns:1fr 1fr;align-items:start;gap:18px}
.ambience-pair.whole-lighting .ambience-images{grid-template-columns:1fr 1fr;grid-auto-rows:auto!important;align-items:start;gap:16px 4px!important;margin:0}
.ambience-pair.whole-lighting .web-figure{display:flex;flex-direction:column;height:auto!important;overflow:visible;min-width:0}
.ambience-pair.whole-lighting .image-open{height:245px!important;flex:none;background:transparent}
.ambience-pair.whole-lighting .ambience-images img{height:245px!important;max-height:none!important;object-fit:contain!important;width:100%}
.ambience-pair.whole-lighting figcaption{position:static!important;inset:auto!important;display:block!important;height:auto!important;min-height:76px;font-size:14px;line-height:1.5;color:#153f59!important;background:transparent!important;padding:10px 8px!important;white-space:normal;overflow:visible;font-weight:650}
.ambience-pair.whole-lighting figcaption>span{display:block!important}.ambience-pair.whole-lighting figcaption>span:last-child:not(:first-child){display:none!important}
.lifestyle-split>.web-figure{width:90%;justify-self:center}
.journey-map28{display:grid;grid-template-columns:minmax(0,3fr) minmax(240px,1fr);gap:24px;align-items:center}
.journey-map28>.web-figure img{width:100%;height:auto;max-height:65vh;object-fit:contain;background:transparent}
.journey-map28 .image-open{background:transparent}
.journey-map28 figcaption{display:none}
.journey-analysis h4{font-size:20px;font-weight:750;margin:0 0 16px}
.journey-analysis p{font-size:14px;line-height:1.6;margin:0 0 16px}
.journey-analysis .source-note{font-size:11px;margin-top:20px;color:#6a7478}
.trip-volume28{grid-template-columns:minmax(0,2.55fr) minmax(190px,.9fr) minmax(230px,1fr);align-items:start;gap:20px}
.trip-volume28 .journey-map-main> .web-figure:first-child img{height:570px;max-height:68vh;width:100%;object-fit:contain;object-position:top;background:transparent}
.trip-volume28 .volume-scale{width:65%;margin:8px auto 0}.trip-volume28 .volume-scale img{width:100%;height:auto;max-height:65px;object-fit:contain}
.trip-volume28 .journey-analysis{padding-top:30px}
.trip-data28 h4{font-size:17px;font-weight:750;margin:0 0 10px}.trip-data28 img{width:100%;height:auto;max-height:none;background:white}
@media(max-width:1000px){.trip-volume28{grid-template-columns:minmax(0,2fr) minmax(230px,1fr)}.trip-volume28 .journey-analysis{grid-column:1/-1;grid-row:2;padding:0}.trip-volume28 .journey-analysis p{margin:8px 0}.wayfinding28 img,.wayfinding28 .image-open,.wayfinding28 .paired-signage{height:180px}}
@media(max-width:760px){.wayfinding28,.ambience-pair.whole-lighting,.journey-map28{grid-template-columns:1fr}.trip-volume28 .journey-analysis{grid-row:auto}.trip-volume28 .trip-data28{max-width:380px;justify-self:center}.lifestyle-split>.web-figure{width:95%}.journey-map28>.web-figure img{max-height:none}.wayfinding28 figcaption{min-height:0}.trip-volume28 .journey-map-main> .web-figure:first-child img{height:auto;max-height:none}.ambience-pair.whole-lighting .ambience-images img,.ambience-pair.whole-lighting .image-open{height:200px!important}}
.wayfinding28 img{object-fit:cover}
.trip-volume28 .journey-map-main>.web-figure:first-child img{height:auto;max-height:68vh}
.ambience-pair.whole-lighting figcaption{background:#eae6dc!important}
.paired-lighting{display:flex;height:245px;gap:3px}.paired-lighting>.image-open{flex:1;min-width:0}.paired-lighting img{object-fit:contain!important}
.ambience-pair.whole-lighting .web-figure{background:transparent}
@media(max-width:760px){.paired-lighting{height:200px}}
.ambience-pair.whole-lighting .paired-lighting>.image-open{flex:1 1 0;width:0!important;min-width:0}
.ambience-pair.whole-lighting figcaption>span:first-child{font-size:14px!important;line-height:1.5;white-space:normal}

/* Focused route, map legend and proposed-bin refinements. */
.route-artwork{position:relative;container-type:inline-size;display:block}
.journey-map28 .route-artwork{width:100%;max-width:calc(65vh * 16 / 9);margin-inline:auto}
.journey-map28 .route-artwork img{display:block;width:100%;height:auto;max-height:none}
.route-destination{display:none}
.route-artwork>.route-destination{display:flex;position:absolute;left:83.8%;top:41.9%;width:15.4%;height:4.8%;align-items:center;text-align:left;background:#f8f8fa;color:#162b35;font-family:Arial,sans-serif;font-size:1.95cqw;line-height:1;font-weight:700;pointer-events:none}
#dialog-artwork{position:relative;width:100%}#dialog-artwork img{width:100%}
.trip-volume28 .journey-map-main{position:relative}
.trip-volume28 .volume-scale{position:absolute;left:3%;top:3%;width:40%;margin:0;box-shadow:0 1px 5px #153f5920}
.trip-volume28 .volume-scale img{display:block;width:100%;height:auto;max-height:none}
.furniture-tables .proposed-bin-photos{flex-wrap:nowrap;gap:5px}
.furniture-tables .proposed-bin-photos>.web-figure{flex:1 1 0}
.furniture-tables .proposed-bin-photos img{height:245px;width:100%;max-height:none;object-fit:cover}
@media(max-width:760px){.journey-map28 .route-artwork{max-width:none}.furniture-tables .proposed-bin-photos img{height:200px}}

/* Keep source detail intact in the image viewer; never upscale past native pixels. */
#dialog-artwork{margin-inline:auto;flex:none}
#dialog-artwork img{display:block;height:auto;max-height:none;image-rendering:auto}
.dialog-image-wrap{padding:8px;box-sizing:border-box}

.volume-scale-native{box-sizing:border-box;padding:10px 12px;background:#f5f5f3;color:#253b46;font-size:clamp(10px,1vw,14px);line-height:1.3}
.volume-scale-native strong{display:block;font-size:inherit;font-weight:700;margin-bottom:10px}
.volume-gradient{display:block;height:6px;background:linear-gradient(90deg,#a4ad8c,#a38891,#62738a)}
.volume-scale-native>div{display:flex;justify-content:space-between;margin-top:5px;font-variant-numeric:tabular-nums}

/* Lighting captions track the visible photograph width, without cropping photos. */
.ambience-pair.whole-lighting .web-figure{align-items:center;--lighting-height:245px}
.ambience-pair.whole-lighting .web-figure>.image-open,.ambience-pair.whole-lighting .web-figure>.paired-lighting,.ambience-pair.whole-lighting .web-figure>figcaption{width:min(100%,calc(var(--lighting-height) * var(--photo-ratio,1)));max-width:100%;box-sizing:border-box}
.ambience-pair.whole-lighting .web-figure>figcaption{min-height:76px;text-align:left;align-self:center}
.opportunity-grid h3{min-height:64px;margin:8px 0 12px;line-height:1.2}
.opportunity-grid .gallery-main img{height:220px;max-height:none}
@media(max-width:760px){.ambience-pair.whole-lighting .web-figure{--lighting-height:200px}.opportunity-grid h3{min-height:0}.opportunity-grid .gallery-main img{height:210px}}
/* Reference-approved imagery and attached key-plan label positions. */
.opportunity-grid h3{min-height:0;margin-bottom:12px}
.opportunity-grid .gallery-main img{height:clamp(240px,18vw,300px);object-fit:cover;max-height:none}
.lighting-plan-legend{display:grid;gap:12px;margin:16px 0;font-size:16px}
.lighting-plan-legend strong{font-size:20px}.lighting-plan-legend span{display:flex;align-items:center;gap:12px}.lighting-plan-legend i{width:34px;height:14px;display:inline-block}
.lighting-pair-native aside:has(.lighting-plan-legend){max-width:450px;width:100%}
@media(max-width:760px){.opportunity-grid .gallery-main img{height:260px}}

/* PowerPoint slide 30 Rectangle 3: original placement and fill, in slide proportions. */
.riviera-ppt-artwork{position:relative;display:block}
.riviera-ppt-artwork::after{content:"";position:absolute;left:26.25%;top:31.666667%;width:9.589428%;height:3.777778%;background:#060a0d;pointer-events:none}
/* Keep the mask's coordinate system equal to the visible image, not its letterboxed container. */
.source-graphic .riviera-ppt-artwork{width:min(100%,calc(70vh * 16 / 9));margin-inline:auto}
.source-graphic .riviera-ppt-artwork img{display:block;width:100%;height:auto;max-height:none;mix-blend-mode:normal}

.source-graphic .riviera-ppt-artwork{margin-left:auto!important;margin-right:auto!important}

.annotated-masterplan img{width:100%;height:auto!important;max-height:none!important;object-fit:contain}

.future-legend-native .future-legend-symbol{width:38px;height:38px;max-height:none;object-fit:contain;background:transparent;flex:none}.future-legend-native>span{display:flex;align-items:center;gap:8px}
.compact-map .map-visual .future-legend-native img.future-legend-symbol{width:38px!important;height:38px!important;max-width:38px!important;max-height:38px!important;object-fit:contain!important;flex:0 0 38px}

.task-completed35{font-family:Manrope,Arial,sans-serif;font-size:.62em;font-weight:700;white-space:nowrap}
