/* Mobile reading order and controls. Desktop changes are limited to the requested target flow. */
.mobile-title-break,.property-dots,.mobile-transport,.mobile-document-library{display:none}
.target-flow-connector{display:flex;justify-content:center;align-items:center;height:52px;color:#d8bbc1}
.target-flow-connector svg{display:block;width:28px;height:38px;fill:none;stroke:currentColor;stroke-width:1.5}
@media(max-width:760px){
  body.web-visual{font-size:16px}
  .web-visual :is(.web-inner,.content-shell) :is(p,li,dt,dd){font-size:16px;line-height:1.85}
  .web-visual :is(.web-inner,.content-shell) p.eyebrow{font-size:11px;line-height:1.8}
  .web-visual :is(.lead,.plan-explainer,.source-facts,.source-table,.source-copy,.facility-choice strong){font-size:16px;line-height:1.85}
  .web-visual :is(.source-table th,.source-table td){font-size:15px;line-height:1.8}
  .web-visual :is(button,summary,.filled-link,.content-link,.page-toc a){font-size:15px}
  .web-visual :is(.micro,.source-note,.section-note,.dialog-note,.population-citation,.overview-note,.source,.image-caption,.document-note,.expense-condition,.property-caption,.hero-note){font-size:11px;line-height:1.8}
  .web-visual :is(.web-inner,.content-shell) :is(p.micro,p.source-note,p.section-note,p.dialog-note,p.population-citation,p.overview-note,p.source,p.image-caption,p.document-note,p.expense-condition,p.mobile-route-note){font-size:11px;line-height:1.8}
  .web-visual :is(.key-metric>span,.financial-spotlight p,.target-strip small,.summary-facts dt){font-size:16px}
  .web-visual .page-heading h1 .mobile-title-break{display:block}
  .web-visual .page-heading h1 .project-title-line{white-space:nowrap}
  .web-visual .page-heading h1:has(.project-title-line){font-size:clamp(21px,6vw,30px);letter-spacing:.025em;line-height:1.65}

  /* The image has its own quiet caption; navigation has a separate row below. */
  .web-visual .property-carousel{display:grid;grid-template-columns:1fr;background:transparent;overflow:visible}
  .web-visual .property-slides{grid-area:1/1;overflow:hidden}
  .web-visual .property-caption{grid-area:1/1;position:relative;align-self:end;justify-self:end;left:auto;right:auto;bottom:auto;z-index:2;margin:0 9px 8px;padding:2px 5px;color:#fff;background:#25323755;text-align:right;pointer-events:none}
  .web-visual .property-controls{grid-area:2/1;position:static;display:flex;justify-content:center;gap:16px;padding:10px 0 0;background:transparent;min-height:56px}
  .web-visual .property-controls>[data-slide-status]{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .web-visual .property-controls>button{background:#edf1f5;color:#253237;border:1px solid #c4cfd8;padding:6px 12px;min-height:44px;min-width:66px;font-size:13px}
  .web-visual .property-controls>button:active{background:#253237;color:#fff}
  .property-dots{display:flex;align-items:center;gap:0}
  .web-visual .property-dots button{width:36px;min-width:36px;height:44px;min-height:44px;padding:0;border:0;background:transparent;display:grid;place-items:center}
  .property-dots button:before{content:'';width:7px;height:7px;border-radius:50%;background:#c4ccd3}
  .property-dots button[aria-pressed=true]:before{background:#8f2637;width:9px;height:9px}
  .web-visual .overview-feature{gap:22px}

  /* Compact routes are read from left to right; the destination never drops below its time. */
  .transport-flow{display:none}
  .mobile-transport{display:block}
  .mobile-transport .transport-origin{display:flex;align-items:center;gap:10px;background:#253237;color:#fff;padding:14px 16px;margin-bottom:14px;font-size:15px}
  .transport-origin .ui-icon{color:#d7b4bb;width:26px;height:26px}
  .transport-origin small{font-size:11px;display:block;color:#ced7dd}
  .mobile-route{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1.25fr);align-items:center;gap:7px;padding:16px 10px;background:#edf2f6;margin-top:10px}
  .mobile-route .route-duration{display:flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;font-size:13px}
  .mobile-route .ui-icon{width:23px;height:27px;color:#8f2637}
  .mobile-route .route-duration b{font:700 26px/1.2 var(--serif);color:#8f2637;margin:0 3px}
  .mobile-route .route-duration .walking-label{display:block;font-size:10px;line-height:1.4;color:#536a7b}
  .mobile-route .route-arrow{font-size:21px;color:#8f2637;text-align:center}
  .mobile-route .route-destination{font-size:19px;font-weight:600;white-space:nowrap;letter-spacing:0}
  .mobile-route .route-destination small{display:block;font-size:11px;line-height:1.7;font-weight:400;white-space:normal;margin-top:5px}
  .mobile-rail{margin:16px 0 22px;padding:0 0 0 12px;border-left:1px solid #b9c7d2}
  .web-visual .mobile-rail>p{font-size:14px;margin-bottom:8px;color:#536a7b}
  .mobile-rail .mobile-route{background:#fff;border-bottom:1px solid #dce3e9;grid-template-columns:1fr 22px 1fr;margin:0;padding:12px 8px}
  .mobile-transport .mobile-route-note{font-size:11px;color:#637580;margin-top:6px}

  /* Keep the map and all number buttons together, rather than a long list above it. */
  #facilities .vector-facility-panel{display:flex;flex-direction:column;min-height:0;padding:16px 12px;background:#fff;gap:0}
  #facilities .vector-facility-panel[hidden]{display:none}
  #facilities .facility-directory,#facilities .facility-vector{display:contents}
  #facilities .facility-directory>.eyebrow{display:none}
  #facilities .facility-directory>h3{order:1;font-size:24px;margin:0 0 12px}
  #facilities .facility-map-toolbar{order:2;padding:6px 0 10px;background:#fff;gap:8px;font-size:12px}
  #facilities .facility-map-toolbar button{font-size:12px;min-height:40px;padding:8px 10px}
  #facilities .facility-svg-wrap{order:3;flex:none;aspect-ratio:10/8;min-height:0;width:100%;background:#edf1f4}
  #facilities .facility-instruction{order:4;margin:8px 0 4px;font-size:12px;line-height:1.7}
  #facilities .facility-names{order:5;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:0;padding:0}
  #facilities .facility-names li{min-width:0;margin:0}
  #facilities .facility-choice{justify-content:center;min-height:44px;padding:4px 0;border:1px solid #d1dce5;background:#f2f5f8;gap:0}
  #facilities .facility-choice>span{height:30px;min-width:30px;font-size:15px}
  #facilities .facility-choice strong{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  #facilities .facility-vector>.facility-selected{order:6;margin:8px 0 0!important;border:1px solid #d3dde5;background:#edf2f6;padding:10px 12px;font-size:15px;line-height:1.65;min-height:46px}
  #facilities .facility-vector figcaption{order:7;padding:8px 0;background:transparent;font-size:10px}
  #facilities .facility-vector figcaption p{font-size:10px}
  #facilities .facility-other{order:8;margin:10px 0;padding:12px}
  #facilities .facility-other p{font-size:14px}
  #facilities .facility-directory>.micro{order:9;font-size:11px;margin:0 0 12px}
  #facilities .facility-original{order:10;margin-top:0}
  #facilities .facility-original .reference-button{font-size:14px}
  #facilities .facility-tabs{gap:6px;flex-wrap:wrap}
  #facilities .facility-tabs button{font-size:14px;min-height:44px;padding:8px 12px}

  /* Paired rent figures fit on a single line, separated by one quiet rule. */
  .web-visual .resident-comparison article{padding:20px 16px}
  .web-visual .resident-numbers{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:20px 0;align-items:baseline}
  .web-visual .resident-numbers .big-number{display:flex;align-items:baseline;gap:2px;white-space:nowrap;font-size:clamp(23px,6.2vw,29px);line-height:1.4;letter-spacing:-.025em}
  .web-visual .resident-numbers .big-number+strong{border-left:1px solid #bcc9d3;padding-left:12px}
  .web-visual .resident-numbers .big-number>small{font-size:11px;letter-spacing:0}
  .web-visual .resident-numbers .big-number>small>span{display:none}
  .mobile-rent-label{display:block;font:500 12px/1.6 'Yu Gothic',sans-serif;color:#536a7b;margin-bottom:4px}
  .resident-numbers>div{min-width:0}
  .resident-numbers>div+div{border-left:1px solid #bcc9d3;padding-left:12px}
  .web-visual .resident-numbers>div .big-number{border:0;padding:0}
  .web-visual .resident-numbers>div .big-number>small>span{display:none}

  .web-visual .site-data{padding:12px 16px;display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
  .web-visual .amenity-metrics{gap:7px}
  .web-visual .amenity-metrics .key-metric{padding:12px 18px;min-height:0}
  .web-visual .amenity-metrics .key-metric>strong{font-size:28px;line-height:1.3}
  .web-visual .amenity-metrics .key-metric>span{font-size:15px}
  .web-visual #summary .section-heading h2{text-wrap:balance}
  .web-visual .target-evidence>div{padding:18px}
  .web-visual .site-data>div{margin:0;min-width:0}
  .web-visual .site-data dt{font-size:12px;line-height:1.6}
  .web-visual .site-data dd{font:700 20px/1.5 var(--serif);margin:3px 0 0;white-space:nowrap}
  .web-visual .site-data>div:last-child{grid-column:1/-1}
  .web-visual .site-data small{font-size:11px}
  .web-visual .site-plan-redrawn>.document-open>span{position:sticky;left:0;bottom:0;display:block;box-sizing:border-box;width:100%;padding:12px 14px;background:#253237;color:#fff;font-size:14px;white-space:nowrap;z-index:2}
  .web-visual .site-plan-redrawn>.document-open:before{position:sticky;left:0;width:100%;box-sizing:border-box;font-size:10px}
  .web-visual .plan-toolbar,.web-visual .modal-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
  .web-visual .plan-toolbar>.plan-mode,.web-visual .modal-toolbar>.plan-mode{order:1;flex:1;display:flex;gap:5px}
  .web-visual .plan-toolbar>.floor-tabs,.web-visual .modal-toolbar>.floor-tabs{order:3;flex:0 0 100%;display:flex;justify-content:space-between;width:100%;margin:0}
  .web-visual .modal-toolbar>#zoom-plan{order:2;min-height:44px;padding:7px 9px;font-size:12px}
  .web-visual .plan-mode button{min-height:44px;padding:8px 12px;font-size:14px}
  .web-visual .modal-toolbar .plan-mode button{font-size:12px;padding:8px}
  .web-visual .floor-tabs button{flex:1;min-height:44px;font-size:20px}
  .web-visual :is(#collection,#sublease) .yield-grid .key-metric>strong{font-size:48px;line-height:1.2;margin:10px 0 14px}
  .web-visual :is(#collection,#sublease) .yield-grid .key-metric>strong small{font-size:20px}
  .web-visual .yield-grid>.key-metric{padding:24px 18px}
  .web-visual .finance-detail-grid .cost-list dt{font-size:15px}
  .web-visual .finance-detail-grid .cost-list .building-tax-label{font-size:12px}
  .web-visual :is(#collection,#sublease) .yield-calculation :is(p,.amount,.amount-value){font-size:11px!important;line-height:1.8}

  .mobile-document-library{display:grid;gap:18px;padding:0 16px 32px}
  .mobile-document-card{background:#fff;border:1px solid #d2dce5;padding:20px}
  .mobile-document-card .document-cover{display:block;background:#eef2f5;padding:10px}
  .mobile-document-card img{display:block;width:100%;height:150px;object-fit:contain}
  .mobile-document-card h2{font-size:22px;line-height:1.6;margin:16px 0 8px}
  .web-visual .mobile-document-card .pdf-meta{font-size:12px;color:#637582;margin:0 0 14px}
  .mobile-document-card .pdf-link{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;min-height:48px;background:#253237;color:#fff;font-size:15px}
  .mobile-document-card .pdf-link:after{content:'PDF';font:600 11px/1 sans-serif;border:1px solid #9babb7;padding:5px}
  .web-visual .mobile-document-card .micro{font-size:11px;margin:12px 0 0}
  .mobile-documents-page .content-shell>.section-note{padding:24px 16px;margin:0;font-size:13px}
  .mobile-documents-page .content-shell>section.content-group{display:none}
  .mobile-documents-page .page-heading>.page-toc{display:none}
}
