/* A monochrome surface system, without filters on photographs or authored art. */
html[data-theme]{--theme-ink:#191b18;--theme-muted:#60645d;--theme-line:#191b1830;--theme-surface:#eeefeb;--theme-base:#f3f3f0;--theme-gradient:radial-gradient(ellipse at 28% 18%,#f4f4f2 0%,#dededb 48%,#c9cac6 100%)}
html[data-theme="dark"]{--theme-ink:#f0f1ed;--theme-muted:#b5b8b0;--theme-line:#f0f1ed38;--theme-surface:#292b27;--theme-base:#1c1e1b;--theme-gradient:radial-gradient(ellipse at 28% 18%,#30322e 0%,#222420 48%,#171916 100%);--ink:var(--theme-ink);--paper:var(--theme-base);--muted:var(--theme-muted);--line:var(--theme-line);background:var(--theme-base);color:var(--theme-ink);color-scheme:dark}
html[data-theme="dark"] body{background:var(--theme-base)!important;color:var(--theme-ink)!important}
html[data-theme="dark"] body .ambient-background{background:var(--theme-gradient)!important;filter:none!important}
html[data-theme="dark"] body :is(.home-arrival-overlay,.home-arrival-skip,.home-sections .story-copy,.project-browser,.rotunda-card-caption,.rotunda-loading>div){color:var(--theme-ink)!important}
html[data-theme="dark"] body .home-sections :is(h1,h4){color:var(--theme-ink)!important}
html[data-theme="dark"] body .fog-overlay{display:none}
html[data-theme="dark"] body :is(.about-intro,.additional-text,.accordion-section,.team-slider-section,.studio-offices,.practice-scope,.research-cycle,.sustainability-page,.careers-page,.news-page,.press-page,.contact-layout){color:var(--theme-ink)!important;background-color:transparent!important}
html[data-theme="dark"] body :is(.dropdown-btn,.team-arrow,.team-member,.team-search input,.contact-form label,.contact-form input,.contact-form select,.contact-form textarea,.research-cycle-tab,.news-filters button,.news-show-more){color:var(--theme-ink)!important;border-color:var(--theme-line)!important}
html[data-theme="dark"] body :is(.team-nationality,.team-browse-hint,.contact-channels .channel-note,.contact-form .form-notice,.recognition-list p,.recognition-subject,.recognition-artwork figcaption,.news-card__meta,.news-image-grid .news-card p,.news-empty p,.news-card time,.news-intro time,.news-hero figcaption,.collection-result,.collection-filter-note,.collection-pinch-hint,.project-list-description,.project-list-year,.project-list-facts dt,.project-list-archive-status,.project-catalogue-number,.project-data-table caption,.project-data-table td:first-child,.rotunda-card-caption p,.rotunda-selected p,#rotunda-specification,.globe-legend,.globe-demo-note){color:var(--theme-muted)!important}
html[data-theme="dark"] body :is(.research-cycle__intro,.research-cycle__copy article>p:last-child,.research-cycle__graphic figcaption,.team-member p,.press-review-note){color:var(--theme-muted)!important}
html[data-theme="dark"] body :is(.dropdown-toggle h3,.dropdown-toggle .arrow,.research-cycle__controls button){color:var(--theme-ink)!important}
html[data-theme="dark"] body .research-cycle{--research-rule:var(--theme-line)}
html[data-theme="dark"] body .research-cycle__controls button[aria-pressed="true"]{background:var(--theme-ink);color:var(--theme-base)!important;border-color:var(--theme-ink)}
html[data-theme="dark"] body :is(.research-label,.research-centre-label){fill:var(--theme-ink)}
html[data-theme="dark"] body :is(.research-loss-label,.research-centre-note){fill:var(--theme-muted)}
html[data-theme="dark"] body .research-loop-label{fill:var(--theme-ink);stroke:var(--theme-base)}
html[data-theme="dark"] body :is(.practice-scope article,.career-opening,.project-list-row,.project-data-table :is(td,th),.recognition-list>li,.news-filters,.contact-form input,.contact-form textarea,.team-search input){border-color:var(--theme-line)!important}
html[data-theme="dark"] body :is(.project-list-facts dd,.project-data-table,.filter-reset){color:var(--theme-ink)!important}
html[data-theme="dark"] body .project-data-table tbody tr:hover{background:#ffffff09}
html[data-theme="dark"] body .collection-scope{background:#ffffff08;border-color:var(--theme-line)}
html[data-theme="dark"] body .collection-scope button{color:var(--theme-ink)}
html[data-theme="dark"] body .collection-scope button[aria-pressed="true"]{background:var(--theme-ink);color:var(--theme-base)}
html[data-theme="dark"] body.page-projects .browser-view-switch button{color:#b5b8b0!important}
html[data-theme="dark"] body.page-projects .browser-view-switch button:is(:hover,[aria-pressed="true"],[aria-expanded="true"]){color:var(--theme-ink)!important}
html[data-theme="dark"] body .collection-zoom{color:var(--theme-ink)}
html[data-theme="dark"] body .collection-zoom input{accent-color:var(--theme-ink)}
html[data-theme="dark"] body.page-projects .filter-layer>summary{color:var(--theme-ink)!important;border-color:var(--theme-line)!important}
html[data-theme="dark"] body .filter-layer.has-selection>summary{box-shadow:inset 0 0 0 1px #f0f1ed60}
html[data-theme="dark"] body input::placeholder,html[data-theme="dark"] body textarea::placeholder{color:#a8aca2}
html[data-theme="dark"] body select option{background:#232521;color:#f0f1ed}
/* The main menu reverses its ink/pill contrast; black popup surfaces stay black. */
html[data-theme="dark"] body .site-header .main-nav>a{color:var(--theme-ink)!important}
html[data-theme="dark"] body .site-header .main-nav>a:is([aria-current],[aria-expanded="true"],:hover,:focus-visible){background:var(--theme-ink)!important;color:var(--theme-base)!important}
html[data-theme="dark"].nav-magnet-enabled body .site-header .main-nav>a:not([aria-current]):not([aria-expanded="true"]):not(.nav-magnet-target):hover{background:transparent!important;color:var(--theme-ink)!important}
html[data-theme="dark"].nav-magnet-enabled body .site-header .main-nav>a.nav-magnet-target{background:transparent!important;color:var(--theme-base)!important}
html[data-theme="dark"] body .navigation-cursor-bubble{background:var(--theme-ink)!important}
html[data-theme="dark"] body .site-search-toggle{color:var(--theme-ink)!important}
html[data-theme="dark"] body .site-search-toggle:is([aria-expanded="true"],:focus-visible){background:var(--theme-ink)!important;color:var(--theme-base)!important}
html[data-theme="dark"].nav-magnet-enabled body .site-header .site-search-toggle:not([aria-expanded="true"]):not(.nav-magnet-target):hover{color:var(--theme-ink)!important}
html[data-theme="dark"].nav-magnet-enabled body .site-header .site-search-toggle.nav-magnet-target,html[data-theme="dark"].nav-magnet-enabled body.page-projects .filter-layer:not(.has-selection)>summary.nav-magnet-target{color:var(--theme-base)!important}
/* A simple half-disc: its motion belongs to the icon, never another appearing pill. */
html body .site-header .fullscreen-toggle{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:10px;margin:0 2px 0 0;border:0;border-radius:50%;background:transparent!important;color:var(--theme-ink);touch-action:manipulation;cursor:pointer}
html body .site-header .fullscreen-toggle[hidden]{display:none!important}
.fullscreen-toggle svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:scale .28s cubic-bezier(.22,1.2,.36,1)}
.fullscreen-toggle path{fill:none;transform-origin:center;transition:opacity .2s ease,transform .28s cubic-bezier(.22,1,.36,1)}
.fullscreen-toggle .fullscreen-close{opacity:0;transform:rotate(-45deg) scale(.65)}
.fullscreen-toggle[aria-pressed="true"] .fullscreen-expand{opacity:0;transform:scale(.65)}
.fullscreen-toggle[aria-pressed="true"] .fullscreen-close{opacity:1;transform:rotate(0) scale(1)}
.fullscreen-toggle:is(:hover,:focus-visible) svg{scale:1.3}
.fullscreen-toggle:focus-visible{outline:1px solid currentColor;outline-offset:0}
.fullscreen-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
html body.page-home.chapter-dark .site-header .fullscreen-toggle{color:#f0f1ed}
@media(max-width:700px){html body .site-header .fullscreen-toggle{width:30px;height:34px;padding:7px;margin:0}.fullscreen-toggle svg{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.fullscreen-toggle svg,.fullscreen-toggle path{transition:none}}
@media(hover:hover) and (pointer:fine){html body .site-header .fullscreen-toggle:hover,html body .site-header .fullscreen-toggle:hover *{cursor:none!important}html body:has(.fullscreen-toggle:hover) :is(.entropic-pointer,.cursor-metaball,.navigation-cursor-bubble){opacity:0!important}}
html body .site-header .theme-toggle{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:10px;margin:0 2px 0 0;border:0;border-radius:50%;background:transparent!important;color:var(--theme-ink);touch-action:manipulation;cursor:pointer}
html body .site-header .theme-toggle[hidden]{display:none!important}
.theme-toggle svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .5s cubic-bezier(.22,1,.36,1),scale .28s cubic-bezier(.22,1.2,.36,1)}
.theme-toggle path{fill:currentColor;stroke:none}
.theme-toggle[aria-pressed="true"] svg{transform:rotate(180deg)}
.theme-toggle:is(:hover,:focus-visible) svg{scale:1.3}
.theme-toggle:focus-visible{outline:1px solid currentColor;outline-offset:0}
html body.page-home.chapter-dark .site-header .theme-toggle{color:#f0f1ed}
/* Project stories always use charcoal, independently of the saved site preference. */
html body.page-project-detail .site-header .main-nav{display:none!important}
html body.page-project-detail .theme-toggle{display:none!important}
html[data-theme-choice] body.page-project-detail{--project-atmosphere:var(--theme-gradient);background:var(--theme-base)!important;color:var(--theme-ink)!important}
html[data-theme-choice] body.page-project-detail :is(.story-slide,.story-related,.story-copy,.story-copy__body,.story-slide__caption){color:var(--theme-ink)!important}
html[data-theme-choice] body.page-project-detail:not(.project-on-hero) :is(.site-header .brand,.story-project-nav,.story-project-nav a,.story-reader,.story-progress,.story-next-slide,.story-previous-slide){color:white!important;mix-blend-mode:difference!important}
@media(max-width:700px){
 html body .site-header .theme-toggle{width:30px;height:34px;padding:7px;margin:0}
 .theme-toggle svg{width:18px;height:18px}
 html body.page-project-detail .site-header .main-nav{left:14px;right:auto;top:17px;width:32px;max-width:32px}
 html[data-theme-choice] body.page-project-detail .project-cover .project-cover__content{background:transparent!important;color:var(--theme-ink)!important}
 html[data-theme-choice] body.page-project-detail .project-cover .project-cover__content::before{background:none!important}
 html[data-theme-choice] body.page-project-detail .project-cover .project-facts{color:var(--theme-ink)!important}
}
@media(prefers-reduced-motion:reduce){.theme-toggle svg{transition:none}}
/* Menu surfaces reverse together, including selected states and search fields. */
html[data-theme]{--menu-surface:var(--theme-ink);--menu-ink:var(--theme-base)}
html[data-theme] body :is(.project-typology-menu,.filter-options,.project-search-suggestions,.site-search-panel){color:var(--menu-ink)!important;color-scheme:dark}
html[data-theme="dark"] body :is(.project-typology-menu,.filter-options,.project-search-suggestions,.site-search-panel){color-scheme:light}
html[data-theme] body :is(.filter-options,.project-search-suggestions,.site-search-panel){background:var(--menu-surface)!important;border-color:var(--theme-line)!important}
html[data-theme] body .project-typology-surface :is(b,i){background:var(--menu-surface)}
html[data-theme] body :is(.project-typology-links,.filter-options,.project-search-suggestions,.site-search-panel) :is(a,button,input,p,small){color:var(--menu-ink)!important}
html[data-theme] body :is(.filter-options,.project-search-suggestions,.site-search-panel) :is(button,input),html[data-theme] body .typology-search input{background:transparent!important;border-color:currentColor!important}
html[data-theme] body :is(.typology-search,.site-search-panel) input::placeholder{color:inherit!important;opacity:.65}
html[data-theme] body :is(.project-typology-links a,.filter-options button,.project-search-suggestions button,.site-search-result):is(:hover,:focus-visible,[aria-pressed="true"]){background:var(--menu-ink)!important;color:var(--menu-surface)!important}
html[data-theme] body :is(.project-typology-links a,.site-search-result):is(:hover,:focus-visible) :is(span,small,p){color:inherit!important}
html[data-theme] body :is(.typology-all,.typology-search-results){border-color:currentColor}
html[data-theme].nav-magnet-enabled body .site-header .main-nav>a:is([data-projects-navigation],[data-about-navigation])[aria-expanded="true"],html[data-theme] body.page-projects .filter-layer.has-selection>summary{background:var(--theme-ink)!important;color:var(--theme-base)!important}
/* Expanded menus own a persistent pill, including during magnetic-cursor handoff. */
html[data-theme].nav-magnet-enabled body .site-header .main-nav>a:is([data-projects-navigation],[data-about-navigation])[aria-expanded="true"]:is(:hover,:focus-visible,.nav-magnet-target,.cursor-merge-target){background:var(--theme-ink)!important;color:var(--theme-base)!important}
html[data-theme].nav-magnet-enabled body.page-home.chapter-dark .site-header .main-nav>a:is([data-projects-navigation],[data-about-navigation])[aria-expanded="true"]{background:#f4f4f1!important;color:#191b18!important}
html[data-theme] body .entropic-pointer.is-visible.is-project-menu-pointer{background:var(--menu-ink)!important}
@media(hover:hover) and (pointer:fine){
 html body .site-header .theme-toggle:hover,html body .site-header .theme-toggle:hover *{cursor:none!important}
 html body:has(.theme-toggle:hover) :is(.entropic-pointer,.cursor-metaball,.navigation-cursor-bubble){opacity:0!important}
}
