/* Studio number field: black numbers with alternating red and blue hover columns. Legacy colour keys retain stored positions. */
.studio-board-section{--board-primary:#d00000;margin:72px 0 0;min-width:0}
.board-red,.board-black,.board-blue,.board-green{color:var(--site-ink)}
.studio-board-introduction{max-width:70ch;margin-bottom:36px;font:700 var(--office-statement-size,1.4rem)/1.5 Inter,Arial,sans-serif}
.studio-board-introduction p{margin:0 0 1em;white-space:pre-line}
.studio-board-key{font:400 .8rem/1.5 Inter,Arial,sans-serif;margin:0 0 36px}.studio-board-key summary{width:max-content;color:var(--site-muted);cursor:var(--site-cursor)}
.studio-board-key dl{display:flex;gap:24px 40px;flex-wrap:wrap;margin:16px 0}.studio-board-key dl>div{max-width:32ch}.studio-board-key dt{font-weight:700}.studio-board-key dd{margin:4px 0 0;color:var(--site-muted);white-space:pre-line}
.studio-board-scroll{container-type:inline-size;overflow-x:auto;scrollbar-width:none;padding:1px 0 12px;overscroll-behavior-x:contain}.studio-board-scroll::-webkit-scrollbar{display:none}
.studio-number-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(10,24px);width:100%;min-width:0;border:0;padding:0;gap:0;font:900 clamp(.65rem,1.8cqw,1.1rem)/1 Inter,Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.studio-number-board>*{font-size:.9em;display:flex;justify-content:center;align-items:center;min-width:0;height:auto;white-space:nowrap;padding:1px 2px;border:0}
.studio-board-pages{display:flex;align-items:center;justify-content:flex-end;gap:20px;margin:12px 0;font:400 .8rem/1.4 Inter,Arial,sans-serif}
.studio-board-number{background:transparent;transition:color .15s ease}.studio-board-number:hover,.studio-board-number:focus-visible{font-weight:900;outline-offset:-2px}
.studio-board-empty,.studio-board-touch-hint{font:400 .8rem/1.5 Inter,Arial,sans-serif;color:var(--site-muted);margin:12px 0}.studio-board-touch-hint{display:none}
.studio-number-preview{position:fixed;z-index:200;background:var(--site-bg);color:var(--site-ink);padding:14px;border:1px solid var(--line-ddd);box-shadow:0 8px 28px #0002;font:400 .8rem/1.45 Inter,Arial,sans-serif;letter-spacing:0}
.studio-number-preview[hidden]{display:none}.studio-number-preview>img{display:block;width:100%;height:auto;max-height:180px;object-fit:contain;margin-bottom:12px}.studio-preview-category{display:block;margin-bottom:5px;font-size:.7rem}.studio-number-preview strong{display:block;font-weight:700}.studio-number-preview p{margin:8px 0;white-space:pre-line}.studio-number-preview>a{display:inline-block;margin-top:8px;text-decoration:underline;text-underline-offset:3px}
body:has(.studio-entry-reader[open]){overflow:hidden}.studio-entry-reader{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;padding:0;margin:0;border:0;background:var(--site-bg);color:var(--site-ink);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.studio-entry-reader::backdrop{background:var(--site-bg)}
.studio-reader-logo{position:absolute;top:var(--omi-y,26px);left:var(--omi-x,42px);color:var(--site-ink)}
.studio-reader-close{position:fixed;top:var(--site-header-center);right:var(--omi-x,42px);transform:translateY(-50%);border:0;padding:0;width:32px;height:32px;display:grid;place-items:center;background:transparent;color:inherit;font:700 32px/1 Arial,sans-serif;z-index:2}
.studio-reader-body{margin:170px var(--omi-x,42px) 80px var(--omi-content-start,29%);max-width:1100px;min-width:0}.studio-reader-code{font:400 .8rem/1.4 Inter,Arial,sans-serif;margin:0 0 18px}.studio-reader-body h1{font:700 clamp(1.5rem,3vw,3rem)/1.15 Inter,Arial,sans-serif;letter-spacing:-.035em;margin:0 0 36px}.studio-reader-lead{margin:0 0 40px}.studio-reader-lead img{display:block;width:100%;height:auto}.studio-reader-body figcaption{font:400 .85rem/1.5 Inter,Arial,sans-serif;margin-top:12px;color:var(--site-muted)}.studio-entry-link{display:inline-block;margin-top:24px}
/* Chaptered report: a stable label column and flexible reading column. */
.research-report{margin:72px 0;min-width:0}.report-chapter-navigation{position:sticky;top:0;z-index:25;display:flex;flex-wrap:wrap;gap:12px 28px;padding:20px 56px 20px 0;background:var(--site-bg);font:400 .9rem/1.4 Inter,Arial,sans-serif}
.report-chapter-navigation button{border:0;padding:0;background:none;font:inherit;color:var(--site-muted)}.report-chapter-navigation button:hover,.report-chapter-navigation button[aria-current]{color:var(--site-ink);font-weight:700}
.research-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:28px;padding:44px 0 24px;scroll-margin-top:90px;outline:none}.research-chapter>h2{font:700 1rem/1.45 Inter,Arial,sans-serif;letter-spacing:0;margin:0;overflow-wrap:anywhere}.research-chapter-content{min-width:0}.research-chapter-content>*+*{margin-top:36px}
.report-text{font:400 1rem/1.6 Inter,Arial,sans-serif;letter-spacing:0}.report-text p{font:inherit;white-space:pre-line;margin:0 0 1.2em}.report-text h3{font:700 1rem/1.45 Inter,Arial,sans-serif;margin:0 0 16px}
.report-images.image-sequence{margin:0 0 36px}.report-images .report-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;overflow:visible;align-items:start}.report-images.layout-full .report-image-grid{grid-template-columns:1fr}.report-images.layout-drawings .report-image-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.report-images .report-image-grid figure,.revised-project .report-images .report-image-grid figure{margin:0;width:100%;max-width:none;min-width:0}.report-images .gallery-open,.revised-project .report-images .gallery-open{height:auto;width:100%;max-width:none;display:block}.report-images .gallery-open img,.revised-project .report-images .gallery-open img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}.report-images figcaption,.revised-project .report-images figcaption{font:400 .85rem/1.5 Inter,Arial,sans-serif;white-space:pre-line;padding:10px 0 0;margin:0;color:var(--site-muted)}
.report-video{margin:0 0 36px;min-width:0}.report-video video,.report-video iframe{display:block;width:100%;max-height:80svh;background:transparent;border:0}.report-video iframe{aspect-ratio:16/9}.report-video figcaption{font:400 .85rem/1.5 Inter,Arial,sans-serif;color:var(--site-muted);white-space:pre-line;margin:12px 0 0}
.report-recording{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;aspect-ratio:16/9;width:100%;border:0;padding:24px;background:var(--surface-f5f5f5);color:var(--site-ink);font:400 .9rem/1.4 Inter,Arial,sans-serif;overflow:hidden}.report-recording>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.report-recording>span{position:relative;background:var(--site-bg);padding:6px 10px}.report-recording>.recording-play{font-size:28px}.report-recording:hover{color:#03007f}
.report-quotation{margin:0 0 36px}.report-quotation blockquote{margin:0;font:700 clamp(1.1rem,1.7vw,1.6rem)/1.5 Inter,Arial,sans-serif}.report-quotation blockquote p{white-space:pre-line;margin:0 0 .8em}.report-quotation figcaption{font:400 .85rem/1.5 Inter,Arial,sans-serif;color:var(--site-muted)}
.report-reference{font:400 .9rem/1.5 Inter,Arial,sans-serif;margin:0 0 28px}.report-reference>a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.report-reference>p{margin:8px 0 0;color:var(--site-muted);white-space:pre-line}
@media(hover:none){.studio-board-touch-hint{display:block}}
@media(max-width:850px){.research-chapter{grid-template-columns:1fr;gap:20px}.studio-reader-body{margin-left:var(--omi-x,24px)}.studio-board-introduction{font-size:1.25rem}.report-images.layout-drawings .report-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.studio-board-section{margin-top:32px}.studio-number-board{width:max(100%,560px);font-size:.65rem}.studio-reader-body{margin-top:135px;margin-bottom:48px}.studio-reader-logo{font-size:3.6rem}.research-report{margin:44px 0}.research-chapter{padding-top:28px}.report-chapter-navigation{gap:12px 20px;padding-top:15px;padding-bottom:15px}.report-images .report-image-grid{gap:16px}.report-text{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.studio-board-number{transition:none}}

#main>.office-filters:has(+.studio-board-section){margin-bottom:0}

.studio-board-number.is-long-number{font-size:.77em}

/* Share the table's measured right edge with the coffee cup below it. */
.studio-board-section~.studio-extras{width:var(--studio-table-width,100%);max-width:100%}
.studio-extras .studio-coffee{justify-self:stretch;grid-template-columns:minmax(0,1fr) 80px;width:100%}
.studio-extras .studio-coffee-cups{justify-self:end;transform:translateX(11%)}
@media(min-width:1101px){.studio-board-section~.studio-extras{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,5vw,80px)}}
@media(max-width:620px){.studio-extras .studio-coffee{grid-template-columns:minmax(0,1fr) 56px}}

/* Highlight the hovered column without changing saved category colours or positions. */
@media(hover:hover) and (pointer:fine){.studio-number-board:has(>:nth-child(7n+1):hover)>:nth-child(7n+1),.studio-number-board:has(>:nth-child(7n+3):hover)>:nth-child(7n+3),.studio-number-board:has(>:nth-child(7n+5):hover)>:nth-child(7n+5),.studio-number-board:has(>:nth-child(7n+7):hover)>:nth-child(7n+7){color:var(--board-primary,#d00000)}}
.studio-number-board:has(>:nth-child(7n+1):focus-visible)>:nth-child(7n+1),.studio-number-board:has(>:nth-child(7n+3):focus-visible)>:nth-child(7n+3),.studio-number-board:has(>:nth-child(7n+5):focus-visible)>:nth-child(7n+5),.studio-number-board:has(>:nth-child(7n+7):focus-visible)>:nth-child(7n+7){color:var(--board-primary,#d00000)}

/* Keep the number field flush with the introductory text on both sides. */
.studio-board-scroll{max-width:100%}
.studio-number-board>:nth-child(7n+1){justify-content:flex-start;padding-left:0}
.studio-number-board>:nth-child(7n+7){justify-content:flex-end;padding-right:0}
.studio-board-key .board-red{color:var(--board-primary,#d00000)}
.studio-board-key .board-black,.studio-board-key .board-blue,.studio-board-key .board-green{color:#03007f}
@media(hover:hover) and (pointer:fine){.studio-number-board:has(>:nth-child(7n+2):hover)>:nth-child(7n+2),.studio-number-board:has(>:nth-child(7n+4):hover)>:nth-child(7n+4),.studio-number-board:has(>:nth-child(7n+6):hover)>:nth-child(7n+6){color:#03007f}}
.studio-number-board:has(>:nth-child(7n+2):focus-visible)>:nth-child(7n+2),.studio-number-board:has(>:nth-child(7n+4):focus-visible)>:nth-child(7n+4),.studio-number-board:has(>:nth-child(7n+6):focus-visible)>:nth-child(7n+6){color:#03007f}

/* Cluster details share the report typography and project gallery rhythm. */
.studio-detail-section{margin:64px 0 0;min-width:0;scroll-margin-top:48px}.studio-detail-section>h2{font:700 1rem/1.45 Inter,Arial,sans-serif;margin:0 0 26px}.studio-detail-content{min-width:0}.studio-detail-content>*+*{margin-top:28px}.studio-detail-content .project-mosaic{margin:32px 0 64px}.studio-detail-content .mosaic-track figure{margin-left:0;margin-right:0}.studio-cluster-playlist{font:400 1rem/1.6 Inter,Arial,sans-serif}.studio-cluster-playlist p{white-space:pre-line;margin:0 0 24px}.studio-cluster-playlist a{display:block;margin-top:18px;text-decoration:underline;text-underline-offset:3px}.studio-cluster-playlist iframe{display:block;width:100%;height:352px;border:0;background:transparent}.studio-playlist-load{width:100%;min-height:100px;border:1px solid var(--line-ddd);padding:24px;text-align:left;background:transparent;color:var(--site-ink);font:400 1rem/1.5 Inter,Arial,sans-serif}.studio-playlist-load:hover{color:#03007f}.studio-playlist-load span{margin-right:16px}.studio-detail-content .report-reference{overflow-wrap:anywhere}.studio-detail-content .mosaic-track figcaption{font:400 .85rem/1.5 Inter,Arial,sans-serif}
@media(max-width:620px){.studio-detail-section{margin-top:44px}.studio-detail-section>h2{margin-bottom:20px}.studio-cluster-playlist{font-size:.95rem}.studio-detail-content .mosaic-track{gap:56px 20px}.studio-detail-content .mosaic-track .gallery-second-hero{padding:0}}

/* Research media fills the reading column with compact image gutters. */
.research-chapter-content{display:block}.research-chapter-content>*{min-width:0}.research-chapter-content>*+*{margin-top:24px}.research-chapter-content>.image-sequence,.research-chapter-content>.report-video{width:100%;max-width:none;margin-bottom:24px}
.report-images[data-image-columns="1"] .report-image-grid{grid-template-columns:minmax(0,1fr)}.report-images[data-image-columns="2"] .report-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-images[data-image-columns="4"] .report-image-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:850px){.report-images[data-image-columns="4"] .report-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Research photos fill their grid cells instead of inheriting drawing-thumbnail limits. */
.revised-project .research-report .report-images .report-image-grid>figure{width:100%;max-width:none;min-width:0;margin:0}
.revised-project .research-report .report-images .report-image-grid .gallery-open{display:block;width:100%;max-width:none;height:auto}
.revised-project .research-report .report-images .report-image-grid .gallery-open img{display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain}

.revised-project .research-report .report-images .report-image-grid{gap:12px}
@media(max-width:850px){.revised-project .research-report .report-images .report-image-grid{gap:8px}}
