/* One glass instrument for appearance and the house directory. */
:root{--index-ink:#f5efe7;--index-soft:#bdc5d2;--index-panel:#1b2430;--index-edge:#b9c7dc48;--index-glass:linear-gradient(145deg,#515c6a,#242d39 58%,#323643)}
html[data-theme=light]{color-scheme:light;--index-ink:#202832;--index-soft:#435363;--index-panel:#f4f1e9;--index-edge:#56687857;--index-glass:linear-gradient(148deg,#fffaf4,#e0e4e8 62%,#ece3dd);--ink:#f0ede6;--paper:#202832;--silver:#455263;--soft:#455263;--line:#59657450;--glass:var(--index-glass);--metal:var(--index-glass)}
.house-tools[hidden],#house-index:not([open]){display:none}
.house-tools{color:var(--index-ink);background:var(--index-glass);border:1px solid var(--index-edge);border-radius:30px;box-shadow:inset 0 1px #fff4,0 4px 18px #10151e16;display:flex;align-items:center;gap:1px;padding:2px;flex:none;font:500 .9rem/1.2 HouseSans,ArtistSans,Arial,sans-serif;pointer-events:auto}
body header:has(.house-tools){align-items:center;column-gap:.7rem}
.house-header .house-nav{margin-inline-start:auto}
.house-tools button,#house-index .index-close{appearance:none;color:inherit;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 .8rem;border:0;border-radius:30px;background:transparent;cursor:pointer;font:inherit}
.house-tools button:hover,#house-index .index-close:hover{background:#8a99ab2d}
.house-tools .appearance-key{font:1.45rem/1 Georgia,serif;padding:0;border-right:1px solid var(--index-edge);border-radius:50% 0 0 50%}
.index-key i{position:relative;width:13px;height:6px;border-block:1px solid currentColor;margin-left:.5rem;transform:skewX(-22deg)}
.compact-location{display:none}.house-tools :focus-visible,#house-index :focus-visible{outline:2px solid #779dbb;outline-offset:1px}
html.has-house-index .site-header.is-at-top{visibility:visible;opacity:1;translate:none;pointer-events:none}
html.has-house-index .site-header.is-at-top .nav-glass{pointer-events:auto}
html.has-house-index .site-header .nav-glass{margin:0}
#house-index{position:fixed;inset:0;margin:auto;padding:clamp(1.1rem,4vw,2.5rem);width:min(37rem,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--index-edge);border-radius:1.8rem;color:var(--index-ink);background:radial-gradient(ellipse at top right,#71859b30,transparent 64%),var(--index-panel);box-shadow:inset 0 1px #fff5,0 24px 100px #0005;font:400 1rem/1.4 HouseSans,ArtistSans,Arial,sans-serif;text-align:left}
#house-index::backdrop{background:#0c1425a8}
.index-top{display:flex;justify-content:space-between;align-items:center}.index-top a{display:flex;align-items:center;gap:.55rem;font-size:.87rem;text-decoration:none;color:inherit}
#house-index .index-close{font-size:1.5rem;border:1px solid var(--index-edge)}
#house-index h2{font:400 clamp(2rem,6vw,3.5rem)/1.1 HouseSerif,ArtistSerif,Georgia,serif;letter-spacing:-.05em;text-align:left;margin:.65em 0 .5em;color:inherit}
#house-index .index-rooms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;background:none;border:0;border-radius:0;box-shadow:none;padding:0}
#house-index .index-rooms a{display:grid;align-content:center;justify-items:start;gap:.2rem;color:inherit;text-decoration:none;border:0;border-top:1px solid var(--index-edge);border-radius:0;padding:.8rem .2rem;min-height:54px;text-align:left}
.index-rooms b{font-size:1.02rem;font-weight:550}.index-rooms small{font:400 .78rem/1.3 HouseSans,ArtistSans,Arial,sans-serif;color:var(--index-soft);letter-spacing:normal;text-transform:none}
.index-rooms a[aria-current=page] b::after{content:' ●';font-size:.7em;color:#b28b61}
#house-index .index-rooms a:hover{background:#8293a319}
@media(prefers-reduced-motion:no-preference){#house-index[open]{animation:open-directory .24s cubic-bezier(.19,.72,.24,1) both}#house-index .index-rooms a:hover b{transform:translateX(3px)}.index-rooms b{transition:transform .2s}@keyframes open-directory{from{opacity:0;transform:translateY(.65rem) scale(.988)}to{opacity:1;transform:none}}}
@media(max-width:850px){
 html.has-house-index body header:has(.house-tools){display:flex;flex-direction:row;justify-content:space-between!important;flex-wrap:nowrap;padding-inline:max(.65rem,env(safe-area-inset-left))!important}
 html.has-house-index .house-header .house-nav,html.has-house-index body>header>nav:not(.nav-glass):not(.house-nav)>a:not(.mark){display:none}
 html.has-house-index .site-header .nav-glass{width:50px!important;min-width:50px!important;height:50px;padding:0!important;justify-content:center!important;margin:0!important}
 html.has-house-index .site-header .nav-glass>:not(.brand){display:none!important}
 html.has-house-index .site-header .nav-glass>.brand{margin:0!important}
 html.has-house-index .site-header .house-tools,.has-house-index header:not(.house-header) .house-tools{margin-left:auto}
 .compact-location{display:inline;padding-inline:.65rem .15rem;font-size:.83rem}
 .house-header .compact-location{display:none}
}
@media(max-width:380px){#house-index .index-rooms{column-gap:.6rem}.index-rooms small{font-size:.75rem}}
@media print{.house-tools,#house-index{display:none!important}}

/* Daylight changes the paper and furniture, leaving art and identity plates intact. */
html[data-theme=light] body{--house-night:#eeeae3;--house-paper:#202832;--house-muted:#485668;color:#202832;background:radial-gradient(ellipse at 10% 15%,#cfdae455,transparent 42%),radial-gradient(ellipse at 95% 70%,#d9bfbf39,transparent 50%),#f0ede6!important}
html[data-theme=light] body:is(.creative-technology,.virginia-branding)::before{background-image:linear-gradient(#eee9e2ed,#ede9e3e3 60%,#f0ede6),url('/assets/studio-landscape.webp')}
html[data-theme=light] :is(.archive-main,.archive-main h1,.archive-main h2,.archive-main h3,.folio-hero,.house-row,.house-note,.cl-step h2,.cl-fields legend,.cl-fields label,.cart-page main,.letter label,.correspond h1){color:#202832}
html[data-theme=light] :is(.archive-main p,.archive-main .archive-kicker,.archive-stage,.systems-index span,.folio-id,.field-label,.eyebrow,.correspond-intro,.house-row p,.house-note p,.folio-hero p:not(.eyebrow),.house-footer,.cart-page p,.cart-page summary,.cl-intro p:not(.cl-kicker),.cl-send>p,.cl-tiers label,.cl-compare p,.word-controls,.cl-hero-study figcaption,.cl-hint,.cl-description,.cl-fields small,.cl-fields label span,.cl-fields label small,.cl-preview label,.lab-page .cl-kicker,.cl-fields small,.cl-fields label span,.lab-page .tier-intention,.lab-page .word-toolbar p){color:#455363}
html[data-theme=light] :is(.creative-technology,.virginia-branding) :is(p,small,footer span){color:#485468}
html[data-theme=light] :is(.letter,.cart-item,.house-nav,.glass-link){color:#202832;background:var(--index-glass)}
html[data-theme=light] :is(.letter input,.letter select,.letter textarea,.lab-page form input:not([type=checkbox],[type=radio],[type=range]),.lab-page form select,.lab-page form textarea){background:#fcfaf6;color:#202832;border:1px solid #75839180}
html[data-theme=light] .cl-intro h1 img,html[data-theme=light] .sys-wordmark{filter:brightness(0) saturate(100%);opacity:.86}
html[data-theme=light] :is(.home-mark,.index-top) img{filter:brightness(.32)}
html[data-theme=light] :is(.cl-step,.house-row,.case-reading,.archive-body,.system-row){border-color:#61728348}
html[data-theme=light] .lab-page :is(.cl-link,form button){background:var(--index-glass);color:#202832;border-color:#6e798c72}
html[data-theme=light] .lab-page .cart-primary{background:#303848;color:#faf6ee}
html[data-theme=light] .lab-page .cl-tiers label:has(:checked){color:#202832}
html[data-theme=light] .lab-page .word-lane label{color:#2d3441;background:#fff8;border-color:#75809066}
html[data-theme=light] .lab-page .cl-choices label:has(:checked){border-color:#73634c;background:#e7dcc8}
html[data-theme=light] .lab-page #budget-track [aria-pressed=true]{background:#413b49;color:#fff}
html[data-theme=light] .lab-page .angle-dial{background:radial-gradient(circle at 35% 25%,#fff,#d4ccc0);border-color:#827361}
html[data-theme=light] .angle-dial i{border-color:#7e6954}html[data-theme=light] .angle-dial i:before{background:#68543e}
html[data-theme=light] .lab-page #cl-errors{color:#922818}
html[data-theme=light] .cl-preview-inner{background:radial-gradient(at top left,color-mix(in srgb,var(--pig) 19%,transparent),transparent 67%),#faf7ef}
html[data-theme=light] #top .hero-shade{background:linear-gradient(180deg,#e8eaeb33,#f4f0e655 55%,#f0ede6)!important}
html[data-theme=light] #top :is(.hero-statement,.hero-word,.hero-join,.hero-introduction p){color:#1b2330!important;text-shadow:0 1px 8px #f9f6eeee}
html[data-theme=light] #the-house :is(.eyebrow,h2,h2 em,.house-story-copy,.house-story-copy p){color:#2f3945!important}
html[data-theme=light] #the-house .house-identity{filter:brightness(.37)}
html[data-theme=light] #the-house .hero-paths a{background:linear-gradient(140deg,#ffffffeb,#e4e5e5cc)!important;color:#202832!important;border-color:#61718660!important}
html[data-theme=light] #the-house .hero-paths a :is(small,span){color:#344351!important}
html[data-theme=light] #top :is(.gallery-heading p:not(.rail-context),.gallery-heading .service-summary,.vertical-gallery-hint,.gallery-current-name,.systems-display,.systems-subtitle,#branding-marketing,.shop-invitation p,#shop>.eyebrow,.representation-note){color:#384555!important}
html[data-theme=light] #top #work-title span{background:linear-gradient(110deg,#3f4853,#526783 54%,#5f475e);background-clip:text;-webkit-background-clip:text;color:transparent}
html[data-theme=light] #top :is(.shop-folio .folio-wordmark,.studio-placement .studio-mark-stage){filter:brightness(.5)}
html[data-theme=light] #top footer#contact :is(.contact-title,.footer-invitation,.eyebrow,.footer-context p,.footer-bottom a,.footer-legal,.footer-branches a){color:#293747!important}
html[data-theme=light] :is(.creative-technology,.virginia-branding) a:hover{color:#20334e}
html[data-theme=light] .system-emblem{background:radial-gradient(ellipse,#455164,#343e50);border-radius:1.25rem}
html[data-theme=light] .house-tools .appearance-key span{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){html:focus-within,html{scroll-behavior:auto!important}}
@media(min-width:851px){.house-header .house-tools{margin:0}.house-header .house-nav{flex-wrap:nowrap}}
@media(max-width:340px){.house-header .home-mark{gap:.2rem;font-size:.78rem}.house-header .home-mark img{width:2.1rem}}
html[data-theme=light] #top .nav-glass{color:#202832!important}
html[data-theme=light] #top .nav-glass :is(a,button){color:#202832!important}
html[data-theme=light] #top .scroll-identity,html[data-theme=light] #top .scroll-fallback{filter:brightness(.34)}
html[data-theme=light] #top .hero-photograph{opacity:.64!important}
html[data-theme=light] .cl-pieces button[aria-pressed=true],html[data-theme=light] .cl-directions button:active{background:#c3cddc}

/* The Squarespace header used a stationary capsule and one optically raised link. */
header .archive-nav,
html.has-house-index .site-header .archive-nav {
  position: relative;
  isolation: isolate;
  overflow: visible !important;
  border-radius: 999px;
}
:root {
  --raised-glass: radial-gradient(120% 140% at 18% 10%, #ffffff75, transparent 60%),
    radial-gradient(155% 150% at 86% 18%, #bdedff42, transparent 65%),
    radial-gradient(160% 165% at 78% 92%, #ffc7e94a, transparent 70%),
    linear-gradient(135deg, #e5ebf1eb, #b7bfccdf);
  --rest-glass: linear-gradient(145deg, #ffffff38, #c6d4ed1c 60%, #ffcbe821);
  --pill-ease: 170ms cubic-bezier(.2,.8,.2,1);
}
html[data-theme=light] { --rest-glass: linear-gradient(140deg, #ffffffcb, #ccd5e298 68%, #dfcdda70); }
header .archive-nav > :is(a,button):not(.brand,.mark),
header .house-tools > button {
  isolation: isolate;
  position: relative;
  overflow: visible !important;
  border-radius: 999px;
  background: transparent !important;
  box-shadow: none !important;
}
header .archive-nav > :is(a,button):not(.brand,.mark)::before,
header .house-tools > button::before,
#house-index .index-rooms > a::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  inset: 0;
  opacity: 0;
  transform: scale(.985);
  border-radius: inherit;
  background: var(--rest-glass);
  transition: transform var(--pill-ease), opacity var(--pill-ease);
}
header .archive-nav > [aria-current] { font-weight: 700; }
header .archive-nav > [aria-current]::before { opacity: 1 !important; transform: none; }
header .archive-nav:has(> :focus-visible) > [aria-current]:not(:focus-visible)::before { opacity: 0 !important; }
header .archive-nav > :is(a,button):not(.brand,.mark):is(:active,:focus-visible)::before,
header .house-tools > button:is(:active,:focus-visible)::before,
#house-index .index-rooms > a:is(:active,:focus-visible)::before {
  opacity: 1 !important;
  background: var(--raised-glass);
  transform: scale(1.12,1.42);
  box-shadow: 0 5px 14px #29364c33, 0 4px 18px #90b8ff24, 0 5px 20px #ef95be20;
}
html body header .archive-nav > :is(a,button):not(.brand,.mark):is(:active,:focus-visible),
html body header .house-tools > button:is(:active,:focus-visible),
#house-index .index-rooms > a:is(:active,:focus-visible) {color:var(--index-ink)!important;transform:none!important}
@media (hover:hover) and (pointer:fine) {
  header .archive-nav:has(> :hover) > [aria-current]:not(:hover)::before {opacity:0!important}
  header .archive-nav > :is(a,button):not(.brand,.mark):hover::before,
  header .house-tools > button:hover::before,
  #house-index .index-rooms > a:hover::before {
    background:var(--raised-glass);
    transform:scale(1.12,1.42);
    opacity:1!important;
    box-shadow:0 5px 14px #29364c33,0 4px 18px #90b8ff24,0 5px 20px #ef95be20;
  }
  html body header .archive-nav > :is(a,button):not(.brand,.mark):hover,
  html body header .house-tools > button:hover,
  #house-index .index-rooms > a:hover {color:var(--index-ink)!important;transform:none!important}
}
header .cart-orb {
  flex:none;display:grid;place-items:center;width:50px;height:50px;
  border-radius:50%;text-decoration:none;color:var(--index-ink);
  border:1px solid var(--index-edge);background:var(--index-glass);
  box-shadow:inset 0 1px 1px #fff6,0 5px 15px #11223420;pointer-events:auto;
}
header .cart-orb[aria-current] {outline:2px solid currentColor;outline-offset:2px}
#house-index .index-rooms > a {position:relative;isolation:isolate;border-radius:1.3rem;padding-inline:.7rem}
#house-index .index-rooms > a::before {inset:.3rem .45rem}
#house-index .index-rooms > a:is(:hover,:active,:focus-visible)::before {transform:scale(1.04,1.08)}
#house-index .index-rooms > a:is(:active,:focus-visible) small {color:var(--index-soft)}
@media (hover:hover) {#house-index .index-rooms > a:hover small {color:var(--index-soft)}}
@media(max-width:850px) {
  .has-house-index header .cart-orb{width:44px;height:44px;margin-left:auto}
  html.has-house-index body header .house-tools{margin-left:0}
  .has-house-index .compact-location{display:none}
}
@media(max-width:420px) {.house-header .home-mark{font-size:.78rem;gap:.15rem}.house-header .home-mark img{width:1.9rem}}
@media(prefers-reduced-motion:reduce) {
  header .archive-nav > :is(a,button)::before,header .house-tools > button::before,#house-index .index-rooms > a::before{transition:none!important}
}
.motion-paused header .archive-nav > :is(a,button)::before,.motion-paused header .house-tools > button::before{transition:none!important}
@media(max-width:360px){
  html.has-house-index body .house-header{column-gap:.25rem}
  .house-header .home-mark{white-space:normal;line-height:1.12;min-width:0}
  .house-header .index-key{padding-inline:.5rem}
}
@media(hover:hover) and (pointer:fine){
  header .archive-nav:has(> :hover) > :focus-visible:not(:hover)::before{opacity:0!important}
}

/* Two visitor routes from the domain-linked Squarespace homepage. */
#top .house-entry-actions{display:flex;justify-content:center;align-items:stretch;flex-wrap:wrap;gap:.55rem;margin:.45rem auto 0}
#top .house-entry-actions a{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:.12rem .7rem;text-align:left;padding:.55rem 1rem;background:linear-gradient(125deg,#313441ee,#222b39e8);color:#fffcf5;box-shadow:inset 0 1px #ffffff43;border-radius:1rem;text-decoration:none;font:500 .9rem/1.25 ArtistSans,Arial,sans-serif}
#top .house-entry-actions small{grid-column:1/-1;font:inherit;font-size:.72rem;color:#e0d4d9}
#top .house-entry-actions a:is(:hover,:focus-visible){background:#494150;outline:2px solid #e9cadb;outline-offset:2px}
html[data-theme=light] #top .house-entry-actions a{background:linear-gradient(125deg,#fff9f3ec,#e5dce4ed);color:#2d2633}html[data-theme=light] #top .house-entry-actions small{color:#544658}
@media(max-width:480px){#top .house-entry-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,23rem)}#top .house-entry-actions a{font-size:.8rem;padding:.5rem .65rem;gap:.15rem .25rem}#top .house-entry-actions small{font-size:.66rem}}

/* Shared optics from the Squarespace rail: a clear body, a convex upper
   reflection and the warmer return light along its lower edge. */
:root {
  --lens-tint:rgba(29,31,47,.65);
  --lens-top:rgba(245,234,251,.32);
  --lens-cool:rgba(164,211,237,.18);
  --lens-warm:rgba(221,151,201,.21);
  --lens-outline:rgba(238,230,249,.36);
  --lens-depth:0 10px 24px -10px #090a157a,0 12px 27px -12px #ac8fce70;
  --lens-rim:inset 0 1.5px 1px #fff9,inset 1px 0 2px #e1edff40,inset -1px -1px 1px #efcee875;
  --raised-glass:radial-gradient(ellipse at 24% 0%,#fff6,transparent 62%),
    linear-gradient(165deg,#e6dff147,#b9cdec18 45%,#dcb5dc38 85%),#4d485caa;
}
html[data-theme=light] {
  --lens-tint:rgba(236,233,240,.62);
  --lens-top:rgba(255,255,255,.8);
  --lens-cool:rgba(152,201,220,.3);
  --lens-warm:rgba(209,151,190,.3);
  --lens-outline:rgba(116,105,130,.32);
  --lens-depth:0 10px 22px -13px #36344775,0 10px 28px -12px #9b70a85c;
  --lens-rim:inset 0 1.5px 1px white,inset 1px 0 2px #fff9,inset -1px -1px 1px #bda7c185;
  --raised-glass:radial-gradient(ellipse at 24% 0%,#fffc,transparent 62%),
    linear-gradient(165deg,#fff8,#dcecf440 45%,#e4bed957 85%),#f6edf2a8;
}
html body header :is(.archive-nav,.cart-orb,.house-tools),
html #top .house-entry-actions a,
html .lab-page :is(.tier-rail,.lab-route,#selection-dock,.cl-preview-inner,.cl-link),
html #house-index[open] {
  background:
    radial-gradient(ellipse 37% 155% at var(--reflection-x,23%) -81%,var(--lens-top) 43%,transparent 84%),
    radial-gradient(ellipse 50% 150% at 91% 165%,var(--lens-warm),transparent 88%),
    linear-gradient(176deg,var(--lens-top),transparent 38%,var(--lens-cool) 103%),
    var(--lens-tint) !important;
  border:1px solid var(--lens-outline);
  box-shadow:var(--lens-rim),var(--lens-depth)!important;
  -webkit-backdrop-filter:blur(13px) saturate(165%) contrast(1.04)!important;
  backdrop-filter:blur(13px) saturate(165%) contrast(1.04)!important;
}
html #top .house-entry-actions a { color:var(--index-ink); }
html #top .house-entry-actions a small { color:var(--index-soft); }
html .lab-page .cl-preview-inner {
  background-color:color-mix(in srgb,var(--pig) 7%,var(--lens-tint))!important;
}
html .lab-page #tier-lens,html .lab-page .lab-route a[aria-current=location] {
  background:linear-gradient(168deg,#fff6,transparent 40%),
    linear-gradient(120deg,color-mix(in srgb,var(--pig) 28%,transparent),transparent 57%,color-mix(in srgb,var(--second) 20%,transparent));
  box-shadow:var(--lens-rim),0 4px 10px #17112026;
}
html .lab-page {
  background-image:radial-gradient(ellipse 84% 300px at 70% -110px,#d39fbd80,transparent),
    radial-gradient(ellipse 68% 235px at 12% -96px,#a9c4d457,transparent)!important;
}
@media(prefers-reduced-transparency:reduce),(forced-colors:active) {
  html body header :is(.archive-nav,.cart-orb,.house-tools),html #top .house-entry-actions a,
  html .lab-page :is(.tier-rail,.lab-route,#selection-dock,.cl-preview-inner,.cl-link),html #house-index[open] {
    background:var(--index-panel)!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    box-shadow:none!important;
  }
}

/* Inner-page masthead: wordmark, centered rail, utility controls. */
.house-header .header-utilities { display:flex; align-items:center; justify-content:flex-end; gap:.4rem; }
html body .house-header .home-mark { display:inline-flex; padding:.15rem 0; justify-self:start; }
html body .house-header .home-mark img { display:block; width:4.1rem; height:auto; }
html[data-theme=light] .house-header .home-mark img { filter:brightness(.16); }
@media(min-width:1024px) {
  html body .house-header:has(.house-nav) { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; padding-block:1.15rem; }
  .house-header .house-nav { justify-self:center; margin:0; }
}
@media(min-width:851px) and (max-width:1023px) {
  html body .house-header { padding-inline:1rem; }
}
@media(max-width:850px) {
  html.has-house-index body .house-header { padding-block:.55rem; }
  .house-header .header-utilities { margin-inline-start:auto; }
}
@media(max-width:650px) {
  html body .house-header .home-mark img { width:2.55rem; height:2.55rem; object-fit:contain; }
}
html body .house-header :is(.house-nav,.cart-orb,.house-tools) {
  --lens-outline:rgba(201,195,218,.18);
  --lens-rim:inset 0 1px 0 #fff6,inset 0 -1px 0 #dde2ff24;
  --lens-depth:0 8px 24px -14px #a69ab55c;
}
html body .house-header .house-nav { padding:4px; }
.house-header .house-nav a { line-height:1; font-size:.9rem; }
html body .house-header .house-tools {
  background:transparent!important; border-color:transparent; box-shadow:none!important;
  backdrop-filter:none!important; -webkit-backdrop-filter:none!important;
}
.house-header .appearance-key { border:0; }
.house-header .index-key { gap:.12rem; }
html body .house-header .cart-orb { width:44px;height:44px; }
.house-header .house-nav .travel-lens {
  position:absolute; z-index:-1; pointer-events:none; left:0; top:50%;
  height:calc(100% - 8px); border-radius:999px; opacity:0;
  transform:translate(var(--lens-left),-50%) scaleY(var(--lens-rise,1));
  width:var(--lens-width);
  border:1px solid #e7e1ec55;
  background:radial-gradient(ellipse at 25% -50%,#fff8,transparent 69%),
    linear-gradient(164deg,#dce5fa37,#aaa2b421 52%,#e2c6e637);
  box-shadow:inset 0 1px 0 #fff9,inset 0 -1px 0 #e8dbff5c,0 5px 11px -5px #322b4880;
}
html[data-theme=light] .house-header .travel-lens {
  background:radial-gradient(ellipse at 30% 0,#fff,transparent 75%),linear-gradient(155deg,#fff8,#b8cad749,#d6bed855);
  border-color:#8a84984d;
}
header .house-nav.lens-ready > a::before { display:none; }
header .house-nav.lens-ready .travel-lens { opacity:1; }
header .house-nav.lens-ready > [aria-current] { font-weight:550; }
@media(prefers-reduced-motion:no-preference) {
  html:not(.motion-paused) .house-nav.lens-ready .travel-lens {
    transition:transform 210ms cubic-bezier(.2,.8,.25,1),width 210ms cubic-bezier(.2,.8,.25,1),opacity 100ms;
  }
}

/* Keep the chapter and utility groups intact at every width. */
#top .home-utilities { display:flex; align-items:center; gap:.45rem; pointer-events:auto; }
#top .home-utilities .house-tools { margin:0!important; }
.house-nav.lens-ready .travel-lens { border-color:transparent; }
@media(max-width:850px) {
  html.has-house-index #top .site-header { inset:10px 16px auto!important; width:auto!important; gap:0; }
  html.has-house-index #top header .nav-glass {
    background:none!important; border:0!important; box-shadow:none!important; backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  html.has-house-index #top header .nav-glass .brand {
    width:42px!important; height:44px!important; display:grid; place-items:center;
  }
  html.has-house-index #top header .nav-glass .scroll-identity { display:none!important; }
  html.has-house-index #top header .nav-glass .scroll-fallback {
    display:block!important; position:static!important; opacity:1!important; width:34px!important; height:34px!important; object-fit:contain;
  }
  #top .home-utilities { margin-left:auto; gap:0; border-radius:99px; padding:0 3px;
    background:var(--lens-tint); color:var(--index-ink); border:1px solid var(--lens-outline);
    box-shadow:var(--lens-rim); backdrop-filter:blur(14px) saturate(150%); }
  html #top .home-utilities :is(.cart-orb,.house-tools) {
    background:none!important; border:0; box-shadow:none!important; backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  #top .home-utilities .index-key { padding-inline:.55rem; }
}
@media(max-width:700px) {
  html #top .linework-hero .hero-copy { inset:clamp(84px,12svh,112px) 6vw auto!important; text-align:left!important; }
  html #top .linework-hero .hero-kicker { text-align:left!important; font-size:.64rem!important; letter-spacing:.12em!important; }
  html #top .linework-hero h1.hero-statement {
    width:100%!important; max-width:none!important; text-align:left!important; font-size:clamp(29px,8.7vw,52px)!important;
    margin:14px 0 0!important; line-height:1.07!important;
  }
  html #top .linework-hero .hero-introduction { display:block!important; text-align:left!important; margin:1rem 0 0!important; }
  html #top .linework-hero .hero-introduction p { font-size:.9rem!important; max-width:33ch!important; text-align:left!important; line-height:1.45; margin:0; }
  html[data-theme=light] #top .linework-hero .hero-photograph { opacity:1!important; }
  html[data-theme=light] #top .linework-hero .hero-shade {
    background:linear-gradient(180deg,#f5eeeaf2 0%,#f5eeeae6 30%,#f5eeea59 49%,transparent 67%)!important;
  }
  html[data-theme=light] #top .linework-hero .hero-kicker { color:#42404a!important; }
  html[data-theme=light] #top .linework-hero :is(.hero-statement,.hero-word,.hero-join,.hero-introduction p) { text-shadow:none!important; }
}
.series-retention { font-size:.9rem; color:var(--index-soft); }
.series-retention:empty,#selection-dock .dock-wall { display:none; }
@media(max-width:700px) {
  #selection-dock { width:100%; gap:.35rem; }
  #selection-dock div { flex:1; }
  #selection-dock a { padding-inline:.65rem; }
  #selection-dock .dock-wall { display:inline-flex; }
}
@media(min-width:701px) and (max-width:940px) {
  .cl-workspace { grid-template-columns:minmax(0,1fr); }
  .cl-preview { position:static; width:min(100%,38rem); margin-inline:auto; }
  .bench-jump { display:inline-flex; align-items:center; min-height:44px; }
}

html.has-house-index #top .site-header.is-at-top {
  visibility:hidden!important; opacity:0!important; pointer-events:none!important;
}
#top .house-narrative .house-entry-actions {
  display:flex; justify-content:center; flex-wrap:wrap; gap:.6rem 1.7rem;
  margin:1.25rem auto .5rem; width:auto;
}
html #top .house-narrative .house-entry-actions a {
  display:grid; grid-template-columns:1fr auto; padding:.5rem 0; min-height:44px;
  background:none!important; border:0; border-bottom:1px solid var(--index-edge);
  box-shadow:none!important; border-radius:0; backdrop-filter:none!important; -webkit-backdrop-filter:none!important;
}
#top .house-narrative .house-entry-actions small { display:block; }
@media(max-width:700px) {
  html #top .linework-hero .hero-copy { top:clamp(54px,9svh,86px)!important; }
  html #top .linework-hero .hero-kicker { margin:0!important; width:100%; }
  html #top .linework-hero h1.hero-statement { font-size:clamp(34px,10vw,61px)!important; }
  html #top .linework-hero .hero-introduction p { max-width:36ch!important; }
  #top .house-narrative .house-entry-actions { gap:.7rem 1rem; }
}

.reading-spread { width:min(100% - 2.5rem,75rem); margin:clamp(2.5rem,7vw,6rem) auto; border-top:1px solid var(--index-edge); padding-top:clamp(1.25rem,3.5vw,3rem); display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:clamp(1.25rem,5vw,5rem); }
.archive-main .reading-spread { width:100%; }
.reading-spread h2 { margin:0; max-width:15ch; font:400 clamp(1.9rem,4.3vw,3.8rem)/1.04 HouseSerif,Georgia,serif; letter-spacing:-.035em; color:var(--index-ink); }
.reading-spread dl { margin:0; }
.reading-spread dl>div+div { border-top:1px solid var(--index-edge); margin-top:1.2rem; padding-top:1.2rem; }
.reading-spread dt { font-weight:600; color:var(--index-ink); }
.reading-spread dd,.system-reading p,.transaction-note { margin:.45rem 0 0; max-width:62ch; color:var(--index-soft); line-height:1.6; }
.reading-spread a,.transaction-note a { text-decoration:underline; text-underline-offset:.22em; }
.system-reading { margin-block:.85rem; border-block:1px solid var(--index-edge); padding:.25rem 0; }
.system-reading summary { cursor:pointer; padding:.55rem 0; color:var(--index-ink); }
.system-reading[open] p { padding-bottom:.7rem; }
@media(max-width:700px) { .reading-spread { grid-template-columns:1fr; } }
.audience-guide { width:min(calc(100% - 2.5rem),71rem); margin:clamp(2.75rem,8vw,7rem) auto; color:var(--index-ink); }
.guide-intro { max-width:49rem; margin-bottom:clamp(2rem,5vw,5rem); }
.guide-intro h1 { font:400 clamp(3rem,7vw,6rem)/1.01 HouseSerif,Georgia,serif; letter-spacing:-.045em; margin:.18em 0; }
.guide-intro>p:last-child { font-size:clamp(1.05rem,2vw,1.3rem); max-width:58ch; color:var(--index-soft); }
.guide-section { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:clamp(1rem,4vw,4rem); padding:2rem 0; border-top:1px solid var(--index-edge); }
.guide-section h2 { font:400 clamp(1.8rem,3.6vw,3.3rem)/1.1 HouseSerif,Georgia,serif; margin:0; }
.guide-section p { margin:0 0 .75rem; color:var(--index-soft); }
@media(max-width:700px){.guide-section{grid-template-columns:1fr;gap:.75rem;}}
/* Desktop proportions and pink-violet hover from the domain-linked Squarespace header. */
@media(min-width:1100px) {
  html body .house-header:has(.house-nav) {grid-template-columns:minmax(5rem,1fr) minmax(0,5.8fr) minmax(7rem,1fr);padding-inline:clamp(1.2rem,3.2vw,3.75rem);}
  .house-header .house-nav {width:100%;justify-content:space-between;}
  .house-header .house-nav a {font:400 clamp(.93rem,1.15vw,1.18rem)/1.2 Georgia,serif;min-height:3.05rem;padding-inline:clamp(.6rem,1.6vw,1.8rem);}
  html body .house-header .cart-orb {width:3.45rem;height:3.45rem;}
  .house-header .cart-orb svg {width:1.5rem;height:1.5rem;stroke-width:1.15;}
}
.house-header .house-nav {--lens-top:#e5d7e75e;--lens-warm:#b476b84d;}
.house-header .house-nav .travel-lens {
  background:linear-gradient(178deg,#f9effa8c 0%,#d5b8da69 45%,#bc7dab8c 87%,#c5a3dc63);
  box-shadow:inset 0 1px 1px #fffa,0 9px 17px -10px #a47abb83;
}
@media(min-width:851px) and (max-width:1099px) {
  .house-header .house-nav a {font-size:.82rem;padding-inline:.55rem;}
}
@media(min-width:1100px) {
  html.has-house-index body#top .site-header {
    display:grid!important; grid-template-columns:minmax(4rem,1fr) minmax(0,5.8fr) minmax(7rem,1fr);
    align-items:center; inset-inline:clamp(1.2rem,3.2vw,3.75rem)!important; width:auto!important;
  }
  html.has-house-index #top .site-header .nav-glass { width:100%!important; max-width:none!important; justify-content:space-between!important; }
  #top .site-header>.brand { justify-self:start; width:4.1rem; height:3rem; }
  #top .site-header>.brand .scroll-fallback { content:url('/assets/current-wordmark.png');display:block!important;opacity:1!important;width:100%;height:100%;object-fit:contain; }
  #top .site-header>.brand .scroll-identity {display:none!important;}
  #top .home-utilities {justify-self:end;}
  html #top .site-header .nav-glass>a { min-height:3rem;padding:.4rem clamp(.5rem,1.3vw,1.4rem);font:400 clamp(.92rem,1.13vw,1.15rem)/1.2 Georgia,serif; }
}
.site-header>.brand {pointer-events:auto;position:relative;}
@media(max-width:1099px){#top .site-header>.brand {display:block;width:38px;height:44px;flex:none;}#top .site-header>.brand img{display:block!important;opacity:1!important;position:static;width:100%;height:100%;object-fit:contain;}#top .site-header>.brand svg{display:none!important;}}
@media(max-width:850px){html.has-house-index #top .site-header .nav-glass{display:none!important;}}
header .archive-nav .travel-lens {position:absolute;z-index:-1;left:0;top:50%;pointer-events:none;height:calc(100% - 8px);width:var(--lens-width);transform:translate(var(--lens-left),-50%) scaleY(var(--lens-rise,1));border-radius:99rem;background:linear-gradient(178deg,#f9effa8c,#d5b8da69 48%,#bc7dab8c 88%,#c5a3dc63);opacity:0;}
header .archive-nav.lens-ready .travel-lens{opacity:1;}
header .archive-nav.lens-ready>a::before{display:none;}
@media(prefers-reduced-motion:no-preference){html:not(.motion-paused) header .archive-nav.lens-ready .travel-lens{transition:transform .24s cubic-bezier(.2,.8,.25,1),width .24s cubic-bezier(.2,.8,.25,1);}}
.footer-directory,#house-index .dialog-mode {font:inherit;color:inherit;background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:.23em;min-height:44px;}
#house-index .dialog-mode {margin-top:.5rem;color:var(--index-soft);}
@media(min-width:1100px) {
  html.has-house-index .house-header:has(.house-nav) .house-tools,
  html.has-house-index #top .home-utilities .house-tools {display:none;}
  html body .house-header:has(.house-nav),html.has-house-index body#top .site-header {grid-template-columns:minmax(5rem,1fr) minmax(0,5.8fr) minmax(5rem,1fr);}
  html #top .home-utilities,.house-header .header-utilities{justify-self:end;}
}
/* The original Lab has an ink masthead above its light working surface. */
body.lab-page .lab-signature {margin-inline:calc(50% - 50vw);background:linear-gradient(#251e28,#09090d 65%);border-radius:0 0 clamp(1.2rem,3vw,3rem) clamp(1.2rem,3vw,3rem);color:white;}
html[data-theme] .lab-page .lab-signature img {filter:none;}
html[data-theme] body.lab-page .house-header {
  max-width:none;color:#faf6f4;background:linear-gradient(#533e50,#251e28);
  --index-ink:#faf6f4;--index-soft:#ded6dc;--lens-tint:#aa87aa47;--lens-top:#fff4ff75;--lens-warm:#dd96cd55;
}
html[data-theme] body.lab-page .house-header .home-mark img{filter:none;}
html[data-theme] body.lab-page header :is(.house-nav,.cart-orb,.house-tools){color:#fff9f5;}
html[data-theme] .lab-page .house-header .house-nav .travel-lens {background:linear-gradient(178deg,#fff1ff9c,#e4c8f183 43%,#cd8abc80 87%,#d2bce55c);border:0;}
html[data-theme=light] .lab-page #tabs button[aria-pressed=true] small {color:#465260;}

/* House-level chrome stays consistent while art, project identities and Lab skins keep their own materials. */
html[data-theme] body.house-page .house-header {
  width:100%;max-width:none;background:linear-gradient(178deg,#443844,#201e28 100%);color:#faf6f4;
  --index-ink:#faf6f4;--index-soft:#ded6dc;--lens-tint:#aa87aa47;--lens-top:#fff4ff75;--lens-warm:#dd96cd55;
}
html[data-theme] body.house-page .house-header .home-mark img {filter:none;}
html[data-theme] body.house-page .house-header :is(.house-nav,.cart-orb,.house-tools){color:#fff9f5;}
html[data-theme] .house-header .house-nav .travel-lens {background:linear-gradient(178deg,#fff1ff9c,#e4c8f183 43%,#cd8abc80 87%,#d2bce55c);}
@media(min-width:1100px) {
  html body .house-header:has(.house-nav),html.has-house-index body#top .site-header {grid-template-columns:minmax(5rem,1fr) minmax(0,53rem) minmax(5rem,1fr);}
  html body .house-header .house-nav,html #top .site-header .house-nav {display:grid;grid-template-columns:1fr 1fr 1.5fr 1fr;}
  .house-header .house-nav>a,#top .site-header .house-nav>a {justify-content:center;text-align:center;white-space:nowrap;}
}
.shared-footer {display:flex;max-width:83rem;align-items:center;justify-content:space-between;text-align:left;gap:1rem 2.2rem;}
.shared-footer nav {display:flex;background:none;border:0;box-shadow:none;padding:0;gap:1rem;}
.shared-footer nav a {display:inline-flex;align-items:center;min-height:44px;padding:0;}
.shared-footer .footer-rights {flex-basis:100%;font-size:.76rem;color:var(--index-soft);}
.house-return,.lab-parent {display:inline-flex;min-height:44px;align-items:center;color:var(--index-soft);font-size:.88rem;text-underline-offset:.24em;}
.lab-signature .lab-parent {color:#e0d4de;margin-bottom:.65rem;}
@media(max-width:760px){.shared-footer {align-items:flex-start;}.shared-footer nav{flex-wrap:wrap;}.shared-footer .footer-rights{flex-basis:auto;}}

/* The rail catches the light; its surroundings belong to the page. */
html[data-theme] body.house-page:not(.lab-page) .house-header {
  background:radial-gradient(ellipse at 48% -130%,#ae88a14f,transparent 77%);color:var(--paper);
}
html[data-theme=light] body.house-page:not(.lab-page) .house-header {
  --index-ink:#212733;--lens-top:#ffffffb3;--lens-warm:#c189b746;--lens-tint:#e3dce25c;
}
html[data-theme=light] body.house-page:not(.lab-page) .house-header :is(.house-nav,.cart-orb,.house-tools){color:#252431}
html[data-theme=light] body.house-page:not(.lab-page) .house-header .home-mark img{filter:brightness(.18)}
html[data-theme] body header :is(.archive-nav,.nav-glass,.cart-orb,.house-tools){
  background:radial-gradient(ellipse 34% 110% at var(--reflection-x,28%) -39%,#fff9,transparent 85%),linear-gradient(175deg,var(--lens-top),transparent 41%,var(--lens-warm) 98%),var(--lens-tint)!important;
}
.house-footer.shared-footer {display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:1.3rem 2.2rem;max-width:83rem}
.footer-sign>a{font:400 clamp(1.35rem,2.5vw,2rem)/1.2 HouseSerif,Georgia,serif;color:var(--index-ink)}
.footer-sign>p{line-height:1.55;margin-top:.4rem}.footer-colophon{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:.5rem 1rem;border-top:1px solid var(--index-edge);padding-top:.75rem;flex-wrap:wrap}.footer-colophon a{display:inline-flex;align-items:center;min-height:44px}
html body .footer-modes:not([hidden]){display:inline-flex;align-items:center;width:max-content;border-radius:99px;border:1px solid var(--index-edge);padding:2px;box-shadow:inset 0 1px #fff4;background:linear-gradient(170deg,#adc0ce20,transparent 55%,#bc96b225);color:var(--index-ink)}
html body .footer-modes button{border:0;border-radius:99px;background:transparent;color:inherit;font:500 .82rem/1.2 HouseSans,ArtistSans,Arial,sans-serif;cursor:pointer;min-height:44px;padding:0 .85rem;display:flex;align-items:center;gap:.4rem}
html body .footer-modes button[aria-pressed=true]{background:linear-gradient(160deg,#c1b0c646,#9daec126);box-shadow:inset 0 1px #fff8,0 2px 8px #18152421}
.footer-modes button span{font-size:1rem}#top footer .footer-modes{margin:1rem auto}
.artist-plate{min-width:0;margin:0}.artist-plate img{width:100%;height:auto;max-height:62svh;object-fit:contain;display:block}.artist-plate figcaption{margin:.85rem 0 0;color:var(--index-soft);font-size:.85rem}.artist-plate figcaption strong{display:block;color:var(--index-ink)}
.practice-register{width:min(calc(100% - var(--edge)*2),83rem);margin:1rem auto clamp(3rem,7vw,7rem);scroll-margin-top:2rem}
.practice-register>h2{font:400 clamp(2.2rem,4.5vw,4.4rem)/1.05 HouseSerif,Georgia,serif;letter-spacing:-.04em;margin:.5rem 0 1.8rem}
.practice-pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,4vw,4rem)}.practice-pair article{display:grid;grid-template-columns:auto 1fr;gap:1.25rem;align-items:start;border-top:1px solid var(--index-edge);padding-top:1.25rem}
.practice-pair img{object-fit:cover;border-radius:3px}.practice-pair h3{font:400 1.35rem/1.25 HouseSans,Arial,sans-serif;margin:0}.practice-pair p{color:var(--index-soft);max-width:39ch;margin:.45rem 0}.practice-pair a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:760px){.house-footer.shared-footer{grid-template-columns:1fr;justify-items:start;gap:.9rem}.shared-footer nav{gap:1.2rem}.footer-colophon{width:100%}.practice-pair{grid-template-columns:1fr}.artist-opening{gap:2rem}.practice-pair img{width:65px;height:82px}}
@media print{.footer-modes{display:none!important}}

.practice-correspond{border-top:1px solid var(--index-edge);margin-top:2.1rem;padding-top:1.3rem;display:grid;grid-template-columns:minmax(9rem,.7fr) minmax(0,1.5fr) auto;gap:.7rem 1.75rem;align-items:baseline}
.practice-correspond p{margin:0;max-width:60ch;color:var(--index-soft)}.practice-correspond a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:760px){.practice-correspond{grid-template-columns:1fr}}

/* A traveling highlight has two rims, like light along the edge of a lens. */
html[data-theme] header .archive-nav .travel-lens::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 1px #fff9,inset 0 -1px 1px #efd4ff66;background:radial-gradient(ellipse at 36% -55%,#fff9,transparent 68%)}
@media(prefers-reduced-motion:no-preference){html:not(.motion-paused) header .archive-nav.lens-ready .travel-lens{transition:transform .32s cubic-bezier(.19,.82,.23,1),width .28s cubic-bezier(.19,.82,.23,1),opacity .14s}}
html[data-theme] #house-index[open]{background:radial-gradient(ellipse at 22% -26%,#e6d5ff45,transparent 59%),linear-gradient(140deg,color-mix(in srgb,var(--index-panel) 96%,transparent),color-mix(in srgb,var(--index-panel) 90%,transparent))!important}
#house-index::backdrop{background:#0b112269}
.guide-cover{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.75fr);gap:clamp(1.25rem,5vw,5rem);align-items:center;margin-bottom:clamp(2rem,4vw,4rem)}
.guide-cover .guide-intro{margin:0}.guide-intro>a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.25em}.guide-cover figure{margin:0;color:var(--index-soft);border-block:1px solid var(--index-edge);padding:1.4rem 0}.guide-cover svg{width:100%;display:block}.guide-cover figcaption,.field-reading>span,.field-guide h2 small{font:500 .7rem/1.5 HouseSans,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.field-guide h2 small{display:block;margin-bottom:.5rem;color:var(--index-soft)}.field-guide .glass-link{margin-top:1rem}.field-guide a{text-underline-offset:.2rem}
.field-reading{width:min(calc(100% - 2.5rem),71rem);margin:2rem auto 3rem;padding:1.4rem 0;border-top:1px solid var(--index-edge);color:var(--index-soft)}
.field-reading p{margin:.45rem 0;max-width:64ch}.field-reading a{color:var(--index-ink);text-underline-offset:.22em}.archive-main>.field-reading,.audience-guide>.field-reading{width:100%}
@media(max-width:730px){.guide-cover{grid-template-columns:1fr}.guide-cover figure{display:flex;align-items:center;gap:.8rem;padding:.35rem 0}.guide-cover svg{width:34%;max-width:9rem}.guide-cover figcaption{max-width:22ch}}

/* The Lab opens on a single ink field; the navigation catches its upper light. */
html[data-theme] body.lab-page .house-header{background:linear-gradient(180deg,#302837,#201e29);--lens-top:#f1deee59;--lens-warm:#c9a7bf35;--lens-tint:#a68aaf29}
html[data-theme] body.lab-page .lab-signature{position:relative;isolation:isolate;overflow:hidden;text-align:left;border-radius:0;margin-inline:calc(50% - 50vw);padding:clamp(1.4rem,3.6vw,3.2rem) max(calc((100vw - 77.5rem)/2),5vw) clamp(1.8rem,4.5vw,4rem);background:linear-gradient(180deg,#201e29,#161720 76%,#12151c);color:#fffaf2}
.lab-imprint{position:relative;z-index:1;width:fit-content}.lab-imprint h1 img{width:clamp(12rem,23vw,20rem);margin:0}
.lab-imprint .lab-parent{min-height:44px;margin:0 0 .4rem;text-decoration:none;font:500 .75rem/1.3 HouseSans,Arial,sans-serif;letter-spacing:.08em}.lab-imprint .lab-parent::before{content:'←';margin-right:.55em}.lab-imprint .lab-parent:hover{text-decoration:underline}
.lab-imprint>p{font:400 clamp(.92rem,1.42vw,1.12rem)/1.5 HouseSans,Arial,sans-serif;color:#ded5db;margin:.9rem 0 0}.imprint-fold{position:absolute;z-index:0;inset:0 0 0 auto;width:58%;height:100%;opacity:.8;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 20%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 20%)}
@media(min-width:1100px){html body.house-page .house-header .house-nav{padding:2px 4px}html body.house-page .house-header .house-nav a{min-height:44px}html[data-theme] body.house-page .house-header .house-nav .travel-lens{background:linear-gradient(177deg,#fff6ff82,#c5acc14a 44%,#c490b05c 92%);box-shadow:inset 0 1px #ffffffe0,inset 0 -1px #ddd1e46e,0 4px 13px -8px #131021c9}}
@media(max-width:650px){.imprint-fold{width:44%;opacity:.53}.lab-imprint>p{max-width:24ch}.lab-imprint h1 img{width:clamp(11rem,48vw,15rem)}}

/* The same glass edge opens the choice sheet on the desk and in correspondence. */
html body .pick-source[hidden],html body .glass-pick-sheet input[hidden]{display:none!important}
html body .glass-pick-trigger,html body .glass-pick-sheet button,html body .glass-pick-sheet input{box-sizing:border-box;font:500 1rem/1.35 HouseSans,Arial,sans-serif;letter-spacing:normal;text-transform:none;color:var(--index-ink);cursor:pointer}
html body .glass-pick-trigger{position:relative;display:flex;justify-content:space-between;align-items:center;width:100%;gap:1rem;text-align:left;padding:.8rem 1rem;min-height:48px;border-radius:.95rem;border:1px solid var(--index-edge);background:linear-gradient(165deg,#c7d2e61a,transparent 60%,#bc9ab817),var(--index-panel);box-shadow:inset 0 1px #fffa}
.glass-pick-trigger:after{content:'';width:.46rem;height:.46rem;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg)}
html body dialog.glass-pick-sheet{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(31rem,calc(100% - 1.5rem));height:fit-content;max-height:80dvh;overflow:auto;padding:clamp(1rem,3vw,1.6rem);border-radius:1.55rem;color:var(--index-ink);border:1px solid var(--index-edge);background:linear-gradient(155deg,#c6b4c82e,transparent 37%,#9dafc51a),var(--index-panel);box-shadow:inset 0 1px #fff9,0 18px 75px #090a123e;color-scheme:inherit}
.glass-pick-sheet::backdrop{background:#0b101b88;backdrop-filter:blur(5px)}
.glass-pick-sheet .pick-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.glass-pick-sheet .pick-heading small{font:500 .68rem/1.4 HouseSans,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:var(--index-soft)}.glass-pick-sheet .pick-heading h2{font:400 clamp(1.55rem,4vw,2.25rem)/1.12 HouseSerif,Georgia,serif;margin:.45rem 0;color:var(--index-ink)}
html body .glass-pick-sheet button{background:linear-gradient(155deg,#cfbbc322,transparent 75%);border:1px solid var(--index-edge);border-radius:.8rem;min-height:44px;padding:.45rem .65rem;box-shadow:inset 0 1px #ffffff33}
html body .glass-pick-sheet .pick-close{border-radius:100%;font-size:1.4rem;width:44px;flex:none}
html body .glass-pick-sheet .pick-find{width:100%;min-height:46px;padding:.6rem .8rem;margin:.8rem 0 .15rem;border:1px solid var(--index-edge);border-radius:.85rem;background:var(--index-panel);cursor:text}
.glass-pick-sheet .pick-count{color:var(--index-soft);font:.82rem/1.4 HouseSans,sans-serif;margin:.75rem 0}
.glass-pick-sheet .pick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(8.5rem,100%),1fr));gap:.4rem;overflow:auto;max-height:min(40dvh,20rem);padding:4px;overscroll-behavior:contain}.glass-pick-sheet.price-list .pick-grid{grid-template-columns:repeat(auto-fill,minmax(4.7rem,1fr))}
html body .glass-pick-sheet button[aria-pressed=true]{border-color:currentColor;background:linear-gradient(165deg,#b4b1cc52,#a69caf1b);font-weight:700}.glass-pick-sheet button[aria-pressed=true]::before{content:'✓ ';font-size:.8em}
html body :is(.glass-pick-sheet button,.glass-pick-sheet input,.glass-pick-trigger):focus-visible{outline:2px solid currentColor;outline-offset:1px}

/* One surface for one action. The highlight stays inside the menu rim. */
html[data-theme] body header .house-tools,
html[data-theme] #top .home-utilities .house-tools{padding:0;border:0;box-shadow:none!important;background:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html[data-theme] body header .house-tools > .index-key{isolation:isolate;box-sizing:border-box;overflow:hidden!important;min-height:44px;gap:.6rem;padding:0 1rem;border-radius:999px;border:1px solid var(--index-edge);background:linear-gradient(155deg,rgba(179,188,203,.16),transparent 60%),color-mix(in srgb,var(--index-panel) 79%,transparent)!important;box-shadow:inset 0 1px rgba(255,255,255,.32),0 2px 7px #0e122317!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
html[data-theme] body header .house-tools > .index-key::before{inset:0;transform:none!important;border-radius:inherit;background:linear-gradient(160deg,#ffffff28,transparent 72%)!important;box-shadow:none!important}
html[data-theme] body header .house-tools > .index-key:focus-visible{outline:2px solid currentColor;outline-offset:3px}
html[data-theme] body header .index-key i{width:.9rem;height:.37rem;margin:0;transform:none}
@media(max-width:850px){html[data-theme] #top .home-utilities{padding:0;gap:.4rem;background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}}

.notes-subjects{display:flex;flex-wrap:wrap;gap:.2rem 1.25rem;margin-block:1.5rem 2.5rem}
.notes-subjects a,.notes-list a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.2em}
.field-guide .notes-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:.8rem 1.75rem;list-style:none;padding:0;margin:1.25rem 0}
.notes-list li{border-top:1px solid var(--index-edge);padding-top:.4rem}
.field-guide .notes-list p{font-size:.95rem;margin:0;max-width:45ch}

/* The Lab masthead stays dark in both appearances. */
html[data-theme] body.lab-page .house-header .house-tools > .index-key {
  color: #faf6f4 !important;
  background: linear-gradient(155deg,#b5adbe30,transparent 68%),#252432dd !important;
  border-color: #ddd0e24a;
}
.correspond h1 { text-wrap: balance; }
.correspond .letter-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem 1.25rem; }
.letter .copy-letter {
  font: inherit;
  color: var(--index-soft);
  background: transparent;
  border: 0;
  text-decoration: underline;
  text-underline-offset: .24em;
  cursor: pointer;
  min-height: 44px;
  padding: 0;
}
.letter output:empty { display: none; }
.letter #project-prompt { margin: .3rem 0 .6rem; max-width: 54ch; line-height: 1.45; }
@media(max-width:700px) {
  .correspond { padding-top: 1.35rem; gap: 1.15rem; }
  .correspond h1 { font-size: clamp(2.6rem,11vw,3.45rem); margin: .22em 0; }
  .correspond-intro { margin: .65rem 0; line-height: 1.5; }
  .correspond > div > p:last-child { font-size: .84rem; margin: .4rem 0 0; }
}
.notes-index .notes-subjects { border-block: 1px solid var(--index-edge); padding: .35rem 0; margin: 1.5rem 0 0; }
.notes-index .guide-section { grid-template-columns: minmax(0,.8fr) minmax(0,1.4fr); gap: .9rem clamp(2rem,6vw,6rem); }
.notes-index .guide-section > p { grid-column: 1; max-width: 34ch; }
.notes-index .notes-list { grid-column: 2; grid-row: 1 / span 2; display: block; margin: 0; }
.notes-index .notes-list li { padding: .45rem 0 .85rem; }
.notes-index .notes-list li:first-child { border: 0; padding-top: 0; }
@media(max-width:700px) {
  .notes-index .guide-section { display: block; }
  .notes-index .guide-section > p { margin: .6rem 0 1.2rem; }
  .notes-index .notes-subjects { gap: 0 1.2rem; }
}

.client-opening {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.85fr);
  align-items: center;
  gap: clamp(2rem,6vw,6rem);
  margin-bottom: clamp(2rem,6vw,5rem);
}
.client-opening .guide-intro { margin: 0; }
.client-opening .guide-intro > p { color: var(--index-soft); max-width: 46ch; line-height: 1.55; }
.client-links { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem 1.3rem; }
.client-links a { display: inline-flex; gap: .45em; align-items: center; min-height: 44px; text-underline-offset: .22em; }
.client-opening .client-links a:first-child {
  background: var(--index-glass); color: var(--index-ink);
  border: 1px solid var(--index-edge); border-radius: 2rem;
  box-shadow: inset 0 1px #ffffff60; padding: .5rem 1.05rem; text-decoration: none;
}
.client-proof { margin: 0; min-width: 0; }
.client-proof > a { display: grid; place-items: center; }
.client-proof img { display: block; max-width: 100%; object-fit: contain; }
.painting-proof img { width: auto; height: clamp(11rem,30vw,24rem); }
.studio-proof > img { box-sizing:border-box; padding: clamp(1.3rem,4vw,3rem); background: linear-gradient(135deg,#28354b,#151d2d); border-radius: .3rem; }
.studio-proof img { width: 100%; height:clamp(8rem,19vw,15rem); }
.client-proof figcaption { margin-top: .65rem; color: var(--index-soft); font-size: .85rem; line-height: 1.45; }
.painting-proof figcaption { text-align: center; }
.letter .reply-note { padding-top: 1rem; margin: 1rem 0 0; border-top: 1px solid var(--index-edge); font-size: .92rem; color: var(--index-soft); }
.reply-note strong { display: block; color: var(--index-ink); margin-bottom: .3rem; }
@media(max-width:700px) {
  .client-opening { grid-template-columns: 1fr; gap: 1.25rem; }
  .client-guide .guide-intro h1 { font-size: clamp(2.65rem,10vw,3.8rem); text-wrap: balance; }
  .client-links { gap: .25rem .9rem; }
}

.house-directory { display: grid; gap: 1.2rem; }
.house-directory h3 {
  margin: 0 0 .25rem;
  font: 500 .77rem/1.45 HouseSans,Arial,sans-serif;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--index-soft);
}
#house-index .directory-links {
  display: flex; flex-wrap: wrap; gap: .1rem 1.2rem;
  padding: 0; background: none; border: 0; box-shadow: none;
}
#house-index .directory-links a, .guide-trail a, .section-contents a {
  display: inline-flex; align-items: center; min-height: 44px;
  text-underline-offset: .23em; color: inherit;
}
.directory-links b {font-weight:500}
#house-index a[aria-current=page] {text-decoration:underline;text-underline-offset:.23em}
.section-contents {
  width:min(calc(100% - var(--edge)*2),83rem);margin:0 auto 1.25rem;
  border-block:1px solid var(--index-edge);padding:.2rem 0;
  display:flex;flex-wrap:wrap;gap:.1rem clamp(1rem,3vw,3rem);
}
.archive-main>.section-contents {width:100%}
.section-contents a {gap:.45rem}.section-contents span,.guide-trail span {color:var(--index-soft)}
.guide-trail {display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;font-size:.88rem}
@media(min-width:1100px) {
  html.has-house-index .house-header:has(.house-nav) .house-tools,
  html.has-house-index #top .home-utilities .house-tools {display:flex}
  html body .house-header:has(.house-nav),html.has-house-index body#top .site-header {
    grid-template-columns:minmax(9.5rem,1fr) minmax(0,53rem) minmax(9.5rem,1fr);
  }
}
@media(max-width:480px){
  #house-index{padding:1rem}
  #house-index h2{font-size:2rem;margin:.6em 0}
  .house-directory{gap:.7rem}
  #house-index .index-rooms{gap:0 .5rem}
  #house-index .index-rooms a{padding:.5rem .25rem}
}

/* Open the directory from the header, keeping its search field in place while results scroll. */
html[data-theme] #house-index[open] {
  position:fixed;inset:0;margin:0;
  width:100%;max-width:none;height:100dvh;max-height:none;
  display:flex;flex-direction:column;overflow:hidden;padding:clamp(1rem,2.6vw,1.8rem);
  box-sizing:border-box;gap:.65rem;border-radius:1.6rem;
  background:radial-gradient(ellipse at 82% -26%,#bb8baa36,transparent 59%),var(--index-panel)!important;
}
#house-index #index-title {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
#house-index .index-top{flex:none}
#house-index .house-finder{position:relative;display:flex;align-items:center;flex:none;gap:.4rem;border:1px solid var(--index-edge);border-radius:3rem;background:linear-gradient(150deg,#cbb4cc20,transparent 60%);box-shadow:inset 0 1px #ffffff59;padding:0 .75rem 0 2.7rem;color:var(--index-ink)}
.house-finder::before{content:'';position:absolute;left:1rem;top:50%;width:.72rem;height:.72rem;border:1.6px solid currentColor;border-radius:50%;transform:translateY(-65%)}
.house-finder::after{content:'';position:absolute;left:1.72rem;top:55%;width:.39rem;height:1.6px;background:currentColor;transform:rotate(45deg);transform-origin:left}
.house-finder:focus-within{outline:2px solid var(--index-soft);outline-offset:2px}
#house-index #house-query{appearance:none;color:inherit;font:inherit;width:100%;min-width:0;min-height:48px;padding:0;background:none;border:0;outline:0}
#house-query::-webkit-search-cancel-button{display:none}
#house-index .finder-clear,#house-index .house-matches button{color:inherit;background:transparent;border:0;text-decoration:underline;min-height:44px;font:inherit;cursor:pointer}
#house-index .directory-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:.35rem .3rem;scrollbar-width:thin}
#house-index .house-directory[hidden],#house-index .house-matches[hidden],#house-index .finder-clear[hidden]{display:none!important}
#house-index .house-matches p{margin:.4rem 0;color:var(--index-soft);font-size:.87rem}
#house-index .house-matches nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.15rem}
#house-index .house-matches a{display:grid;align-content:start;gap:.22rem;padding:.7rem .4rem;border-top:1px solid var(--index-edge);color:inherit;text-decoration:none}
.house-matches a small{letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;color:var(--index-soft)}
.house-matches a span{font-size:.85rem;line-height:1.45;color:var(--index-soft)}
.house-matches a:is(:hover,:focus-visible) b{text-decoration:underline;text-underline-offset:.22em}
#house-index .dialog-mode{align-self:flex-start;flex:none;margin:0;min-height:36px}
@media(min-width:680px){#house-index .house-directory{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem 1.8rem}#house-index .house-directory>section:last-child{grid-column:1/-1;border-top:1px solid var(--index-edge);padding-top:.8rem}}
@media(max-width:600px){#house-index .house-matches nav{grid-template-columns:1fr}#house-index .index-rooms a{padding-inline:.35rem}}
@media(max-height:480px){html[data-theme] #house-index[open]{top:5px;max-height:calc(100dvh - 10px);gap:.2rem;padding:.55rem .85rem}}
#house-index .finder-ideas,#house-index .finder-filters{display:flex;flex-wrap:wrap;gap:.3rem .45rem;margin:0 0 .8rem}
#house-index .finder-ideas[hidden],#house-index .finder-filters:empty{display:none}
#house-index :is(.finder-ideas,.finder-filters) button{align-items:center;border-radius:2rem;min-height:36px;padding:.35rem .8rem;border:1px solid var(--index-edge);color:var(--index-ink);background:linear-gradient(150deg,#c3b6c31a,transparent);text-decoration:none;font:500 .83rem/1.25 HouseSans,sans-serif;cursor:pointer}
#house-index .finder-filters [aria-pressed=true]{box-shadow:inset 0 1px #ffffff70;border-color:var(--index-soft)}
@media(pointer:coarse){#house-index :is(.finder-ideas,.finder-filters,.dialog-mode) button,#house-index .dialog-mode{min-height:44px}}

/* Expanded navigation occupies the header and the viewport as a single surface. */
html[data-theme] #house-index[open]{
  --finder-edge:clamp(1rem,5vw,6rem);
  display:grid;
  grid-template-columns:minmax(3.2rem,1fr) minmax(0,55rem) minmax(3.2rem,1fr);
  grid-template-rows:auto minmax(0,1fr) auto;
  column-gap:clamp(.75rem,2vw,2.5rem);
  row-gap:clamp(.9rem,2.4vh,1.8rem);
  inset:0; width:100%;height:100vh;height:100dvh;max-height:none;
  padding:max(env(safe-area-inset-top),1.2rem) var(--finder-edge) max(env(safe-area-inset-bottom),1rem);
  border:0;border-radius:0;box-shadow:none;overflow:hidden;
  background:radial-gradient(ellipse at 0% -12%,#80749236,transparent 54%),
    radial-gradient(ellipse at 98% 4%,#ab759933,transparent 48%),var(--index-panel)!important;
}
html:has(#house-index[open]){overflow:hidden}
#house-index[open] .index-top{display:contents}
#house-index .index-top>a{grid-area:1/1;align-self:center;justify-self:start;display:grid;place-items:center;min-height:44px}
#house-index .index-top img{width:clamp(3.2rem,5.2vw,4.6rem);height:auto;object-fit:contain}
html[data-theme=light] #house-index .index-top img{filter:brightness(.15)}
#house-index .index-close{grid-area:1/3;align-self:center;justify-self:start;min-height:44px;width:44px}
#house-index .house-finder{grid-area:1/2;align-self:center}
#house-index .directory-scroll{grid-area:2/2;align-self:stretch;padding:.3rem .25rem 1rem}
#house-index .dialog-mode{grid-area:3/2;justify-self:start}
#house-index .house-directory h3{font-size:.69rem;margin-bottom:.75rem}
#house-index .house-directory{gap:1.5rem 2.4rem}
#house-index .index-rooms{display:flex;flex-direction:column}
#house-index .index-rooms a{border:0;border-radius:.85rem;gap:.15rem;padding:.55rem .65rem}
#house-index .index-rooms b{font:400 clamp(1.55rem,2.8vw,2.5rem)/1.1 HouseSerif,Georgia,serif;letter-spacing:-.035em}
#house-index .index-rooms small{font-size:.84rem}
#house-index .house-directory section:nth-child(2) .directory-links{display:grid;gap:0}
#house-index .directory-links a{text-decoration:none}
#house-index .directory-links a:is(:hover,:focus-visible){text-decoration:underline}
#house-index .finder-contact{display:inline-flex;align-items:center;min-height:44px;margin:.6rem 0 0;text-underline-offset:.2rem}
@media(min-width:680px){
  #house-index .house-directory>section:nth-child(2){border-left:1px solid var(--index-edge);padding-left:clamp(1rem,2.5vw,2rem)}
}
@media(max-width:679px){
  html[data-theme] #house-index[open]{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr) auto;gap:.6rem; padding:max(.65rem,env(safe-area-inset-top)) 1rem max(.4rem,env(safe-area-inset-bottom))}
  #house-index .index-top img{width:3rem}
  #house-index .house-finder{grid-area:2/1/3/-1}
  #house-index .directory-scroll{grid-area:3/1/4/-1}
  #house-index .dialog-mode{grid-area:4/1/5/-1}
  #house-index .house-directory{gap:1rem}
  #house-index .index-rooms{display:grid;grid-template-columns:1fr 1fr}
  #house-index .index-rooms a{padding:.45rem 0}
}
@media(prefers-reduced-motion:no-preference){
 html:not(.motion-paused) #house-index[open]{animation:finder-expand .28s cubic-bezier(.2,.78,.24,1) both}
 @keyframes finder-expand{from{opacity:.35;clip-path:inset(0 0 90% round 0 0 2rem 2rem)}to{opacity:1;clip-path:inset(0 round 0)}}
}

/* The department strip is a native horizontal scroller inside the full-page directory. */
#house-index .house-directory { grid-template-columns: minmax(0,1fr); gap: 1.1rem; }
#house-index .house-directory > section { min-width: 0; }
#house-index .house-directory > section:nth-child(2) { border: 0; padding: 0; }
.directory-heading { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
#house-index .directory-heading h3 { margin:0; }
#house-index .index-rooms {
  position:relative; display:flex; flex-direction:row; align-items:stretch;
  overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain;
  scroll-snap-type:x proximity; scrollbar-width:thin; scrollbar-color:var(--index-edge) transparent;
  padding:.35rem .15rem .65rem; gap:clamp(.75rem,1.7vw,1.3rem);
}
#house-index .index-rooms > a {
  display:grid; grid-template-rows:auto auto auto; align-content:start; gap:.3rem;
  border-radius:.4rem; padding:.15rem; flex:0 0 29%; min-width:0; scroll-snap-align:start;
}
#house-index .index-rooms > a::before { content:none; }
#house-index .index-rooms > a:focus-visible {outline-offset:-2px}
#house-index .index-rooms b {font-size:clamp(1.3rem,2vw,1.85rem);line-height:1.12}
#house-index .index-rooms small {font-size:.8rem}
#house-index .subject-visual {
  position:relative; display:grid; place-items:center; width:100%; overflow:hidden; isolation:isolate;
  aspect-ratio:2.05; border-radius:.55rem; margin-bottom:.25rem; box-shadow:inset 0 0 0 1px #ffffff25;
}
.subject-visual img,.subject-visual svg {display:block;object-fit:contain;pointer-events:none}
.visual-studio {background:linear-gradient(125deg,#1e2536,#34435b)}
.visual-studio img {width:80%;max-height:78%}
.visual-systems {background:radial-gradient(ellipse at 60% 45%,#50506b,#151b2c 77%)}
.visual-systems img {height:82%;filter:grayscale(1) brightness(1.85)}
.visual-artists {background:#eae5dd}
.visual-artists img {width:100%;height:100%;object-fit:cover;object-position:50% 49%}
.visual-shop {color:#f0d9b7;background:radial-gradient(ellipse at 68% 68%,#786255,#302939 73%)}
.visual-shop svg {width:110%;height:85%}
.subject-controls {display:flex;gap:.35rem}
#house-index .subject-controls button {
  width:44px;height:44px;min-height:44px;border-radius:50%;border:1px solid var(--index-edge);
  color:var(--index-ink);background:linear-gradient(155deg,#d7d1e431,transparent 67%);cursor:pointer;font:inherit;
}
.subject-controls button:disabled {opacity:.35;cursor:default}
#house-index .directory-projects .directory-links {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.1rem 1rem}
#house-index .directory-projects a {gap:.6rem;line-height:1.3;border-bottom:1px solid var(--index-edge);padding:.35rem 0}
.route-icon {flex:0 0 24px;color:var(--index-soft)}
#house-index .directory-reading {border-top:0;padding-top:0}
#house-index .finder-filters {flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:.2rem}
#house-index .finder-filters button {flex:none}
@media(max-width:679px){
  #house-index .index-rooms > a{flex-basis:72%}
  #house-index .directory-projects .directory-links {grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem .75rem}
}
@media(prefers-reduced-motion:no-preference){
 html:not(.motion-paused) .subject-visual::after{
   content:"";position:absolute;inset:-30%;pointer-events:none;
   background:linear-gradient(110deg,transparent 36%,#f9e1e117 47%,#fff4 49%,transparent 55%);
   transform:translateX(-90%);opacity:0;
 }
 html:not(.motion-paused) #house-index .index-rooms a:is(:hover,:focus-visible) .subject-visual::after{
   animation:subject-reflection .75s ease-out;
 }
 @keyframes subject-reflection {15%{opacity:1}to{transform:translateX(90%);opacity:0}}
}
#house-index .subject-visual > img,#house-index .subject-visual > svg {
  position:absolute;inset:0;margin:auto;display:block;
}
#house-index .visual-artists img {width:100%;height:100%;object-fit:cover;object-position:50% 53%}
#house-index .visual-systems img {width:auto;height:85%}
#house-index .visual-shop svg {width:100%;height:100%}
@supports (animation-timeline: view(inline)) {
 @media(prefers-reduced-motion:no-preference){
  html:not(.motion-paused) #house-index .subject-visual > :is(img,svg){
    animation:rail-light-travel linear both;
    animation-timeline:view(inline);
  }
  @keyframes rail-light-travel {
    from{transform:translateX(-3%) scale(1.07)}
    to{transform:translateX(3%) scale(1.07)}
  }
 }
}

/* Open the studio and shop on a piece of work, with its credit immediately below. */
.archive-main .intro-studio:has(.studio-feature),
.folio-hero.shop-opening {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  align-items:center; gap:clamp(2rem,6vw,6rem);
  padding-block:clamp(2rem,5vw,4.75rem);
}
.archive-main .intro-studio:has(.studio-feature) h1 {font-size:clamp(3rem,5.7vw,5.7rem)}
.shop-opening h1 {font-size:clamp(3rem,6.3vw,6rem);line-height:1.01}
.studio-feature,.shop-work {min-width:0;margin:0}
.studio-feature-image {
  position:relative;display:grid;place-items:end center;isolation:isolate;overflow:hidden;
  aspect-ratio:1.85;padding:5% 6% 0;border-radius:.6rem;
  background:radial-gradient(ellipse at 24% 3%,#e7eaff,transparent 60%),linear-gradient(140deg,#c8d1ef,#a5b8ed 66%,#8ca4e1)
}
.studio-feature-image .feature-monogram {position:absolute;top:6%;left:6%;width:8%;height:auto}
.studio-feature-image .feature-browser {display:block;width:94%;height:auto;transform:translate(3%,9%) rotate(-2deg);box-shadow:0 .6rem 1.7rem #29377540}
.studio-feature figcaption,.shop-work figcaption {display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.15rem .85rem;margin-top:.45rem}
.studio-feature figcaption a,.shop-work figcaption a {display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.22em}
.studio-feature figcaption span,.shop-work figcaption span {font-size:.84rem;color:var(--index-soft);line-height:1.5}
.shop-work-stage {position:relative;isolation:isolate;display:grid;place-items:center;padding:0 4%;overflow:hidden}
.shop-work-stage img {display:block;width:76%;height:auto}
.shop-paper-contour {position:absolute;z-index:-1;top:20%;width:100%;color:var(--index-soft)}
.shop-paper-contour svg{display:block;width:100%;height:auto}
.shop-work figcaption{display:block}.shop-work figcaption span{display:block}
.shop-format.house-row{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(1rem,6vw,6rem)}
.shop-format.house-row h2{font-size:clamp(2rem,3.8vw,3.6rem)}
.archive-main .systems-index a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 .75rem;align-items:center;padding:.5rem .15rem;border-color:var(--index-edge);text-decoration:none}
.systems-index a b{font-weight:500}.systems-index a small{grid-column:1;color:var(--index-soft);font-size:.8rem}.systems-index a span{grid-column:2;grid-row:1 / span 2}
.systems-index a:is(:hover,:focus-visible) b{text-decoration:underline;text-underline-offset:.22em}
@media(max-width:760px){
  .archive-main .intro-studio:has(.studio-feature),.folio-hero.shop-opening{grid-template-columns:1fr;gap:1.4rem;padding-block:1.7rem 1.5rem}
  .shop-opening h1{font-size:clamp(3rem,10vw,4.4rem)}
  .shop-work-stage img{width:auto;max-width:84%;max-height:clamp(12rem,32svh,19rem)}
  .studio-feature figcaption,.shop-work figcaption{display:block}
  .studio-feature figcaption span{display:block}
  .shop-format.house-row{display:block}.shop-format.house-row h2{margin:0 0 .75rem}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .feature-browser{transition:transform .35s ease-out}
  .studio-feature-image:is(:hover,:focus-visible) .feature-browser{transform:translate(3%,5%) rotate(0)}
}
@media(min-width:761px){.shop-work figcaption{width:70%;margin-inline:auto}}
.shop-paper-contour path{stroke-dasharray:1}
@media(prefers-reduced-motion:no-preference){
  .shop-paper-contour path{animation:foldInk 1.4s ease-out backwards;animation-delay:calc(var(--i) * 18ms)}
}

/* Clear glass: the scene supplies the color, the thin silver rims describe the shape. */
@property --glass-edge-a {syntax:'<color>';inherits:true;initial-value:#89a5bb}
@property --glass-edge-b {syntax:'<color>';inherits:true;initial-value:#bba3b1}
header:has(.archive-nav) {
  --nav-ink:#fffaf4; --nav-base:rgb(13 21 32 / .62); --nav-rim:#f4f3ff55;
  --nav-glint:#ffffff69; --nav-shadow:#060b1736;
  --nav-material:radial-gradient(ellipse 32% 120% at var(--reflection-x,25%) -62%,#fff9,transparent),
    linear-gradient(174deg,var(--nav-glint) -25%,transparent 43%),
    linear-gradient(102deg,color-mix(in srgb,var(--glass-edge-a) 32%,transparent),transparent 51%,color-mix(in srgb,var(--glass-edge-b) 34%,transparent)),var(--nav-base);
}
html[data-theme=light] header:has(.archive-nav) {
  --nav-ink:#182029; --nav-base:rgb(250 249 245 / .8); --nav-glint:#fff; --nav-rim:#464f633d; --nav-shadow:#26304025;
}
html[data-theme] .lab-page header:has(.archive-nav) {
  --nav-ink:#fffaf4; --nav-base:rgb(23 24 36 / .64); --nav-glint:#ffffff69; --nav-rim:#f4f3ff55;
}
html[data-theme] body header:has(.archive-nav) :is(.archive-nav,.cart-orb,.index-key),
html[data-theme] #top .home-utilities :is(.cart-orb,.index-key) {
  color:var(--nav-ink)!important; background:var(--nav-material)!important; border:1px solid var(--nav-rim)!important;
  box-shadow:inset 0 1px 0 #ffffffe0,inset 0 -1px 0 color-mix(in srgb,var(--glass-edge-b) 62%,transparent),0 4px 14px -5px var(--nav-shadow)!important;
  -webkit-backdrop-filter:blur(16px) saturate(175%)!important;backdrop-filter:blur(16px) saturate(175%)!important;
}
html[data-theme] body header:has(.archive-nav) .archive-nav>a{color:var(--nav-ink)!important;font-weight:400}
html[data-theme] body header:has(.archive-nav) .archive-nav>[aria-current]{font-weight:550}
html[data-theme] body header:has(.archive-nav) .archive-nav .travel-lens {
  box-sizing:border-box; z-index:0; height:calc(100% - 6px);
  border:1px solid color-mix(in srgb,var(--glass-edge-a) 40%,#ffffff88);
  background:radial-gradient(ellipse at 35% -70%,#fffc,transparent 69%),linear-gradient(170deg,color-mix(in srgb,var(--glass-edge-a) 28%,#ffffff40),transparent 55%,color-mix(in srgb,var(--glass-edge-b) 44%,transparent));
  box-shadow:inset 0 1px 0 #fffd,inset 0 -1px 0 #ffffff50,0 5px 12px -6px var(--nav-shadow);
}
html[data-theme] body header:has(.archive-nav) .archive-nav>a{position:relative;z-index:1}
@media(prefers-reduced-motion:no-preference){
  html:not(.motion-paused) header:has(.archive-nav){transition-property:opacity,transform,translate,--glass-edge-a,--glass-edge-b;transition-duration:.2s,.2s,.2s,.48s,.48s}
}
html[data-theme] body.house-page:not(.lab-page) .house-header {
  position:sticky;top:0;z-index:8;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--ink) 72%,transparent),transparent);
}
html[data-theme=light] body.house-page:not(.lab-page) .house-header{background:linear-gradient(180deg,#f3f0e7c2,transparent)}
.house-header :is(.home-mark,.house-nav,.header-utilities){pointer-events:auto}
html:has(.house-page:not(.lab-page)){scroll-padding-top:5.8rem}
html body .house-header .home-mark{min-width:44px;min-height:44px;align-items:center;justify-content:start}
html body .house-header .home-mark img{width:clamp(4.2rem,5vw,4.85rem);height:auto;display:block}
@media(min-width:1100px){
  html body .house-header:has(.house-nav),html.has-house-index body#top .site-header {
    grid-template-columns:minmax(9.5rem,1fr) minmax(0,46rem) minmax(9.5rem,1fr);
  }
  html body .house-header:has(.house-nav){padding-block:.85rem}
  html #top .site-header>.brand{width:clamp(4.2rem,5vw,4.85rem);height:auto;aspect-ratio:1465/1093}
}
html body .house-header .cart-orb,html #top .home-utilities .cart-orb{width:44px;height:44px;min-width:44px;min-height:44px}
html body .house-header .header-utilities,html #top .home-utilities{gap:.55rem;align-items:center}
@media(max-width:650px){
  html body .house-header .home-mark img,html #top .site-header>.brand img{width:38px;height:38px;object-fit:contain}
  html #top .site-header>.brand{min-width:44px;min-height:44px;align-content:center}
  html body .house-header{padding-inline:1rem}
}
@media(prefers-reduced-transparency:reduce){
  html[data-theme] header:has(.archive-nav){--nav-base:#1c2631}
  html[data-theme=light] body:not(.lab-page) header:has(.archive-nav){--nav-base:#f4f2ed}
}
html[data-theme] header .home-mark img, html[data-theme] #top .site-header>.brand img{filter:drop-shadow(0 1px 2px #08101c70)}
html[data-theme=light] body:not(.lab-page) header .home-mark img,html[data-theme=light] #top .site-header>.brand img{filter:brightness(.12) drop-shadow(0 1px 2px #ffffff9c)}
@media(min-width:851px) and (max-width:1099px) {
  html #top .site-header>.brand{width:59px;height:46px}
  html #top .site-header>.brand img{content:url('/assets/current-wordmark.png')}
}

/* One clear entry to search. Leave room around it and the printed name. */
html body header .house-tools .index-key .search-glyph{display:block;width:17px;height:17px;flex:none}
html[data-theme] body header .house-tools>.index-key{gap:.48rem;padding-inline:.86rem .98rem}
#top .hero-introduction a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.19em;text-decoration-color:color-mix(in srgb,currentColor 50%,transparent)}
#top .hero-introduction a:is(:hover,:focus-visible){text-decoration-color:currentColor}
.reading-prompt{width:min(calc(100% - 2.5rem),76rem);margin:clamp(2.5rem,6vw,5.5rem) auto;display:flex;align-items:baseline;gap:.8rem 3rem;border-top:1px solid var(--index-edge);padding-block:1.15rem;flex-wrap:wrap}
.archive-main>.reading-prompt{width:100%}
.reading-prompt small{font:.7rem/1.4 HouseSans,sans-serif;text-transform:uppercase;letter-spacing:.14em;color:var(--index-soft)}
.reading-prompt a{font:400 clamp(1.25rem,2.6vw,1.9rem)/1.23 HouseSerif,Georgia,serif;color:var(--index-ink);text-underline-offset:.17em}
.reading-prompt a span{font:.8em HouseSans,sans-serif}
/* An etched edge on the opening spread, always behind the real work and type. */
.house-page main :is(.archive-intro,.folio-hero,.case-intro,.guide-cover,.lab-signature,.correspond,.guide-intro:only-child),
.house-page main>.guide-intro,.house-page main>.intro{position:relative;isolation:isolate}
.house-page main :is(.archive-intro,.folio-hero,.case-intro,.guide-cover,.lab-signature,.correspond)::before,
.house-page main>.guide-intro::before,.house-page main>.intro::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;inset:0;
  background:url('/assets/house-spectrum.svg') var(--foil-x,86%) 84% / min(83%,59rem) auto no-repeat;
  mask-image:linear-gradient(105deg,transparent 9%,#0008 40%,#000 82%);
  opacity:.34;
}
.house-page .intro-systems,.house-page .lab-signature{--foil-x:14%}
.house-page main .guide-cover::before{background-position:95% 78%;background-size:63% auto;opacity:.31}
.house-page :is(.archive-intro,.folio-hero,.guide-cover) h1{text-wrap:balance}
.house-page .artist-opening .artist-plate{align-self:center}
.house-page .guide-cover figure{border-bottom:0;align-self:center}
.house-page .guide-cover figure svg{color:var(--index-ink)}
@media(prefers-reduced-motion:no-preference){
  html:not(.motion-paused) .house-page main :is(.archive-intro,.folio-hero,.case-intro,.guide-cover,.lab-signature,.correspond)::before,
  html:not(.motion-paused) .house-page main>.guide-intro::before,html:not(.motion-paused) .house-page main>.intro::before{animation:pull-foil .95s cubic-bezier(.23,.8,.2,1) both}
  @keyframes pull-foil{from{transform:translateY(10px);opacity:0}to{transform:none}}
  .studio-feature-image .feature-browser{transition:transform .42s cubic-bezier(.2,.8,.2,1)}
  @media(hover:hover){.studio-feature-image:is(:hover,:focus-visible) .feature-browser{transform:translateY(-3px)}}
}
@media(max-width:680px){
  .house-page main :is(.archive-intro,.folio-hero,.case-intro,.guide-cover,.lab-signature,.correspond)::before{background-size:120% auto;background-position:50% 50%;opacity:.25}
  .house-page .guide-cover{gap:1rem}.house-page .reading-prompt{display:grid;gap:.5rem}
}
@media print{.house-page main :is(.archive-intro,.folio-hero,.case-intro,.guide-cover,.lab-signature,.correspond)::before{display:none}}

/* A programme of work on one continuous projection surface, with a quiet caption rail. */
#top main .house-reel{width:100%;position:relative;isolation:isolate;overflow:clip;min-height:0!important;height:auto!important;max-width:none;margin:0!important;padding:clamp(3rem,7vw,7rem) max(5vw,calc((100vw - 78rem)/2))!important;box-sizing:border-box}
#top .house-reel .reel-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);align-items:center;gap:clamp(2rem,6vw,6rem)}
#top .house-reel .reel-editorial{position:relative;text-align:left;color:var(--index-ink)}
.reel-editorial>p,.film-credit small{font:500 .74rem/1.4 HouseSans,ArtistSans,sans-serif;letter-spacing:.095em}
#top .house-reel .reel-editorial>p{text-transform:uppercase;color:var(--index-soft);margin:0 0 1.1rem}
#top .house-reel h2{position:static;display:block;letter-spacing:-.055em;line-height:1.01;font:normal 500 clamp(2.8rem,5.6vw,5.8rem)/1 HouseSerif,ArtistSerif,Georgia,serif;margin:0 0 1.1rem;color:inherit;text-wrap:balance}
#top .reel-studio h2{font-family:StudioKufam,HouseSans,sans-serif;text-transform:uppercase;font-weight:900;font-size:clamp(2.55rem,4.75vw,4.9rem)}
#top .house-reel .reel-editorial>div{max-width:35ch;font:normal 400 clamp(1rem,1.4vw,1.22rem)/1.55 HouseSans,ArtistSans,sans-serif;color:var(--index-soft)}
.reel-editorial>a{display:inline-flex;align-items:center;gap:.85rem;min-height:44px;margin-top:1.1rem;text-underline-offset:.25em;color:inherit}
.identity-film{position:relative;isolation:isolate;margin:0;width:100%;min-width:0;padding-bottom:4.3rem;box-sizing:content-box;aspect-ratio:1.85;overflow:hidden}
.film-image{position:absolute;inset:0 0 4.3rem;overflow:hidden;opacity:0;background:radial-gradient(ellipse at 84% 8%,var(--film-light),transparent 72%),var(--film-ground);display:grid;place-items:center}
.film-image::before{content:"";position:absolute;inset:0;background:url('/assets/house-spectrum.svg') center / cover no-repeat;opacity:.4;pointer-events:none}
.film-image.is-showing{opacity:1;z-index:1}
.film-plate{display:grid;place-items:center;width:76%;height:72%;position:relative;color:#f3ece5}
.film-plate>img,.film-plate>svg{width:100%;height:100%;object-fit:contain;max-height:clamp(100px,13vw,190px)}
.reel-systems .film-plate{width:54%;color:#bfe3eb}
.film-image[data-name="Hyam El Hachem"] .film-plate{width:69%}
.sequence-type,.sequence-cedars{font:500 clamp(2.6rem,5vw,4.7rem)/1 Georgia,serif}
.sequence-cedars{text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(1.2rem,2.6vw,2.3rem)}
.identity-film figcaption{position:absolute;inset:auto 0 0;height:4.3rem;display:flex;align-items:center;justify-content:space-between;gap:.65rem;border-top:1px solid var(--index-edge);text-align:left;color:var(--index-ink)}
.film-credit strong,.film-credit small{display:block}.film-credit strong{font:500 1rem/1.35 HouseSans,ArtistSans,sans-serif}.film-credit small{color:var(--index-soft);letter-spacing:0;font-size:.82rem}
.film-switch{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--index-edge);background:transparent;color:inherit;cursor:pointer}.film-switch[hidden]{display:none}.film-switch svg{width:16px;height:16px;stroke-width:1.5}
@media(prefers-reduced-motion:no-preference){html:not(.motion-paused) .film-image{transition:opacity .65s ease}html:not(.motion-paused) .film-plate{transition:transform .9s cubic-bezier(.18,.76,.23,1);transform:translateY(7px) scale(.97)}html:not(.motion-paused) .is-showing .film-plate{transform:none}}
@media(max-width:740px){#top .house-reel .reel-grid{grid-template-columns:1fr;gap:1.2rem}#top .house-reel .reel-editorial>div{max-width:44ch}#top main .house-reel{padding:2.7rem 1.25rem!important}.identity-film{aspect-ratio:1.8}}
.film-image[data-name="FIXABL"] img{max-width:76%}
.film-image[data-name="Locus"] .locus-arcs{transform-origin:44px 44px}
@media(prefers-reduced-motion:no-preference){
  html:not(.motion-paused) .is-showing[data-name="Locus"] .locus-arcs{animation:orbit-reel 3.2s ease-in-out both}
  html:not(.motion-paused) .is-showing[data-name="FIXABL"] .film-plate img{animation:resolve-mark 1s cubic-bezier(.22,.68,.3,1) both}
  html:not(.motion-paused) .reel-systems .is-showing:not([data-name="Locus"]) svg :is(path,rect){animation:trace-system 1.7s ease-out both;stroke-dasharray:900}
  .identity-film:has(.film-switch[aria-pressed=true]) *{animation-play-state:paused!important}
  @keyframes orbit-reel{from{transform:rotate(-125deg)}to{transform:rotate(0)}}
  @keyframes resolve-mark{from{clip-path:inset(0 85% 0 0);translate:-4% 0}to{clip-path:inset(0);translate:0}}
  @keyframes trace-system{from{stroke-dashoffset:900}to{stroke-dashoffset:0}}
}

/* One visual gallery, followed by a compact index with the project scope and next step. */
.work-directory{padding-block:clamp(1.5rem,4vw,3rem);border-top:1px solid var(--index-edge)}
.work-directory h2,.customer-reading h2{font:400 clamp(1.75rem,3.7vw,3.25rem)/1.09 HouseSerif,Georgia,serif;letter-spacing:-.035em;margin:0}
.work-directory ul,.customer-reading ul{list-style:none;margin:1rem 0 0;padding:0}
.work-directory li{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.45fr) minmax(10rem,.8fr);gap:1.7rem;align-items:baseline;border-top:1px solid var(--index-edge);padding:.9rem 0}
.work-directory li:target{border-top:2px solid var(--index-ink)}
.archive-main .work-directory h3{font:500 1.07rem/1.4 HouseSans,Arial,sans-serif;letter-spacing:0}
.work-directory li p{font-size:.96rem;line-height:1.5}
.work-directory a,.customer-reading a{display:inline-flex;align-items:center;gap:.45em;min-height:44px;text-underline-offset:.24em}
.customer-reading{width:min(calc(100% - 2.5rem),78rem);margin:clamp(2rem,5vw,4.75rem) auto;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:1.8rem;border-top:1px solid var(--index-edge);padding-top:1.5rem}
.archive-main>.customer-reading{width:100%}.customer-reading ul{margin:0}.customer-reading li+li{border-top:1px solid var(--index-edge)}
.customer-reading a{padding-block:.45rem;color:var(--index-ink)}.customer-reading a span{flex:none}
@media(min-width:851px) and (max-width:1099px){html.has-house-index body .house-header:has(.house-nav){display:grid;grid-template-columns:minmax(8.75rem,1fr) auto minmax(8.75rem,1fr);align-items:center;gap:.5rem}.house-header .header-utilities{justify-self:end}.house-header .house-nav{margin:0}}
@media(max-width:700px){.work-directory li{grid-template-columns:1fr;gap:.2rem;padding:.95rem 0}.customer-reading{grid-template-columns:1fr;gap:.9rem}.work-directory .archive-stage{margin:0}}
.review-page :is(#review-empty,#quote-handoff)[hidden]{display:none!important}
.review-page #review-empty p,.review-page #quote-handoff p{max-width:54ch;line-height:1.55}
@media print{.review-page :is(.house-return,#quote-handoff){display:none!important}}

.cart-item pre{overflow-wrap:anywhere}

/* Navigation arrows are drawn in ink, independent of the platform emoji font. */
.direction-mark {--angle:0deg;display:inline-block!important;position:relative;width:.92em;height:.92em;min-width:.92em;flex:none;vertical-align:-.07em;line-height:1;transform:rotate(var(--angle));color:inherit}
.direction-mark::before,.direction-mark::after{content:"";display:block;position:absolute;box-sizing:border-box;pointer-events:none}
.direction-mark::before{left:6%;top:calc(50% - .055em);width:81%;height:.11em;min-height:1px;background:currentColor}
.direction-mark::after{right:9%;top:24%;width:52%;height:52%;border-top:.11em solid currentColor;border-right:.11em solid currentColor;transform:rotate(45deg)}
.arrow-ne{--angle:-45deg}.arrow-se{--angle:45deg}.arrow-sw{--angle:135deg}.arrow-nw{--angle:-135deg}.arrow-left{--angle:180deg}.arrow-up{--angle:-90deg}.arrow-down{--angle:90deg}
html[data-theme] .lab-imprint .lab-parent::before{content:none}
/* The same colophon closes the site in both appearances. */
html body footer.house-end,html #top footer.house-end#contact{
  display:block!important;box-sizing:border-box;width:100%;max-width:none;margin:clamp(2.5rem,5vw,5rem) 0 0;
  padding:clamp(2rem,4vw,3.6rem) max(5vw,calc((100vw - 76rem)/2)) max(1.5rem,env(safe-area-inset-bottom))!important;
  height:auto!important;min-height:0!important;text-align:left;color:var(--index-ink)!important;background:linear-gradient(160deg,color-mix(in srgb,var(--index-panel) 94%,#b0a1ae),var(--index-panel) 60%)!important;
  border:0;border-top:1px solid var(--index-edge);font:400 1rem/1.5 HouseSans,ArtistSans,Arial,sans-serif;
}
.house-end .foot-wrap{width:100%;display:grid;align-items:start;grid-template-columns:minmax(12rem,1fr) minmax(13rem,1fr) minmax(16rem,1.1fr);gap:2rem 4vw}
.house-end .foot-identity img{display:block;width:5rem;height:auto}
html[data-theme=light] .house-end .foot-identity img{filter:brightness(.15)}
.house-end .foot-identity p,.house-end .foot-legal p{margin:.75rem 0 0;font:400 .85rem/1.45 HouseSans,ArtistSans,sans-serif;color:var(--index-soft)}
.house-end .foot-contact{display:grid;justify-items:start;gap:.35rem}
.house-end .foot-wrap .foot-enquire{display:inline-flex;align-items:center;justify-content:start;gap:.55em;width:fit-content;min-height:44px;appearance:none;background:none;border:0;padding:0;color:var(--index-ink);text-decoration:none;font:400 clamp(1.65rem,2.6vw,2.35rem)/1.18 HouseSerif,ArtistSerif,Georgia,serif;cursor:pointer}
.foot-enquire .direction-mark{font-size:.62em}
.house-end .foot-email,.house-end .foot-directory a,.house-end .foot-legal a{display:inline-flex;align-items:center;min-height:44px;padding:0;color:var(--index-ink);font:500 .91rem/1.4 HouseSans,ArtistSans,sans-serif;text-decoration:none;text-underline-offset:.2em}
.house-end .foot-wrap :is(a,button):hover{text-decoration:underline;text-underline-offset:.18em}
.house-end nav.foot-directory{display:grid;grid-template-columns:1.22fr 1fr;gap:1rem;margin:0;padding:0;border:0;background:none;box-shadow:none}
.foot-directory>div{display:grid;align-content:start;justify-items:start}
.house-end .foot-preferences{grid-column:1/-1;display:flex;align-items:center;gap:1rem}
html body .house-end .footer-modes:not([hidden]){margin:0!important}
.house-end .foot-preferences>.motion-toggle{display:inline-flex;align-items:center;gap:.55rem;min-height:44px;background:none;border:0;color:var(--index-soft);font:.82rem HouseSans,ArtistSans,sans-serif;cursor:pointer;padding:0}
.foot-preferences .motion-icon svg{width:15px;height:15px}
.house-end .foot-legal{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--index-edge);padding-top:.75rem}
.house-end .foot-legal p{margin:0;font-size:.74rem}.house-end .foot-legal a{font-size:.8rem}
@media(max-width:760px){
 html body footer.house-end,html #top footer.house-end#contact{padding:1.6rem max(1.2rem,5vw) 1.15rem!important}
 .house-end .foot-wrap{grid-template-columns:1fr;gap:1rem}
 .house-end .foot-identity{display:flex;align-items:center;gap:1.15rem}
 .house-end .foot-identity img{width:3.7rem}
 .house-end .foot-identity p{margin:0;max-width:23ch}
 .house-end .foot-contact{gap:0;padding:.55rem 0;border-block:1px solid var(--index-edge)}
 .house-end .foot-email{min-height:36px}
 .house-end .foot-directory{max-width:29rem}
 .house-end .foot-legal{align-items:start;gap:.6rem}.house-end .foot-legal a{min-height:44px;align-items:start;max-width:12ch}
}
@media print{footer.house-end{display:none!important}}
.guide-cover .note-specimen{display:grid;gap:.65rem;border:0}
.note-specimen img{display:block;width:100%;aspect-ratio:1.65;object-fit:contain}
.specimen-fixabl img{background:linear-gradient(90deg,#2b3990 78%,#f26522 78%);padding:12%}
.specimen-gift img{object-fit:cover;object-position:left;width:100%;aspect-ratio:1.6}
.format-pair{align-self:center;border-block:1px solid var(--index-edge);padding:.35rem 0}
.format-pair p{display:grid;gap:.2rem;margin:.8rem 0 1.05rem}
.format-pair strong{font:400 clamp(1.6rem,3vw,2.5rem)/1.1 HouseSerif,Georgia,serif}.format-pair span{color:var(--index-soft)}
@media(max-width:680px){.guide-cover .note-specimen{display:flex;align-items:center}.note-specimen img{max-width:50%}.format-pair{display:flex;justify-content:space-between;gap:1rem}}
@media(max-width:760px){html #top footer.house-end#contact .footer-nav-space{display:none!important}}

/* A print of the home hero's wind field carries its colour between spreads. */
[data-optical-field] {
  position: relative;
  isolation: isolate;
  --plume-opacity: .71;
  --plume-hue: 0deg;
  --plume-position: 70% 63%;
  --plume-size: 100% 100%;
}
[data-optical-field]::after {
  content: "";
  position: absolute;
  inset: 3% 3.5%;
  z-index: -1;
  pointer-events: none;
  border-radius: inherit;
  background: url('/assets/house-plume.webp') var(--plume-position) / var(--plume-size) no-repeat;
  opacity: var(--plume-opacity);
  filter: hue-rotate(var(--plume-hue));
  mask-image: linear-gradient(104deg, transparent, #0006 25%, #000 68%);
}
.intro-systems, .reel-systems { --plume-hue: -39deg; --plume-position: 35% 80%; }
.artist-opening, .lab-signature { --plume-hue: 20deg; }
.shop-opening { --plume-hue: 76deg; }
[data-optical-field]:is(.guide-intro,.guide-cover,.case-intro,.client-opening,.intro,.correspond) {
  --plume-opacity: .51;
  --plume-position: 98% 100%;
  --plume-size: 84% 86%;
}
[data-optical-field].house-end {
  --plume-opacity: .45;
  --plume-position: 93% 100%;
  --plume-size: 85% 94%;
}
html[data-theme=light] [data-optical-field]::after { mix-blend-mode: multiply; }
html[data-theme=light] .lab-signature::after { mix-blend-mode: normal; }
header .travel-lens::before {
  content: ""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background: url('/assets/house-plume.webp') center / 135% 170% no-repeat;
  opacity:.56;
}
@media (max-width:680px) {
  [data-optical-field]::after { inset:2% 2.5%; mask-image:linear-gradient(135deg,transparent,#0008 37%,#000 82%); }
  [data-optical-field] { --plume-size: 100% min(100%, 18rem); --plume-position: 50% 55%; }
  [data-optical-field]:is(.guide-intro,.guide-cover,.case-intro,.client-opening,.intro,.correspond,.house-end) { --plume-size: 100% min(100%, 14rem); --plume-position: 50% 72%; }
}
@media (prefers-reduced-motion:no-preference) {
  html:not(.motion-paused) [data-optical-field].light-in-view::after {
    animation: house-plume-drift 12s ease-in-out infinite alternate;
  }
  @keyframes house-plume-drift {
    from { transform:translate(-1.8%,.6%) rotate(-.65deg); }
    to { transform:translate(1.8%,-.6%) rotate(.65deg); }
  }
}
@media print, (forced-colors:active) {
  [data-optical-field]::after, header .travel-lens::before { display:none; }
}

/* Guide shelves: choose a subject, read a decision, follow its existing next step. */
.house-page {
  --reading-surface: color-mix(in srgb, var(--index-panel) 78%, #10151d);
  --reading-line: color-mix(in srgb, var(--index-ink) 17%, transparent);
  --reading-accent: #a5c7ca;
}
html[data-theme=light] .house-page {
  --reading-surface: color-mix(in srgb, var(--index-panel) 55%, white);
  --reading-accent: #47676d;
}
.reading-cards, .service-cards, .subject-shelf {
  display:grid;gap:clamp(.8rem,1.65vw,1.35rem);align-items:stretch;
}
.reading-cards { grid-template-columns:repeat(3,minmax(0,1fr));margin-block:clamp(1.6rem,3vw,3rem); }
.reading-cards:has(>:nth-child(4)) {grid-template-columns:repeat(2,minmax(0,1fr))}
.chapter-cards {width:min(calc(100% - 2.5rem),78rem);margin-inline:auto}
.reading-cards > :is(.guide-section,.house-row), .reading-spread .service-cards > div, .subject-shelf > a {
  box-sizing:border-box;min-width:0;margin:0;width:auto;border:1px solid var(--reading-line);
  border-radius:clamp(1rem,1.7vw,1.6rem);background:var(--reading-surface);
}
.reading-cards > :is(.guide-section,.house-row), .reading-spread .service-cards > div {
  display:flex;flex-direction:column;align-items:flex-start;gap:.85rem;padding:clamp(1.05rem,2vw,1.85rem);
  scroll-margin-top:6.25rem;
}
.reading-cards > :is(.guide-section,.house-row) h2 {
  font:400 clamp(1.65rem,2.45vw,2.55rem)/1.08 HouseSerif,Georgia,serif;letter-spacing:-.035em;
  margin:0;max-width:24ch;color:var(--index-ink);text-wrap:balance;
}
.reading-cards > section p, .reading-spread .service-cards dd {
  margin:0;max-width:58ch;font:400 1rem/1.56 HouseSans,Arial,sans-serif;color:var(--index-soft);
}
.reading-cards > section p+p {margin-top:.65rem}
.reading-cards > section > a,.reading-cards .client-links {margin-top:auto}
.reading-cards > section > a {display:inline-flex;align-items:center;min-height:44px;text-underline-offset:.22em}
.reading-cards > section > div > :is(a,.client-links) {margin-top:.8rem}
.reading-study {
  display:block;width:clamp(6.3rem,9vw,9.3rem);height:auto;flex:none;color:var(--reading-accent);
  margin:0 0 .35rem -.45rem;
}
.reading-cards > :nth-child(3n+2) .reading-study,.service-cards>:nth-child(3n+2) .reading-study {color:color-mix(in srgb,var(--reading-accent) 48%,#b78db3)}
.reading-cards > :nth-child(3n) .reading-study,.service-cards>:nth-child(3n) .reading-study {color:color-mix(in srgb,var(--reading-accent) 54%,#af8d60)}
.reading-spread:has(.service-cards) {display:block}
.reading-spread:has(.service-cards)>h2 {margin-bottom:1.25rem;max-width:26ch}
.reading-spread .service-cards {grid-template-columns:repeat(6,minmax(0,1fr))}
.reading-spread .service-cards > div {grid-column:span 2;gap:.25rem}
.reading-spread .service-cards > div:nth-last-child(-n+2) {grid-column:span 3}
.service-cards dt {font:500 clamp(1.2rem,1.8vw,1.65rem)/1.25 HouseSans,sans-serif;letter-spacing:-.025em}
.notes-index .guide-intro {margin-bottom:clamp(1.25rem,3vw,2.6rem)}
.subject-shelf {grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 clamp(2.8rem,6vw,5rem)}
.subject-shelf > a {overflow:hidden;display:flex;flex-direction:column;color:var(--index-ink);text-decoration:none}
.subject-image {height:clamp(7rem,12vw,10rem);display:grid;place-items:center;overflow:hidden;background:#1e2734}
.subject-image img {width:100%;height:100%;object-fit:cover;min-height:0}
.subject-studio .subject-image {background:radial-gradient(ellipse at 76% 8%,#4b505c,#222933 75%)}
.subject-studio img {width:83%;height:75%;object-fit:contain}
.subject-systems .subject-image {background:radial-gradient(ellipse at 70% 5%,#373258,#181c2c 80%)}
.subject-systems img {height:70%;width:auto;max-width:65%;object-fit:contain}
.subject-shop img {object-position:center 48%}
.subject-title {display:flex;justify-content:space-between;align-items:center;gap:.65rem;flex:1;padding:1rem;font:500 1rem/1.25 HouseSans,sans-serif}
.subject-title .direction-mark{flex:none}
.subject-shelf a:is(:hover,:focus-visible),.customer-reading li:focus-within {border-color:var(--reading-accent)}
.subject-shelf a:focus-visible {outline:2px solid currentColor;outline-offset:3px}
.notes-index .guide-section[id]{scroll-margin-top:6rem}
.customer-reading ul {display:grid;gap:.55rem}
.customer-reading li,.customer-reading li+li {border:1px solid var(--reading-line);background:var(--reading-surface);border-radius:.85rem}
.customer-reading li>a {display:flex;justify-content:space-between;box-sizing:border-box;padding:.7rem 1rem;width:100%;text-decoration:none}
.customer-reading li>a:is(:hover,:focus-visible){text-decoration:underline}
@media(prefers-reduced-motion:no-preference) and (hover:hover){
 html:not(.motion-paused) .subject-shelf img{transition:transform .45s ease}html:not(.motion-paused) .subject-shelf a:hover img{transform:scale(1.035)}
}
@media(max-width:850px) {
 .reading-cards,.reading-cards:has(>:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
 .reading-cards > :last-child:nth-child(odd){grid-column:1/-1}
 .reading-spread .service-cards {grid-template-columns:repeat(2,minmax(0,1fr))}
 .reading-spread .service-cards > div,.reading-spread .service-cards > div:nth-last-child(-n+2){grid-column:auto}
 .subject-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px) {
 .reading-cards,.reading-cards:has(>:nth-child(4)),.reading-spread .service-cards {grid-template-columns:1fr}
 .reading-cards > :is(.guide-section,.house-row),.reading-spread .service-cards>div{padding:1.2rem;gap:.65rem}
 .reading-study{width:5.7rem;margin-bottom:.12rem}
 .subject-image{height:6.6rem}.subject-title{font-size:.93rem;padding:.75rem;gap:.35rem}
}
.reading-spread .service-cards.paired-services { grid-template-columns:repeat(2,minmax(0,1fr)); }
.reading-spread .service-cards.paired-services>div { grid-column:auto; }
@media(max-width:620px){.reading-spread .service-cards.paired-services{grid-template-columns:1fr}}
@media(max-width:480px){#top .house-entry-actions a:last-child:nth-child(odd){grid-column:1/-1}}

/* Keep the four departments in view when there is room to compare them. */
@media (min-width:850px) {
  #house-index .index-rooms {display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  #house-index .subject-controls {display:none}
}
#house-index .visual-shop img {width:100%;height:100%;object-fit:cover;object-position:center 48%}
#house-index .visual-systems img {filter:none}
#services, #selected-work, #process {scroll-margin-top:6rem}

/* Original client artwork is shown on its own field. Reflections stay at the rim. */
.service-specimen {
  position:relative;display:grid;place-items:center;isolation:isolate;overflow:hidden;
  aspect-ratio:2.25;margin:0 0 1rem;border-radius:.75rem;background:#202631;
}
.service-specimen img {width:81%;height:76%;object-fit:contain;min-height:0}
.specimen-emblem {background:linear-gradient(128deg,#34473e,#263b34 52%,#172a25)}
.specimen-website {background:#e9e2db}
.specimen-website img {width:100%;height:100%;object-fit:cover;object-position:center}
.service-specimen::after, .subject-image::after {
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  padding:2px;background:linear-gradient(112deg,#a0d8db96 3%,#d1ebec24 24%,#f2d5b995 50%,#d9b5ecaa 76%,#a7d1df38);
  mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
}
.subject-image {position:relative}
.support-library img.support-sample {
  display:block;width:100%;height:auto;aspect-ratio:1.85;object-fit:cover;
  margin:0 0 .4rem;border-radius:.65rem;
}
.material-followup {max-width:65ch;margin-block:clamp(1.5rem,4vw,3rem)}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  html:not(.motion-paused) .service-cards>div:focus-within .service-specimen::after,
  html:not(.motion-paused) .subject-shelf>a:is(:hover,:focus-visible) .subject-image::after {
    background-size:220% 100%;animation:specimen-rim .7s ease-out both;
  }
  @keyframes specimen-rim {from{background-position:100% center}to{background-position:0 center}}
}
header .archive-nav .travel-lens::before {
  background-position:var(--lens-reflection,50%) center;
}
@media (prefers-reduced-motion:no-preference) {
  html:not(.motion-paused) header .archive-nav .travel-lens::before {
    transition:background-position .3s cubic-bezier(.2,.8,.25,1);
  }
}

/* Studio overview */
.studio-overview .studio-opening {position:relative;isolation:isolate;padding:clamp(2.6rem,6vw,5.6rem) 0 clamp(1.8rem,4vw,3.6rem);max-width:64rem}
.studio-opening .studio-locator {color:var(--index-soft);font:500 .88rem/1.3 HouseSans,sans-serif;margin:0 0 .8rem}
.studio-overview .studio-opening h1 {margin:0;font:900 clamp(1.65rem,8.9vw,6.1rem)/1.04 "Studio Display",sans-serif;text-transform:uppercase;letter-spacing:-.075em}
.studio-opening .studio-lead {max-width:42ch;margin:1.15rem 0 0;font:400 clamp(1.08rem,2vw,1.55rem)/1.45 HouseSans,sans-serif;color:var(--index-ink)}
.studio-actions {display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}
.studio-actions {margin:1.4rem 0 .3rem}
.house-action,.studio-text-link {display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:44px;color:var(--index-ink);font:500 .94rem/1.3 HouseSans,sans-serif;text-underline-offset:.22em}
.house-action {padding:.1rem 1.05rem;border:1px solid var(--index-edge);border-radius:99px;text-decoration:none;background:var(--index-panel)}
.house-action.primary-action {background:var(--index-ink);color:var(--index-panel)}
.house-action:is(:hover,:focus-visible){box-shadow:0 0 0 2px var(--reading-accent)}
.studio-deep-link {display:none}.studio-deep-link:target{display:block;margin-top:.8rem}
.studio-overview .studio-archive-wrap {margin:0 auto}
.studio-overview .studio-project-links {display:flex;flex-wrap:wrap;gap:.35rem .85rem;align-items:center}
.studio-service-page .reading-spread {width:100%;margin-block:2rem}
.campaign-work {background:#253a32;border-radius:1.1rem;display:grid;place-items:center;gap:.8rem;padding:1.8rem;margin:2rem 0}
.campaign-work img {height:clamp(8rem,18vw,15rem);width:auto}
.house-end .foot-directory h2 {margin:0 0 .45rem;font:500 .79rem/1.4 HouseSans,sans-serif;letter-spacing:.04em;color:var(--index-soft)}
.house-end .foot-wrap {grid-template-columns:minmax(10rem,.8fr) minmax(14rem,1.1fr) minmax(20rem,1.3fr)}
.house-end .foot-identity p {margin-top:.65rem}
.house-end .foot-contact {align-content:start}
.house-end .foot-legal {align-items:center}
.house-end .foot-legal a {max-width:none}
@media (max-width:850px) {
  .house-end .foot-wrap {grid-template-columns:1fr;gap:1.2rem}
  .house-end .foot-contact {grid-row:1;border:0;padding:0}
  .house-end .foot-wrap .foot-enquire {font-size:clamp(1.85rem,6vw,2.45rem)}
  .house-end .foot-directory {width:100%;max-width:none}
  .house-end nav.foot-directory {border-block:1px solid var(--index-edge);padding:1.05rem 0;gap:.9rem;grid-template-columns:1fr 1fr}
  .house-end .foot-directory a {font-size:.89rem}
  .house-end .foot-identity {grid-row:3;display:flex;align-items:center;gap:.85rem}
  .house-end .foot-identity img {width:3.4rem}
  .house-end .foot-identity p {margin:0}
  .house-end .foot-legal {gap:.5rem;flex-wrap:wrap;padding-top:.5rem}
  .house-end .foot-legal a {align-items:center}
}
@media(max-width:1000px){
  html.has-house-index body .house-header:has(.house-nav),html.has-house-index body#top .site-header {
    display:flex!important;align-items:center;justify-content:space-between;gap:1rem;box-sizing:border-box;
    width:auto!important;max-width:37rem;inset-inline:.8rem!important;margin-inline:auto;
    top:max(.5rem,env(safe-area-inset-top));padding:.23rem .6rem .23rem .95rem!important;
    border:1px solid var(--nav-rim);border-radius:2rem;background:var(--nav-material)!important;
    backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);box-shadow:0 4px 18px -10px var(--nav-shadow);
  }
  html.has-house-index body header .archive-nav {display:none!important}
  html.has-house-index body header .home-mark,html.has-house-index #top .site-header>.brand {display:flex!important;align-items:center;min-width:44px;min-height:44px;background:none;border:0;box-shadow:none}
  html.has-house-index body header .home-mark img,html.has-house-index #top .site-header>.brand .scroll-fallback {display:block!important;width:48px!important;height:38px!important;object-fit:contain;content:url('/assets/current-wordmark.png')}
  html.has-house-index body header .header-utilities,html.has-house-index #top .home-utilities {display:flex!important;align-items:center;gap:.3rem}
  html.has-house-index[data-theme] body header:has(.archive-nav) .cart-orb {display:none!important}
  html.has-house-index[data-theme] body header:has(.archive-nav) .index-key {min-height:44px;width:auto!important;display:flex;align-items:center;gap:.5rem;padding:0 .7rem!important;color:var(--nav-ink)!important;background:transparent!important;box-shadow:none!important;border:0!important;backdrop-filter:none!important}
  html.has-house-index body header .index-key::before,html.has-house-index body header .index-key::after {display:none!important}
  html.has-house-index body header .index-key span {display:inline!important;position:static;clip-path:none;width:auto;height:auto;font:500 .94rem/1.3 HouseSans,sans-serif}
  #house-index .directory-rooms .index-rooms {display:grid;grid-template-columns:1fr 1fr;gap:.5rem;overflow:visible;padding:0}
  #house-index .directory-rooms .index-rooms>a {display:flex;align-items:center;min-height:44px;padding:.6rem .65rem;border:1px solid var(--index-edge);border-radius:.8rem}
  #house-index .directory-rooms .index-rooms b {font:500 .96rem/1.3 HouseSans,sans-serif}
  #house-index .directory-rooms :is(.subject-controls,.subject-visual,small),#house-index .finder-ideas {display:none}
}
@media(max-width:500px){.studio-overview .studio-project-links a{font-size:.82rem}.house-end .foot-preferences{flex-wrap:wrap}}

#house-index .directory-projects summary {cursor:pointer;min-height:44px;align-content:center;font:500 1rem/1.4 HouseSans,sans-serif;color:var(--index-ink);text-underline-offset:.22em}
#house-index .directory-projects summary:hover {text-decoration:underline}
#house-index .directory-projects[open] summary {margin-bottom:.7rem}
@media(max-width:1000px){
  html.has-house-index[data-theme] body header.house-header:has(.archive-nav),html.has-house-index[data-theme] body#top header.site-header{
    width:calc(100% - 1.5rem)!important;max-width:37rem!important;left:0!important;right:0!important;margin-inline:auto!important;top:max(.55rem,env(safe-area-inset-top))!important;
  }
}


/* Browse destinations, start a brief or retrieve a saved one inside Search. */
#house-index .finder-tools{grid-area:1/3;display:flex;align-self:center;justify-self:end;gap:.3rem}
#house-index .finder-tools button{display:grid;place-items:center;min-width:44px;width:44px;height:44px;padding:0;margin:0;border-radius:50%;border:1px solid var(--index-edge);background:transparent;color:var(--index-ink);cursor:pointer}
#house-index .finder-tools .route-icon{width:19px;height:19px;color:inherit}
html[data-theme] #house-index[open]{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(6rem,1fr) minmax(0,55rem) minmax(6rem,1fr)}
#house-index .finder-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem 2rem}
#house-index .finder-directory>section{margin:0;padding:0;border:0;grid-column:auto}
#house-index .finder-directory .finder-departments{grid-column:1/-1}
#house-index .finder-directory h3{font:550 .76rem/1.3 HouseSans,sans-serif;letter-spacing:.065em;color:var(--index-soft);margin:0 0 .55rem}
#house-index .finder-directory nav{display:grid;grid-template-columns:1fr;gap:0;position:static;background:none;box-shadow:none;border:0;padding:0}
#house-index .finder-departments nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
#house-index .finder-directory nav a {display:grid;grid-template-columns:auto minmax(0,1fr) .6rem;align-items:center;gap:.85rem;min-height:46px;color:var(--index-ink);text-decoration:none;padding:.55rem .35rem;border-bottom:1px solid var(--index-edge);border-radius:0}
#house-index .finder-directory .finder-departments a{padding:.6rem .8rem .6rem .6rem;border:1px solid var(--index-edge);border-radius:1rem;background:linear-gradient(120deg,#bab8ca12,transparent)}
#house-index .finder-directory .finder-departments nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.65rem,1.7vw,1.2rem)}
#house-index .finder-directory .finder-departments a{position:relative;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.55rem;padding:0;border:0;background:none;border-radius:.55rem;text-decoration:none}
#house-index .finder-departments .route-copy{padding:0 .12rem}
#house-index .finder-departments .finder-chevron{display:none}
#house-index .route-sample{display:grid;place-items:center;aspect-ratio:2;width:100%;border-radius:.65rem;overflow:hidden;box-shadow:inset 0 0 0 1px var(--index-edge)}
#house-index .route-sample img{width:100%;height:100%;object-fit:cover;min-height:0}
#house-index .sample-studio{background:linear-gradient(120deg,#1b262a,#34454d)}
#house-index .sample-studio img{width:78%;height:76%;object-fit:contain}
#house-index .sample-systems{background:radial-gradient(ellipse at 30% 20%,#41324c,#151a28)}
#house-index .sample-systems img{height:70%;width:80%;object-fit:contain}
#house-index .sample-shop img{object-position:50% 50%}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  html:not(.motion-paused) #house-index .route-sample img{transition:transform .32s ease-out}
  html:not(.motion-paused) #house-index a:is(:focus-visible,:hover) .route-sample img{transform:scale(1.05)}
}
#house-index .route-copy{display:grid;gap:.19rem}
#house-index .route-copy b{font:550 1rem/1.3 HouseSans,sans-serif}
#house-index .route-copy small{font:400 .82rem/1.4 HouseSans,sans-serif;color:var(--index-soft)}
#house-index .finder-chevron{width:.38rem;height:.38rem;border:solid currentColor;border-width:1.3px 1.3px 0 0;transform:rotate(45deg);opacity:.55}
#house-index .finder-directory .finder-actions nav{grid-template-columns:1fr 1fr;gap:.75rem}
#house-index .finder-directory .finder-actions a{grid-template-columns:1fr auto;grid-template-rows:1.5rem auto;align-items:start;align-content:start;gap:.5rem;padding:.85rem;border-radius:.75rem;border:0;background:linear-gradient(145deg,color-mix(in srgb,var(--index-ink) 8%,transparent),color-mix(in srgb,var(--index-ink) 3%,transparent));box-shadow:inset 0 1px var(--index-edge)}
#house-index .finder-actions .route-copy{grid-area:2/1/3/3}
#house-index .finder-actions .finder-chevron{grid-area:1/2;align-self:center}
#house-index .finder-directory .finder-resources nav{display:flex;flex-wrap:wrap;gap:.15rem 1rem}
#house-index .finder-directory .finder-resources a{display:flex;align-items:center;gap:.45rem;padding:.1rem 0;min-height:44px;border:0}
#house-index .finder-resources .finder-chevron{display:none}
#house-index .finder-directory :is(a,button):is(:hover,:focus-visible) .route-copy b{text-decoration:underline;text-underline-offset:.2em}
#house-index .finder-resources .route-icon{width:18px;height:18px;flex:none}
#house-index .finder-resources .route-copy b{font-size:.88rem}
#house-index #house-matches a{grid-template-columns:1.65rem minmax(0,1fr);column-gap:.75rem;border-radius:.4rem}
#house-index #house-matches a .match-icon{grid-row:1/span 3;width:1.45rem;height:1.45rem;color:var(--index-soft);margin-top:.2rem}
#house-index #house-matches a :is(b,small,span){grid-column:2}
#house-index #house-matches a:hover,#house-index .finder-directory nav a:hover,#house-index .finder-tools button:hover{background-color:color-mix(in srgb,var(--index-ink) 6%,transparent)}
@media(max-width:679px){
  html[data-theme] #house-index[open]{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:auto 1fr auto}
  #house-index .finder-directory{grid-template-columns:1fr;gap:1.4rem}
  #house-index .finder-directory .finder-departments nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem .8rem}
  #house-index .finder-directory .route-copy b{font-size:.95rem}
  #house-index .finder-directory .route-copy small{font-size:.78rem}
  #house-index .finder-directory .finder-resources nav{justify-content:space-between;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
  #house-index .finder-directory .finder-resources a{flex-direction:column;align-items:flex-start;gap:.4rem;padding:.4rem 0}
  #house-index .finder-resources .route-copy b{font-size:.81rem}
}

/* Reading links and project actions */
main .page-link, .studio-service-page .service-route a, main .client-links a {
  display:inline-flex;align-items:center;gap:.5rem;min-height:44px;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em;color:var(--index-ink);
}
main a.page-primary,.studio-service-page .studio-actions .primary-action {
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:44px;box-sizing:border-box;
  margin-block:.7rem;padding:.65rem 1.15rem;border-radius:99px;border:1px solid transparent;
  background:var(--index-ink);color:var(--index-panel);font:550 .95rem/1.3 HouseSans,sans-serif;text-decoration:none;
}
main a.page-primary:is(:focus-visible,:hover),.studio-service-page .primary-action:is(:focus-visible,:hover){outline:2px solid var(--reading-accent);outline-offset:3px}
main .page-link:hover,.studio-service-page .service-route a:hover{ text-decoration-thickness:2px }
.intro-systems.archive-intro {display:block;padding-bottom:clamp(1rem,3vw,2.5rem)}
.studio-service-page .guide-intro{margin-bottom:1.5rem}
.studio-service-page .service-cards dd.service-route{margin-top:auto;padding:0}
.house-end .foot-contact-link,.house-end .foot-contact-label{display:inline-flex;min-height:44px;align-items:center;color:var(--index-ink);font:550 1.1rem/1.35 HouseSans,sans-serif;text-underline-offset:.22em}
.house-end .foot-contact-label{min-height:unset}
.field-guide .guide-trail a{min-height:44px;display:inline-flex;align-items:center;color:var(--index-soft);text-underline-offset:.2em}
.field-guide .article-sequence.reading-cards{display:grid;grid-template-columns:1fr;gap:0;max-width:58rem;margin-block:clamp(2rem,5vw,4.5rem) 1.4rem}
.field-guide .article-sequence.reading-cards>.guide-section{
  display:grid;grid-template-columns: minmax(12rem,.8fr) minmax(0,1.35fr);grid-template-rows:auto;
  align-content:start;align-items:baseline;column-gap:clamp(1.5rem,4vw,4rem);row-gap:.6rem;
  padding:clamp(1.2rem,2.4vw,2rem) 0;margin:0;border:0;border-top:1px solid var(--index-edge);
  border-radius:0;background:none;box-shadow:none;min-height:0;
}
.field-guide .article-sequence .reading-study{display:none}
.field-guide .article-sequence h2{grid-column:1;grid-row:1;font-size:clamp(1.45rem,2.5vw,2rem);margin:0}
.field-guide .article-sequence .guide-section> :is(p,div,a){grid-column:2;margin:0;max-width:58ch}
.field-guide .article-sequence .guide-section p{line-height:1.65}
.customer-reading li,.customer-reading li+li{border:0;border-bottom:1px solid var(--index-edge);border-radius:0;background:none}
.customer-reading li>a{min-height:44px;padding:.65rem 0;align-items:center;text-underline-offset:.22em}
@media(max-width:680px){
 .field-guide .article-sequence.reading-cards>.guide-section{grid-template-columns:1fr;gap:.6rem}
 .field-guide .article-sequence .guide-section> :is(p,div,a){grid-column:1}
}
