/* Scoped digital portrait gallery. Original files and other rooms are untouched. */
.dg-gallery{--dg-gold:#cfaa72;--dg-muted:#ada28f}
.dg-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.dg-heading h1{font:400 clamp(40px,5vw,70px)/1.1 var(--serif);letter-spacing:-.04em;margin:20px 0 0}.dg-heading h1 em{color:var(--dg-gold);font-weight:400}.dg-heading>p{font-size:14px;line-height:1.8;color:var(--dg-muted)}
.dg-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:48px}.dg-selector button{display:flex;align-items:center;gap:13px;padding:18px 14px;text-align:left;min-width:0;border-bottom:2px solid transparent;transition:background .2s,border-color .2s}.dg-selector button[aria-pressed=true]{background:#cfaa720e;border-bottom-color:var(--dg-gold)}.dg-selector button:hover{background:#cfaa7217}.dg-selector img{width:42px;height:55px;object-fit:cover;object-position:top;border:1px solid #cfaa7244}.dg-number{font-size:10px;color:var(--dg-gold)}.dg-selector strong{font:18px var(--serif);display:block;overflow-wrap:anywhere}.dg-selector small{display:block;font-size:11px;color:var(--dg-muted);margin-top:7px}
.dg-spread{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(35px,6vw,90px);align-items:start;animation:dg-arrive .4s ease-out}.dg-portrait{margin:0;min-width:0}.dg-portrait>a{display:block;padding:12px;background:#24211b;border:1px solid #cfaa7238;box-shadow:0 25px 70px #0005}.dg-portrait img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;background:#171614}.dg-portrait figcaption{display:flex;justify-content:space-between;gap:12px;color:var(--dg-muted);font-size:9px;line-height:1.7;letter-spacing:.07em;margin-top:16px}.dg-copy{padding-top:6px;min-width:0}.dg-copy h2{font:400 clamp(28px,3vw,43px)/1.2 var(--serif);letter-spacing:-.02em;margin:20px 0 24px;overflow-wrap:anywhere}.dg-copy h2>span{display:block;font-size:1.2em;margin-bottom:7px}.dg-tenure{color:var(--dg-gold);font:30px var(--serif);border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:26px}.dg-tenure span{display:block;font:11px/1.7 'Segoe UI',sans-serif;color:var(--dg-muted);margin-top:8px}.dg-copy h3,.dg-modal h3{font:25px/1.3 var(--serif);margin:0 0 15px}.dg-intro,.dg-closing{font-size:14px;line-height:1.85;color:#c7beae}.dg-facts{margin:25px 0}.dg-facts>div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:18px;padding:14px 0;border-top:1px solid var(--line)}.dg-facts dt{color:var(--dg-gold);font-size:13px}.dg-facts dd{margin:0;font-size:14px;line-height:1.65}.dg-caution{border-left:2px solid var(--dg-gold);padding-left:14px;font-size:12px;line-height:1.85;color:var(--dg-muted);margin-top:18px}.dg-sources{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:22px}.dg-sources a{font-size:11px;min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid var(--line);color:var(--dg-gold)}.dg-pagination{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:40px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.dg-pagination button{font-size:12px;min-height:48px;color:var(--dg-gold)}.dg-pagination span{font-size:11px;white-space:nowrap;color:var(--dg-muted)}.dg-archive-note{max-width:750px;font-size:12px;line-height:1.8;color:var(--dg-muted);margin:24px 0 0}.dg-gallery button:focus-visible,.dg-gallery a:focus-visible{outline:2px solid var(--dg-gold);outline-offset:4px}#director-stage{scroll-margin-top:100px}.director-video{margin-top:25px}.director-video p{font-size:12px;line-height:1.8}.director-video video{display:block;width:100%;max-height:500px;margin-top:16px}.dg-modal{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px}.dg-modal>img{width:100%;height:auto}.director-dialog{max-width:950px}.director-return{padding:14px 20px;border:1px solid var(--line);margin-top:24px;min-height:48px}
@keyframes dg-arrive{from{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.dg-selector button{gap:8px;padding:14px 8px}.dg-number{display:none}.dg-selector strong{font-size:16px}.dg-spread{gap:32px}}
@media(max-width:750px){.dg-heading{display:block}.dg-heading>p{font-size:13px;margin-top:18px}.dg-heading h1{font-size:43px}.dg-selector{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:28px}.dg-selector button{padding:14px 8px;gap:9px;min-height:80px}.dg-selector strong{font-size:16px}.dg-selector img{width:34px;height:46px}.dg-spread{grid-template-columns:minmax(0,1fr);gap:30px}.dg-portrait>a{padding:7px}.dg-portrait img{max-height:none}.dg-portrait figcaption{font-size:8px}.dg-copy h2{font-size:28px}.dg-facts>div{grid-template-columns:100px minmax(0,1fr);gap:12px}.dg-pagination button{font-size:11px;max-width:120px;text-align:left}.dg-pagination button:last-child{text-align:right}.dg-modal{grid-template-columns:1fr}.dg-modal>img{max-width:280px}.dg-copy{padding-top:0}}
@media(prefers-reduced-motion:reduce){.dg-spread{animation:none}.dg-selector button{transition:none}}
@media(max-width:750px){.dg-selector img{width:28px;height:40px}.dg-selector button{gap:7px;padding-left:6px;padding-right:6px}.dg-selector strong{font-size:14px;letter-spacing:-.025em}}

.dg-video-button {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  max-width: 100%;
  min-height: 48px;
  margin-top: 24px;
  padding: 10px 16px;
  border: 1px solid var(--accent);
  color: var(--accent);
  background: #282219;
  text-align: left;
  font-size: 14px;
}
.dg-video-button:hover { background: #362c20; }
.dg-video-button span { font-size: 12px; }
.director-video-dialog {
  width: min(92vw, 800px);
  padding: 46px clamp(18px, 4vw, 44px) 24px;
}
.director-video-dialog .director-video { margin-top: 0; }
.director-video-dialog h2 { overflow-wrap: anywhere; }
.director-video-dialog video {
  aspect-ratio: 16 / 9;
  max-height: 58svh;
  object-fit: contain;
  background: #100f0e;
}
.director-video-dialog #dg-video-disclosure {
  margin-top: 14px;
  color: var(--muted);
  font-size: 14px;
}

@media(min-width:1100px){.dg-selector{grid-template-columns:repeat(5,minmax(0,1fr))}.dg-selector button{gap:8px;padding-inline:8px}}
.dg-selector button>span:last-child{min-width:0;overflow-wrap:anywhere}
.dg-selector .dg-current{color:var(--accent);margin-top:4px}
.dg-facts .dg-undated-fact{display:block}
.dg-facts .dg-undated-fact dd{margin:0}

/* The directors' relief and its chronological mobile layout. */
.heritage-tree {
  position: relative;
  isolation: isolate;
  aspect-ratio: 1200 / 870;
  margin: 0 0 26px;
  background: radial-gradient(ellipse at 50% 28%, #33291e, #171613 62%, #12110f);
  border: 1px solid #a8844e80;
  box-shadow: inset 0 0 0 7px #10100f, inset 0 0 0 8px #ad8a4e40, 0 22px 60px #09080670;
}
.heritage-relief {position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.heritage-guide {
  position:absolute;top:20px;left:22px;right:22px;display:flex;justify-content:space-between;gap:16px;
  color:#c4ad86;font-size:10px;letter-spacing:.15em;pointer-events:none
}
.heritage-era {--patina:#caab78}
.heritage-era-1 {--patina:#bdb09a}
.heritage-era-2 {--patina:#c4986b}
.heritage-era-3 {--patina:#e4c17b}
.heritage-era-4 {--patina:#d3b888}
.heritage-era-5 {--patina:#f0d099}
.heritage-era h2 {
  position:absolute;margin:0;color:var(--patina);font:400 clamp(14px,1.65vw,24px)/1.12 var(--serif,Georgia);
  text-shadow:0 2px 8px #0a0908;pointer-events:none
}
.heritage-era h2 small {display:block;margin-top:5px;color:#d5c5aa;font:500 10px/1.4 system-ui;letter-spacing:.06em}
.heritage-era-1 h2 {bottom:3%;left:47%;text-align:center;transform:translateX(-50%)}
.heritage-era-2 h2 {top:65%;left:29%}
.heritage-era-3 h2 {top:17%;left:4%}
.heritage-era-4 h2 {top:16%;right:4%;text-align:right}
.heritage-era-5 h2 {top:8%;left:32%}
.heritage-node {
  position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);
  display:flex;flex-direction:column;align-items:center;width:clamp(115px,12vw,165px);
  padding:7px 3px;color:#f2e5cf;text-align:center;z-index:1;touch-action:manipulation
}
.heritage-medallion {
  position:relative;display:block;width:clamp(62px,8vw,106px);aspect-ratio: .88;
  padding:5px;border:1px solid var(--patina);border-radius:48% 48% 42% 42% / 41% 41% 38% 38%;
  background:linear-gradient(135deg,#d8c7a4,#4b3925 32%,#141311 70%,var(--patina));
  box-shadow:0 0 0 3px #191714,0 0 0 4px #b7976250,0 9px 20px #090806aa;
  transition:box-shadow .22s ease
}
.heritage-medallion img {display:block;width:100%;height:100%;object-fit:cover;object-position:center 29%;border-radius:inherit}
.heritage-node:is(:hover,:focus-visible,[aria-pressed=true]) .heritage-medallion {
  box-shadow:0 0 0 3px #191714,0 0 0 4px var(--patina),0 0 29px #e6b86a69
}
.heritage-node:focus-visible {outline:2px solid #f4d49b;outline-offset:3px}
.heritage-name {display:block;margin-top:8px;text-shadow:0 1px 7px #000,0 1px 4px #000}
.heritage-name strong {display:block;font:600 clamp(15px,1.48vw,22px)/1.08 var(--serif,Georgia)}
.heritage-name span {display:block;font-size:11px;line-height:1.25;margin-top:3px}
.heritage-node small {display:block;margin-top:3px;color:#f0d7af;font-size:11px;line-height:1.3;text-shadow:0 1px 5px #000,0 0 3px #000}
.heritage-play {
  position:absolute;right:-5px;bottom:5px;display:grid;place-items:center;width:23px;height:23px;
  border-radius:50%;border:1px solid var(--patina);background:#201b15;color:#f7dba9;font-size:9px
}
.heritage-thread {opacity:0;transition:opacity .22s ease}
.heritage-return {display:inline-flex;align-items:center;min-height:44px;color:var(--accent);margin-bottom:16px}
#director-stage {scroll-margin-top:110px}
@media(max-width:960px){
  .heritage-tree {aspect-ratio:auto;padding:24px 18px 20px 36px}
  .heritage-relief,.heritage-guide {display:none}
  .heritage-tree::before {
    content:"";position:absolute;top:35px;bottom:28px;left:20px;width:5px;
    background:linear-gradient(90deg,#644a31,#dbb579,#695132);border-radius:50% 50% 30% 30%;
  }
  .heritage-era {position:relative;padding:17px 0 22px;border-top:1px solid #a8844e55}
  .heritage-era::before {content:"";position:absolute;top:24px;left:-18px;width:16px;height:1px;background:var(--patina)}
  .heritage-era h2 {position:static;transform:none;text-align:left;font-size:24px;margin:0 0 13px}
  .heritage-era h2 small {font-size:11px}
  .heritage-nodes {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 8px}
  .heritage-node {position:relative;left:auto;top:auto;transform:none;width:100%;padding:9px 2px}
  .heritage-medallion {width:min(84px,90%)}
  .heritage-name strong {font-size:clamp(12px,4vw,18px);overflow-wrap:anywhere}
  .heritage-name span {font-size:11px}
  .heritage-node small {font-size:11px}
  .heritage-era-3 .heritage-node,.heritage-era-5 .heritage-node {grid-column:2}
}
@media(prefers-reduced-motion:reduce) {
  .heritage-medallion,.heritage-thread {transition:none}
}

.heritage-tree:has(.heritage-node-1:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-1,
.heritage-tree:has(.heritage-node-2:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-2,
.heritage-tree:has(.heritage-node-3:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-3,
.heritage-tree:has(.heritage-node-4:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-4,
.heritage-tree:has(.heritage-node-5:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-5,
.heritage-tree:has(.heritage-node-6:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-6,
.heritage-tree:has(.heritage-node-7:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-7,
.heritage-tree:has(.heritage-node-8:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-8,
.heritage-tree:has(.heritage-node-9:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-9,
.heritage-tree:has(.heritage-node-10:is(:hover,:focus-visible,[aria-pressed=true])) .heritage-thread-10 {opacity:.72}
