/* BANHALMI ART compatibility CSS authority — generated from canonical source modules. */

/* SOURCE: assets/css/page-base.css */
/* STAGE137-MOTIONLESS-SOURCE-AUTHORITY
   Decorative CSS motion is intentionally absent from ART. This first-paint guard
   also prevents future component rules from reintroducing transitions or animation. */
html{scroll-behavior:auto!important}
body.apple-archive *,
body.apple-archive *::before,
body.apple-archive *::after{
  animation:none!important;
  transition:none!important;
  scroll-behavior:auto!important;
}

/* Page base.
   Every content page carried this same ~20 KB block inline: 1.7 MB of identical CSS
   across 81 pages, and the reason a change to the shared layer could be quietly
   overruled page by page — the galleries' `columns:3` lived here, which is what made
   the plates collapse to 132px.
   It is linked first, exactly where the inline block used to sit, so the cascade is
   unchanged: page base -> the few rules a page genuinely adds -> the eight shared
   stylesheets. Checked rule by rule against the previous markup: no page rule was
   moved ahead of a base rule with the same selector, and every block is balanced. */
/* Typography follows Apple's system-font principles: SF Pro stack, tight optical
   tracking on display sizes, semibold headlines, 1.47 body leading, and the
   title/description pairing (large headline + lighter intro paragraph). */
/* Shared design primitives.
   Every stylesheet in this stack used to carry its own near-black ground/
   raised/panel triad and its own gold, each hand-typed and each drifting a
   few RGB units from the others (--bg, --art-bg, --presence-bg, --mus-ground
   were four different hex values for what is conceptually one role). That
   drift is what let the section-tone bug ship unnoticed. These are the one
   source of truth; every later stylesheet's namespaced token (--art-bg,
   --presence-bg, --mus-ground, etc.) now points here with var() instead of
   restating its own literal. Loaded first, so every other file can resolve
   these regardless of cascade order. */
:root{
  --c-ground:#202530;    /* resting surface */
  --c-raised:#29303F;    /* emphasis / thesis surface */
  --c-panel:#2D3444;     /* card / tile surface */
  --c-ink:#f5f5f7;       /* primary text on dark */
  --c-ink-soft:#a1a1a6;  /* secondary text on dark */
  --c-gold:#DCC56B;      /* single accent colour, site-wide */
  --c-line:rgba(183,156,68,.25);
  --c-radius-pill:999px; /* the one pill radius — replaces 980px/999px/99px drift */
  --ease-standard:cubic-bezier(.2,.7,.2,1); /* the one motion curve, replaces three near-identical ones */
}
:root{
  --sec:6.5rem;          /* szakasz fuggoleges levegoje */
  --rule-gap:3.2rem;     /* vonal es tartalom kozti tavolsag, mindket oldalon */
  --row-pad:1.05rem;     /* listasorok fuggoleges belso tavolsaga */
--bg:var(--c-ground);--bg2:var(--c-raised);--ink:var(--c-ink);--ink-soft:var(--c-ink-soft);--gold:var(--c-gold);--line:var(--c-line);
--sans:-apple-system,BlinkMacSystemFont,'SF Pro Display','SF Pro Text','Helvetica Neue',Helvetica,Arial,sans-serif;
--serif:var(--sans)}
*{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;font-size:17px;
line-height:1.47059;letter-spacing:-.022em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img{display:block;max-width:100%;height:auto}
a{color:var(--gold);text-decoration:none;}a:hover{opacity:.72}
.wrap{max-width:1200px;margin:0 auto;padding:0 6vw}.wrap.narrow{max-width:900px}
.label{font-size:.75rem;line-height:1.33;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:500}
h1{font-weight:600;font-size:clamp(2.4rem,5.6vw,4.2rem);line-height:1.05;letter-spacing:-.015em}
h2{font-weight:600;font-size:clamp(1.9rem,3.8vw,3rem);line-height:1.08;letter-spacing:-.014em;margin:.5rem 0 1rem}
h3{font-weight:600;font-size:1.45rem;line-height:1.2;letter-spacing:-.012em;margin:2.2rem 0 .6rem}
h4{font-weight:600;letter-spacing:-.01em}
section{padding:var(--sec) 0}
/* --- Arany elvalasztok: egyetlen szabaly, mindenhol ugyanaz a levego. ---
   A vonal a szakasz teteje; a kovetkezo tartalomig mindig ugyanannyi hely van.
   Sehol nincs kezzel irt border-top a szakaszokon. */
section.rule{border-top:1px solid var(--line);padding-top:var(--sec)}
section.tone-b,section.tone-c{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
/* Ket vonal soha ne kerüljön egymásra: ha a szomszéd már húzott egyet, ez elmarad. */
section.tone-b + section.rule,section.tone-c + section.rule,
section.tone-b + section.tone-b,section.tone-b + section.tone-c,
section.tone-c + section.tone-b,section.tone-c + section.tone-c{border-top:0}
header + section.rule{border-top:0}
@media(max-width:860px){:root{--sec:4.6rem;--rule-gap:2.4rem;--row-pad:.9rem}
  header.sub{padding-top:7.5rem}}
@media(max-width:560px){:root{--sec:3.6rem;--rule-gap:2rem;--row-pad:.85rem}
  header.sub{padding-top:6.5rem}}
p.lead,.lead{color:var(--ink-soft);max-width:62ch;font-size:1.25rem;line-height:1.42;letter-spacing:-.017em;margin:1.1rem 0;font-weight:400}
.loc{font-size:1.0625rem;line-height:1.4;letter-spacing:-.014em;color:var(--ink-soft);font-weight:400}
.meta{font-size:.875rem;line-height:1.8;letter-spacing:-.01em;color:var(--ink-soft);margin:1.8rem 0}
/* NAV — the site header only.
   This was written as a bare `nav` selector, so it also claimed the three
   in-content navigations: the ecosystem strip in the footer, .chapter-nav on
   the press pages and .presence-period-links on the homepages. All of them
   were pinned to top:0 with z-index 50, under a header whose z-index is 140 —
   the ecosystem links (Szakmai oldal · Művészeti archívum · Esszék és blog)
   lost their top 32 of 50 pixels behind the header on every page. The header
   nav is the first element inside <body> on all 87 pages, so the child
   combinator says what was meant without a single !important. */
body>nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 4vw;background:var(--c-ground);backdrop-filter:none}
nav .brand{display:flex;align-items:center;gap:.55rem;letter-spacing:.24em;font-size:.8125rem;font-weight:600;color:var(--ink);text-transform:uppercase}
nav .brand svg{width:24px;height:24px;fill:var(--gold);flex:none}
/* nav ul used to be display:flex here, but line further down in this same
   file sets nav ul{display:none} at identical specificity — the later
   declaration always wins, so the flex/gap/list-style layout above never
   rendered. The real menu is #menu, not this <ul>; kept the display:none
   and the link color below since .langs styling nav ul a still needs it. */
nav ul a{color:var(--ink-soft);font-size:.75rem;line-height:1.33;letter-spacing:-.01em;font-weight:400}
nav ul a:hover{color:var(--ink);opacity:1}
/* .langs / .langs a / .langs a.on used to be styled here too, but every
   property they set is overridden by responsive-header-system.css's
   body.apple-archive .langs rules -- higher specificity, all !important,
   and on this page's body that class is always present. Confirmed dead;
   responsive-header-system.css is the actual owner. */
nav ul{display:none}
/* HAMBURGER
   The icon a reader actually sees is drawn by final-layout-fixes.css with
   ::before/::after and a box-shadow line — `nav .burger span{display:none
   !important}` there outranks every span rule below by specificity (3
   elements beat 2), regardless of load order. So the three <span> children
   this file used to animate were never visible on any page: a second,
   inert icon system stacked under the one that renders. Only the button's
   own box survives here; the line-drawing and open/close animation live in
   one place now. */
.burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;
border:0;background:none;cursor:pointer;padding:0 10px;flex:none}
#menu{position:fixed;inset:0;z-index:45;background:var(--c-ground);backdrop-filter:none;
opacity:0;visibility:hidden;padding:6.5rem 6vw 4rem}
body.menu-open{overflow:hidden}
body.menu-open #menu{opacity:1;visibility:visible}
/* .mwrap / .m-main / .m-desc used to be sized here too. Every one of these
   properties is set again, with !important, by presence-core.css and
   archive-system.css at >=861/901px and by presence-core.css and
   responsive-header-system.css at <=700-860px -- no width is left uncovered,
   so nothing here ever rendered. What still matters and stays: the details
   marker (+/-) below, which only page-base sets for the two menu accordions
   that are not class="svc" (no other file targets plain #menu details
   summary::after, only the .svc-scoped one). */
#menu a{display:block;color:var(--ink);letter-spacing:-.014em}
#menu details summary{font-size:.9375rem;font-weight:500;color:var(--gold);list-style:none}
#menu details summary::-webkit-details-marker{display:none}
#menu details summary::after{content:" +";color:var(--ink-soft)}
#menu details[open] summary::after{content:" –"}
#menu .sub{columns:2;column-gap:2rem;margin-top:.7rem}
@media(max-width:620px){#menu .sub{columns:1}}
#menu .sub a{font-size:.9375rem;color:var(--ink-soft);padding:.5rem 0;break-inside:avoid;line-height:1.4;display:block}
#menu .sub a:hover{color:var(--ink);opacity:1}
#menu .svc .sub a{padding:.55rem 0}
#menu .svc .sub a .yr{font-weight:600}
#menu .svc-d{color:var(--ink-soft);font-size:.8125rem;line-height:1.45;display:block;margin-top:.15rem}
#menu .svc-cta{display:inline-block;margin-top:.9rem;color:var(--gold);font-size:.9375rem;font-weight:500}
#menu .svc-cta:hover{opacity:.75}
#menu .sub a .yr{color:var(--gold);font-weight:600;font-variant-numeric:tabular-nums;
margin-right:.6rem;display:inline-block;min-width:4.6em}
#menu details{border:0;border-top:1px solid var(--line);padding:1.1rem 0}
/* .m-desc / .m-main / .m-foot were repeated here a second time (the original
   file duplicated its own rules); same dead-by-!important-elsewhere reasoning
   as above. #menu details itself was also declared twice (padding .7rem vs
   1.1rem) -- only this second, later declaration ever applied; the first
   was removed above. */
/* HERO */
/* HERO — portrait anchored to the right in every viewport, copy on the left,
   parallax on the background layer. */
header.hero{position:relative;isolation:isolate;background:var(--c-ground);color:var(--c-ink);
min-height:min(92svh,860px);display:flex;align-items:center;overflow:hidden}
header.hero .bg{position:absolute;inset:-12% 0 -12% 0;z-index:-2;
background-position:right center;background-size:cover;background-repeat:no-repeat;
will-change:transform}
header.hero img.bg,
header.hero .hero-bg-img{
width:100%;height:124%;object-fit:cover;object-position:right center;
}
header.hero .veil{position:absolute;inset:0;z-index:-1;
background:linear-gradient(90deg,rgba(32,37,48,.92) 0%,rgba(32,37,48,.80) 34%,rgba(32,37,48,.30) 62%,rgba(32,37,48,0) 100%)}
header.hero .wrap{position:relative;z-index:1;text-align:left;width:100%}
header.hero .hero-inner{max-width:44ch}
.hero-logo{width:64px;height:64px;fill:var(--gold);margin:0 0 1.2rem;opacity:.95}
header.hero .label{color:var(--gold)}
header.hero h1{font-size:clamp(2.4rem,7vw,5.4rem);letter-spacing:.14em;font-weight:600;line-height:1;color:#fff}
.hero-sub{margin:1rem 0 0;color:#c9c9ce;letter-spacing:-.014em;
font-size:clamp(1.0625rem,1.7vw,1.375rem);line-height:1.4;font-weight:400;max-width:30ch}
.hero-line{width:56px;height:1px;background:var(--gold);margin:1.3rem 0}
header.hero .hero-cta{justify-content:flex-start}
header.hero .btn{border-color:rgba(255,255,255,.4);color:#fff}
header.hero .btn:hover{background:rgba(255,255,255,.1)}
@media(max-width:900px){
  header.hero{min-height:88svh}
  header.hero .veil{background:linear-gradient(180deg,rgba(32,37,48,.55) 0%,rgba(32,37,48,.86) 46%,rgba(32,37,48,.96) 100%)}
  header.hero .hero-inner{max-width:none}
  .hero-sub{max-width:38ch}
  header.hero .hero-bg-img{
  z-index:0!important;inset:0!important;height:100%!important;transform:none!important;will-change:auto!important;
  }
  header.hero .veil{z-index:1!important}
  header.hero .wrap{z-index:2!important}
  header.hero .hero-hover-video{display:none!important}
}
@media(prefers-reduced-motion:reduce){header.hero .bg{transform:none!important}}
header.sub{padding:9.5rem 0 var(--rule-gap);border-bottom:1px solid var(--line)}
header.sub + section{padding-top:var(--rule-gap)}
header.sub h1{margin:.8rem 0 1rem}
/* STATEMENT */
.statement{text-align:center;padding:7rem 0 5rem}
.statement blockquote{font-size:clamp(1.75rem,3.4vw,2.75rem);font-weight:600;letter-spacing:-.015em;max-width:20ch;margin:1.2rem auto 0;line-height:1.1;border:0;padding:0;color:var(--ink)}
/* SECTION TONES — alternating backgrounds */
.tone-a{background:var(--c-ground)}
.tone-b{background:var(--c-raised)}
.tone-c{background:var(--c-panel)}
/* COLLAGE GALLERY — 3 tracks on desktop, original aspect ratios preserved */
.collage{columns:3;column-gap:clamp(14px,1.4vw,18px)}
@media(max-width:1000px){.collage{columns:2}}
@media(max-width:640px){.collage{columns:1}}
.collage figure{break-inside:avoid;margin:0 0 clamp(14px,1.4vw,18px);overflow:hidden;border-radius:0;cursor:zoom-in;position:relative}
.collage img{width:100%;height:auto;display:block;filter:none}
.collage figure:hover img{transform:scale(1.06);filter:none}

.gal-batch[hidden]{display:none}
.collage .gal-batch{columns:3;column-gap:clamp(14px,1.4vw,18px)}
@media(max-width:1000px){.collage .gal-batch{columns:2}}
@media(max-width:640px){.collage .gal-batch{columns:1}}
.collage .gal-batch + .gal-batch{margin-top:clamp(14px,1.4vw,18px)}
.gal-more-btn{cursor:pointer;font:inherit}
.gal-actions{display:flex;justify-content:center;text-align:center;margin-top:2.2rem}
.collage figure img{will-change:transform}
@media(prefers-reduced-motion:reduce){.collage figure img{}
.collage figure:hover img{transform:none}}

.gal-actions label{display:inline-block;border:1px solid var(--gold);border-radius:var(--c-radius-pill);padding:.75rem 1.8rem;
font-size:.9375rem;color:var(--gold);cursor:pointer;}
.gal-actions label:hover{background:rgba(183,156,68,.12)}
/* A .masonry a regi nev; ugyanaz maradt, hogy egyetlen kollazs-rendszer legyen. */

.collage figcaption{display:none}
.collage figure::after{content:"";position:absolute;inset:0;
background:radial-gradient(circle at 50% 50%,rgba(183,156,68,.10),transparent 70%);
opacity:0;pointer-events:none}
.collage figure:hover::after{opacity:1}

/* FEATURED */

/* CARDS + TIMELINE */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;margin-top:2.5rem}
@media(max-width:900px){.cards{grid-template-columns:1fr}}
.card{border-top:1px solid var(--line);padding-top:1.9rem}
.intro{text-align:center;max-width:44ch;margin:0 auto 3.6rem}
/* --- Konyvoldal: a borito a szoveg mellett all, hogy ranezesre lassd, mirol van szo. --- */
.book-lead{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:3.2rem;align-items:start}
.book-lead .book-cover{position:sticky;top:6.5rem}
.book-lead .book-cover figure{margin:0;border-radius:0;overflow:hidden;cursor:zoom-in;
box-shadow:0 24px 60px rgba(0,0,0,.45)}
.book-lead .book-cover img{width:100%;height:auto;display:block;
filter:none}
.book-lead .book-cover figure:hover img{transform:scale(1.04)}
.book-lead .book-text>*:first-child{margin-top:0}
@media(max-width:860px){.book-lead{grid-template-columns:1fr;gap:2rem}
.book-lead .book-cover{position:static;max-width:280px;margin:0 auto}}
.intro .lead{margin-left:auto;margin-right:auto;text-align:center;font-size:1.3125rem}
.intro h2{margin-bottom:.6rem}
.hero-cta{margin-top:2rem;display:flex;gap:.8rem;flex-wrap:wrap}
.hero-cta a{margin:0}
.card .yr{font-size:.75rem;letter-spacing:.14em;color:var(--gold);font-weight:500}
.card h3{font-size:1.375rem;margin:.4rem 0 .6rem;line-height:1.18;letter-spacing:-.014em}
.card p{color:var(--ink-soft);font-size:1rem;line-height:1.47}
.gold{color:var(--gold);font-weight:500}
strong{color:var(--ink);font-weight:600}
.lead strong,.bio-grid strong{color:#e9e9ec}
.card .isbn{font-size:.8125rem;color:var(--ink-soft);letter-spacing:0;margin-top:1.1rem;display:block}
.timeline{margin-top:3rem;border-left:1px solid var(--line);padding-left:2.6rem}
.t-item{position:relative;padding-bottom:3rem}
.t-item::before{content:"";position:absolute;left:calc(-2.6rem - 4px);top:.62em;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.t-item .yr{font-size:.75rem;letter-spacing:.14em;color:var(--gold);font-weight:500}
.t-item h3{font-size:1.375rem;margin:.2rem 0 .15rem;line-height:1.18;letter-spacing:-.014em}
.t-item p{color:var(--ink-soft);font-size:1rem;line-height:1.5;max-width:66ch;margin-top:.55rem}
.t-item .loc{font-size:.875rem}
/* BIO */
.bio-grid{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:4.5rem;align-items:start}
@media(max-width:900px){.bio-grid{grid-template-columns:1fr}}
.bio-grid img{border:0;border-radius:0}
.portrait-circle{width:min(320px,80%);aspect-ratio:1;border-radius:50%;background:
radial-gradient(circle at 50% 42%,#26241f 0%,#171613 62%,#202530 100%);
padding:0;overflow:hidden;display:grid;place-items:center;margin:0 auto;
box-shadow:0 20px 60px rgba(0,0,0,.45),inset 0 0 0 1px var(--line)}
.portrait-circle img{width:104%;max-width:none;transform:translateY(2%)}
.bio-grid p{color:var(--ink-soft);margin-bottom:1.05rem;max-width:62ch;font-size:1.0625rem;line-height:1.47}
.facts{margin-top:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}
@media(max-width:620px){.facts{grid-template-columns:1fr}}
.facts h4{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:1rem}
.facts li{list-style:none;font-size:.9375rem;line-height:1.5;color:var(--ink-soft);padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.06)}
/* MISC */
.linklist{margin:0;padding:0}
.linklist li{list-style:none;padding:var(--row-pad) 0;border-bottom:1px solid var(--line);
font-size:1rem;line-height:1.5;color:var(--ink-soft)}
.linklist li:first-child{padding-top:0}
.linklist li:last-child{border-bottom:0;padding-bottom:0}
.linklist li strong{color:var(--gold);font-weight:600;font-variant-numeric:tabular-nums}
blockquote{font-size:1.5rem;font-weight:500;line-height:1.3;letter-spacing:-.015em;color:var(--ink);border-left:3px solid var(--gold);padding-left:1.8rem;margin:2.6rem 0;max-width:34ch}
details{border-top:1px solid var(--line);padding:var(--rule-gap) 0}
details summary{cursor:pointer;font-size:1.125rem;font-weight:600;letter-spacing:-.012em;color:var(--ink)}
details p{color:var(--ink-soft);margin:1.1rem 0 .2rem;max-width:66ch;font-size:1rem;line-height:1.5}
.note{background:var(--bg2);border:1px solid var(--line);padding:2.2rem 2.4rem;margin:2.6rem 0;border-radius:18px}
.note p{color:var(--ink-soft);max-width:66ch;font-size:1.0625rem;line-height:1.47}
.btn{display:inline-block;border:1px solid var(--gold);border-radius:var(--c-radius-pill);padding:.8rem 1.7rem;font-size:.9375rem;line-height:1.2;letter-spacing:-.01em;font-weight:400;margin:1.6rem .7rem 0 0}
.btn:hover{background:rgba(183,156,68,.12);opacity:1}
footer{border-top:1px solid var(--line);margin-top:clamp(4.5rem,8vw,7.5rem);padding:5.5rem 0 3.5rem;text-align:center}
footer .flogo{width:44px;height:44px;fill:var(--gold);margin:0 auto 1rem;opacity:.85}
footer .brand{letter-spacing:.26em;text-transform:uppercase;font-size:1.0625rem;font-weight:600}
.socials{display:flex;gap:1.6rem;justify-content:center;margin:2rem 0;flex-wrap:wrap}
.socials a{font-size:.8125rem;letter-spacing:-.01em;color:var(--ink-soft)}
.socials a:hover{color:var(--gold)}
.fineprint{font-size:.75rem;color:#6f685c;margin-top:2rem;line-height:1.9}
#lb{position:fixed;inset:0;z-index:100;background:rgba(6,6,7,.97);backdrop-filter:blur(22px);
display:none;align-items:center;justify-content:center;flex-direction:column;padding:6vh 6vw 4vh;cursor:zoom-out}
#lb.open{display:flex;}

#lb figure{margin:0;display:flex;flex-direction:column;align-items:center;max-height:100%}
#lb img{max-height:82vh;max-width:92vw;width:auto;height:auto;border-radius:0;
box-shadow:0 30px 90px rgba(0,0,0,.6);}

#lb .cap{margin-top:1.6rem;font-size:.8125rem;letter-spacing:.02em;color:#8b8b90}
#lb .lb-close{position:fixed;top:1.4rem;right:1.6rem;width:44px;height:44px;border-radius:50%;
border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#f5f5f7;
font-size:1.2rem;line-height:1;cursor:pointer;display:grid;place-items:center;}
#lb .lb-close:hover{background:rgba(255,255,255,.14)}
#lb .lb-nav{position:fixed;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;
border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#f5f5f7;
font-size:1.3rem;cursor:pointer;display:grid;place-items:center;}
#lb .lb-nav:hover{background:rgba(255,255,255,.13)}
#lb .lb-prev{left:1.6rem}#lb .lb-next{right:1.6rem}
@media(max-width:700px){#lb .lb-nav{width:44px;height:44px}#lb .lb-prev{left:.6rem}#lb .lb-next{right:.6rem}}
/* CONSENT */
#consent{position:fixed;left:50%;transform:translateX(-50%);bottom:1.2rem;z-index:120;
width:min(720px,92vw);background:rgba(22,20,17,.97);backdrop-filter:blur(14px);
border:1px solid var(--line);border-radius:18px;padding:1.1rem 1.3rem;display:flex;
gap:1rem;align-items:center;flex-wrap:wrap;box-shadow:0 18px 50px rgba(0,0,0,.5)}
#consent[hidden]{display:none}
#consent p{font-size:.875rem;line-height:1.5;color:var(--ink-soft);margin:0;flex:1 1 300px}
.c-actions{display:flex;gap:.5rem;flex:none}
#consent button{font:inherit;font-size:.875rem;padding:.5rem 1.1rem;border-radius:var(--c-radius-pill);cursor:pointer;
border:1px solid var(--line);background:none;color:var(--ink-soft)}
#consent .c-yes{background:var(--gold);border-color:var(--gold);color:#29303F;font-weight:500}
#consent button:hover{opacity:.85}
section[id]{scroll-margin-top:6rem}

/* ACCESSIBILITY */
.skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.75rem 1rem;border-radius:.5rem;background:#f0c674;color:#29303F;font-weight:700;transform:translateY(-180%);}
.skip-link:focus{transform:translateY(0)}
:where(a,button,summary,[tabindex]):focus-visible{outline:3px solid #f0c674;outline-offset:3px}

/* Stage 42 — canonical Apple-like hero motion surface. The still image remains the LCP/fallback; video is decorative and appears only for fine-pointer hover. */
header.hero .hero-hover-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:0;pointer-events:none;}
header.hero.video-active .hero-hover-video{opacity:1}
header.hero:has(.hero-hover-video) .bg{z-index:-3!important}
@media(max-width:900px),(hover:none),(pointer:coarse){
  header.hero:has(.hero-hover-video) .hero-bg-img{z-index:0!important;inset:0!important;height:100%!important;transform:none!important;will-change:auto!important}
  header.hero:has(.hero-hover-video) .veil{z-index:1!important}
  header.hero:has(.hero-hover-video) .wrap{z-index:2!important}
}
@media (hover:none),(pointer:coarse){header.hero .hero-hover-video{display:none!important}}
@media (prefers-reduced-motion:reduce){header.hero .hero-hover-video{display:none!important}}


/* SOURCE: assets/css/archive-system.css */
/* BANHALMI ART v3 — one restrained editorial system for the complete trilingual archive */
:root{
  --art-bg:var(--c-ground);--art-surface:var(--c-raised);--art-surface-2:var(--c-panel);
  --art-ink:var(--c-ink);--art-soft:#aaa8a4;--art-gold:var(--c-gold);
  --art-line:rgba(255,255,255,.105);--art-accent-line:rgba(183,156,68,.34);
  --art-content:1160px;--art-reading:680px;--art-section:clamp(4.75rem,8vw,7.5rem);
  --art-gap:clamp(.9rem,1.45vw,1.35rem);--art-radius:14px;
  --art-body-leading:1.62;--art-sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Helvetica,Arial,sans-serif
}
*{box-sizing:border-box}html{text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}
body.apple-archive{margin:0;background:var(--art-bg);color:var(--art-ink);font-family:var(--art-sans)!important;font-size:clamp(16px,.12vw + 15.6px,17.5px);font-weight:400;line-height:var(--art-body-leading)!important;letter-spacing:-.012em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body.apple-archive img{display:block;max-width:100%;height:auto}body.apple-archive a{text-underline-offset:.2em}
body.apple-archive .wrap{width:min(calc(100% - clamp(1.4rem,6vw,6rem)),var(--art-content));max-width:none;margin-inline:auto}
body.apple-archive .wrap.narrow,body.apple-archive :is(.narrow,.prose,.intro,.copy,.text):not(section){max-width:var(--art-reading)}
body.apple-archive main>section{position:relative;padding-block:var(--art-section)}body.apple-archive main>section+section{border-top:1px solid var(--art-line)}body.apple-archive section.rule{border-top:1px solid var(--art-accent-line)}
body.apple-archive p{line-height:var(--art-body-leading)!important;text-wrap:pretty;max-width:66ch;margin-block:0}body.apple-archive main p+p{margin-top:1.15em}
body.apple-archive h1,body.apple-archive h2,body.apple-archive h3,body.apple-archive h4{font-family:var(--art-sans)!important;text-wrap:balance;font-weight:590;margin:0;color:var(--art-ink)}
body.apple-archive h1{font-size:clamp(2.35rem,4.35vw,4.35rem);line-height:1.025!important;letter-spacing:-.044em!important;max-width:15ch}
body.apple-archive h2{font-size:clamp(1.85rem,3vw,2.95rem);line-height:1.08!important;letter-spacing:-.034em!important;max-width:21ch}
body.apple-archive h3{font-size:clamp(1.22rem,1.45vw,1.62rem);line-height:1.18!important;letter-spacing:-.022em!important}
body.apple-archive h4{font-size:.98rem;line-height:1.3!important;letter-spacing:-.012em!important}
body.apple-archive h1+p,body.apple-archive h2+p{margin-top:clamp(.85rem,1.35vw,1.2rem)}
body.apple-archive .lead,body.apple-archive p.lead{max-width:58ch;font-size:clamp(1.03rem,.45vw + .95rem,1.19rem);line-height:1.55!important;letter-spacing:-.014em;color:var(--art-soft)}
body.apple-archive .label,body.apple-archive .eyebrow{font-size:.7rem;line-height:1.35;letter-spacing:.145em;text-transform:uppercase;color:var(--art-gold);font-weight:620;margin-bottom:.85rem}
body.apple-archive .meta,body.apple-archive figcaption,body.apple-archive .cap{font-size:.78rem;line-height:1.5!important;color:var(--art-soft);letter-spacing:0}
body.apple-archive .hero{min-height:min(820px,92svh);display:grid;align-items:end;padding-block:clamp(7rem,14vh,11rem) clamp(4rem,8vh,7rem)}
body.apple-archive .hero-inner{max-width:850px}body.apple-archive .hero-sub{max-width:52ch;font-size:clamp(1rem,.55vw + .92rem,1.18rem);line-height:1.52!important}
body.apple-archive .statement{padding-block:clamp(3.5rem,6vw,5.5rem)}body.apple-archive blockquote{font-size:clamp(1.35rem,2.5vw,2.15rem);line-height:1.25!important;max-width:28ch;margin:0}
body.apple-archive section>*+*{margin-top:clamp(1.2rem,2vw,1.8rem)}body.apple-archive section>h2+*,body.apple-archive section>h3+*{margin-top:clamp(.8rem,1.35vw,1.15rem)}
body.apple-archive .card,
body.apple-archive article{min-width:0}body.apple-archive .card+*,
body.apple-archive article+*{margin-top:clamp(1.5rem,2.5vw,2.5rem)}
body.apple-archive hr{border:0;border-top:1px solid var(--art-line);margin:clamp(2.5rem,5vw,4.5rem) 0}body.apple-archive [id*=contact],
body.apple-archive [class*=contact]{scroll-margin-top:7rem}
body.apple-archive .btn,
body.apple-archive .actions a{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.7rem 1.15rem;border:1px solid var(--art-gold);border-radius:var(--c-radius-pill);color:var(--art-gold);font-size:.88rem;font-weight:520;line-height:1.2;text-decoration:none;}
body.apple-archive .btn:hover,
body.apple-archive .actions a:hover{background:var(--art-gold);color:#202530;transform:translateY(-1px);opacity:1}body.apple-archive .actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
body.apple-archive main nav{position:static!important;inset:auto!important;z-index:auto!important;padding:0!important;background:none!important;backdrop-filter:none!important}
@media(min-width:901px){body.apple-archive #menu{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;overflow:hidden!important;padding:clamp(4.75rem,8vh,6.5rem) clamp(2rem,6vw,6rem) clamp(1.5rem,3vh,2.5rem)!important}body.apple-archive:not(.menu-open) #menu{opacity:0!important;visibility:hidden!important;pointer-events:none!important}body.apple-archive.menu-open #menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;display:grid!important;place-items:center!important}body.apple-archive #menu .mwrap{width:min(calc(100% - 8vw),1800px)!important;max-width:1800px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:clamp(3rem,7vw,7rem)!important;row-gap:clamp(.7rem,1.4vh,1.1rem)!important;align-items:center!important;align-content:center!important;margin:0 auto!important}body.apple-archive #menu .mwrap>div:not(.m-foot){display:block!important;min-width:0!important}body.apple-archive #menu details{display:none!important}body.apple-archive #menu .m-main{display:block!important;color:var(--art-gold)!important;font-size:clamp(1.3rem,1.65vw,1.7rem)!important;font-weight:590!important;line-height:1.12!important;padding:0!important;margin:0!important;text-decoration:none!important}body.apple-archive #menu .m-main:hover,body.apple-archive #menu .m-main:focus-visible{color:#d3bb6b!important}body.apple-archive #menu .m-desc{color:var(--art-ink)!important;font-size:clamp(.79rem,.18vw + .76rem,.88rem)!important;line-height:1.42!important;margin:.2rem 0 clamp(.65rem,1.25vh,1rem)!important;max-width:48ch!important}body.apple-archive #menu [data-contact-position="left"]{margin:clamp(.8rem,1.4vh,1.15rem) 0 0!important;padding-top:clamp(.75rem,1.3vh,1rem)!important;border-top:1px solid var(--art-line)!important}body.apple-archive #menu [data-contact-position="left"] .m-desc{margin-bottom:0!important}body.apple-archive #menu .m-foot{grid-column:1/-1!important;color:var(--art-ink)!important;padding-top:clamp(.55rem,1vh,.85rem)!important;margin-top:0!important;border-top:1px solid var(--art-line)!important;font-size:.76rem!important;line-height:1.4!important}}
@media(min-width:901px) and (max-height:760px){body.apple-archive #menu{padding-top:4rem!important;padding-bottom:.8rem!important}body.apple-archive #menu .mwrap{column-gap:3.5rem!important;row-gap:.45rem!important}body.apple-archive #menu .m-main{font-size:1.12rem!important;line-height:1.08!important}body.apple-archive #menu .m-desc{font-size:.72rem!important;line-height:1.3!important;margin:.1rem 0 .42rem!important}body.apple-archive #menu [data-contact-position="left"]{margin-top:.5rem!important;padding-top:.5rem!important}body.apple-archive #menu .m-foot{padding-top:.45rem!important;font-size:.7rem!important}}
body.apple-archive .collage,
body.apple-archive [data-gallery]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--art-gap)!important;align-items:start;margin-top:clamp(2.25rem,4vw,3.75rem)}
body.apple-archive .collage figure,
body.apple-archive [data-gallery] figure,
body.apple-archive [data-gallery] figure:nth-child(n){grid-column:auto!important;grid-row:auto!important;margin:0!important;min-width:0;overflow:hidden;border-radius:var(--art-radius);background:var(--art-surface)}
body.apple-archive .collage img,
body.apple-archive [data-gallery] img{width:100%;height:auto;}body.apple-archive .collage figure:hover img,
body.apple-archive [data-gallery] figure:hover img{transform:scale(1.015)}body.apple-archive figcaption,body.apple-archive .cap{padding:.65rem .1rem .15rem;background:var(--art-bg)}
body.apple-archive #galwrap>.gal-batch{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--art-gap)!important}
body.apple-archive #galwrap>.gal-batch[hidden],body.apple-archive [data-gallery][hidden]{display:none!important}
body.apple-archive #galwrap>.gal-batch figure{display:block!important;width:100%;margin:0!important}
body.apple-archive .timeline{display:grid;gap:0;margin-top:2.2rem}body.apple-archive .timeline>*{display:grid;grid-template-columns:minmax(5.5rem,8rem) minmax(0,1fr);gap:1.15rem;padding:1rem 0;border-top:1px solid var(--art-line);align-items:start}body.apple-archive .timeline>*>.yr{grid-column:1}body.apple-archive .timeline>*>*:not(.yr):not(.year){grid-column:2}
/* Egy tengely a blokkon belül. A .wrap középre igazítása mellett a h2 19ch-s és a
   .presence-copy 68ch-s korlátja automatikus margóval középre húzta őket, a kicker és
   a továbbvezető link viszont balra maradt: mérve 1440px-en négy elem, három
   különböző bal él— 158, 454, 246, 158. A múzeumi rendszer egy függőleges tengelyre
   épül, ezért mind a négy balra kerül. */
body.apple-archive .presence-context--intro .wrap{text-align:left}
body.apple-archive .presence-context--intro :is(h2,.presence-copy,.presence-kicker,.presence-link){margin-inline:0;max-width:var(--art-reading)}
@media(max-width:900px){:root{--art-section:clamp(4rem,10vw,6rem)}body.apple-archive .hero{min-height:82svh}body.apple-archive #menu{overflow-y:auto!important;overscroll-behavior:contain}body.apple-archive .collage,
body.apple-archive [data-gallery]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){body.apple-archive #galwrap>.gal-batch{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){:root{--art-gap:.75rem;--art-body-leading:1.58;--art-section:clamp(3.75rem,13vw,5rem)}body.apple-archive .wrap{width:min(calc(100% - 1.25rem),var(--art-content))}body.apple-archive h1{font-size:clamp(2.15rem,10vw,3.15rem);max-width:none}body.apple-archive h2{font-size:clamp(1.7rem,7.6vw,2.3rem)}body.apple-archive .hero{min-height:76svh;padding-bottom:3.5rem}body.apple-archive .collage,
body.apple-archive [data-gallery],
body.apple-archive #galwrap>.gal-batch{grid-template-columns:1fr}body.apple-archive .timeline>*{grid-template-columns:1fr;gap:.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.apple-archive *{}}
body.apple-archive .consent-reset{appearance:none;border:0;background:transparent;color:var(--art-gold);font:inherit;font-size:.78rem;line-height:1.4;padding:.25rem 0;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
body.apple-archive .consent-reset:hover,body.apple-archive .consent-reset:focus-visible{color:var(--art-ink)}

/* Live footer/source correction: this file is loaded directly by all archive pages. */
body.apple-archive .archive-source-hub{display:block!important;grid-template-columns:none!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;margin-top:clamp(2rem,4vw,3.5rem)!important}
body.apple-archive .archive-source-hub>*{display:grid!important;grid-template-columns:minmax(9rem,13rem) minmax(0,1fr)!important;gap:clamp(1rem,3vw,3rem)!important;align-items:start!important;margin:0!important;padding:clamp(1rem,1.8vw,1.4rem) 0!important;border:0!important;border-top:1px solid var(--art-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
body.apple-archive .archive-source-hub a{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
body.apple-archive .archive-source-hub h3,body.apple-archive .archive-source-hub h4{font-size:.82rem!important;line-height:1.4!important;letter-spacing:.09em!important;text-transform:uppercase!important;color:var(--art-gold)!important}
body.apple-archive .archive-source-hub p,body.apple-archive .archive-source-hub li,body.apple-archive .archive-source-hub a{font-size:.92rem!important;line-height:1.55!important;color:var(--art-soft)!important}
/* Footer position/background/spacing is now owned solely by footer-elegant.css
   (loaded after this file). The old rule here was fully shadowed by it and
   only added ambiguity — removed rather than left as dead, conflicting code. */
body.apple-archive footer{clear:both!important;text-align:center!important}
body.apple-archive footer>*{background:transparent!important;border-radius:0!important;box-shadow:none!important}
body.apple-archive footer .fineprint{max-width:62ch!important;margin:2rem auto 0!important}
@media(max-width:700px){body.apple-archive .archive-source-hub>*{grid-template-columns:1fr!important;gap:.45rem!important;padding:1.1rem 0!important}}


/* SOURCE: assets/css/presence-core.css */
:root{--menu-l1:1.0625rem;--menu-l2:.9375rem;--menu-meta:.8125rem;--presence-bg:var(--c-ground);--presence-raised:var(--c-raised);--presence-panel:var(--c-panel);--presence-ink:var(--c-ink);--presence-soft:#b8b4ad;--presence-gold:var(--c-gold);--presence-line:rgba(183,156,68,.28);--presence-radius:18px;--presence-measure:68ch}
/* Two-tier background system, replacing the previous five near-identical
   near-black shades (differences of a few RGB units, imperceptible on
   screen). --presence-bg is the resting default for almost every section.
   --presence-raised is reserved for the single "thesis statement" intro
   block so it reads as deliberately emphasised. --presence-panel is for
   card-style elements (grids, link tiles) so they read as distinct objects
   against whichever section background surrounds them. */
html{}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body :where(h1,h2,h3,h4,p,li,a,button,summary){font-style:normal}
main section{scroll-margin-top:5.5rem}
main section>.wrap{width:min(1180px,calc(100% - 2.5rem));margin-inline:auto}
.intro{max-width:var(--presence-measure)!important;margin:0 0 clamp(2.8rem,5vw,4.4rem)!important}
.intro .lead{max-width:58ch;color:var(--presence-soft);line-height:1.65}
.label{letter-spacing:.14em!important;line-height:1.35!important}
.btn,.gal-actions label{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.72rem 1.25rem!important;border-radius:var(--c-radius-pill)!important;line-height:1.2!important;text-decoration:none;}
.btn:hover,.gal-actions label:hover{transform:translateY(-1px)}
.hero-cta{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.4rem}
.presence-context{padding:clamp(3.6rem,7vw,6.8rem) 0;border-block:1px solid var(--presence-line);background:linear-gradient(180deg,var(--presence-raised),var(--presence-bg))}
.presence-context .presence-kicker{font-size:.72rem;line-height:1.35;letter-spacing:.15em;text-transform:uppercase;color:var(--presence-gold);font-weight:650;margin:0 0 .6rem}
.presence-context h2{max-width:19ch;margin:0 0 1rem}
.presence-context .presence-copy{max-width:68ch;color:var(--presence-soft);font-size:clamp(1.08rem,1.8vw,1.3rem);line-height:1.55}
.presence-context .presence-link{display:inline-block;margin-top:1.35rem;color:var(--presence-gold);font-size:.88rem}
.presence-context--intro{padding:clamp(3.5rem,6vw,5.5rem) 0;border-top:1px solid var(--presence-line);border-bottom:1px solid var(--presence-line);background:linear-gradient(180deg,var(--presence-raised),var(--presence-bg))}
.presence-context--intro .wrap{max-width:1180px}
.presence-context--intro h2{font-size:clamp(2rem,4vw,3.75rem);line-height:1.06;margin:0 0 1rem;max-width:19ch;margin-inline:auto}
.presence-context--intro .presence-copy{font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.62;max-width:66ch;margin-inline:auto}
.presence-context--intro .presence-link{font-size:.88rem}
.presence-periods{padding:clamp(4.5rem,8vw,7.5rem) 0;border-block:1px solid var(--presence-line);background:var(--presence-bg)}
.presence-periods .section-head{max-width:72ch;margin-bottom:clamp(2.2rem,5vw,4rem)}
.presence-periods .section-head h2{max-width:20ch;margin:.45rem 0 1rem}
.presence-periods .section-head .lead{color:var(--presence-soft);line-height:1.68}
.presence-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2.4rem,5vw,5rem);border-top:1px solid var(--presence-line)}
.presence-period{padding:1.5rem 0 2rem;border-bottom:1px solid var(--presence-line)}
.presence-period h3{margin:.35rem 0 .65rem;line-height:1.22;font-size:clamp(1.15rem,2vw,1.5rem)}
.presence-period p:last-child{max-width:58ch;color:var(--presence-soft);line-height:1.64}
body.apple-archive .presence-period-links{position:static!important;inset:auto!important;width:auto!important;height:auto!important;z-index:auto!important;display:flex!important;flex-wrap:wrap;gap:.7rem 1.4rem;margin-top:2rem;padding:1.2rem 0 0!important;background:none!important;backdrop-filter:none!important}
.presence-period-links a{font-size:.84rem;color:var(--presence-gold)}







.oeuvre-integrity-closing{max-width:72ch;margin:2rem 0 0;color:var(--presence-soft);line-height:1.68}


.record-depth{padding:clamp(4rem,7vw,6.8rem) 0;border-top:1px solid var(--presence-line);background:var(--presence-bg)}
.record-depth-head{max-width:76ch;margin-bottom:2.5rem}
.record-depth-head h2{max-width:22ch;margin:.45rem 0 1rem;font-size:clamp(1.8rem,3.8vw,3.2rem);line-height:1.08}
.record-depth-head>p:not(.label){color:var(--presence-soft);line-height:1.7}





.record-relationships{padding:clamp(3.8rem,7vw,6.5rem) 0;border-top:1px solid var(--presence-line);background:var(--presence-bg)}
.record-context-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(1.5rem,5vw,5rem);align-items:start}
.record-context-head .label{grid-column:1/-1;margin:0}
.record-context-head h2{margin:0;max-width:18ch;font-size:clamp(1.7rem,3.5vw,3rem);line-height:1.08}
.record-context-head>p:last-child{margin:0;max-width:62ch;color:var(--presence-soft);line-height:1.7}
.record-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:2.4rem;border:1px solid var(--presence-line);background:var(--presence-line);border-radius:var(--presence-radius);overflow:hidden}
.record-links a{min-height:118px;padding:1.15rem;background:var(--presence-panel);color:var(--presence-ink);display:flex;flex-direction:column;justify-content:space-between;gap:.65rem;}
.record-links a:hover{background:var(--presence-raised)}
.record-links strong{font-size:.92rem;line-height:1.25}
.record-links span{font-size:.78rem;line-height:1.42;color:var(--presence-soft)}
.project-evidence{padding:clamp(3.8rem,7vw,6.5rem) 0;border-top:1px solid var(--presence-line);background:var(--presence-bg)}
.project-evidence-head{max-width:72ch}
.project-evidence-head h2{max-width:22ch;margin:.45rem 0 1rem;font-size:clamp(1.7rem,3.5vw,3rem);line-height:1.08}
.project-evidence-head>p:last-child{color:var(--presence-soft);line-height:1.7}
.project-evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:2.4rem;border:1px solid var(--presence-line);background:var(--presence-line);border-radius:var(--presence-radius);overflow:hidden}
.evidence-item{min-width:0;background:var(--presence-panel);display:flex;flex-direction:column}
.evidence-link{min-height:132px;padding:1.15rem;background:var(--presence-panel);color:var(--presence-ink);display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:.8rem}
.evidence-link strong{font-size:.94rem;line-height:1.35}
.evidence-link span{font-size:.76rem;line-height:1.4;color:var(--presence-soft)}
.evidence-context{display:block;padding:.72rem 1.15rem;border-top:1px solid var(--presence-line);color:var(--presence-gold);font-size:.76rem;line-height:1.35}
body.apple-archive .presence-context[data-source-hub] .wrap.narrow{max-width:1006px}
.archive-source-hub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--presence-line);border:1px solid var(--presence-line);margin-top:2rem}.archive-source-hub a{background:var(--presence-panel);padding:1.25rem;color:var(--presence-ink)}.archive-source-hub strong{display:block;font-size:1rem}.archive-source-hub small{display:block;color:var(--presence-soft);line-height:1.45;margin-top:.35rem}
@media(min-width:861px){#menu{overflow:hidden!important;padding:5.2rem 5vw 1.7rem!important;display:flex!important;align-items:center!important}#menu .mwrap{width:calc(100% - 8vw)!important;max-width:1800px!important;margin:auto!important;grid-template-columns:1fr 1fr!important;gap:.62rem 4.5rem!important;align-content:center!important}#menu .mwrap>div{display:block!important;min-width:0}#menu details{display:none!important}#menu .m-main{display:block!important;font-size:clamp(1.08rem,1.45vw,1.42rem)!important;line-height:1.08!important;padding:.15rem 0!important;margin:0!important}#menu .m-desc{display:block!important;font-size:.76rem!important;line-height:1.3!important;margin:.12rem 0 .44rem!important;max-width:48ch!important}#menu .m-foot{grid-column:1/-1!important;padding-top:.65rem!important;margin-top:.1rem!important;font-size:.76rem!important}}
@media(max-height:760px) and (min-width:861px){#menu{padding-top:4.6rem!important;padding-bottom:1rem!important}#menu .m-main{font-size:1.08rem!important}#menu .m-desc{font-size:.72rem!important;margin-bottom:.3rem!important}.hero-cta{margin-top:1rem}}

@media(max-width:900px){.presence-period-grid{grid-template-columns:1fr}.record-context-head{grid-template-columns:1fr}.record-context-head .label{grid-column:auto}.record-links{grid-template-columns:1fr 1fr}.project-evidence-grid{grid-template-columns:1fr 1fr}}
@media(max-width:860px){body>nav{padding:.7rem max(.75rem,env(safe-area-inset-right)) .7rem max(.75rem,env(safe-area-inset-left));gap:.55rem}body>nav .brand{gap:.42rem;letter-spacing:.16em;font-size:.72rem}/* .langs / .langs a were set here too (including a 44px tap-target attempt),
   but responsive-header-system.css's mobile override -- gap:.05rem!important,
   min-width/min-height:34px!important -- always wins: !important plus the
   same specificity plus later load order. The 44px attempt never rendered.
   Confirmed dead; not touching pixel values in this pass, only removing the
   inert duplicate. */.burger{width:42px;height:42px;padding-inline:9px}body:not(.menu-open) #menu{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}body.menu-open #menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;display:block!important}#menu{box-sizing:border-box!important;position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;overflow-y:auto!important;overscroll-behavior:contain;padding:5.25rem max(1rem,env(safe-area-inset-right)) 2rem max(1rem,env(safe-area-inset-left))!important}#menu .mwrap{display:block!important;max-width:34rem!important}#menu .mwrap>div{display:block!important}#menu .m-main{display:block!important;font-size:var(--menu-l1)!important;line-height:1.35!important;font-weight:400!important;padding:.72rem 0!important;min-height:44px!important}#menu .m-desc{font-size:var(--menu-meta)!important;line-height:1.45!important;margin:.05rem 0 .55rem!important;max-width:38ch!important}#menu details{padding:.65rem 0!important}#menu details summary{display:block!important;font-size:var(--menu-l2)!important;line-height:1.35!important;font-weight:600!important;padding:.72rem 0!important;min-height:44px!important}#menu .sub{columns:1!important;margin-top:.45rem!important}#menu .sub a{display:block!important;font-size:var(--menu-l2)!important;line-height:1.35!important;padding:.72rem 0!important;min-height:44px!important;overflow-wrap:break-word}#menu [data-contact-position="left"]{padding-top:.65rem;margin-top:.4rem;border-top:1px solid var(--presence-line)}#menu .m-foot{grid-column:auto!important;margin-top:1rem!important;padding:1rem 0 max(1rem,env(safe-area-inset-bottom))!important;font-size:var(--menu-meta)!important;line-height:1.45!important}#menu .m-foot a,#menu .svc-cta{display:block!important;font-size:var(--menu-meta)!important;line-height:1.45!important;padding:.72rem 0!important;min-height:44px!important}.archive-source-hub{grid-template-columns:1fr 1fr}.hero-cta{gap:.55rem}.hero-cta .btn{font-size:.86rem;padding:.66rem 1rem!important}}
@media(max-width:640px){main section>.wrap{width:min(100% - 1.5rem,1180px)}.intro{margin-bottom:2.6rem!important}.collage figure{border-radius:12px!important}.hero-cta{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:360px}.hero-cta .btn{width:100%}.presence-context--intro{padding:3.75rem 0}.presence-context--intro h2{font-size:clamp(1.9rem,9vw,2.65rem)}.presence-context--intro .presence-copy{font-size:1rem;line-height:1.6}.presence-period-links{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.record-links,
.project-evidence-grid{grid-template-columns:1fr}.record-links a,.evidence-link{min-height:96px}}
@media(max-width:520px){.archive-source-hub{grid-template-columns:1fr}.presence-context{padding:4rem 0}.presence-context--intro{padding:3.5rem 0}.hero-cta{grid-template-columns:1fr 1fr}.intro .lead{font-size:1rem}.presence-period p:last-child{line-height:1.64}.presence-period-links{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.gal-actions label{}.btn:hover,.gal-actions label:hover{transform:none}}


/* SOURCE: assets/css/apple-editorial-system.css */
/* BANHALMI ART — Apple-led editorial and trust layer */
:root{
  --bn-content-wide:clamp(72rem,92vw,112rem);
  --bn-content-editorial:clamp(58rem,78vw,92rem);
  --bn-reading:46rem;
  --bn-space-1:.5rem;
  --bn-space-2:2.5rem;
  --bn-space-3:4rem;
  --bn-space-4:6.5rem;
  --bn-rule:rgba(255,255,255,.13);
  --bn-gold:#DCC56B;
}
body.apple-archive{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(16px,.18vw + 15px,18px)!important;
  line-height:1.62!important;
  letter-spacing:-.012em!important;
  overflow-x:hidden;
}
body.apple-archive h1,body.apple-archive h2,body.apple-archive h3,body.apple-archive h4{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
  font-weight:600!important;
  text-wrap:balance;
}
body.apple-archive h1{font-size:clamp(2.55rem,5vw,5.1rem)!important;line-height:1.02!important;letter-spacing:-.048em!important}
body.apple-archive h2{font-size:clamp(2rem,3.4vw,3.45rem)!important;line-height:1.08!important;letter-spacing:-.036em!important}
body.apple-archive h3{font-size:clamp(1.25rem,1.65vw,1.72rem)!important;line-height:1.18!important;letter-spacing:-.024em!important}
body.apple-archive p,body.apple-archive li{line-height:1.62!important}
body.apple-archive main>section{padding-block:clamp(4.5rem,7vw,7.5rem)!important}
body.apple-archive main>section+section{border-top:1px solid var(--bn-rule)!important}
body.apple-archive main :where(.wrap,.container){width:min(calc(100% - clamp(2rem,6vw,7rem)),var(--bn-content-editorial))!important;max-width:none!important}
body.apple-archive main :where(.wrap,.container).narrow,
body.apple-archive main :where(.narrow,.prose,.copy,.text){max-width:var(--bn-reading)!important}
body.apple-archive main :where(.lead,p.lead){max-width:62ch!important;font-size:clamp(1.05rem,.45vw + .95rem,1.23rem)!important;line-height:1.56!important}

/* Rules must breathe: no text or control may sit directly against a decorative line. */
body.apple-archive :where(hr,.rule,.divider){margin-block:clamp(2.2rem,4vw,4rem)!important}
body.apple-archive :where(.card,.panel,.record,.period-card,.menu-item){padding-block:clamp(1.25rem,2vw,2rem)}
body.apple-archive :where(.actions,.buttons,.cta-row,.hero-cta){gap:clamp(.8rem,1.5vw,1.35rem)!important;margin-top:clamp(1.8rem,3vw,2.8rem)!important}
body.apple-archive :where(.btn,.button,a.cta){min-height:46px!important;padding:.78rem 1.35rem!important;font-size:.9rem!important;font-weight:600!important;line-height:1.2!important}

/* Homepage quote: one optical centre shared with the gallery introduction. */
body.apple-archive .statement.wrap{
  width:min(calc(100% - clamp(2rem,8vw,9rem)),72rem)!important;
  max-width:72rem!important;
  margin-inline:auto!important;
  padding-inline:0!important;
  text-align:center!important;
}
body.apple-archive .statement.wrap .label{
  display:block!important;
  width:100%!important;
  margin:0 auto clamp(1.15rem,2vw,1.8rem)!important;
  text-align:center!important;
}
body.apple-archive .statement.wrap blockquote{
  max-width:25ch!important;
  margin-inline:auto!important;
  text-align:center!important;
  text-wrap:balance!important;
}
body.apple-archive #works>.wrap>.intro{
  max-width:72rem!important;
  margin-inline:0!important;
  text-align:left!important;
}
body.apple-archive #works>.wrap>.intro :where(.lead,p){margin-inline:0!important}
body.apple-archive .statement.wrap + #works{padding-top:clamp(3.5rem,5vw,5.5rem)!important}

/* Homepage journey and exhibitions: one true centre axis with equal breathing room. */
@media(min-width:1101px){
  body.apple-archive #journey :where(.timeline,.chronology,.archive-list,.record-list),
  body.apple-archive #exhibitions :where(.timeline,.chronology,.archive-list,.record-list){
    position:relative!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:clamp(8rem,11vw,12rem)!important;
    row-gap:0!important;
  }
  body.apple-archive #journey :where(.timeline,.chronology,.archive-list,.record-list)::before,
  body.apple-archive #exhibitions :where(.timeline,.chronology,.archive-list,.record-list)::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    width:1px;
    transform:translateX(-50%);
    background:rgba(183,156,68,.38);
    pointer-events:none;
  }
  body.apple-archive #journey :where(.timeline,.chronology,.archive-list,.record-list)>*,
  body.apple-archive #exhibitions :where(.timeline,.chronology,.archive-list,.record-list)>*{
    min-width:0!important;
    border-left:0!important;
  }
  body.apple-archive #journey :where(.timeline,.chronology,.archive-list,.record-list)>*:nth-child(odd),
  body.apple-archive #exhibitions :where(.timeline,.chronology,.archive-list,.record-list)>*:nth-child(odd){
    padding-right:clamp(2.5rem,4vw,4.5rem)!important;
  }
  body.apple-archive #journey :where(.timeline,.chronology,.archive-list,.record-list)>*:nth-child(even),
  body.apple-archive #exhibitions :where(.timeline,.chronology,.archive-list,.record-list)>*:nth-child(even){
    padding-left:clamp(2.5rem,4vw,4.5rem)!important;
  }
  body.apple-archive #journey :where(.timeline,.chronology,.archive-list,.record-list)>*::before,
  body.apple-archive #exhibitions :where(.timeline,.chronology,.archive-list,.record-list)>*::before{
    width:.52rem!important;
    height:.52rem!important;
  }
}

/* Inner pages use the desktop canvas instead of a phone-width column. */
@media(min-width:1000px){
  body.apple-archive main:not([data-narrative]) :where(.wrap,.container):not(.narrow),
body.apple-archive .writing-page,
body.apple-archive .community-page{width:min(calc(100% - 6vw),var(--bn-content-editorial))!important;margin-inline:auto!important}
  body.apple-archive main :where(.article-body,.writing-body,.longform,.essay){max-width:68rem!important;margin-inline:auto!important}
}

/* Gallery system: elegant three-column desktop canvas. */
@media(min-width:1101px){
  body.apple-archive :where(#galwrap,.gallery-wrap,.archive-gallery,.project-gallery){
    width:min(calc(100vw - 5vw),var(--bn-content-wide))!important;
    max-width:none!important;
    margin-inline:50%!important;
    transform:translateX(-50%)!important;
  }
  body.apple-archive :where(.collage,.gallery-grid,.archive-gallery-grid,.project-gallery-grid){
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(1rem,1.6vw,1.8rem)!important;
  }
  body.apple-archive :where(.collage,.gallery-grid,.archive-gallery-grid,.project-gallery-grid)>*{
    min-width:0!important;
    margin:0!important;
  }
  /* #galwrap carries the .collage class for legacy reasons, but its direct
     children are .gal-batch wrappers (paginated "load more" groups), not
     photo figures. Letting the generic 3-col grid rule above also apply to
     #galwrap squeezed each batch into its own column and turned every
     photo's real 3-col grid into a nested 1/3-width strip — this restores
     #galwrap to a plain stacked block so only #galwrap>.gal-batch grids. */
  body.apple-archive #galwrap.collage{display:block!important}
}
@media(min-width:701px) and (max-width:1100px){
  body.apple-archive :where(.collage,.gallery-grid,.archive-gallery-grid,.project-gallery-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  body.apple-archive :where(.collage,.gallery-grid,.archive-gallery-grid,.project-gallery-grid){grid-template-columns:1fr!important}
}

/* Curatorial periods: readable evidence, not cramped cells. */
body.apple-archive .curatorial-periods{margin-top:clamp(3rem,5vw,5rem)}
body.apple-archive .curatorial-periods__intro{max-width:66rem;margin-bottom:clamp(2rem,4vw,4rem)}
body.apple-archive .curatorial-periods__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--bn-rule);border:1px solid var(--bn-rule)}
body.apple-archive .curatorial-period{background:var(--presence-panel,#2D3444);padding:clamp(1.6rem,2.8vw,3rem)!important;min-width:0}
/* When the grid has an odd number of items, the trailing card would
   otherwise span the full width while its text stayed left-aligned,
   reading as off-centre against the two-column rhythm above it. Treat it
   instead as a deliberate closing statement: centred, narrower than the
   full span, so it visually resolves rather than looking like a stray
   half-empty row. */
body.apple-archive .curatorial-period:last-child:nth-child(odd){grid-column:1/-1;display:flex;flex-direction:column;align-items:center;text-align:center;padding-inline:10vw!important}
body.apple-archive .curatorial-period:last-child:nth-child(odd) p{margin-inline:auto}
body.apple-archive .curatorial-period .period-no{display:block;color:var(--bn-gold);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:.8rem}
body.apple-archive .curatorial-period p{max-width:62ch;color:var(--art-soft,#aaa8a4)}

/* Family pages: fewer ornamental bars and a calmer documentary rhythm. */
body.apple-archive.family-page main>section{border-top:0!important;padding-block:clamp(2.5rem,5vw,5rem)!important}
body.apple-archive.family-page main>section+section{border-top:1px solid rgba(255,255,255,.08)!important}


body.apple-archive.family-page :where(.archive-source-note,.archive-quote){margin-top:clamp(2.2rem,3.5vw,3.5rem)!important;padding-top:clamp(1.8rem,3vw,2.8rem)!important}
body.apple-archive.family-page :where(hr,.rule,.divider){opacity:.65!important}

/* Menu hierarchy: gold titles, visible header, no doubled separators. */
body.apple-archive #menu .m-main,
body.apple-archive #menu summary{color:var(--bn-gold)!important;font-weight:600!important}
body.apple-archive #menu .m-desc{color:rgba(245,245,247,.82)!important}
body.apple-archive #menu :where(.m-main,details){border-top:1px solid rgba(255,255,255,.17)!important}
body.apple-archive #menu details.svc{display:block!important;border-top:0!important}
body.apple-archive #menu details.svc summary{border-top:1px solid rgba(255,255,255,.17)!important;padding-top:clamp(1rem,1.6vw,1.4rem)!important}
body.apple-archive.menu-open nav{position:relative!important;z-index:1002!important;visibility:visible!important;opacity:1!important}
body.apple-archive .burger{font-size:0!important;color:transparent!important}
/* .burger span{display:block!important} used to live here too, but
   final-layout-fixes.css's nav .burger span{display:none!important} always
   outranks it (3 elements beat 2 in specificity) -- the spans this was meant
   to reveal are never shown. Removed; see page-base.css for the fuller note. */

/* Press hierarchy: section labels gold, actual links visibly interactive and distinct. */
body.apple-archive :where(.press-grid,.press-list,.press-era) a:not(.btn){color:#f5f5f7!important;text-decoration-color:rgba(183,156,68,.55)!important;text-decoration-thickness:1px!important}
body.apple-archive :where(.press-grid,.press-list,.press-era) a:not(.btn):hover{color:#d7c16f!important}
body.apple-archive :where(.press-label,.eyebrow,.label){color:var(--bn-gold)!important}

/* Footer: editorial links, never cells. */
body.apple-archive footer :where(a,.footer-link,.social-link){
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  border-radius:0!important;
}
body.apple-archive footer :where(.footer-grid,.footer-links,.socials,.link-grid){
  gap:clamp(.8rem,1.8vw,1.5rem)!important;
  background:transparent!important;
}
body.apple-archive footer :where(.footer-grid,.footer-links,.socials,.link-grid)>*{border:0!important;background:transparent!important}

@media(max-width:900px){
  body.apple-archive .curatorial-periods__grid{grid-template-columns:1fr}
  body.apple-archive .curatorial-period:last-child:nth-child(odd){grid-column:auto;display:block;text-align:left;padding-inline:clamp(1.6rem,2.8vw,3rem)!important}
  body.apple-archive .curatorial-period:last-child:nth-child(odd) p{margin-inline:0}
  body.apple-archive .statement.wrap blockquote{max-width:28ch!important}
}

/* Press archive page (chapter-nav, thesis, era sections, article grid, source
   links) never received the unified design pass — it still used bare legacy
   classes with zero styling, so links fell back to default browser blue and
   the chapter-nav items ran together with no gap. Bringing it in line with
   the rest of the site's editorial language. */
body.apple-archive .chapter-nav{display:flex;flex-wrap:wrap;gap:.5rem 1.75rem;margin-top:1.6rem}
body.apple-archive .chapter-nav a{color:var(--art-gold);font-size:.85rem;letter-spacing:.02em;text-decoration:none;white-space:nowrap}
body.apple-archive .chapter-nav a:hover{text-decoration:underline}
body.apple-archive section.thesis{padding:clamp(3rem,6vw,5rem) 0;border-top:1px solid var(--art-line);border-bottom:1px solid var(--art-line);background:rgba(255,255,255,.012)}
body.apple-archive section.thesis h2{max-width:20ch}
body.apple-archive section.thesis p{max-width:72ch;color:var(--art-soft);line-height:1.68}
body.apple-archive section.era{padding:clamp(3.5rem,6vw,5.5rem) 0}
body.apple-archive section.era:nth-of-type(even){background:rgba(255,255,255,.012)}
body.apple-archive .era-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1.25rem 3rem;margin-bottom:clamp(2rem,4vw,3rem)}
body.apple-archive .era-no{color:var(--art-gold);font-size:.78rem;letter-spacing:.1em;margin:0 0 .5rem}
body.apple-archive .era-head h2{margin:0;max-width:24ch}
body.apple-archive .era-copy{max-width:48ch;color:var(--art-soft);line-height:1.62;margin:0}
body.apple-archive section.era .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(2.5rem,5vw,5rem);border-top:1px solid var(--art-line)}
body.apple-archive section.era .grid article.item{padding:1.5rem 0 1.8rem;border-bottom:1px solid var(--art-line)}
body.apple-archive section.era .grid article.item>a{color:var(--art-ink);font-weight:600;font-size:1.02rem;line-height:1.32;text-decoration:none}
body.apple-archive section.era .grid article.item>a:hover{color:var(--art-gold)}
body.apple-archive section.era .grid article.item p.desc{margin:.55rem 0 0;color:var(--art-soft);line-height:1.6}
body.apple-archive section.era .grid article.item p.note{margin:.55rem 0 0;color:var(--art-gold);font-size:.76rem;letter-spacing:.05em}
body.apple-archive .source-grid a{color:var(--art-ink);text-decoration:none}
body.apple-archive .source-grid a:hover strong{color:var(--art-gold)}
body.apple-archive .source-grid strong{display:block;color:var(--art-gold);font-size:.95rem;margin-bottom:.3rem}
body.apple-archive .source-grid small{display:block;color:var(--art-soft);font-size:.85rem;line-height:1.5}
@media(max-width:700px){
  body.apple-archive section.era .grid{grid-template-columns:1fr}
  body.apple-archive .era-head{gap:.5rem}
}

/* Stage 47 — archive page surfaces stay full-bleed while their inner reading
   columns remain deliberately narrow. This removes the desktop black gutters
   caused by constraining the entire <main> instead of its content wrappers. */
@media(min-width:1000px){
  body.apple-archive :is(main.writing-page,main.community-page){
    width:100%!important;
    max-width:none!important;
    margin-inline:0!important;
  }
}

/* Lighthouse contrast: the tiny hero eyebrow sits on photography, so the
   regular brand gold is not sufficient on every image tone. Use a light-gold
   text role here only; the brand accent remains unchanged everywhere else. */
body.apple-archive header.hero .label{color:#E8D99E!important;text-shadow:0 1px 12px rgba(0,0,0,.35)}


/* SOURCE: assets/css/design-refinements.css */
/* BANHALMI ART — production-safe layout refinements
   Hero, the immediate introduction below it, and the desktop menu are intentionally untouched. */
:root{--art-radius:4px;--art-safe-inline:clamp(.9rem,4vw,3rem)}

body.apple-archive main{min-width:0;overflow:clip}
body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro){min-width:0}
body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro)>*{min-width:0}
body.apple-archive main>section:nth-of-type(even):not(.hero):not(.presence-context):not(.presence-context--intro){background:rgba(255,255,255,.012)}
body.apple-archive :where(.wrap,.container){min-width:0}
/* `anywhere` was applied to every paragraph, heading, list item, link and span.
   It does not only break long words: it lets the browser treat any character as a
   break opportunity when computing min-content, so a heading in a narrow column can
   collapse to one letter per line. Nothing on the site does that today, but only
   because other rules happen to win — :where() carries no specificity. `break-word`
   prevents the overflow it was added for without shattering a title. `anywhere`
   stays where it is genuinely needed: URLs, addresses, identifiers. */
body.apple-archive :where(p,h1,h2,h3,h4,li,a,span){overflow-wrap:break-word}
body.apple-archive :where(.meta,.fineprint,.socials,.story-source,.loc,code,kbd,samp),
body.apple-archive :where(.meta,.fineprint,.socials) a{overflow-wrap:anywhere}
body.apple-archive :where(table,iframe,video,embed,object){max-width:100%}
body.apple-archive table{display:block;width:100%;overflow-x:auto;border-collapse:collapse}
body.apple-archive main>section:empty,
body.apple-archive .archive-source-hub:empty{display:none!important}

body.apple-archive :where(.cards,.card-grid,.project-grid,.book-grid,.exhibition-grid,.press-grid,.membership-grid,.links-grid,.source-grid){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(1.25rem,3vw,2.75rem)!important;align-items:stretch!important;width:100%!important;max-width:100%!important}
body.apple-archive :where(.cards,.card-grid,.project-grid,.book-grid,.exhibition-grid,.press-grid,.membership-grid,.links-grid,.source-grid)>*{min-width:0!important;width:auto!important;max-width:none!important;margin:0!important}
body.apple-archive :where(.card,.panel,article){overflow:visible}

body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro) :where(.intro,.prose,.copy,.text,.narrow){width:100%;min-width:0}
body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro) :where(h1,h2,h3,h4,p,blockquote){max-width:100%}
body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro) .intro{margin-inline:0}
body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro) .intro+.intro{margin-top:clamp(2rem,4vw,3.5rem)}

body.apple-archive .collage figure,
body.apple-archive [data-gallery] figure{border-radius:4px!important;min-width:0!important;width:100%!important;max-width:100%!important}
body.apple-archive .collage figure:hover img,
body.apple-archive [data-gallery] figure:hover img{transform:scale(1.01)}
body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery],#galwrap,.gal-batch){min-width:0!important;max-width:100%!important;width:100%!important}
body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery]) img{max-width:100%!important}
/* A hajszálvonal a kötegek között akkor volt indokolt, amikor a galéria egyforma
   táblákból álló rács volt. A természetes képarányú kollázsban vízszintes vonalként
   vágja ketté a képfolyamot; a térköz elég elválasztás. */
body.apple-archive #galwrap>.gal-batch+.gal-batch:not([hidden]){margin-top:clamp(2.5rem,5vw,4.5rem)}

/* Desktop gallery system: broad exhibition wall, always three columns. */
@media(min-width:901px){
  body.apple-archive main :where(.wrap,.container):has(> .collage),
body.apple-archive main :where(.wrap,.container):has(> [data-gallery]),
body.apple-archive main :where(.wrap,.container):has(> #galwrap),
body.apple-archive #works>.wrap{
    width:min(calc(100% - clamp(2rem,4vw,5rem)),1760px)!important;
    max-width:1760px!important;
  }
  body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery]),
  body.apple-archive #galwrap>.gal-batch{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(.8rem,1.35vw,1.45rem)!important;
    align-items:start!important;
  }
  body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery]) figure,
  body.apple-archive #galwrap>.gal-batch>figure{
    grid-column:auto!important;
    grid-row:auto!important;
    margin:0!important;
    overflow:hidden!important;
  }
  body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery]) img,
  body.apple-archive #galwrap>.gal-batch img{
    display:block!important;
    width:100%!important;
    height:auto!important;
  }
  body.apple-archive #works .intro,
body.apple-archive main :where(.wrap,.container):has(> #galwrap)>.intro{
    max-width:760px!important;
    margin-bottom:clamp(2rem,4vw,4rem)!important;
  }
}

/* Homepage #journey/#exhibitions desktop chronology is owned by apple-editorial-system.css.
   This layer keeps only generic min-width/mobile safety so two desktop layout systems cannot compete. */
body.apple-archive :where(.timeline,.chronology,.archive-list,.record-list){width:100%;max-width:100%;min-width:0}
body.apple-archive :where(.timeline,.chronology,.archive-list,.record-list)>*{min-width:0}
body.apple-archive :where(.timeline,.chronology,.archive-list,.record-list)>*>*{min-width:0;max-width:100%}

body.apple-archive :where(form,fieldset,.form-grid,.field,.contact-form){min-width:0;max-width:100%;width:100%}
body.apple-archive :where(input,select,textarea,button){max-width:100%;font:inherit}
body.apple-archive :where(input,select,textarea){width:100%;min-width:0}
body.apple-archive textarea{resize:vertical}
body.apple-archive :where(.actions,.buttons){align-items:center}

body.apple-archive .archive-source-hub{display:block!important;grid-template-columns:none!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;margin-top:clamp(2rem,4vw,3.5rem)!important;width:100%!important;max-width:100%!important}
body.apple-archive .archive-source-hub>*{display:grid!important;grid-template-columns:minmax(9rem,13rem) minmax(0,1fr)!important;gap:clamp(1rem,3vw,3rem)!important;align-items:start!important;margin:0!important;padding:clamp(1rem,1.8vw,1.4rem) 0!important;border:0!important;border-top:1px solid var(--art-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;min-width:0!important;width:100%!important}
body.apple-archive .archive-source-hub a{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;min-width:0!important}
body.apple-archive .archive-source-hub h3,body.apple-archive .archive-source-hub h4{font-size:.82rem!important;line-height:1.4!important;letter-spacing:.09em!important;text-transform:uppercase!important;color:var(--art-gold)!important}
body.apple-archive .archive-source-hub p,body.apple-archive .archive-source-hub li,body.apple-archive .archive-source-hub a{font-size:.92rem!important;line-height:1.55!important;color:var(--art-soft)!important}

/* margin-top/padding/border/background superseded by footer-elegant.css
   (loaded after this file) — kept only the layout-safety properties still
   needed (clear, min-width, overflow, text-align) to avoid duplicate values
   fighting for the same box-model properties. */
body.apple-archive footer{clear:both!important;text-align:center!important;min-width:0!important;overflow:hidden!important}
body.apple-archive footer,body.apple-archive footer *{box-shadow:none!important}
body.apple-archive footer>*{background:transparent!important;border:0!important;border-radius:0!important;max-width:100%!important;min-width:0!important}
body.apple-archive footer :where(a,div,span,p,ul,li){background:transparent!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important}
body.apple-archive footer :where(ul,.socials,.footer-links,.links){display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:.7rem 1.5rem!important;margin:1.5rem auto 0!important;padding:0!important;list-style:none!important}
body.apple-archive footer :where(a){display:inline!important;width:auto!important;min-height:0!important;padding:0!important;color:var(--art-soft)!important;text-decoration:none!important;white-space:normal!important}
body.apple-archive footer :where(a):hover{color:var(--art-gold)!important}
body.apple-archive footer .fineprint{max-width:62ch!important;margin:2rem auto 0!important}

@media(min-width:901px){
  body.apple-archive #menu [data-contact-position="left"] .m-desc{display:block!important;visibility:visible!important;opacity:1!important;color:var(--art-ink)!important;max-width:48ch!important;margin:.2rem 0 .75rem!important}
  body.apple-archive #menu details.svc{display:block!important;margin:.55rem 0 0!important;padding:.7rem 0 0!important;border-top:1px solid var(--art-line)!important}
  body.apple-archive #menu details.svc>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;list-style:none!important;cursor:pointer!important;color:var(--art-gold)!important;font-size:clamp(1.05rem,1.25vw,1.3rem)!important;font-weight:590!important;line-height:1.2!important;padding:0!important}
  body.apple-archive #menu details.svc>summary::-webkit-details-marker{display:none!important}
  body.apple-archive #menu details.svc>summary::after{content:'+';font-size:1.15rem;font-weight:400;}
  body.apple-archive #menu details.svc[open]>summary::after{transform:rotate(45deg)}
  body.apple-archive #menu details.svc>.m-desc{display:block!important;color:var(--art-ink)!important;font-size:.78rem!important;line-height:1.4!important;margin:.35rem 0 .55rem!important;max-width:48ch!important}
  body.apple-archive #menu details.svc .sub{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.35rem .85rem!important;margin:.35rem 0 .55rem!important}
  body.apple-archive #menu details.svc .sub a{display:block!important;min-width:0!important;padding:.4rem 0!important;color:var(--art-ink)!important;text-decoration:none!important;border-top:1px solid rgba(255,255,255,.07)!important;font-size:.76rem!important;line-height:1.3!important}
  body.apple-archive #menu details.svc .sub .yr{display:inline!important;color:var(--art-gold)!important;font-weight:600!important;margin-right:.35rem!important}
  body.apple-archive #menu details.svc .svc-d{color:var(--art-soft)!important;font-size:.7rem!important;line-height:1.3!important}
  body.apple-archive #menu details.svc .svc-cta{display:inline-flex!important;align-items:center!important;color:var(--art-gold)!important;font-size:.77rem!important;font-weight:600!important;text-decoration:none!important;padding:.15rem 0!important}
}

@media(max-width:900px){
  body.apple-archive :where(.cards,.card-grid,.project-grid,.book-grid,.exhibition-grid,.press-grid,.membership-grid,.links-grid,.source-grid){grid-template-columns:1fr!important}
  body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro){overflow:hidden}
  body.apple-archive :where(.timeline,.chronology,.archive-list,.record-list)>*{grid-template-columns:minmax(4.5rem,7rem) minmax(0,1fr)!important}
  body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery]),body.apple-archive #galwrap>.gal-batch{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro){padding-inline:0}
  body.apple-archive main>section:not(.hero):not(.presence-context):not(.presence-context--intro) :where(.wrap,.container){width:calc(100% - 1.25rem)!important}
  body.apple-archive :where(.timeline,.chronology,.archive-list,.record-list)>*{grid-template-columns:1fr!important;gap:.3rem!important}
  body.apple-archive .archive-source-hub>*{grid-template-columns:1fr!important;gap:.45rem!important;padding:1.1rem 0!important}
  body.apple-archive :where(.actions,.buttons){display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  body.apple-archive :where(.actions,.buttons) :where(a,button){width:100%!important}
  body.apple-archive :where(.collage,.masonry,.strip,.gallery,.art-gallery,[data-gallery]),body.apple-archive #galwrap>.gal-batch{grid-template-columns:1fr!important}
  body.apple-archive footer{margin-top:1.5rem!important;padding-top:3rem!important}
}

/* SOURCE: assets/css/responsive-header-system.css */
/* BANHALMI ART — unified responsive header system
   Desktop, tablet and mobile share one visible, stable top bar. */
:root{
  --bn-header-height:72px;
  --bn-header-pad:clamp(1rem,3vw,3rem);
  --bn-header-bg:rgba(32,37,48,.9);
  --bn-header-line:rgba(255,255,255,.12);
  --bn-header-ink:#f5f5f7;
  --bn-header-gold:#DCC56B;
}

body.apple-archive{
  padding-top:var(--bn-header-height);
}

/* Both header patterns used by the archive are normalized here. */
body.apple-archive > nav{
  position:fixed!important;
  inset:0 0 auto 0!important;
  z-index:1200!important;
  width:100%!important;
  min-height:var(--bn-header-height)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1rem!important;
  padding:0 var(--bn-header-pad)!important;
  margin:0!important;
  color:var(--bn-header-ink)!important;
  background:var(--bn-header-bg)!important;
  border-bottom:1px solid var(--bn-header-line)!important;
  -webkit-backdrop-filter:saturate(150%) blur(20px)!important;
  backdrop-filter:saturate(150%) blur(20px)!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
}

body.apple-archive > nav .brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:.65rem!important;
  min-width:0!important;
  color:var(--bn-header-ink)!important;
  text-decoration:none!important;
  font-size:.82rem!important;
  font-weight:650!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  white-space:nowrap!important;
}
body.apple-archive > nav .brand svg{width:30px!important;height:30px!important;flex:0 0 30px!important;color:var(--bn-header-gold)!important}
body.apple-archive > nav .brand span{overflow:hidden;text-overflow:ellipsis}

body.apple-archive .langs{
  display:flex!important;
  align-items:center!important;
  gap:.25rem!important;
  flex-wrap:nowrap!important;
}
body.apple-archive .langs a{
  min-width:44px!important;
  min-height:44px!important;
  display:grid!important;
  place-items:center!important;
  padding:.45rem!important;
  border:1px solid transparent!important;
  border-radius:var(--c-radius-pill)!important;
  color:rgba(245,245,247,.72)!important;
  font-size:.72rem!important;
  font-weight:650!important;
  line-height:1!important;
  text-decoration:none!important;
}
body.apple-archive .langs a:hover,
body.apple-archive .langs a:focus-visible{color:var(--bn-header-ink)!important;border-color:var(--bn-header-line)!important}
body.apple-archive .langs a.on{color:#29303F!important;background:var(--bn-header-gold)!important}

body.apple-archive .burger{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  display:grid!important;
  place-items:center!important;
  gap:4px!important;
  padding:11px!important;
  margin:0!important;
  border:1px solid var(--bn-header-line)!important;
  border-radius:var(--c-radius-pill)!important;
  background:rgba(255,255,255,.035)!important;
  color:var(--bn-header-ink)!important;
  cursor:pointer!important;
}
/* The three <span> children of .burger are never visible: final-layout-fixes.css
   sets `nav .burger span{display:none!important}` at specificity (0,2,3), which
   outranks every span rule in this file at (0,2,2) regardless of load order.
   The icon a reader sees is the ::before/::after pair drawn there. This file
   still owns the button's own box (the circle above) and its size. */

body.apple-archive.menu-open{overflow:hidden!important}
body.apple-archive #menu{
  top:var(--bn-header-height)!important;
  height:calc(100dvh - var(--bn-header-height))!important;
  max-height:calc(100dvh - var(--bn-header-height))!important;
  z-index:1150!important;
  background:rgba(32,37,48,.985)!important;
  -webkit-backdrop-filter:blur(24px)!important;
  backdrop-filter:blur(24px)!important;
}

/* Closed menu contract: no transparent text layer may leak below the fixed header. */
body.apple-archive:not(.menu-open) #menu{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  overflow:hidden!important;
  clip-path:inset(0 0 100% 0)!important;
  transform:translateY(-8px)!important;
}
body.apple-archive.menu-open #menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  clip-path:inset(0)!important;
  transform:none!important;
}

/* Desktop: header remains visible above the full-screen editorial menu. */
@media(min-width:1101px){
  :root{--bn-header-height:76px}
  body.apple-archive > nav{padding-inline:clamp(2rem,4vw,5rem)!important}
  body.apple-archive #menu{padding-top:clamp(2rem,4vh,3.5rem)!important}
  body.apple-archive #menu .mwrap{max-height:100%!important;overflow:auto!important;scrollbar-width:thin}
}

/* Tablet: compact header. The menu itself now stays 3-column here too
   (museum-editorial.css owns grid-template-columns/gap for #menu .mwrap
   across all widths down to 700px), so only the non-grid tablet tweaks
   remain in this block. */
@media(min-width:701px) and (max-width:1100px){
  :root{--bn-header-height:68px;--bn-header-pad:clamp(1.1rem,3vw,2rem)}
  body.apple-archive #menu{overflow-y:auto!important;padding:clamp(1.5rem,4vw,3rem)!important}
  body.apple-archive #menu .m-main{font-size:clamp(1.08rem,2.1vw,1.35rem)!important}
  body.apple-archive #menu .m-desc{font-size:.82rem!important;line-height:1.45!important}
}

/* Mobile: no clipped header, large tap targets, one-column scrollable menu. */
@media(max-width:700px){
  :root{--bn-header-height:62px;--bn-header-pad:.75rem}
  body.apple-archive > nav{gap:.5rem!important}
  body.apple-archive > nav .brand{font-size:.73rem!important;letter-spacing:.14em!important}
  body.apple-archive > nav .brand svg{width:27px!important;height:27px!important;flex-basis:27px!important}
  body.apple-archive .langs{gap:.3rem!important}
  body.apple-archive .langs a{min-width:44px!important;min-height:44px!important;font-size:.67rem!important;padding:.3rem!important}
  body.apple-archive .burger{width:40px!important;height:40px!important;min-width:40px!important;padding:9px!important}
  body.apple-archive #menu{overflow-y:auto!important;overscroll-behavior:contain!important;padding:1.25rem .9rem 2rem!important;text-align:left!important}
  body.apple-archive #menu .mwrap{display:grid!important;grid-template-columns:1fr!important;gap:0!important;width:100%!important;align-content:start!important;text-align:left!important}
  body.apple-archive #menu :is(.m-group,.m-group-title,.m-main,.m-desc,details,summary,.sub,.sub a,.m-foot){text-align:left!important}
  body.apple-archive #menu .m-main{min-height:48px!important;padding:.9rem .2rem!important}
  body.apple-archive #menu .m-desc{margin:.1rem 0 .85rem!important;font-size:.8rem!important;line-height:1.45!important}
  body.apple-archive #menu details{display:block!important}
  body.apple-archive #menu .m-foot{padding-bottom:calc(1rem + env(safe-area-inset-bottom))!important}

  /* iOS Safari-safe 1956 story modal. The dialog itself never exceeds the
     dynamic viewport; the panel owns the momentum scroll. */
  body.apple-archive #story-dialog{
    align-items:flex-start!important;
    overflow:hidden!important;
    padding:calc(.65rem + env(safe-area-inset-top)) .7rem calc(.65rem + env(safe-area-inset-bottom))!important;
  }
  body.apple-archive #story-dialog .story-panel{
    width:100%!important;
    max-height:calc(100dvh - 1.3rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    scrollbar-gutter:stable!important;
  }
  body.apple-archive #story-dialog .story-close{
    top:0!important;
  }
}

@media(max-width:390px){
  body.apple-archive > nav .brand span{max-width:6rem}
  body.apple-archive .langs{gap:.15rem!important}
}

@media(prefers-reduced-motion:reduce){
  body.apple-archive .burger span{}
}

/* Final desktop stacking contract.
   The open menu must start below the fixed header and can never cover it. */
@media(min-width:901px){
  body.apple-archive.menu-open > nav:not(#menu):not(.menu):not(.archive-nav){
    position:fixed!important;
    inset:0 0 auto 0!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
    isolation:isolate!important;
    z-index:2147483000!important;
  }

  body.apple-archive.menu-open #menu{
    position:fixed!important;
    inset:var(--bn-header-height) 0 0 0!important;
    top:var(--bn-header-height)!important;
    height:calc(100dvh - var(--bn-header-height))!important;
    max-height:calc(100dvh - var(--bn-header-height))!important;
    z-index:2147482000!important;
  }
}

/* Official three-site ecosystem. Kept deliberately quiet so it reads as
   navigation rather than a second promotional footer. */
body.apple-archive .banhalmi-ecosystem{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:.55rem 1.2rem!important;
  width:min(100%,72rem)!important;
  margin:clamp(1.75rem,3vw,2.75rem) auto 0!important;
  padding-top:clamp(1.25rem,2vw,1.75rem)!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  font-size:.78rem!important;
  line-height:1.4!important;
}
body.apple-archive .banhalmi-ecosystem a{
  color:rgba(245,245,247,.72)!important;
  text-decoration:none!important;
  text-underline-offset:.2em!important;
}
body.apple-archive .banhalmi-ecosystem a:hover,
body.apple-archive .banhalmi-ecosystem a:focus-visible{
  color:#f5f5f7!important;
  text-decoration:underline!important;
}
body.apple-archive .banhalmi-ecosystem a[aria-current="page"]{
  color:var(--bn-header-gold)!important;
}

/* Menu-label corrections are applied centrally so every archive page and all
   three language versions stay consistent without duplicating markup edits. */
body.apple-archive #menu .sub a[href$="/exhibitions/ebredes.html"],
body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"],
body.apple-archive #menu .sub a[href$="/exhibitions/avalosag.html"],
body.apple-archive #menu .sub a[href$="exhibitions/avalosag.html"]{
  font-size:0!important;
}
body.apple-archive #menu .sub a[href$="/exhibitions/ebredes.html"] .yr,
body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"] .yr,
body.apple-archive #menu .sub a[href$="/exhibitions/avalosag.html"] .yr,
body.apple-archive #menu .sub a[href$="exhibitions/avalosag.html"] .yr{
  font-size:.72rem!important;
}
body.apple-archive #menu .sub a[href$="/exhibitions/ebredes.html"] .yr::before,
body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"] .yr::before{
  content:"2017";
  font-size:.72rem;
}
body.apple-archive #menu .sub a[href$="/exhibitions/ebredes.html"] .yr,
body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"] .yr{
  color:transparent!important;
  position:relative;
}
body.apple-archive #menu .sub a[href$="/exhibitions/ebredes.html"] .yr::before,
body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"] .yr::before{
  position:absolute;
  inset-inline-start:0;
  color:var(--bn-header-gold);
}
html[lang^="hu"] body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"]::after{content:"Ébredés — az Új kezdet";font-size:.92rem}
html[lang^="en"] body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"]::after{content:"Awakening — The New Beginning";font-size:.92rem}
html[lang^="de"] body.apple-archive #menu .sub a[href$="exhibitions/ebredes.html"]::after{content:"Erwachen — Der neue Anfang";font-size:.92rem}
html[lang^="hu"] body.apple-archive #menu .sub a[href$="exhibitions/avalosag.html"]::after{content:"A valóság hamis arcai";font-size:.92rem}
html[lang^="en"] body.apple-archive #menu .sub a[href$="exhibitions/avalosag.html"]::after{content:"The False Faces of Reality";font-size:.92rem}
html[lang^="de"] body.apple-archive #menu .sub a[href$="exhibitions/avalosag.html"]::after{content:"Die falschen Gesichter der Wirklichkeit";font-size:.92rem}

/* Stage 59 — full-bleed archive canvases and Lighthouse contrast hardening.
   The earlier desktop editorial rule constrained .writing-page/.community-page
   with !important, which made the later full-bleed rule ineffective. Keep the
   page canvas edge-to-edge; readable text width remains owned by inner .wrap. */
html body.apple-archive main.writing-page,
html body.apple-archive main.community-page{
  width:100%!important;
  max-width:none!important;
  margin-inline:0!important;
}
html body.apple-archive main.writing-page>section,
html body.apple-archive main.community-page>section{
  width:100%!important;
  max-width:none!important;
  margin-inline:0!important;
}
/* Lighthouse samples the small running-head over the photographic hero.
   Use the already approved lighter archive gold for text-only hero labels;
   structural gold elsewhere remains #DCC56B. */
html body.apple-archive header.hero .label{
  color:#CBB45F!important;
  text-shadow:0 1px 2px rgba(0,0,0,.55)!important;
}

/* STAGE105-FOOTER-SINGLE-ROW-LINKS:START
   On wide screens each footer link group is kept on one calm horizontal axis.
   The social disclosure spans the full footer width so its expanded links no
   longer form a narrow multi-line block beside the legal navigation. */
@media(min-width:1080px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer>.wrap{
    grid-template-rows:auto auto auto auto auto!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .footer-social-disclosure{
    grid-column:1 / -1!important;
    grid-row:4!important;
    width:100%!important;
    max-width:none!important;
    justify-self:stretch!important;
    margin:1.15rem 0 0!important;
    padding:0!important;
    border:0!important;
    text-align:center!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .footer-social-disclosure[open]{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:clamp(.85rem,1.5vw,1.35rem)!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .footer-social-disclosure>summary{
    grid-column:1!important;
    justify-content:center!important;
    margin:0!important;
    padding:.45rem 0!important;
    white-space:nowrap!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .footer-social-links{
    grid-column:2!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    white-space:nowrap!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .footer-social-links a{
    flex:0 0 auto!important;
    min-height:44px!important;
    padding:.45rem clamp(.45rem,.75vw,.72rem)!important;
    border:0!important;
    border-right:1px solid rgba(175,196,217,.16)!important;
    color:#dcc56b!important;
    font-size:clamp(.78rem,.68vw,.86rem)!important;
    line-height:1.35!important;
    white-space:nowrap!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .footer-social-links a:last-child{
    border-right:0!important;
    padding-right:0!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .fineprint{
    grid-column:1 / -1!important;
    grid-row:5!important;
    width:100%!important;
    justify-self:stretch!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:center!important;
    gap:clamp(.9rem,1.5vw,1.35rem)!important;
    margin:.45rem 0 0!important;
    padding-top:.8rem!important;
    border-top:1px solid rgba(175,196,217,.1)!important;
    text-align:center!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
    flex-wrap:nowrap!important;
    justify-content:center!important;
    gap:clamp(1.25rem,2.2vw,2rem)!important;
    text-align:center!important;
  }
}
/* STAGE105-FOOTER-SINGLE-ROW-LINKS:END */


/* SOURCE: assets/css/footer-elegant.css */
/* BANHALMI ART — elegant footer restoration
   Structural footer styling only. The final page-wide colour authority lives
   in homepage-two-tone-authority.css and is imported from the final museum
   bridge, so this file must not import that authority early in the cascade. */
@import url('./palette-blue-final.css?v=20260813-art-left-align-v141');
body.apple-archive footer{
  margin-top:clamp(2rem,4vw,4rem)!important;
  padding:clamp(4.5rem,7vw,6.5rem) clamp(1.25rem,5vw,5rem) clamp(2.5rem,4vw,3.5rem)!important;
  border-top:1px solid rgba(183,156,68,.28)!important;
  background:linear-gradient(180deg,#29303F 0%,#202530 100%)!important;
  text-align:center!important;
  overflow:hidden!important;
}
body.apple-archive footer>.wrap{
  width:min(100%,1180px)!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
body.apple-archive footer .flogo{
  width:clamp(46px,4vw,62px)!important;
  height:auto!important;
  color:#f5f5f7!important;
  opacity:.92!important;
  margin:0 auto 1.1rem!important;
}
body.apple-archive footer p.brand{
  margin:0!important;
  color:#f5f5f7!important;
  font-size:.82rem!important;
  font-weight:620!important;
  line-height:1.2!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
}
body.apple-archive footer .socials{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:.7rem 0!important;
  max-width:1040px!important;
  margin:2.1rem auto 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
body.apple-archive footer .socials a{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:.15rem .9rem!important;
  border:0!important;
  border-right:1px solid rgba(175,196,217,.22)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#AFC4D9!important;
  font-size:.78rem!important;
  line-height:1.45!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
}
body.apple-archive footer .socials a:last-child{border-right:0!important}
body.apple-archive footer .socials a:hover,
body.apple-archive footer .socials a:focus-visible{color:#d3bb6b!important}
body.apple-archive footer .consent-reset{
  display:inline-block!important;
  margin:2.25rem auto 0!important;
  padding:.25rem 0!important;
  border:0!important;
  background:transparent!important;
  color:#DCC56B!important;
  font-size:.76rem!important;
  text-decoration:none!important;
  opacity:.9!important;
}

/* STAGE82-FOOTER-SIMPLIFICATION:START
   The footer keeps every official profile link crawlable but shows the useful
   archive network first. Secondary social destinations live in one quiet row. */
body.apple-archive footer .footer-social-disclosure{
  width:min(100%,760px);
  margin:clamp(1.25rem,2vw,1.75rem) auto 0!important;
  border:0!important;
  border-top:1px solid rgba(175,196,217,.16)!important;
  border-bottom:1px solid rgba(175,196,217,.16)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.apple-archive footer .footer-social-disclosure>summary{
  min-height:3.25rem;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.75rem;
  padding:.8rem 0!important;
  color:#AFC4D9!important;
  font-size:.82rem!important;
  font-weight:600!important;
  letter-spacing:.02em;
  cursor:pointer;
  list-style:none;
}
body.apple-archive footer .footer-social-disclosure>summary::-webkit-details-marker{display:none}
body.apple-archive footer .footer-social-disclosure>summary::after{content:'+';color:#DCC56B;font-size:1.15rem;font-weight:400}
body.apple-archive footer .footer-social-disclosure[open]>summary::after{content:'−'}
body.apple-archive footer .footer-social-links{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:.55rem 1.05rem!important;
  padding:0 0 1rem!important;
  margin:0!important;
}
body.apple-archive footer .footer-social-links a{font-size:.78rem!important;color:#AFC4D9!important}
body.apple-archive footer .footer-social-links a:hover{color:#F5F5F7!important}
body.apple-archive footer .lang-switch{margin-top:1.25rem!important}
body.apple-archive footer .fineprint{margin-top:1.25rem!important}
@media(max-width:640px){
  body.apple-archive footer .footer-social-disclosure{width:100%}
  body.apple-archive footer .footer-social-links{gap:.65rem .9rem!important}
}
/* STAGE82-FOOTER-SIMPLIFICATION:END */


/* STAGE85-FOOTER-LEGAL-GOLD:START
   Keep the legal row on one line on desktop and make the archive gold brighter
   without sacrificing WCAG AA contrast on any canonical blue surface. */
body.apple-archive footer .fineprint{max-width:100%!important}
body.apple-archive footer .fineprint a,body.apple-archive footer .consent-reset,body.apple-archive footer .footer-social-disclosure>summary::after{color:#DCC56B!important}
@media(min-width:720px){
  body.apple-archive footer .fineprint{white-space:nowrap!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;gap:.32rem!important}
  body.apple-archive footer .fineprint a{white-space:nowrap!important}
}
@media(max-width:719px){body.apple-archive footer .fineprint{white-space:normal!important}}
/* STAGE85-FOOTER-LEGAL-GOLD:END */

/* STAGE89-PAGE-BY-PAGE-SIMPLIFICATION:START
   Final archive-wide simplification pass. Modern :has() lets the stylesheet
   react to the actual content density of each section without rewriting copy,
   schema or crawlable evidence. The selectors deliberately outrank the final
   authority by specificity while preserving its two-blue surface rhythm. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(
  :has(li:nth-child(9)),
  :has(.card:nth-child(5)),
  :has(.archive-card:nth-child(5)),
  :has(.project-card:nth-child(5)),
  :has(.record-card:nth-child(5)),
  :has(.source-card:nth-child(5))
){
  padding-block:clamp(3.4rem,5.6vw,5.4rem)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(
  :has(li:nth-child(9)),
  :has(.card:nth-child(5)),
  :has(.archive-card:nth-child(5)),
  :has(.project-card:nth-child(5)),
  :has(.record-card:nth-child(5)),
  :has(.source-card:nth-child(5))
) :is(.grid,.cards,.archive-grid,.project-grid,.record-grid,.source-grid){
  gap:clamp(1rem,2vw,1.65rem)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(
  :has(li:nth-child(9)),
  :has(.card:nth-child(5)),
  :has(.archive-card:nth-child(5)),
  :has(.project-card:nth-child(5)),
  :has(.record-card:nth-child(5)),
  :has(.source-card:nth-child(5))
) :is(.card,.archive-card,.project-card,.record-card,.source-card,.fact-card){
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main :is(
  .sources,.source-list,.source-grid,.references,.reference-list,.documentation,
  .provenance,.related,.related-records,.evidence,.archive-notes,.curatorial-sources
){
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main :is(
  .sources,.source-list,.source-grid,.references,.reference-list,.documentation,
  .provenance,.related,.related-records,.evidence,.archive-notes,.curatorial-sources
) :is(.card,.source-card,.fact-card,.archive-card){
  background:transparent!important;
  border-color:rgba(220,197,107,.22)!important;
  box-shadow:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main :is(
  .sources,.source-list,.references,.reference-list,.documentation,
  .provenance,.related,.related-records,.evidence,.archive-notes,.curatorial-sources
) :is(p,li){
  font-size:clamp(.94rem,1.1vw,1.02rem)!important;
  line-height:1.65!important;
}
@media(max-width:700px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(
    :has(li:nth-child(9)),:has(.card:nth-child(5)),:has(.archive-card:nth-child(5)),
    :has(.project-card:nth-child(5)),:has(.record-card:nth-child(5)),:has(.source-card:nth-child(5))
  ){
    padding-block:3rem!important;
  }
}
/* STAGE89-PAGE-BY-PAGE-SIMPLIFICATION:END */

/* STAGE91-MOBILE-READABILITY:START
   Phone layouts need reading-size type and a deliberate colophon structure.
   These selectors intentionally carry one extra .apple-archive class so this
   mobile authority wins over later museum rules without touching desktop. */
@media(max-width:719px){
  html body.apple-archive.apple-archive footer{
    padding:3.25rem 1.15rem 2.25rem!important;
  }
  html body.apple-archive.apple-archive footer>.wrap{
    width:min(100%,34rem)!important;
  }
  html body.apple-archive.apple-archive footer .flogo{
    width:56px!important;
    margin-bottom:1rem!important;
  }
  html body.apple-archive.apple-archive footer p.brand{
    font-size:.95rem!important;
    letter-spacing:.22em!important;
  }
  html body.apple-archive.apple-archive footer .meta{
    max-width:31ch!important;
    margin:1.25rem auto 0!important;
    padding:0!important;
    font-size:1rem!important;
    line-height:1.62!important;
    letter-spacing:0!important;
  }
  html body.apple-archive.apple-archive footer .meta a{
    display:inline-block!important;
    margin-top:.2rem!important;
    font-size:1rem!important;
    line-height:1.5!important;
    overflow-wrap:anywhere!important;
  }

  /* Three language/domain pairs become three clean, aligned rows instead of
     wrapping into an uneven inline sentence. */
  html body.apple-archive.apple-archive footer .socials.lang-switch{
    display:grid!important;
    grid-template-columns:minmax(5rem,auto) minmax(0,1fr)!important;
    align-items:stretch!important;
    width:min(100%,30rem)!important;
    max-width:30rem!important;
    margin:1.7rem auto 0!important;
    gap:0!important;
    border-top:1px solid rgba(175,196,217,.18)!important;
    border-bottom:1px solid rgba(175,196,217,.18)!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch>.lang-note,
  html body.apple-archive.apple-archive footer .socials.lang-switch>a{
    min-height:3.15rem!important;
    display:flex!important;
    align-items:center!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid rgba(175,196,217,.12)!important;
    border-radius:0!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch>.lang-note:nth-last-child(-n+2),
  html body.apple-archive.apple-archive footer .socials.lang-switch>a:nth-last-child(-n+2){
    border-bottom:0!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch>.lang-note{
    justify-content:flex-start!important;
    padding:.7rem .7rem .7rem 0!important;
    color:#AFC4D9!important;
    font-size:.875rem!important;
    line-height:1.35!important;
    letter-spacing:.11em!important;
    text-transform:uppercase!important;
    text-align:left!important;
    white-space:nowrap!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch>a{
    justify-content:flex-end!important;
    padding:.7rem 0 .7rem .75rem!important;
    color:#DCC56B!important;
    font-size:1rem!important;
    line-height:1.35!important;
    letter-spacing:0!important;
    text-align:right!important;
    overflow-wrap:anywhere!important;
  }

  html body.apple-archive.apple-archive footer .footer-social-disclosure{
    width:min(100%,30rem)!important;
    margin-top:1.55rem!important;
  }
  html body.apple-archive.apple-archive footer .footer-social-disclosure>summary{
    min-height:3.5rem!important;
    padding:.9rem .25rem!important;
    font-size:1rem!important;
    line-height:1.4!important;
  }
  html body.apple-archive.apple-archive footer .footer-social-links{
    gap:.25rem .55rem!important;
    padding:0 0 1rem!important;
  }
  html body.apple-archive.apple-archive footer .footer-social-links a{
    min-height:44px!important;
    padding:.55rem .45rem!important;
    border:0!important;
    font-size:.95rem!important;
    line-height:1.35!important;
  }

  /* Legal links become real touch targets. The separator text nodes shrink to
     zero so the row is not visually cluttered; the links themselves remain
     full reading size. */
  html body.apple-archive.apple-archive footer .fineprint{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    width:min(100%,30rem)!important;
    margin:1.45rem auto 0!important;
    padding-top:1.1rem!important;
    gap:.15rem .5rem!important;
    border-top:1px solid rgba(175,196,217,.16)!important;
    font-size:0!important;
    line-height:1!important;
    white-space:normal!important;
  }
  html body.apple-archive.apple-archive footer .fineprint a{
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:.5rem .25rem!important;
    font-size:1rem!important;
    line-height:1.35!important;
    white-space:nowrap!important;
  }
  html body.apple-archive.apple-archive footer .consent-reset{
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 100%!important;
    margin:.4rem auto 0!important;
    padding:.6rem .75rem!important;
    font-size:.9rem!important;
    line-height:1.3!important;
    letter-spacing:.12em!important;
  }
  html body.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:min(100%,30rem)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    margin:1.6rem auto 0!important;
    padding-top:.65rem!important;
  }
  html body.apple-archive.apple-archive footer .banhalmi-ecosystem a{
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:.7rem .5rem!important;
    border-bottom:1px solid rgba(175,196,217,.12)!important;
    font-size:1rem!important;
    line-height:1.35!important;
  }
  html body.apple-archive.apple-archive footer .banhalmi-ecosystem a:last-child{
    border-bottom:0!important;
  }

  /* Mobile reading floor for the small catalogue roles that were landing at
     roughly 10–12 px in the final museum layer. */
  html body.apple-archive.apple-archive :is(.label,.eyebrow,.presence-kicker,.era-no,.period-no){
    font-size:.875rem!important;
    line-height:1.45!important;
    letter-spacing:.14em!important;
  }
  html body.apple-archive.apple-archive :is(figcaption,.cap,.meta){
    font-size:.875rem!important;
    line-height:1.6!important;
  }
  html body.apple-archive.apple-archive :is(.btn,main .svc-cta,.actions a){
    font-size:.875rem!important;
    line-height:1.35!important;
  }
  html body.apple-archive.apple-archive .hero-cta .btn{
    font-size:.875rem!important;
    letter-spacing:.08em!important;
  }
  html body.apple-archive.apple-archive #consent p{
    font-size:.95rem!important;
  }
  html body.apple-archive.apple-archive #consent button{
    min-height:44px!important;
    font-size:.875rem!important;
  }
  html body.apple-archive.apple-archive .timeline[data-chronology]>.t-item>.yr,
  html body.apple-archive.apple-archive .timeline[data-chronology]>.t-item>.loc{
    font-size:.875rem!important;
  }
}
/* STAGE91-MOBILE-READABILITY:END */


/* STAGE97-FOOTER-ALIGNMENT:START */
/*
   Editorial footer correction: keep the identity/enquiry block centred, while
   all navigational rows read left-to-right from one shared left edge. Legal
   actions share one typographic treatment and Cookie settings remains the
   fourth item in the legal row rather than dropping onto its own line.
*/
body.apple-archive footer>.wrap{
  width:min(100%,980px)!important;
  align-items:stretch!important;
  text-align:left!important;
}
body.apple-archive footer .flogo,
body.apple-archive footer p.brand{align-self:center!important;text-align:center!important}
body.apple-archive footer .meta{
  width:100%!important;
  max-width:36rem!important;
  margin:1.1rem auto 0!important;
  padding:0!important;
  text-align:center!important;
  font-size:clamp(.92rem,1vw,1rem)!important;
  line-height:1.55!important;
  letter-spacing:0!important;
}
body.apple-archive footer .meta a{
  display:inline-block!important;
  margin-top:.16rem!important;
  line-height:1.4!important;
}
body.apple-archive footer .socials.lang-switch{
  width:100%!important;
  max-width:none!important;
  justify-content:flex-start!important;
  text-align:left!important;
  margin:1.8rem 0 0!important;
  line-height:1.4!important;
}
body.apple-archive footer .socials.lang-switch>.lang-note,
body.apple-archive footer .socials.lang-switch>a{
  text-align:left!important;
  line-height:1.4!important;
}
body.apple-archive footer .footer-social-disclosure{
  width:100%!important;
  max-width:none!important;
  margin:1.45rem 0 0!important;
}
body.apple-archive footer .footer-social-disclosure>summary{
  justify-content:flex-start!important;
  text-align:left!important;
  line-height:1.4!important;
}
body.apple-archive footer .footer-social-links{
  justify-content:flex-start!important;
  text-align:left!important;
  gap:.45rem .7rem!important;
}
body.apple-archive footer .footer-social-links a{line-height:1.4!important;text-align:left!important}
body.apple-archive footer .fineprint{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:.25rem .7rem!important;
  margin:1.45rem 0 0!important;
  padding-top:1rem!important;
  border-top:1px solid rgba(175,196,217,.16)!important;
  text-align:left!important;
  white-space:normal!important;
  font-size:0!important;
  line-height:1!important;
}
body.apple-archive footer .fineprint>br{display:none!important}
body.apple-archive footer .fineprint a,
body.apple-archive footer .fineprint .consent-reset{
  min-height:44px!important;
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin:0!important;
  padding:.45rem .15rem!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#DCC56B!important;
  font:inherit!important;
  font-family:inherit!important;
  font-size:.9rem!important;
  font-weight:500!important;
  line-height:1.4!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:left!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}
body.apple-archive footer .fineprint a:hover,
body.apple-archive footer .fineprint .consent-reset:hover,
body.apple-archive footer .fineprint a:focus-visible,
body.apple-archive footer .fineprint .consent-reset:focus-visible{color:#F5F5F7!important}
body.apple-archive footer .banhalmi-ecosystem{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  gap:.4rem 1.15rem!important;
  margin:1.35rem 0 0!important;
  padding-top:.8rem!important;
  text-align:left!important;
}
body.apple-archive footer .banhalmi-ecosystem a{
  justify-content:flex-start!important;
  min-height:44px!important;
  padding:.45rem 0!important;
  border:0!important;
  text-align:left!important;
  line-height:1.45!important;
}
@media(max-width:719px){
  html body.apple-archive.apple-archive footer>.wrap{width:100%!important;align-items:stretch!important}
  html body.apple-archive.apple-archive footer .meta{
    max-width:31ch!important;
    margin:1.15rem auto 0!important;
    text-align:center!important;
    font-size:1rem!important;
    line-height:1.58!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch{
    width:100%!important;
    max-width:none!important;
    margin:1.55rem 0 0!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch>.lang-note{
    justify-content:flex-start!important;
    text-align:left!important;
    padding:.68rem .7rem .68rem 0!important;
    line-height:1.35!important;
  }
  html body.apple-archive.apple-archive footer .socials.lang-switch>a{
    justify-content:flex-start!important;
    text-align:left!important;
    padding:.68rem 0 .68rem .75rem!important;
    line-height:1.35!important;
  }
  html body.apple-archive.apple-archive footer .footer-social-disclosure{width:100%!important;margin-top:1.4rem!important}
  html body.apple-archive.apple-archive footer .footer-social-disclosure>summary{justify-content:flex-start!important;text-align:left!important;line-height:1.4!important}
  html body.apple-archive.apple-archive footer .footer-social-links{justify-content:flex-start!important;text-align:left!important}
  html body.apple-archive.apple-archive footer .fineprint{
    width:100%!important;
    justify-content:flex-start!important;
    margin:1.35rem 0 0!important;
    gap:.1rem .65rem!important;
    text-align:left!important;
  }
  html body.apple-archive.apple-archive footer .fineprint a,
  html body.apple-archive.apple-archive footer .fineprint .consent-reset{
    flex:0 0 auto!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:.52rem 0!important;
    font-size:.95rem!important;
    line-height:1.35!important;
    letter-spacing:0!important;
    text-align:left!important;
  }
  html body.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    margin:1.35rem 0 0!important;
    text-align:left!important;
  }
  html body.apple-archive.apple-archive footer .banhalmi-ecosystem a{
    min-height:46px!important;
    justify-content:flex-start!important;
    padding:.62rem 0!important;
    border-bottom:1px solid rgba(175,196,217,.12)!important;
    text-align:left!important;
    line-height:1.4!important;
  }
  html body.apple-archive.apple-archive footer .banhalmi-ecosystem a:last-child{border-bottom:0!important}
}
/* STAGE97-FOOTER-ALIGNMENT:END */


/* STAGE-FOOTER-ECOSYSTEM-POLISH-20260813 */
/* Final footer authority: the three official destinations form one compact,
   equal-width navigation row on desktop, tablet and phone. */
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
  width:min(100%,760px)!important;
  max-width:760px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  justify-content:center!important;
  gap:0!important;
  margin:1.35rem auto 0!important;
  padding-top:1rem!important;
  border-top:1px solid rgba(175,196,217,.18)!important;
  text-align:center!important;
}
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a{
  min-width:0!important;
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:.65rem .8rem!important;
  border:0!important;
  border-right:1px solid rgba(175,196,217,.16)!important;
  color:#AFC4D9!important;
  opacity:.92!important;
  font-size:.88rem!important;
  line-heigight:1.3!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-wrap:balance!important;
}
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a:last-child{border-right:0!important}
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a[aria-current="page"]{color:#F5F5F7!important;opacity:1!important;font-weight:650!important}
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a:hover,
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a:focus-visible{color:#F5F5F7!important;opacity:1!important}
@media(max-width:719px){
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:100%!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:0!important;
    margin-top:1.2rem!important;
    padding-top:.8rem!important;
  }
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a{
    min-height:56px!important;
    justify-content:center!important;
    padding:.55rem .38rem!important;
    border-bottom:0!important;
    border-right:1px solid rgba(175,196,217,.16)!important;
    font-size:clamp(.76rem,3.25vw,.84rem)!important;
    line-height:1.25!important;
    text-align:center!important;
    overflow-wrap:anywhere!important;
  }
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem a:last-child{border-right:0!important}
}


/* SOURCE: assets/css/archive-content-flow.css */
/* BANHALMI ART — archive content-flow authority
   Stage 74: keep every archive fact available while reducing simultaneous visual density.
   This layer is deliberately limited to the four general curatorial index pages.
   Exhibition and book record design is handled separately. */

html body.apple-archive[data-archive-page="press"],
html body.apple-archive[data-archive-page="community"],
html body.apple-archive[data-archive-page="writing"],
html body.apple-archive[data-archive-page="curators"]{
  --flow-dark:#202530;
  --flow-light:#2D3444;
  --flow-copy:#F5F5F7;
  --flow-muted:#AFC4D9;
  --flow-gold:#DCC56B;
  --flow-line:rgba(175,196,217,.16);
  --flow-measure:72ch;
}

/* Strict two-surface rhythm. The runtime now numbers sections 1/2/1/2;
   these selectors are also defensive if stale markup keeps an older number. */
html body.apple-archive[data-archive-page] main > section.curatorial-section{
  --curatorial-surface:var(--flow-dark)!important;
  position:relative!important;
  isolation:isolate!important;
  background:transparent!important;
}
html body.apple-archive[data-archive-page] main > section.curatorial-section:nth-of-type(even){
  --curatorial-surface:var(--flow-light)!important;
}
html body.apple-archive[data-archive-page] main > section.curatorial-section:nth-of-type(odd){
  --curatorial-surface:var(--flow-dark)!important;
}
html body.apple-archive[data-archive-page] main > section.curatorial-section::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset-block:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:var(--curatorial-surface)!important;
  box-shadow:inset 0 1px var(--flow-line),inset 0 -1px rgba(32,37,48,.35);
  pointer-events:none;
}

/* Apple-like editorial hierarchy: fewer visible containers, more whitespace. */
html body.apple-archive[data-archive-page] .curatorial-hero{
  padding-block:clamp(4.5rem,9vw,8rem)!important;
}
html body.apple-archive[data-archive-page] .curatorial-hero :is(.lead,.hero-sub,p){
  max-inline-size:var(--flow-measure);
}
html body.apple-archive[data-archive-page] .curatorial-section{
  padding-block:clamp(4rem,8vw,7rem)!important;
}
html body.apple-archive[data-archive-page] .curatorial-section > :is(.wrap,.narrow,.inner,.container),
html body.apple-archive[data-archive-page] .curatorial-section > :not(.full-bleed){
  margin-inline:auto;
}
html body.apple-archive[data-archive-page] .curatorial-section :is(p,li,.desc,.note){
  text-wrap:pretty;
}
html body.apple-archive[data-archive-page] .curatorial-section p:not(.meta):not(.eyebrow):not(.kicker){
  max-inline-size:var(--flow-measure);
}

/* Dense archive lists become quiet editorial rows instead of a wall of cards. */
html body.apple-archive[data-archive-page] :is(.archive-list,.record-links,.press-list,.writing-list,.community-list,.curator-list){
  display:grid!important;
  gap:0!important;
  border-top:1px solid var(--flow-line)!important;
}
html body.apple-archive[data-archive-page] :is(.archive-list,.record-links,.press-list,.writing-list,.community-list,.curator-list) > :is(li,a,article,div){
  margin:0!important;
  padding:clamp(1rem,2.2vw,1.5rem) 0!important;
  border:0!important;
  border-bottom:1px solid var(--flow-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Existing card/grid systems keep their semantics but lose unnecessary chrome. */
html body.apple-archive[data-archive-page] .curatorial-section :is(.card,.archive-card,.project-card,.press-card,.community-card,.writing-card,.curator-card){
  background:rgba(32,37,48,.18)!important;
  border:1px solid var(--flow-line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
html body.apple-archive[data-archive-page] .curatorial-section:nth-of-type(odd) :is(.card,.archive-card,.project-card,.press-card,.community-card,.writing-card,.curator-card){
  background:rgba(45,52,68,.34)!important;
}
html body.apple-archive[data-archive-page] .curatorial-section :is(.card,.archive-card,.project-card,.press-card,.community-card,.writing-card,.curator-card):hover{
  border-color:rgba(183,156,68,.48)!important;
  transform:none!important;
}

/* Press: periods read as one curated chronology, not independent coloured slabs. */
html body.apple-archive[data-archive-page="press"] .press-redesign,
html body.apple-archive[data-archive-page="press"] .press-redesign :is(.press-overview,.press-period){
  background:transparent!important;
}
html body.apple-archive[data-archive-page="press"] .press-redesign .press-period{
  margin:0!important;
  padding-block:clamp(2.5rem,5vw,4.5rem)!important;
  border-top:1px solid var(--flow-line)!important;
}
html body.apple-archive[data-archive-page="press"] .press-redesign .press-period:nth-child(even){
  background:transparent!important;
}
html body.apple-archive[data-archive-page="press"] .press-redesign .press-period-nav{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:.65rem 1.25rem!important;
  padding-block:1rem!important;
  border-block:1px solid var(--flow-line)!important;
  background:transparent!important;
}

/* Progressive disclosure already present in the archive gets a premium,
   low-chrome treatment. Nothing is removed from the DOM or from indexing. */
html body.apple-archive[data-archive-page] main details{
  margin-block:1rem!important;
  border:0!important;
  border-top:1px solid var(--flow-line)!important;
  border-bottom:1px solid var(--flow-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body.apple-archive[data-archive-page] main details + details{
  margin-top:-1px!important;
}
html body.apple-archive[data-archive-page] main details > summary{
  min-height:3.5rem;
  display:flex;
  align-items:center;
  gap:1rem;
  padding:1rem 0!important;
  color:var(--flow-copy)!important;
  font-weight:650;
  cursor:pointer;
  list-style:none;
}
html body.apple-archive[data-archive-page] main details > summary::-webkit-details-marker{display:none}
html body.apple-archive[data-archive-page] main details > summary::after{
  content:"+";
  margin-left:auto;
  color:var(--flow-gold);
  font-size:1.35em;
  font-weight:400;
  line-height:1;
}
html body.apple-archive[data-archive-page] main details[open] > summary::after{content:"−"}
html body.apple-archive[data-archive-page] main details > :not(summary){
  max-inline-size:var(--flow-measure);
}
html body.apple-archive[data-archive-page] main details[open]{
  padding-bottom:1.25rem!important;
}

/* Long factual groups are easier to scan as two calm columns on wide screens. */
@media(min-width:900px){
  html body.apple-archive[data-archive-page] .curatorial-section :is(.facts,.fact-grid,.meta-grid,.stats-grid){
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0 clamp(2.5rem,6vw,6rem)!important;
  }
}

@media(max-width:899px){
  html body.apple-archive[data-archive-page] .curatorial-hero{
    padding-block:3.5rem!important;
  }
  html body.apple-archive[data-archive-page] .curatorial-section{
    padding-block:3.5rem!important;
  }
  html body.apple-archive[data-archive-page] .curatorial-section :is(.card,.archive-card,.project-card,.press-card,.community-card,.writing-card,.curator-card){
    border-radius:14px!important;
  }
}


/* STAGE80-ALL-PAGE-CONTENT-DENSITY:START
   The archive keeps its full evidentiary depth, but non-record pages no longer
   present every fact as an equally loud card. The system favours title, image,
   short introduction and calm editorial rows; detailed material stays visible
   and indexable with less interface chrome. */
html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main{
  --density-measure:68ch;
  --density-wide:1120px;
  --density-line:rgba(175,196,217,.16);
}
html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main > section{
  padding-block:clamp(3.25rem,6.2vw,5.5rem)!important;
}
html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main :is(.wrap,.container,.inner){
  max-width:min(var(--density-wide),calc(100% - 2.5rem));
}
html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main :is(.lead,.intro,.prose,p):not(.meta):not(.eyebrow):not(.kicker){
  max-inline-size:var(--density-measure);
  text-wrap:pretty;
}
html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main :is(.section-head,.section-intro){
  max-width:var(--density-measure);
  margin-bottom:clamp(1.5rem,3vw,2.5rem)!important;
}

/* Secondary factual containers become editorial rows instead of app cards. */
html body.apple-archive[data-content-family]:is([data-content-family="editorial"],[data-content-family="collection"],[data-content-family="chronology"],[data-content-family="utility"]) main :is(.archive-card,.project-card,.source-card,.info-card,.fact-card,.timeline-card,.reference-card){
  margin:0!important;
  padding:clamp(1rem,2vw,1.45rem) 0!important;
  border:0!important;
  border-bottom:1px solid var(--density-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
html body.apple-archive[data-content-family]:is([data-content-family="editorial"],[data-content-family="collection"],[data-content-family="chronology"],[data-content-family="utility"]) main :is(.archive-card,.project-card,.source-card,.info-card,.fact-card,.timeline-card,.reference-card):hover{
  transform:none!important;
  box-shadow:none!important;
}

/* Dense metadata is scan-first: compact rows, no nested box-on-box treatment. */
html body.apple-archive[data-content-family] main :is(.facts,.fact-grid,.meta-grid,.stats-grid,.credits-grid,.source-grid,.reference-grid){
  gap:0 clamp(2rem,5vw,5rem)!important;
}
html body.apple-archive[data-content-family] main :is(.facts,.fact-grid,.meta-grid,.stats-grid,.credits-grid,.source-grid,.reference-grid) > *{
  border-radius:0!important;
  box-shadow:none!important;
}

/* Existing disclosure is the preferred home for supporting depth. */
html body.apple-archive[data-content-family]:not([data-content-family="home"]) main details{
  margin:0!important;
  border:0!important;
  border-top:1px solid var(--density-line)!important;
  border-bottom:1px solid var(--density-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body.apple-archive[data-content-family]:not([data-content-family="home"]) main details + details{margin-top:-1px!important}
html body.apple-archive[data-content-family]:not([data-content-family="home"]) main details > summary{
  min-height:3.5rem;
  padding:1rem 0!important;
}

/* Chronologies read as one continuous story, not a stack of detached tiles. */
html body.apple-archive[data-content-family="chronology"] main :is(.timeline,.chronology,.milestones,.journey){
  display:grid!important;
  gap:0!important;
  border-top:1px solid var(--density-line)!important;
}
html body.apple-archive[data-content-family="chronology"] main :is(.timeline,.chronology,.milestones,.journey) > *{
  padding-block:clamp(1.25rem,2.4vw,1.8rem)!important;
  border-bottom:1px solid var(--density-line)!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Collection landing pages retain imagery but reduce ornamental framing. */
html body.apple-archive[data-content-family="collection"] main :is(.archive-grid,.project-grid,.book-grid,.exhibition-grid,.collection-grid){
  gap:clamp(1.25rem,2.5vw,2.25rem)!important;
}
html body.apple-archive[data-content-family="collection"] main :is(.archive-grid,.project-grid,.book-grid,.exhibition-grid,.collection-grid) :is(article,.card){
  box-shadow:none!important;
}

/* Utility pages should be shortest and calmest. */
html body.apple-archive[data-content-family="utility"] main{--density-measure:62ch;--density-wide:900px}
html body.apple-archive[data-content-family="utility"] main > section{padding-block:clamp(2.75rem,5vw,4.5rem)!important}

@media(max-width:700px){
  html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main > section{
    padding-block:3rem!important;
  }
  html body.apple-archive[data-content-family]:not([data-content-family="home"]):not([data-content-family="curatorial"]) main :is(.wrap,.container,.inner){
    max-width:calc(100% - 2rem);
  }
}
/* STAGE80-ALL-PAGE-CONTENT-DENSITY:END */

/* STAGE129-CONTINUOUS-CANVAS-RUNTIME-GUARD:START */
/* This runtime stylesheet is loaded after the homepage authority on production
   pages. Keep it from reintroducing the flat grey-blue slabs that made quiet
   homepage sections look like empty blocks. */
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(.tone-a,.tone-b,.tone-c){
  --banhalmi-section-surface:#202530!important;
  background:#202530!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(.tone-a,.tone-b,.tone-c)::before{
  background:
    linear-gradient(180deg,rgba(45,52,68,.06),rgba(32,37,48,0) 8rem),
    #202530!important;
  box-shadow:inset 0 1px rgba(175,196,217,.045)!important;
}
/* STAGE129-CONTINUOUS-CANVAS-RUNTIME-GUARD:END */


/* SOURCE: assets/css/record-editorial-system.css */
/* BANHALMI ART — exhibition + book record editorial system
   Stage 75. The record pages keep all archival facts in the DOM while presenting
   them as a calmer museum catalogue: strong opening object, concise metadata,
   alternating blue surfaces, image-first galleries, and quiet source/evidence rows.
   Runtime sets data-record-type from the canonical pathname; this file never
   changes content, schema or link targets. */

body.apple-archive[data-record-type="exhibition"],
body.apple-archive[data-record-type="book"]{
  --record-dark:#202530;
  --record-light:#2D3444;
  --record-raised:#29303F;
  --record-ink:#F5F5F7;
  --record-soft:#AFC4D9;
  --record-gold:#DCC56B;
  --record-line:rgba(175,196,217,.16);
  --record-measure:72ch;
}

/* Strict block rhythm: record pages alternate exactly dark / light. Explicit
   legacy tone classes are neutralised inside these two record families. */
body.apple-archive[data-record-type="exhibition"] main>section,
body.apple-archive[data-record-type="book"] main>section{
  --banhalmi-section-surface:var(--record-dark)!important;
  position:relative!important;
  isolation:isolate!important;
  background:transparent!important;
  border:0!important;
}
body.apple-archive[data-record-type="exhibition"] main>section:nth-of-type(even),
body.apple-archive[data-record-type="book"] main>section:nth-of-type(even){
  --banhalmi-section-surface:var(--record-light)!important;
}
body.apple-archive[data-record-type="exhibition"] main>section:nth-of-type(odd),
body.apple-archive[data-record-type="book"] main>section:nth-of-type(odd){
  --banhalmi-section-surface:var(--record-dark)!important;
}
body.apple-archive[data-record-type="exhibition"] main>section:is(.tone-a,.tone-b,.tone-c),
body.apple-archive[data-record-type="book"] main>section:is(.tone-a,.tone-b,.tone-c){background:transparent!important}
body.apple-archive[data-record-type="exhibition"] main>section::before,
body.apple-archive[data-record-type="book"] main>section::before{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset-block:0!important;
  left:50%!important;
  width:100vw!important;
  transform:translateX(-50%)!important;
  background:var(--banhalmi-section-surface)!important;
  box-shadow:inset 0 1px var(--record-line)!important;
  pointer-events:none!important;
}

/* Catalogue opening: editorial rather than card-like. */
body.apple-archive[data-record-type="exhibition"] header.sub,
body.apple-archive[data-record-type="book"] header.sub{
  position:relative!important;
  isolation:isolate!important;
  padding-top:clamp(8.5rem,13vw,12rem)!important;
  padding-bottom:clamp(3.75rem,7vw,6.5rem)!important;
  border:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
body.apple-archive[data-record-type="exhibition"] header.sub::before,
body.apple-archive[data-record-type="book"] header.sub::before{
  content:"";
  position:absolute;
  z-index:-2;
  inset:0 50% 0 auto;
  width:100vw;
  transform:translateX(50%);
  background:linear-gradient(135deg,#202530 0%,#29303F 55%,#202530 100%);
}
body.apple-archive[data-record-type="exhibition"] header.sub::after,
body.apple-archive[data-record-type="book"] header.sub::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:min(52vw,720px);
  aspect-ratio:1;
  right:-14vw;
  top:-28%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(83,111,143,.22) 0%,rgba(183,156,68,.06) 35%,transparent 70%);
  pointer-events:none;
}
body.apple-archive[data-record-type="exhibition"] header.sub .wrap,
body.apple-archive[data-record-type="book"] header.sub .wrap{max-width:1080px!important}
body.apple-archive[data-record-type="exhibition"] header.sub h1,
body.apple-archive[data-record-type="book"] header.sub h1{
  max-width:18ch!important;
  margin:.7rem 0 1rem!important;
  font-size:clamp(2.7rem,6.4vw,5.5rem)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  text-wrap:balance;
}
body.apple-archive[data-record-type="exhibition"] header.sub :is(.lead,.hero-sub,.loc),
body.apple-archive[data-record-type="book"] header.sub :is(.lead,.hero-sub,.loc){max-width:58ch!important}
body.apple-archive[data-record-type="exhibition"] header.sub .meta,
body.apple-archive[data-record-type="book"] header.sub .meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:.45rem 1.2rem!important;
  margin-top:1.75rem!important;
  color:var(--record-soft)!important;
}

/* Reading measure + hierarchy. */
body.apple-archive[data-record-type="exhibition"] main section>.wrap,
body.apple-archive[data-record-type="book"] main section>.wrap{max-width:1180px!important}
body.apple-archive[data-record-type="exhibition"] main section .narrow,
body.apple-archive[data-record-type="book"] main section .narrow{max-width:860px!important}
body.apple-archive[data-record-type="exhibition"] main section p:not(.label):not(.meta):not(.loc):not(.fineprint),
body.apple-archive[data-record-type="book"] main section p:not(.label):not(.meta):not(.loc):not(.fineprint){max-width:var(--record-measure)}
body.apple-archive[data-record-type="exhibition"] main section h2,
body.apple-archive[data-record-type="book"] main section h2{
  max-width:20ch!important;
  margin-bottom:1.35rem!important;
  text-wrap:balance;
}
body.apple-archive[data-record-type="exhibition"] main section h3,
body.apple-archive[data-record-type="book"] main section h3{max-width:30ch!important}

/* Facts become a catalogue index: no boxed dashboard, just aligned rows. */
body.apple-archive[data-record-type="exhibition"] .facts,
body.apple-archive[data-record-type="book"] .facts{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0 clamp(2rem,5vw,5rem)!important;
  margin-top:clamp(2rem,4vw,3.5rem)!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.apple-archive[data-record-type="exhibition"] .facts li,
body.apple-archive[data-record-type="book"] .facts li{
  min-height:0!important;
  padding:1rem 0!important;
  border:0!important;
  border-bottom:1px solid var(--record-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.apple-archive[data-record-type="exhibition"] .facts :is(strong,b),
body.apple-archive[data-record-type="book"] .facts :is(strong,b){color:var(--record-ink)!important}

/* Gallery is the visual centre of an exhibition record. Keep source aspect
   ratios, enlarge spacing and remove decorative card chrome. */
body.apple-archive[data-record-type="exhibition"] .collage{
  columns:3!important;
  column-gap:clamp(18px,2vw,30px)!important;
  margin-top:clamp(2.5rem,5vw,4.5rem)!important;
}
body.apple-archive[data-record-type="exhibition"] .collage figure{
  margin:0 0 clamp(18px,2vw,30px)!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.apple-archive[data-record-type="exhibition"] .collage img{
  transform:none!important;

}
body.apple-archive[data-record-type="exhibition"] .collage figure:hover img{transform:none!important;opacity:.88}
body.apple-archive[data-record-type="exhibition"] .collage figcaption{
  padding:.7rem 0 0!important;
  color:var(--record-soft)!important;
  font-size:.78rem!important;
  line-height:1.45!important;
  background:transparent!important;
}

/* Long provenance / source / evidence areas are quieter than the work itself. */
body.apple-archive[data-record-type="exhibition"] :is(.record-depth,.record-relationships,.project-evidence,.sources),
body.apple-archive[data-record-type="book"] :is(.record-depth,.record-relationships,.project-evidence,.sources){
  border:0!important;
  box-shadow:none!important;
}
body.apple-archive[data-record-type="exhibition"] :is(.record-links,.source-list,.sources ul) a,
body.apple-archive[data-record-type="book"] :is(.record-links,.source-list,.sources ul) a{
  display:block!important;
  padding:.85rem 0!important;
  border-bottom:1px solid var(--record-line)!important;
  background:transparent!important;
  border-radius:0!important;
}

/* Book object: cover is treated as an artefact, text as catalogue copy. */
body.apple-archive[data-record-type="book"] .book-lead{
  display:grid!important;
  grid-template-columns:minmax(220px,.72fr) minmax(0,1.35fr)!important;
  gap:clamp(2.5rem,7vw,7rem)!important;
  align-items:center!important;
}
body.apple-archive[data-record-type="book"] .book-lead .book-cover{
  max-width:430px!important;
  margin:0 auto!important;
}
body.apple-archive[data-record-type="book"] .book-lead .book-cover figure{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:0 28px 72px rgba(12,16,24,.42)!important;
}
body.apple-archive[data-record-type="book"] .book-lead .book-cover img{width:100%!important;height:auto!important}
body.apple-archive[data-record-type="book"] .book-lead :is(.lead,.meta,p){max-width:58ch!important}

/* Existing details stay crawlable in source and become premium disclosure for
   supplementary material instead of another dense card stack. */
body.apple-archive[data-record-type="exhibition"] main details,
body.apple-archive[data-record-type="book"] main details{
  margin:1rem 0!important;
  padding:0!important;
  border:0!important;
  border-top:1px solid var(--record-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.apple-archive[data-record-type="exhibition"] main details:last-child,
body.apple-archive[data-record-type="book"] main details:last-child{border-bottom:1px solid var(--record-line)!important}
body.apple-archive[data-record-type="exhibition"] main details>summary,
body.apple-archive[data-record-type="book"] main details>summary{
  padding:1.15rem 0!important;
  color:var(--record-ink)!important;
  font-size:1rem!important;
  font-weight:600!important;
  cursor:pointer!important;
}
body.apple-archive[data-record-type="exhibition"] main details>summary::marker,
body.apple-archive[data-record-type="book"] main details>summary::marker{color:var(--record-gold)!important}
body.apple-archive[data-record-type="exhibition"] main details>[class],
body.apple-archive[data-record-type="book"] main details>[class],
body.apple-archive[data-record-type="exhibition"] main details>p,
body.apple-archive[data-record-type="book"] main details>p{padding-bottom:1.25rem!important}

@media(max-width:900px){
  body.apple-archive[data-record-type="exhibition"] .collage{columns:2!important}
  body.apple-archive[data-record-type="book"] .book-lead{grid-template-columns:1fr!important;gap:2.5rem!important}
  body.apple-archive[data-record-type="book"] .book-lead .book-cover{width:min(72vw,360px)!important}
}
@media(max-width:640px){
  body.apple-archive[data-record-type="exhibition"] header.sub,
  body.apple-archive[data-record-type="book"] header.sub{padding-top:7rem!important;padding-bottom:3.5rem!important}
  body.apple-archive[data-record-type="exhibition"] header.sub h1,
  body.apple-archive[data-record-type="book"] header.sub h1{font-size:clamp(2.35rem,11vw,3.65rem)!important}
  body.apple-archive[data-record-type="exhibition"] .facts,
  body.apple-archive[data-record-type="book"] .facts{grid-template-columns:1fr!important}
  body.apple-archive[data-record-type="exhibition"] .collage{columns:1!important}
}

@media(prefers-reduced-motion:reduce){
  body.apple-archive[data-record-type="exhibition"] .collage img{}
}


/* Stage 76 — exhibition signatures
   Four landmark exhibitions now have recognisable editorial pacing without
   changing archival facts, schema or the two-blue BANHALMI palette. */
body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"]{--record-measure:66ch}
body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"] header.sub .wrap{max-width:1220px!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"] header.sub h1{max-width:15ch!important;font-size:clamp(3rem,7vw,6.25rem)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"] header.sub::after{width:min(62vw,880px);right:-10vw;background:radial-gradient(circle,rgba(175,196,217,.24) 0%,rgba(183,156,68,.07) 30%,transparent 68%)}
body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"] .collage{columns:2!important;column-gap:clamp(22px,3vw,46px)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"] .collage figure:nth-child(3n+1){break-inside:avoid;margin-bottom:clamp(34px,5vw,68px)!important}

body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"]{--record-measure:62ch;--record-line:rgba(175,196,217,.22)}
body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"] header.sub h1{max-width:14ch!important;letter-spacing:-.035em!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"] main section>.wrap{max-width:1060px!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"] main section h2{padding-left:1rem;border-left:2px solid var(--record-gold)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"] .collage{columns:2!important;column-gap:clamp(16px,2vw,26px)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"] .collage figcaption{font-size:.82rem!important;max-width:52ch}

body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"]{--record-measure:70ch}
body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] header.sub .wrap{max-width:1140px!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] header.sub h1{max-width:16ch!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] main>section{padding-block:clamp(4.75rem,9vw,8rem)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] .collage{columns:2!important;column-gap:clamp(28px,4vw,58px)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] .collage figure:nth-child(even){margin-top:clamp(22px,4vw,54px)!important}

body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"]{--record-line:rgba(175,196,217,.26)}
body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] header.sub::after{border-radius:0;aspect-ratio:1.35;right:-8vw;top:6%;background:transparent;border:1px solid rgba(183,156,68,.26);transform:rotate(-3deg)}
body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] main section>.wrap{max-width:1120px!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] .collage{columns:2!important;column-gap:clamp(22px,3vw,42px)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] .collage figure{padding:clamp(8px,1vw,14px)!important;border:1px solid var(--record-line)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] .collage figcaption{padding:.75rem .2rem .15rem!important}

@media(max-width:640px){
  body.apple-archive[data-record-type="exhibition"][data-record-slug="euforia"] .collage,
  body.apple-archive[data-record-type="exhibition"][data-record-slug="merfoldkovek1956"] .collage,
  body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] .collage,
  body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] .collage{columns:1!important}
  body.apple-archive[data-record-type="exhibition"][data-record-slug="anovilaga"] .collage figure:nth-child(even){margin-top:0!important}
  body.apple-archive[data-record-type="exhibition"][data-record-slug="theframe"] header.sub::after{right:-30vw;top:20%;width:78vw}
}


/* Stage 77 — book signatures
   The three photography books retain one shared museum catalogue system, but
   each title now has its own editorial cadence. No archival text, schema,
   canonical route or BANHALMI two-blue/gold colour authority is changed. */

/* Awakening — intimate, human, quiet. */
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"]{--record-measure:64ch;--record-line:rgba(175,196,217,.18)}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] header.sub .wrap{max-width:1040px!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] header.sub h1{max-width:14ch!important;letter-spacing:-.038em!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] header.sub::after{width:min(58vw,760px);right:-9vw;top:-18%;background:radial-gradient(circle,rgba(175,196,217,.22) 0%,rgba(183,156,68,.08) 28%,transparent 68%)}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] .book-lead{grid-template-columns:minmax(210px,.64fr) minmax(0,1.28fr)!important;gap:clamp(3rem,8vw,8rem)!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] .book-lead .book-cover{max-width:380px!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] main section h2{max-width:16ch!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] main details>summary{font-weight:520!important}

/* Fragments — compact notebook / essay rhythm. */
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"]{--record-measure:60ch;--record-line:rgba(175,196,217,.22)}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] header.sub .wrap{max-width:980px!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] header.sub h1{max-width:12ch!important;font-size:clamp(2.8rem,6vw,5rem)!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] header.sub::after{width:min(42vw,560px);aspect-ratio:1.35;right:-6vw;top:8%;border-radius:0;background:transparent;border:1px solid rgba(183,156,68,.22);transform:rotate(2deg)}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] .book-lead{grid-template-columns:minmax(200px,.58fr) minmax(0,1.15fr)!important;gap:clamp(2.25rem,6vw,5.5rem)!important;align-items:start!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] .book-lead .book-cover{max-width:350px!important;margin-top:clamp(.5rem,2vw,1.5rem)!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] .facts{grid-template-columns:1fr!important;max-width:760px!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] main section h2{padding-left:1rem;border-left:2px solid var(--record-gold)!important}

/* The World of Woman — broader art-book spread and more gallery-like air. */
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"]{--record-measure:70ch}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] header.sub .wrap{max-width:1180px!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] header.sub h1{max-width:16ch!important;font-size:clamp(3rem,6.7vw,5.8rem)!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] header.sub::after{width:min(66vw,900px);right:-16vw;top:-30%;background:radial-gradient(circle,rgba(83,111,143,.28) 0%,rgba(175,196,217,.10) 34%,transparent 70%)}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] .book-lead{grid-template-columns:minmax(260px,.88fr) minmax(0,1.25fr)!important;gap:clamp(3.5rem,8vw,8.5rem)!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] .book-lead .book-cover{max-width:470px!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] main>section{padding-block:clamp(4.75rem,9vw,8rem)!important}
body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] main section>.wrap{max-width:1220px!important}

@media(max-width:900px){
  body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] .book-lead,
  body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] .book-lead,
  body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] .book-lead{grid-template-columns:1fr!important;gap:2.75rem!important}
}
@media(max-width:640px){
  body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] header.sub::after{right:-28vw;top:6%;width:76vw}
  body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] header.sub::after{right:-32vw;top:20%;width:72vw}
  body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] header.sub::after{right:-36vw;top:4%;width:88vw}
  body.apple-archive[data-record-type="book"][data-record-slug="book-ebredes"] .book-lead .book-cover,
  body.apple-archive[data-record-type="book"][data-record-slug="book-szosszenetek"] .book-lead .book-cover,
  body.apple-archive[data-record-type="book"][data-record-slug="book-anovilaga"] .book-lead .book-cover{width:min(74vw,360px)!important;margin-inline:auto!important}
}

/* Stage 78 — remaining exhibition families. */
body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas1"],[data-record-slug="fotokiallitas2"],[data-record-slug="fotokiallitas4"]){--record-measure:64ch}body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas1"],[data-record-slug="fotokiallitas2"],[data-record-slug="fotokiallitas4"]) .collage{columns:3!important}
body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas3"],[data-record-slug="balerina-project-new-york"]){--record-measure:68ch}body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas3"],[data-record-slug="balerina-project-new-york"]) .collage{columns:2!important;column-gap:clamp(28px,4vw,60px)!important}
body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas5"],[data-record-slug="ebredes"]){--record-measure:60ch}body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas5"],[data-record-slug="ebredes"]) .collage{columns:2!important}
body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="enano"],[data-record-slug="femmefatale"]){--record-measure:66ch}body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="enano"],[data-record-slug="femmefatale"]) header.sub h1{font-size:clamp(3rem,7vw,6rem)!important;max-width:12ch!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="avalosag"]{--record-measure:62ch}body.apple-archive[data-record-type="exhibition"][data-record-slug="avalosag"] .collage figure{padding:clamp(6px,.8vw,10px)!important;border:1px solid var(--record-line)!important}
body.apple-archive[data-record-type="exhibition"][data-record-slug="fotokiallitas8"]{--record-measure:58ch}body.apple-archive[data-record-type="exhibition"][data-record-slug="fotokiallitas8"] .collage{columns:2!important;max-width:880px!important}
@media(max-width:640px){body.apple-archive[data-record-type="exhibition"]:is([data-record-slug="fotokiallitas1"],[data-record-slug="fotokiallitas2"],[data-record-slug="fotokiallitas3"],[data-record-slug="fotokiallitas4"],[data-record-slug="fotokiallitas5"],[data-record-slug="fotokiallitas8"],[data-record-slug="ebredes"],[data-record-slug="balerina-project-new-york"],[data-record-slug="enano"],[data-record-slug="femmefatale"],[data-record-slug="avalosag"]) .collage{columns:1!important}}


/* STAGE81-RECORD-SUPPORTING-DISCLOSURES:START
   Supporting archive context is still present in source and fully crawlable,
   but it no longer competes with the artwork. Three recurring evidence blocks
   become calm, native disclosures after the main catalogue narrative. */
body.apple-archive[data-record-type] > details.record-supporting{
  margin:0!important;
  border:0!important;
  border-top:1px solid var(--record-line)!important;
  background:var(--record-dark)!important;
  color:var(--record-ink)!important;
}
body.apple-archive[data-record-type] > details.record-supporting:nth-of-type(even){background:var(--record-light)!important}
body.apple-archive[data-record-type] > details.record-supporting > summary{
  width:min(1180px,calc(100% - 2.5rem));
  min-height:4.75rem;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:1rem;
  padding:1.1rem 0!important;
  color:var(--record-ink)!important;
  font-size:clamp(1rem,1.4vw,1.12rem)!important;
  font-weight:650!important;
  letter-spacing:-.01em;
  cursor:pointer;
  list-style:none;
}
body.apple-archive[data-record-type] > details.record-supporting > summary::-webkit-details-marker{display:none}
body.apple-archive[data-record-type] > details.record-supporting > summary::after{
  content:'+';
  margin-left:auto;
  color:var(--record-gold);
  font-size:1.45rem;
  font-weight:400;
  line-height:1;
}
body.apple-archive[data-record-type] > details.record-supporting[open] > summary::after{content:'−'}
body.apple-archive[data-record-type] > details.record-supporting > section{
  margin:0!important;
  padding-block:clamp(2rem,4vw,3.5rem)!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.apple-archive[data-record-type] > details.record-supporting > section::before{display:none!important}
body.apple-archive[data-record-type] > details.record-supporting .wrap{max-width:1180px!important}
body.apple-archive[data-record-type] > details.record-supporting :is(.record-depth-head,.record-context-head,.project-evidence-head){margin-bottom:clamp(1.25rem,2.5vw,2rem)!important}
body.apple-archive[data-record-type] > details.record-supporting :is(.record-links,.project-evidence-grid){gap:0!important}
body.apple-archive[data-record-type] > details.record-supporting :is(.record-links>a,.evidence-item){
  margin:0!important;
  padding:1rem 0!important;
  border:0!important;
  border-bottom:1px solid var(--record-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
@media(max-width:700px){
  body.apple-archive[data-record-type] > details.record-supporting > summary{width:calc(100% - 2rem);min-height:4.25rem}
  body.apple-archive[data-record-type] > details.record-supporting > section{padding-block:2rem!important}
}
/* STAGE81-RECORD-SUPPORTING-DISCLOSURES:END */

/* STAGE132-UNIFIED-EXHIBITION-GALLERY-GRID:START
   Exhibition records should share the same visual wall as the homepage
   gallery: a calm 3 / 2 / 1 column natural-ratio collage. Earlier record
   signatures may still shape the hero and prose, but they no longer create
   one-off gallery widths, offsets or two-column exceptions. */
html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section.wrap:has(#galwrap),
html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section.wrap:has(.collage:not(#galwrap)),
html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section:has(#galwrap) > .wrap,
html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section:has(.collage:not(#galwrap)) > .wrap{
  width:min(1200px, calc(100% - 12vw))!important;
  max-width:1200px!important;
  margin-inline:auto!important;
  padding-inline:0!important;
  padding-block:clamp(4rem,6vw,6rem) clamp(4.75rem,7vw,7.5rem)!important;
}
html body.apple-archive.apple-archive[data-record-type="exhibition"] main .collage:not(#galwrap):not([hidden]),
html body.apple-archive.apple-archive[data-record-type="exhibition"] main #galwrap.collage{
  display:block!important;
  columns:3!important;
  column-count:3!important;
  column-width:auto!important;
  column-gap:clamp(14px,1.4vw,18px)!important;
  width:100%!important;
  max-width:100%!important;
  margin-top:clamp(2.5rem,5vw,4.25rem)!important;
}
html body.apple-archive.apple-archive[data-record-type="exhibition"] main #galwrap>.gal-batch:not([hidden]){
  display:contents!important;
}
html body.apple-archive.apple-archive[data-record-type="exhibition"] main .collage figure,
html body.apple-archive.apple-archive[data-record-type="exhibition"] main #galwrap figure{
  break-inside:avoid!important;
  margin:0 0 clamp(14px,1.4vw,18px)!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
html body.apple-archive.apple-archive[data-record-type="exhibition"] main .collage figure:nth-child(n){
  margin-top:0!important;
}
html body.apple-archive.apple-archive[data-record-type="exhibition"] main .collage img,
html body.apple-archive.apple-archive[data-record-type="exhibition"] main #galwrap img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  transform:none!important;
}
html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section.wrap:has(#galwrap) > p.meta,
html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section.wrap:has(.collage:not(#galwrap)) > p.meta{
  margin-top:clamp(2rem,4vw,3rem)!important;
}
@media(max-width:1100px){
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main .collage:not(#galwrap):not([hidden]),
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main #galwrap.collage{
    columns:2!important;
    column-count:2!important;
  }
}
@media(max-width:700px){
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section.wrap:has(#galwrap),
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section.wrap:has(.collage:not(#galwrap)),
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section:has(#galwrap) > .wrap,
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main > section:has(.collage:not(#galwrap)) > .wrap{
    width:calc(100% - 2rem)!important;
    padding-block:clamp(3rem,12vw,4.25rem)!important;
  }
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main .collage:not(#galwrap):not([hidden]),
  html body.apple-archive.apple-archive[data-record-type="exhibition"] main #galwrap.collage{
    columns:1!important;
    column-count:1!important;
  }
}
/* STAGE132-UNIFIED-EXHIBITION-GALLERY-GRID:END */


/* SOURCE: assets/css/chronology-surface-authority.css */
/* BANHALMI ART — late visual stability authority (v134)
   --------------------------------------------------------------------------
   Loaded by responsive-header-system.js after the static design stack.

   This layer is intentionally narrow. It may resolve cascade leaks that are
   visible only after legacy archive styles have loaded, but it must not change
   page-title geometry or homepage spacing after first paint. That distinction
   matters for both visual stability and Lighthouse CLS.

   v134 fixes the production regressions visible on Press and record pages:
   - no literal black source cards;
   - Press follows the same blue Apple/editorial family as Community;
   - the long Press disclosure is a compact, aligned editorial control;
   - connected-record links cannot collapse into one inline line;
   - non-home sections regain the intended dark / lighter-blue rhythm;
   - the homepage keeps its continuous canvas without a late geometry rewrite.
   ----------------------------------------------------------------------- */

:root{
  --art-v134-dark:#202530;
  --art-v134-raised:#29303F;
  --art-v134-light:#484F60;
  --art-v134-card:#343C4F;
  --art-v134-ink:#F5F5F7;
  --art-v134-soft:#AFC4D9;
  --art-v134-gold:#DCC56B;
  --art-v134-line:rgba(175,196,217,.16);
  --art-v134-line-strong:rgba(175,196,217,.24);
}

/* Palette authority only. No font-size, line-height, padding or display
   changes are applied to the homepage from this late-loaded stylesheet. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive{
  --c-ground:var(--art-v134-dark)!important;
  --c-raised:var(--art-v134-raised)!important;
  --c-panel:var(--art-v134-light)!important;
  --mus-ground:var(--art-v134-dark)!important;
  --mus-raised:var(--art-v134-raised)!important;
  --mus-panel:var(--art-v134-light)!important;
  --mus-ink:var(--art-v134-ink)!important;
  --mus-soft:var(--art-v134-soft)!important;
  background:var(--art-v134-dark)!important;
}

/* --------------------------------------------------------------------------
   Non-home section rhythm
   ----------------------------------------------------------------------- */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page]:not([data-archive-page="index"]) main>section,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] main>section{
  --banhalmi-section-surface:var(--art-v134-dark)!important;
  background:transparent!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page]:not([data-archive-page="index"]) main>section:nth-of-type(even),
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] main>section:nth-of-type(even){
  --banhalmi-section-surface:var(--art-v134-light)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page]:not([data-archive-page="index"]) main>section:nth-of-type(odd),
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] main>section:nth-of-type(odd){
  --banhalmi-section-surface:var(--art-v134-dark)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page]:not([data-archive-page="index"]) main>section::before,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] main>section::before{
  background:var(--banhalmi-section-surface)!important;
  box-shadow:inset 0 1px var(--art-v134-line),inset 0 -1px rgba(32,37,48,.28)!important;
}

/* Curatorial runtime numbers its direct sections 1/2. Keep that explicit so
   page-specific tone classes cannot repaint an isolated grey/black slab. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive .curatorial-section[data-curatorial-surface="1"]::before{
  background:var(--art-v134-dark)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive .curatorial-section[data-curatorial-surface="2"]::before{
  background:var(--art-v134-light)!important;
}

/* --------------------------------------------------------------------------
   Press — same elegant editorial language as Community
   ----------------------------------------------------------------------- */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign{
  --press-paper:var(--art-v134-dark)!important;
  --press-warm:var(--art-v134-raised)!important;
  --press-ink:var(--art-v134-ink)!important;
  --press-muted:var(--art-v134-soft)!important;
  --press-line:var(--art-v134-line)!important;
  --press-gold:var(--art-v134-gold)!important;
  background:var(--art-v134-dark)!important;
  color:var(--art-v134-ink)!important;
}

/* The periods are the Press equivalent of Community's chronology: calm,
   alternating blue blocks with hairline separation, never black cards. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign .press-period{
  background:var(--art-v134-dark)!important;
  border-color:var(--art-v134-line)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign .press-period:nth-of-type(even){
  background:var(--art-v134-light)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign .press-record{
  background:transparent!important;
  border-color:var(--art-v134-line)!important;
  box-shadow:none!important;
}

/* The original Press redesign was light-paper based and therefore contained
   several literal dark-grey text colours. On the unified blue archive canvas
   those became low-contrast. The final authority replaces every such visible
   literal with the same soft-blue/gold hierarchy used by Community. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign :is(
  .press-overview p,
  .press-record .desc,
  .press-record .note,
  .era-copy,
  .press-period-count,
  .press-period-nav__range
){
  color:var(--art-v134-soft)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign :is(
  .press-overview__eyebrow,
  .press-period-nav__index,
  .era-no,
  .press-record__title::after
){
  color:var(--art-v134-gold)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign :is(
  .press-period-nav a,
  .press-period-nav__title,
  .press-record__title
){
  color:var(--art-v134-ink)!important;
}

/* Progressive disclosure remains useful for the long archive, but it is a
   compact editorial row on the same content axis — not an empty full-screen
   slab between the header and the next section. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] details.press-archive-disclosure{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-top:1px solid var(--art-v134-line)!important;
  border-bottom:1px solid var(--art-v134-line)!important;
  border-radius:0!important;
  background:var(--art-v134-raised)!important;
  box-shadow:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] details.press-archive-disclosure>summary{
  width:min(1180px,calc(100% - 12vw))!important;
  min-height:72px!important;
  display:flex!important;
  align-items:center!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--art-v134-ink)!important;
  font-size:clamp(1rem,1.25vw,1.12rem)!important;
  font-weight:600!important;
  line-height:1.35!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] details.press-archive-disclosure>summary::after{
  margin-left:auto!important;
  color:var(--art-v134-gold)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] details.press-archive-disclosure>#press-list{
  margin-top:0!important;
}

/* The source network in the screenshot still inherited #171717 from the old
   Press-specific inline CSS. Override that literal at the final cascade layer. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources .source-grid{
  gap:1px!important;
  background:var(--art-v134-line-strong)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources .source-grid>a{
  background:var(--art-v134-raised)!important;
  color:var(--art-v134-ink)!important;
  border:0!important;
  box-shadow:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources .source-grid>a:nth-child(even){
  background:var(--art-v134-card)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources .source-grid>a:is(:hover,:focus-visible){
  background:var(--art-v134-light)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources .source-grid :is(strong){
  color:var(--art-v134-ink)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources .source-grid :is(small){
  color:var(--art-v134-soft)!important;
}

/* --------------------------------------------------------------------------
   Community / chronology colour stability
   Geometry is already owned by the static Apple system; only surface colour
   is repeated here so a legacy museum rule cannot bring back grey/black rows.
   ----------------------------------------------------------------------- */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline[data-chronology]>.t-item{
  background:var(--art-v134-dark)!important;
  border-color:var(--art-v134-line)!important;
  box-shadow:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline[data-chronology]>.t-item:nth-child(even){
  background:var(--art-v134-raised)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline[data-chronology]>.t-item>.yr{
  color:var(--art-v134-gold)!important;
}

/* --------------------------------------------------------------------------
   Exhibition/book connected records
   The old catalogue layer styled the cells but did not guarantee that the
   parent remained a grid after later density rules. That produced the joined
   text visible on The Frame. Supporting details are closed by default, so this
   does not change above-the-fold geometry or the Lighthouse record-page CLS.
   ----------------------------------------------------------------------- */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  width:100%!important;
  border-top:1px solid var(--art-v134-line)!important;
  border-left:1px solid var(--art-v134-line)!important;
  background:transparent!important;
  overflow:hidden!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links>a{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:.45rem!important;
  margin:0!important;
  padding:clamp(1.1rem,2vw,1.5rem)!important;
  border:0!important;
  border-right:1px solid var(--art-v134-line)!important;
  border-bottom:1px solid var(--art-v134-line)!important;
  background:var(--art-v134-dark)!important;
  color:var(--art-v134-ink)!important;
  text-decoration:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links>a:nth-child(even){
  background:var(--art-v134-raised)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links>a:is(:hover,:focus-visible){
  background:var(--art-v134-light)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links :is(strong,span){
  display:block!important;
  min-width:0!important;
  overflow-wrap:break-word!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links strong{
  color:var(--art-v134-ink)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links span{
  color:var(--art-v134-soft)!important;
}

@media(max-width:760px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] details.press-archive-disclosure>summary{
    width:calc(100% - 2rem)!important;
    min-height:64px!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type] details.record-supporting .record-links{
    grid-template-columns:1fr!important;
  }
}


/* STAGE135-MOTIONLESS-ARCHIVE
   The archive intentionally uses no decorative CSS motion. Interactive states,
   menus, details and lightbox controls still work, but every state change is
   immediate. This removes non-composited animation work and smooth scrolling
   without changing layout, typography, colour or content. */
html{scroll-behavior:auto!important}
body.apple-archive *,
body.apple-archive *::before,
body.apple-archive *::after{


  scroll-behavior:auto!important;
}


/* SOURCE: assets/css/final-layout-fixes.css */
/* BANHALMI ART — final persistent desktop corrections */

/* Never show MENU/MENÜ as visible button text: always render one clean hamburger. */
body.apple-archive nav .burger{
  position:relative!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  overflow:hidden!important;
  cursor:pointer!important;
}
body.apple-archive nav .burger::before,
body.apple-archive nav .burger::after{
  content:""!important;
  position:absolute!important;
  left:11px!important;
  width:22px!important;
  height:2px!important;
  border-radius:var(--c-radius-pill)!important;
  background:#f5f5f7!important;

}
body.apple-archive nav .burger::before{top:15px!important;box-shadow:0 6px 0 #f5f5f7!important}
body.apple-archive nav .burger::after{top:27px!important}
body.apple-archive.menu-open nav .burger::before{top:21px!important;transform:rotate(45deg)!important;box-shadow:none!important}
body.apple-archive.menu-open nav .burger::after{top:21px!important;transform:rotate(-45deg)!important}
body.apple-archive nav .burger span{display:none!important}

/* Keep the complete header visible above the open menu. */
body.apple-archive>nav:not(.archive-nav){
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:140!important;
  min-height:68px!important;
  background:rgba(32,37,48,.97)!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

/* Books and Exhibitions are plain menu destinations; no catalogue disclosure markup remains. */

/* The navigation title is always the primary reading level. Descriptions are
   supporting copy and may never visually outrank their destination label. */
body.apple-archive #menu .m-main{
  font-size:clamp(1.12rem,1.15vw + .78rem,1.48rem)!important;
  line-height:1.18!important;
  font-weight:500!important;
}
body.apple-archive #menu .m-desc{
  font-size:clamp(.76rem,.16vw + .72rem,.86rem)!important;
  line-height:1.5!important;
}

/* Shared press-style desktop menu: broad two-column editorial index. */
@media(min-width:901px){
  body.apple-archive #menu{
    position:fixed!important;
    inset:0!important;
    z-index:90!important;
    width:100vw!important;
    height:100dvh!important;
    padding:clamp(6.5rem,10vh,8rem) clamp(2.5rem,5vw,6rem) clamp(3rem,6vh,5rem)!important;
    background:rgba(32,37,48,.985)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
  }
  body.apple-archive:not(.menu-open) #menu{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  body.apple-archive.menu-open #menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important}

  body.apple-archive #menu .mwrap{
    width:min(100%,1500px)!important;
    max-width:1500px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:clamp(4rem,8vw,9rem)!important;
    align-content:start!important;
    align-items:start!important;
  }
  body.apple-archive #menu .mwrap>div:not(.m-foot){display:block!important;min-width:0!important}
  body.apple-archive #menu .m-main{display:block!important;padding:clamp(.9rem,1.4vw,1.25rem) 0 0!important;border-top:1px solid rgba(255,255,255,.28)!important;color:#DCC56B!important;font-size:clamp(1.22rem,1.5vw,1.56rem)!important;line-height:1.15!important;text-decoration:none!important}
  body.apple-archive #menu .m-desc{display:block!important;margin:.18rem 0 clamp(.85rem,1.5vw,1.3rem)!important;max-width:58ch!important;color:#c7c7cb!important;font-size:clamp(.76rem,.18vw + .73rem,.88rem)!important;line-height:1.4!important}

  body.apple-archive #menu details.svc{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    border-top:0!important;
    margin:.35rem 0 0!important;
    padding:0 0 .8rem!important;
  }
  body.apple-archive #menu details.svc>summary{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:44px!important;
    padding:.55rem 0!important;
    color:#DCC56B!important;
    font-size:clamp(1.22rem,1.5vw,1.56rem)!important;
    font-weight:600!important;
    line-height:1.15!important;
    list-style:none!important;
    cursor:pointer!important;
  }
  body.apple-archive #menu details.svc>summary::-webkit-details-marker{display:none!important}
  body.apple-archive #menu details.svc>summary::after{content:'+'!important;color:#DCC56B!important;font-size:1.2rem!important;font-weight:400!important}
  body.apple-archive #menu details.svc[open]>summary::after{content:'−'!important}
  body.apple-archive #menu details.svc>.m-desc{margin:.15rem 0 .65rem!important}
  body.apple-archive #menu [data-contact-position="left"] + details.svc{border-top:0!important}
}

/* Use substantially more desktop width on editorial subpages without creating unreadably long lines. */
@media(min-width:1101px){
  body.apple-archive main>header.sub .wrap.narrow,
  body.apple-archive main>section.wrap.narrow,
  body.apple-archive main>section>.wrap.narrow,
  body.apple-archive main>header>.wrap.narrow{
    width:min(calc(100% - clamp(4rem,10vw,12rem)),1320px)!important;
    max-width:1320px!important;
  }
  body.apple-archive main>section.wrap.narrow p,
  body.apple-archive main>section>.wrap.narrow p{max-width:82ch!important}
}

@media(max-width:900px){
  body.apple-archive>nav:not(.archive-nav){min-height:60px!important}
  body.apple-archive #menu .m-main{font-size:clamp(1.12rem,4.4vw,1.34rem)!important}
  body.apple-archive #menu .m-desc{font-size:.8rem!important;line-height:1.45!important}
}

/* 2026-08-07 — Curatorial visual contract.
   Press is the reference layout; Community and Publications & Memberships
   share the same dark museum-editorial rhythm. The older press-only redesign
   used white paper surfaces and left a visually empty black strip before the
   global footer. These overrides make the three public-record pages one
   coherent system without changing their content or semantic structure. */
body.apple-archive[data-archive-page="press"],
body.apple-archive[data-archive-page="community"],
body.apple-archive[data-archive-page="writing"]{
  background:var(--c-ground)!important;
  color:#f5f5f7!important;
}
body.apple-archive[data-archive-page="press"] main,
body.apple-archive[data-archive-page="community"] main,
body.apple-archive[data-archive-page="writing"] main{
  margin-bottom:0!important;
  padding-bottom:0!important;
  background:var(--c-ground)!important;
}
body.apple-archive[data-archive-page="press"] main+footer,
body.apple-archive[data-archive-page="community"] main+footer,
body.apple-archive[data-archive-page="writing"] main+footer{
  margin-top:0!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}

/* Press retains its successful editorial information design, but adopts the
   archive's dark surfaces and accessible light-on-dark typography. */
body.apple-archive[data-archive-page="press"] .press-redesign{
  --press-ink:#f5f5f7!important;
  --press-muted:#AFC4D9!important;
  --press-paper:var(--c-ground)!important;
  --press-warm:var(--c-raised)!important;
  --press-line:rgba(255,255,255,.14)!important;
  --press-gold:#DCC56B!important;
  color:var(--press-ink)!important;
  background:var(--press-paper)!important;
}
body.apple-archive[data-archive-page="press"] .press-redesign .press-overview,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period{
  background:var(--c-ground)!important;
  color:#f5f5f7!important;
}
body.apple-archive[data-archive-page="press"] .press-redesign .press-period:nth-child(even){
  background:var(--c-raised)!important;
}
body.apple-archive[data-archive-page="press"] .press-redesign .press-overview h2,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period h2,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period h3,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period-nav__title,
body.apple-archive[data-archive-page="press"] .press-redesign .press-record__title{
  color:#f5f5f7!important;
}
body.apple-archive[data-archive-page="press"] .press-redesign .press-overview p,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period :is(p,.desc,.note,small),
body.apple-archive[data-archive-page="press"] .press-redesign .press-period-nav__range{
  color:#AFC4D9!important;
}
body.apple-archive[data-archive-page="press"] .press-redesign .press-overview__eyebrow,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period .era-no,
body.apple-archive[data-archive-page="press"] .press-redesign .press-period-nav__index{
  color:#DCC56B!important;
}
body.apple-archive[data-archive-page="press"] .press-redesign .press-period-nav a{
  color:#f5f5f7!important;
  border-color:rgba(255,255,255,.14)!important;
}

/* Keep every fragment target clear of the fixed navigation. */
html{scroll-padding-top:88px!important}
body.apple-archive [id]{scroll-margin-top:88px!important}
@media(max-width:900px){
  html{scroll-padding-top:76px!important}
  body.apple-archive [id]{scroll-margin-top:76px!important}
}

/* 2026-08-09 — full-bleed editorial surfaces.
   Several pages put .wrap.narrow on the SECTION itself. That correctly
   constrained the copy but accidentally constrained the background too,
   creating a grey rectangle that stopped before the viewport edges. Keep
   the readable content measure while allowing the tone to span edge-to-edge. */
body.apple-archive main>section.wrap.narrow.tone-a,
body.apple-archive main>section.wrap.narrow.tone-b,
body.apple-archive main>section.wrap.narrow.tone-c{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:max(6vw,calc((100vw - 1320px)/2))!important;
  padding-right:max(6vw,calc((100vw - 1320px)/2))!important;
}
@media(max-width:1100px){
  body.apple-archive main>section.wrap.narrow.tone-a,
  body.apple-archive main>section.wrap.narrow.tone-b,
  body.apple-archive main>section.wrap.narrow.tone-c{
    padding-left:6vw!important;
    padding-right:6vw!important;
  }
}

/* Inline links must never rely on colour alone. Navigation, buttons and
   card-like controls keep their component styling; prose links receive a
   restrained museum-editorial underline that survives monochrome viewing. */
body.apple-archive main :is(p,li,blockquote) a:not(.btn),
body.apple-archive footer :is(p,.fineprint) a{
  text-decoration-line:underline!important;
  text-decoration-thickness:.075em!important;
  text-underline-offset:.2em!important;
  text-decoration-color:currentColor!important;
}
body.apple-archive main :is(p,li,blockquote) a:not(.btn):hover,
body.apple-archive footer :is(p,.fineprint) a:hover{
  text-decoration-thickness:.12em!important;
}

/* STAGE144 — strict subpage heading contract.
   Stage143 intentionally centred desktop intro blocks; that proved wrong on
   archive/detail pages. This rule has higher specificity than the later
   authority sheet, so record headings stay left aligned and compact even
   when older templates use different intro wrappers. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro){
  width:min(100%,82ch)!important;
  max-width:82ch!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
  transform:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro)>:is(.label,.eyebrow,.kicker,h1,h2,h3,p,.lead){
  width:auto!important;
  max-width:68ch!important;
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
  transform:none!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main h2{
  font-size:clamp(1.7rem,2.15vw,2.45rem)!important;
  line-height:1.08!important;
  letter-spacing:-.032em!important;
  text-align:left!important;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main h2:not(.no-title-gradient){
    background:linear-gradient(90deg,#F4F7FA 0%,#B8D0E6 46%,#DCC56B 92%)!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    -webkit-text-fill-color:transparent!important;
    color:transparent!important;
    width:fit-content!important;
    max-width:100%!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main h2 :is(.art-hero-accent,.title-accent){
    background:none!important;
    -webkit-background-clip:border-box!important;
    background-clip:border-box!important;
    -webkit-text-fill-color:inherit!important;
    color:inherit!important;
  }
}
@media(max-width:700px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main h2{
    font-size:clamp(1.55rem,6.6vw,2.05rem)!important;
  }
}
/* STAGE144 — strict subpage heading contract end */


/* SOURCE: assets/css/museum-editorial.css */
/* ============================================================================
   BANHALMI ART — Museum editorial layer
   ----------------------------------------------------------------------------
   Loads last, after presence-core / archive-system / design-refinements /
   footer-elegant / final-layout-fixes / apple-editorial-system /
   responsive-header-system.

   Intent: move the archive from a product-marketing visual language (large
   display type at heavy weights, pill buttons, filled brown tiles, rounded
   corners, hover lifts) to the language of a printed exhibition catalogue —
   quieter type at lighter weights, hairline separation instead of filled
   panels, square corners, generous vertical air, and gold reduced from a
   decorative colour to a structural accent.

   SPECIFICITY NOTE. Earlier layers declare a great many rules at
   `body.apple-archive .some-class` (0,2,1) with !important. A later
   stylesheet does not win on load order alone against a higher-specificity
   !important declaration, so every selector here is prefixed `html
   body.apple-archive` and written out explicitly rather than grouped in
   :where() — :where() contributes zero specificity and silently loses.
   This makes the layer deterministic instead of approximately correct.

   DELIBERATE OMISSIONS. The archive source hub (design-refinements.css) and
   the homepage centre-axis chronology (apple-editorial-system.css) already
   received considered treatments in earlier passes. They are left to those
   owners and only re-toned here, never re-laid-out.

   ALIASES. Several selectors below (.masonry, .strip, .gallery, .art-gallery,
   .chronology, .archive-list, .record-list, .button, a.cta, .buttons,
   .cta-row, .tile, .panel, .divider) currently match nothing. They are kept
   deliberately: the layers this one overrides style the same aliases, so a
   page that starts using one would otherwise pick up the old rounded, filled
   treatment from those layers with no correction here. Dead selectors are
   cheap; a silently un-retuned component is not.

   This is an additive layer. No earlier stylesheet was rewritten, so the
   whole retune can be reverted by removing one <link> tag.
   ========================================================================= */

:root{
  /* ---------------------------------------------------------------------
     Three grounds, not seven.

     The loaded stack carried seven near-black surface tokens — presence-bg
     #202530, art-bg #202530, art-surface #29303F, presence-raised #29303F,
     presence-panel #2D3444 and two of this layer's own. Measured against
     each other, every adjacent step came out between 1.002 and 1.071:1.
     Below roughly 1.10 the difference is invisible on most screens, so the
     site had seven "different" backgrounds that the eye reads as one, and
     blocks stopped separating.

     Reduced here to three tones. The steps measure 1.115 and 1.173 against
     each other — quiet, but above the roughly 1.10 threshold where a large
     flat area stops reading as the same colour. (A first attempt used
     #202530/#29303F and measured 1.066/1.079, which was still invisible; the
     values below were chosen by measurement, not by eye.) Body text keeps
     13.4:1 and secondary text 5.9:1 even on the lightest tone.

     The brown chroma is dropped so photographs sit on neutral rather than on
     a tea stain, and every older token is re-pointed at the scale so all the
     layers inherit it.
     --------------------------------------------------------------------- */
  /* --mus-ground / --mus-raised / --mus-panel are the single source of
     truth for section-tone lightness and are defined once, in section 16
     below ("Canonical section surface system"), where the palette is
     documented and measured. Do not redeclare them here — a duplicate
     :root block previously lived at this spot and was silently overridden
     by the later one, which is exactly the kind of drift this comment is
     here to prevent. */
  /* --art-* and --presence-* are declared once, in archive-system.css and
     presence-core.css, both of which now point at the shared --c-ground /
     --c-raised / --c-panel primitives in page-base.css. Re-declaring them
     here — as this file used to — is the exact override-drift pattern this
     consolidation removes: this file loads last, so a restated literal here
     would silently win over the shared source regardless of what it says. */
  --mus-hair:rgba(255,255,255,.085);
  /* Control boundaries, not decoration. These buttons have a transparent
     background, so the border is the only thing that identifies them as
     controls and it has to clear WCAG 1.4.11's 3:1 against the ground.
     The first draft used .16 alpha, which measured 1.54:1 — visually quiet
     but effectively invisible to anyone with reduced contrast sensitivity.
     .38 measures 3.5:1. */
  --mus-hair-strong:rgba(255,255,255,.38);
  --mus-gold:var(--c-gold);
  /* Eyebrow labels are small text and must remain AA on every surface.
     The former .82-alpha gold fell to 3.82:1 on raised press cards and
     4.33:1 on the ground once the real composited backgrounds were used.
     The solid shared gold stays quiet through type scale and spacing while
     clearing 4.5:1 on the darkest, raised and panel surfaces. */
  --mus-gold-quiet:var(--c-gold);
  --mus-gold-hair:rgba(183,156,68,.26);
  /* --mus-ink stays its own #f2f1ef rather than pointing at --c-ink
     (#f5f5f7): the two are a deliberate, measured pair — see the WCAG
     contrast notes at the top of this file — not an accidental drift, so
     they are left distinct on purpose. */
  --mus-ink:#f2f1ef;
  --mus-soft:#a5a29d;
  --mus-measure:58ch;
  --mus-section:clamp(5rem,9vw,10rem);
  --mus-plate-gap:clamp(1.25rem,2.2vw,2.75rem);
  /* Deliberately not --ease-standard (page-base.css): that curve is for
     transform/zoom (image hover, lightbox), this one is a faster ease-out
     tuned for text colour and opacity fades. Two curves for two categories
     of motion, not drift — the drift that was removed was the third one,
     (.2,.7,.3,1), which duplicated --ease-standard's job for no reason. */
  --mus-ease:cubic-bezier(.22,.61,.36,1);
}

/* --------------------------------------------------------------------------
   0a. Section tones

   Sections are painted by .tone-a / .tone-b / .tone-c, which every page
   defines in its own inline <style> as #202530, #29303F and #2D3444 — a
   fourth near-black palette on top of the seven tokens, and just as
   indistinguishable: the steps measure about 1.04 and 1.07:1. That is why the
   alternation between blocks never read as alternation.

   Re-pointed at the three-tone scale so the rhythm becomes visible. The
   inline rules are left in place as the fallback they should have been.
   ----------------------------------------------------------------------- */
html body.apple-archive .tone-a{background:var(--mus-ground)!important}
html body.apple-archive .tone-b{background:var(--mus-raised)!important}
html body.apple-archive .tone-c{background:var(--mus-panel)!important}
html body.apple-archive section.tone-b,
html body.apple-archive section.tone-c{
  border-top:1px solid var(--mus-hair)!important;
  border-bottom:1px solid var(--mus-hair)!important;
}

/* The rhythm cannot depend on a class nobody applied.
 *
 * Re-pointing .tone-a/b/c fixed the palette but changed almost nothing on the
 * site, and it took a count to see why: of 385 sections across 130 pages, only
 * 31 carry a tone class at all. Seventy-five pages have none. The alternation
 * those pages did have came from design-refinements.css, which paints every
 * second section rgba(255,255,255,.012) — a 1.2% veil on near-black, about
 * 1.03:1. Present in the code, absent to the eye. That is the whole reason the
 * blocks still looked like one flat colour.
 *
 * So the rhythm is structural here: every second section of <main> is raised,
 * with a hairline to close it. No class, no markup change, all 130 pages. An
 * explicit tone class still wins, because the rules above come later in the
 * cascade for the same specificity — pages that were tuned by hand keep their
 * tuning. The hero, the intro band and the footer are excluded: a page opens
 * on the ground tone, always. */
html body.apple-archive main>section:nth-of-type(even):not(.hero):not(.presence-context):not(.presence-context--intro):not([class*="tone-"]){
  background:var(--mus-raised)!important;
  border-top:1px solid var(--mus-hair)!important;
  border-bottom:1px solid var(--mus-hair)!important;
}
html body.apple-archive main>section:nth-of-type(odd):not([class*="tone-"]){
  background:var(--mus-ground)!important;
}

/* --------------------------------------------------------------------------
   0. One vertical axis

   Centring was applied ad hoc: an inline <style> in every page centred every
   .intro block, archive-system centred the thesis wrap, apple-editorial
   centred the gallery introduction. The result was that section headings sat
   on the centre line while their own body text started from the left, so the
   reader's eye lost the vertical axis at each section.

   Everything now starts from the same left edge. Three deliberate exceptions
   remain: the pull quote, which is a set piece; the gallery's load-more
   control, which is a button row rather than reading matter; and the footer,
   which is a colophon.
   ----------------------------------------------------------------------- */
html body.apple-archive main,
html body.apple-archive main .intro,
html body.apple-archive main .intro .lead,
html body.apple-archive main .wrap,
html body.apple-archive main .wrap.narrow,
html body.apple-archive main section,
html body.apple-archive main p.meta,
html body.apple-archive .presence-context .wrap,
html body.apple-archive .presence-context--intro .wrap,
html body.apple-archive #works>.wrap>.intro{
  text-align:left!important;
}
html body.apple-archive #works>.wrap>.intro :where(.lead,p),
html body.apple-archive .presence-context--intro h2,
html body.apple-archive .presence-context--intro .presence-copy,
html body.apple-archive .presence-context .presence-copy{
  margin-inline:0!important;
}
/* The set pieces that stay centred. */
html body.apple-archive .statement,
html body.apple-archive .statement.wrap,
html body.apple-archive .statement.wrap .label,
html body.apple-archive .statement.wrap blockquote,
html body.apple-archive .gal-actions,
html body.apple-archive footer{
  text-align:center!important;
}
html body.apple-archive .statement.wrap blockquote{margin-inline:auto!important}

/* --------------------------------------------------------------------------
   1. Type — catalogue scale
   Display sizes come down and weight comes down with them. A 5.1rem heading
   at weight 600 is a product launch; a 3.5rem heading at weight 400 with
   near-neutral tracking is a title page.
   ----------------------------------------------------------------------- */
html body.apple-archive{
  font-size:clamp(15.5px,.14vw + 15px,17px)!important;
  line-height:1.74!important;
  letter-spacing:-.006em!important;
  color:var(--mus-ink)!important;
}
html body.apple-archive h1,
html body.apple-archive h2,
html body.apple-archive h3,
html body.apple-archive h4{
  font-weight:400!important;
  text-wrap:balance;
}
html body.apple-archive h1{
  font-size:clamp(2.1rem,3.5vw,3.55rem)!important;
  line-height:1.075!important;
  letter-spacing:-.02em!important;
  max-width:17ch;
}
html body.apple-archive h2{
  font-size:clamp(1.55rem,2.4vw,2.4rem)!important;
  line-height:1.14!important;
  letter-spacing:-.016em!important;
  max-width:24ch;
}
html body.apple-archive h3{
  font-size:clamp(1.02rem,.9vw,1.2rem)!important;
  line-height:1.32!important;
  letter-spacing:-.004em!important;
  font-weight:500!important;
}
html body.apple-archive h4{
  font-size:.92rem!important;
  line-height:1.4!important;
  letter-spacing:.01em!important;
  font-weight:500!important;
}
html body.apple-archive p,
html body.apple-archive li{line-height:1.74!important}
html body.apple-archive main p{max-width:var(--mus-measure)}
html body.apple-archive main p + p{margin-top:1.25em!important}

/* Lead paragraphs sit barely above body size. In a catalogue the standfirst
   is distinguished by colour and measure, not by scale. */
html body.apple-archive main .lead,
html body.apple-archive main p.lead{
  font-size:clamp(1.01rem,.28vw + .95rem,1.13rem)!important;
  line-height:1.7!important;
  letter-spacing:-.004em!important;
  max-width:56ch!important;
  color:var(--mus-soft)!important;
}

/* Section labels: the catalogue's running head. Small, widely tracked,
   never bold, gold held back to a quiet tone. */
html body.apple-archive .label,
html body.apple-archive .eyebrow,
html body.apple-archive .presence-kicker,
html body.apple-archive .era-no,
html body.apple-archive .period-no{
  font-size:.655rem!important;
  line-height:1.45!important;
  letter-spacing:.235em!important;
  text-transform:uppercase!important;
  font-weight:500!important;
  color:var(--mus-gold-quiet)!important;
}
html body.apple-archive .label,
html body.apple-archive .eyebrow,
html body.apple-archive .presence-kicker{margin-bottom:clamp(1rem,1.6vw,1.5rem)!important}

/* Plate captions. */
html body.apple-archive figcaption,
html body.apple-archive .cap,
html body.apple-archive .meta{
  font-size:.715rem!important;
  line-height:1.6!important;
  letter-spacing:.045em!important;
  color:var(--mus-soft)!important;
  padding:.85rem .05rem 0!important;
  background:transparent!important;
}

/* --------------------------------------------------------------------------
   2. Rhythm — air instead of rules
   Catalogues separate with white space and use hairlines sparingly.
   ----------------------------------------------------------------------- */
html body.apple-archive main>section{padding-block:var(--mus-section)!important}
html body.apple-archive main>section + section{border-top:1px solid var(--mus-hair)!important}
html body.apple-archive hr,
html body.apple-archive .rule{
  border-color:var(--mus-hair)!important;
  margin-block:clamp(2.75rem,5vw,5rem)!important;
  opacity:1!important;
}
html body.apple-archive section > * + *{margin-top:clamp(1.35rem,2.2vw,2rem)!important}
html body.apple-archive section > h2 + *,
html body.apple-archive section > h3 + *{margin-top:clamp(.9rem,1.5vw,1.35rem)!important}
html body.apple-archive .intro{margin-bottom:clamp(3.25rem,6vw,5.5rem)!important}

/* --------------------------------------------------------------------------
   3. Square corners
   Nothing in a printed catalogue has a rounded corner.
   ----------------------------------------------------------------------- */
html body.apple-archive img,
html body.apple-archive figure,
html body.apple-archive .card,
html body.apple-archive .record-links,
html body.apple-archive .project-evidence-grid,
html body.apple-archive .evidence-link,
html body.apple-archive .curatorial-periods__grid,
html body.apple-archive .professional-side{border-radius:0!important}

/* --------------------------------------------------------------------------
   4. Panels → hairline cells
   The filled tile grids (1px gap over a line-coloured background, brown
   panel fill) read as UI cards. Converted to transparent cells separated by
   hairlines, which is how a catalogue sets a table of works.

   The archive source hub is excluded on purpose: design-refinements.css
   already renders it as a two-column definition list, which is the correct
   catalogue form for it.
   ----------------------------------------------------------------------- */
html body.apple-archive .record-links,
html body.apple-archive .project-evidence-grid,
html body.apple-archive .curatorial-periods__grid{
  gap:0!important;
  background:transparent!important;
  border-top:1px solid var(--mus-hair)!important;
  border-left:1px solid var(--mus-hair)!important;
  border-right:0!important;
  border-bottom:0!important;
  overflow:visible!important;
}
html body.apple-archive .record-links > *,
html body.apple-archive .project-evidence-grid > *,
html body.apple-archive .curatorial-periods__grid > *{
  background:transparent!important;
  border-right:1px solid var(--mus-hair)!important;
  border-bottom:1px solid var(--mus-hair)!important;
  padding:clamp(1.5rem,2.4vw,2.25rem)!important;

}
html body.apple-archive .record-links > a:hover{background:rgba(255,255,255,.022)!important}
html body.apple-archive .evidence-link{
  background:transparent!important;
  border:0!important;
  padding:clamp(1.5rem,2.4vw,2.25rem)!important;
}
html body.apple-archive .evidence-item{background:transparent!important}
html body.apple-archive .evidence-context{
  border-top:1px solid var(--mus-hair)!important;
  color:var(--mus-gold-quiet)!important;
  padding:.85rem clamp(1.5rem,2.4vw,2.25rem)!important;
  font-size:.7rem!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
html body.apple-archive .curatorial-period{background:transparent!important}


/* Card titles inside cells: quiet, not gold-shouted. */
html body.apple-archive .record-links strong{
  color:var(--mus-ink)!important;
  font-weight:500!important;
  font-size:.94rem!important;
  line-height:1.35!important;
  letter-spacing:-.004em!important;
}
html body.apple-archive .record-links span,
html body.apple-archive .record-links small{
  color:var(--mus-soft)!important;
  font-size:.775rem!important;
  line-height:1.6!important;
}


/* --------------------------------------------------------------------------
   5. Controls — plates, not pills
   Rounded gold pills are the loudest non-photographic element on the site.
   Replaced with hairline-ruled rectangles in tracked small caps; the hover
   lift is dropped in favour of a colour change only.
   ----------------------------------------------------------------------- */
html body.apple-archive .btn,
html body.apple-archive .actions a,
html body.apple-archive .gal-actions label,
html body.apple-archive .professional-side__cta{
  border-radius:0!important;
  border:1px solid var(--mus-hair-strong)!important;
  background:transparent!important;
  color:var(--mus-ink)!important;
  font-size:.7rem!important;
  font-weight:500!important;
  letter-spacing:.165em!important;
  text-transform:uppercase!important;
  line-height:1.2!important;
  /* The pill styling carried min-height:44px, which is also the touch target
     floor. Dropping it to 0 left the height entirely at the mercy of the
     label's font metrics, so the floor is restored explicitly rather than
     relying on padding to happen to add up. */
  min-height:44px!important;
  padding:1rem 1.85rem!important;

}
html body.apple-archive .btn:hover,
html body.apple-archive .actions a:hover,
html body.apple-archive .gal-actions label:hover,
html body.apple-archive .btn:focus-visible{
  transform:none!important;
  background:transparent!important;
  border-color:var(--mus-gold)!important;
  color:var(--mus-gold)!important;
}
html body.apple-archive .hero-cta,
html body.apple-archive .actions{
  gap:clamp(.65rem,1.1vw,1rem)!important;
  margin-top:clamp(2.2rem,3.5vw,3.2rem)!important;
}

/* Body links: ink with a gold hairline underline rather than gold text. */
html body.apple-archive main p a:not(.btn):not(.button):not(.cta),
html body.apple-archive main li a:not(.btn):not(.button):not(.cta){
  color:var(--mus-ink)!important;
  text-decoration:underline!important;
  text-decoration-color:var(--mus-gold-hair)!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:.24em!important;

}
html body.apple-archive main p a:not(.btn):not(.button):not(.cta):hover,
html body.apple-archive main li a:not(.btn):not(.button):not(.cta):hover{
  color:var(--mus-gold)!important;
  text-decoration-color:var(--mus-gold)!important;
}

/* Standalone reference links. */
html body.apple-archive .presence-period-links a,
html body.apple-archive .chapter-nav a{
  color:var(--mus-soft)!important;
  font-size:.72rem!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;

}
html body.apple-archive .presence-period-links a:hover,
html body.apple-archive .chapter-nav a:hover{color:var(--mus-gold)!important;text-decoration:none!important}
html body.apple-archive .presence-period-links,
html body.apple-archive .chapter-nav{gap:.85rem 2.25rem!important}
html body.apple-archive .presence-link{
  color:var(--mus-soft)!important;
  font-size:.72rem!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  margin-top:clamp(1.75rem,3vw,2.5rem)!important;
}
html body.apple-archive .presence-link:hover{color:var(--mus-gold)!important}

/* --------------------------------------------------------------------------
   5b. .svc-cta — two places, two components
   The same class is used for the commissions call to action inside main and
   for the one inside the mega-menu, and until now a single global button rule
   claimed both. In the menu that produced a bordered plate whose horizontal
   padding was then zeroed by design-refinements, so the label sat flush
   against its own frame: measured 265×44 with padding 2.4px 0. A menu entry is
   not a button. It gets a quiet gold link with room beneath it; the button
   treatment stays in main, where a button belongs.
   ----------------------------------------------------------------------- */
html body.apple-archive main .svc-cta{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  border-radius:0!important;
  border:1px solid var(--mus-hair-strong)!important;
  background:transparent!important;
  color:var(--mus-ink)!important;
  font-size:.7rem!important;
  font-weight:500!important;
  letter-spacing:.165em!important;
  text-transform:uppercase!important;
  line-height:1.2!important;
  min-height:44px!important;
  padding:1rem 1.85rem!important;

}
html body.apple-archive main .svc-cta:hover,
html body.apple-archive main .svc-cta:focus-visible{
  border-color:var(--mus-gold)!important;
  color:var(--mus-gold)!important;
}
html body.apple-archive #menu .svc-cta{
  display:block!important;
  width:auto!important;
  border:0!important;
  background:transparent!important;
  border-radius:0!important;
  color:var(--mus-gold-quiet)!important;
  font-size:var(--menu-meta)!important;
  font-weight:500!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  line-height:1.45!important;
  min-height:44px!important;
  padding:.72rem 0!important;
  margin-bottom:.5rem!important;
}
html body.apple-archive #menu .svc-cta:hover,
html body.apple-archive #menu .svc-cta:focus-visible{color:var(--mus-gold)!important}

/* --------------------------------------------------------------------------
   6. Thesis and statement blocks
   The raised intro block keeps its emphasis but loses the gradient wash;
   it is now framed by air and one hairline.
   ----------------------------------------------------------------------- */
html body.apple-archive .presence-context,
html body.apple-archive .presence-context--intro{
  background:var(--mus-raised)!important;
  border-top:1px solid var(--mus-hair)!important;
  border-bottom:1px solid var(--mus-hair)!important;
  padding-block:clamp(4.5rem,8vw,8rem)!important;
}
html body.apple-archive .presence-context--intro h2{
  font-size:clamp(1.7rem,2.9vw,2.85rem)!important;
  line-height:1.12!important;
  letter-spacing:-.018em!important;
  max-width:21ch!important;
  margin-inline:auto!important;
}
html body.apple-archive .presence-context--intro .presence-copy,
html body.apple-archive .presence-context .presence-copy{
  font-size:clamp(1.01rem,.3vw + .95rem,1.15rem)!important;
  line-height:1.72!important;
  color:var(--mus-soft)!important;
  max-width:58ch!important;
  margin-inline:auto!important;
}
html body.apple-archive .presence-periods,
html body.apple-archive .record-depth,
html body.apple-archive .record-relationships,
html body.apple-archive .project-evidence{
  background:transparent!important;
  border-top:1px solid var(--mus-hair)!important;
  border-bottom:0!important;
  padding-block:var(--mus-section)!important;
}
html body.apple-archive blockquote{
  font-size:clamp(1.2rem,2vw,1.85rem)!important;
  line-height:1.36!important;
  letter-spacing:-.012em!important;
  font-weight:400!important;
  max-width:27ch!important;
  color:var(--mus-ink)!important;
}

/* --------------------------------------------------------------------------
   7. Hero — a title page, not a billboard
   ----------------------------------------------------------------------- */
html body.apple-archive .hero{
  min-height:min(760px,88svh)!important;
  padding-block:clamp(7.5rem,15vh,12rem) clamp(4.5rem,9vh,8rem)!important;
}
html body.apple-archive .hero-sub{
  font-size:clamp(.98rem,.35vw + .9rem,1.1rem)!important;
  line-height:1.7!important;
  max-width:46ch!important;
  color:var(--mus-soft)!important;
}

/* --------------------------------------------------------------------------
   8. Plates — the photographs carry the page
   Wider gutters, square corners, no surface fill behind the image, and no
   scale on hover: a catalogue plate does not move.
   ----------------------------------------------------------------------- */
html body.apple-archive .collage,
html body.apple-archive [data-gallery],
html body.apple-archive #galwrap>.gal-batch{
  gap:var(--mus-plate-gap)!important;
  margin-top:clamp(2.75rem,5vw,4.5rem)!important;
}
/* Paginated galleries. #galwrap carries the .collage class for legacy
   reasons, but its direct children are .gal-batch wrappers, not figures, so
   it must never itself become the photo grid — that produced a grid of
   grids and squeezed each plate to a fraction of its width. The earlier fix
   for this lived only inside @media(min-width:1101px), which left the same
   collapse in place on tablets; it is unconditional here, and the batch
   itself becomes the responsive plate grid (3 / 2 / 1 columns).
   Hidden batches must stay hidden, hence the :not([hidden]) guard.

   display:block alone was not enough, and this is the part I got wrong the
   first time. Every page's inline <style> still carries the original masonry
   system — `.collage{columns:3}` — and CSS multi-column is independent of
   display. So #galwrap stayed a three-column multicol box, each column about
   467px wide, and the batch's own three-column grid was laid out inside one
   of those columns: nine effective columns, plates 132px across on a 1600px
   screen. Setting display without cancelling `columns` moved the grid-in-grid
   one level up instead of removing it. The reset below is the actual fix. */
html body.apple-archive #galwrap.collage,
html body.apple-archive .collage,
html body.apple-archive #galwrap>.gal-batch{
  columns:auto!important;
  column-count:auto!important;
  column-width:auto!important;
}
html body.apple-archive #galwrap.collage{display:block!important}

/* --------------------------------------------------------------------------
   8b. Natural-ratio collage — this replaces the equal 4:3 plates
   ----------------------------------------------------------------------- */
/* The equal-plate grid was the wrong answer to a real problem.
 *
 * Of 2,043 photographs in the archive, 54% are landscape and 40% portrait, so
 * cropping them to a common frame would have cut two fifths of the work in
 * half. The fix was a fixed 4:3 cell with the image contained inside it — no
 * crop, but measured just now: a 420×315 cell holding a 420×280 photograph,
 * 89% filled. Thirty-five pixels of empty plate under every landscape picture
 * and a tall margin beside every portrait one. Nothing was cut, but the
 * archive was made to look mechanically uniform, which for a photographer is
 * its own kind of damage.
 *
 * So: one level of CSS multi-column, and the picture keeps its own shape.
 * Landscape reads wide, portrait reads tall, and the differing heights make
 * the collage rhythm the exhibition wall had.
 *
 * One level is the whole point. #galwrap holds .gal-batch wrappers, so the
 * batch is the column container and #galwrap stays a plain block; the earlier
 * bug was multi-column inside multi-column, which squeezed the plates to 132px.
 *
 * The trade-off, stated plainly: CSS columns fill top-to-bottom, so the
 * reading order runs down each column rather than across. For a gallery of one
 * exhibition that is acceptable; the DOM order, and therefore the keyboard and
 * screen-reader order, stays chronological. */
html body.apple-archive #galwrap>.gal-batch:not([hidden]),
html body.apple-archive .collage:not(#galwrap):not([hidden]){
  display:block!important;
  columns:3!important;
  column-gap:var(--mus-plate-gap)!important;
}
html body.apple-archive #galwrap>.gal-batch[hidden]{display:none!important}
@media(max-width:1100px){
  html body.apple-archive #galwrap>.gal-batch:not([hidden]),
  html body.apple-archive .collage:not(#galwrap):not([hidden]){columns:2!important}
}
@media(max-width:700px){
  html body.apple-archive #galwrap>.gal-batch:not([hidden]),
  html body.apple-archive .collage:not(#galwrap):not([hidden]){columns:1!important}
}
/* The plate is whatever shape the photograph is. */
html body.apple-archive #galwrap figure,
html body.apple-archive #galwrap>.gal-batch>figure,
html body.apple-archive .collage>figure,
html body.apple-archive .collage figure{
  aspect-ratio:auto!important;
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  place-items:normal!important;
  break-inside:avoid!important;
  margin:0 0 var(--mus-plate-gap)!important;
}
html body.apple-archive #galwrap figure>img,
html body.apple-archive #galwrap>.gal-batch>figure>img,
html body.apple-archive .collage>figure>img,
html body.apple-archive .collage figure>img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
}

html body.apple-archive .collage figure,
html body.apple-archive [data-gallery] figure{
  background:transparent!important;
  border-radius:0!important;
  overflow:hidden!important;
}

/* The equal 4:3 plate was removed on 2 August. It cropped nothing, but it
   letterboxed everything: measured at 1440px, a 420x315 cell holding a
   420x280 photograph. Natural-ratio collage now lives in section 8b above. */
html body.apple-archive .collage img,
html body.apple-archive [data-gallery] img{

}
html body.apple-archive .collage figure:hover img,
html body.apple-archive [data-gallery] figure:hover img{
  transform:none!important;
  opacity:.86!important;
}

/* --------------------------------------------------------------------------
   9. Chronologies
   The centre axis stays where apple-editorial-system.css put it; only the
   gold drops to a hairline so the dates, not the rule, carry the eye.
   ----------------------------------------------------------------------- */
@media(min-width:1101px){
  html body.apple-archive #journey .timeline::before,
html body.apple-archive #exhibitions .timeline::before{background:var(--mus-hair)!important}
}
/* Chronology entries must never carry their own side rule: the section has
   exactly one vertical line, the centre axis drawn by the container's
   ::before. A per-item border-left was still reaching these items on the
   live site (verified: eleven elements inside #exhibitions computing
   border-left:1px), producing the stray vertical lines beside the entries.
   Neutralised here defensively so it cannot come back from any layer. */
html body.apple-archive #journey .timeline,
html body.apple-archive #exhibitions .timeline,
html body.apple-archive #journey .timeline > *,
html body.apple-archive #exhibitions .timeline > *{
  border-left:0!important;
  border-right:0!important;
}

html body.apple-archive .presence-period-grid,
html body.apple-archive section.era .grid{
  border-top:1px solid var(--mus-hair)!important;
  column-gap:clamp(3rem,6vw,6rem)!important;
}
html body.apple-archive .presence-period,
html body.apple-archive section.era .grid article.item{
  border-bottom:1px solid var(--mus-hair)!important;
  padding-block:clamp(1.75rem,2.6vw,2.4rem)!important;
}
html body.apple-archive .presence-period p{
  color:var(--mus-soft)!important;
  max-width:54ch!important;
}

/* --------------------------------------------------------------------------
   10. Menu — a contents page
   ----------------------------------------------------------------------- */
html body.apple-archive #menu{background:var(--mus-ground)!important}
html body.apple-archive #menu .m-main{
  font-weight:400!important;
  letter-spacing:-.014em!important;

}
html body.apple-archive #menu .m-main,
html body.apple-archive #menu details,
html body.apple-archive #menu details.svc summary{border-top-color:var(--mus-hair)!important}
html body.apple-archive #menu .m-desc{
  color:rgba(242,241,239,.62)!important;
  letter-spacing:0!important;
  line-height:1.6!important;
}
/* Three named groups instead of nine equal entries.
 *
 * The menu used to be a flat list — Books, Curators, Services, Exhibitions,
 * Press, Community, Writing, Contact — with a two- or three-line paragraph
 * under each, and no order a reader could predict. It read as an essay, not a
 * contents page. The markup is now three groups: what he made, how the career
 * ran, and how to work with him. Contact and its description are also inside a
 * group now, which incidentally fixes the stray line that used to land in the
 * right-hand column on all 88 pages. */
html body.apple-archive #menu .mwrap{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(2rem,4vw,4.5rem)!important;
  align-items:start!important;
}
html body.apple-archive #menu .m-group-title{
  font-size:.66rem!important;
  font-weight:500!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
  color:var(--mus-gold-quiet)!important;
  margin:0 0 1.1rem!important;
  padding-bottom:.8rem!important;
  border-bottom:1px solid var(--mus-hair)!important;
}
html body.apple-archive #menu .m-group>.m-main:first-of-type{border-top:0!important}
html body.apple-archive #menu .m-desc{
  margin:.35rem 0 0!important;
  font-size:.78rem!important;
}
html body.apple-archive #menu .m-foot{grid-column:1/-1!important}
/* Tablet (701-900px) now renders the same 3-column grid as desktop, per
   explicit direction. Only true mobile (<=700px, matching the mobile
   breakpoint used throughout responsive-header-system.css) drops to one
   column. archive-system.css / presence-core.css / responsive-header-system.css
   each still carry an inert repeat(2,...) attempt for this range — harmless,
   since this rule (html-prefixed, loaded last) always wins. */
@media(max-width:700px){
  html body.apple-archive #menu .mwrap{
    grid-template-columns:1fr!important;
    gap:2.25rem!important;
  }
}
html body.apple-archive #menu .m-foot{
  border-top-color:var(--mus-hair)!important;
  color:var(--mus-soft)!important;
  letter-spacing:.02em!important;
}
html body.apple-archive #menu .sub a{
  color:var(--mus-soft)!important;

}
html body.apple-archive #menu .sub a:hover{color:var(--mus-gold)!important}

/* --------------------------------------------------------------------------
   10b. The header stays put when the menu opens — on every screen

   responsive-header-system.css carries a block commented "The open menu must
   start below the fixed header and can never cover it", but it sits inside
   @media(min-width:901px), so the contract only ever held on desktop.
   Meanwhile apple-editorial-system.css sets `position:relative` on the nav
   whenever the menu is open, at every width. On desktop the media block put
   it back to fixed; on phones nothing did.

   Measured on a 390px viewport with the menu open: the nav computed
   position:relative at z-index 1002, the menu computed position:fixed at
   z-index 1150, and elementFromPoint at the centre of the header returned a
   menu link. The header was not merely scrolled away — it was painted over.

   The contract is restated here without a width condition.
   ----------------------------------------------------------------------- */
html body.apple-archive.menu-open > nav:not(#menu):not(.menu):not(.archive-nav){
  position:fixed!important;
  inset:0 0 auto 0!important;
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:auto!important;
  isolation:isolate!important;
  z-index:2147483000!important;
}
html body.apple-archive.menu-open #menu{
  position:fixed!important;
  inset:var(--bn-header-height,68px) 0 0 0!important;
  top:var(--bn-header-height,68px)!important;
  height:calc(100dvh - var(--bn-header-height,68px))!important;
  max-height:calc(100dvh - var(--bn-header-height,68px))!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  z-index:2147482000!important;
}
/* The mobile menu padded itself down by 5.25rem to clear a header it was
   covering. It now starts below the header, so that reserve is dead space. */
@media(max-width:900px){
  html body.apple-archive.menu-open #menu{
    padding-top:clamp(1.25rem,3vh,2rem)!important;
    padding-bottom:max(2rem,env(safe-area-inset-bottom))!important;
  }
}

/* --------------------------------------------------------------------------
   11. Footer — colophon
   ----------------------------------------------------------------------- */
html body.apple-archive footer{
  background:
    radial-gradient(circle at 50% -25%,rgba(183,156,68,.10),transparent 42%),
    linear-gradient(180deg,#24231f 0%,#171612 100%)!important;
  border-top:1px solid rgba(183,156,68,.34)!important;
  padding:clamp(5rem,8vw,7.5rem) clamp(1.25rem,5vw,5rem) clamp(3rem,4.5vw,4rem)!important;
}
html body.apple-archive footer p.brand{
  font-weight:500!important;
  letter-spacing:.3em!important;
  font-size:.72rem!important;
  color:var(--mus-ink)!important;
}
html body.apple-archive footer .socials a{
  color:var(--mus-soft)!important;
  font-size:.735rem!important;
  letter-spacing:.055em!important;
  border-right-color:var(--mus-hair)!important;

}
html body.apple-archive footer .socials a:hover{color:var(--mus-gold)!important}
/* The language switcher (English/Hungarian/German + their domain links) is
   a distinct row from the social-media row, even though both share
   .socials. The language label (.lang-note) keeps the current, ambient
   text colour — it is a caption, not a link. The domain itself is the
   actual link, so it gets the site's one link colour, always on, not only
   on hover. */
html body.apple-archive footer .socials.lang-switch a{color:var(--mus-gold)!important}
html body.apple-archive footer .socials.lang-switch a:hover{color:var(--mus-ink)!important}
html body.apple-archive footer .consent-reset{
  color:var(--mus-soft)!important;
  font-size:.7rem!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body.apple-archive footer .consent-reset:hover{color:var(--mus-gold)!important}

/* Gold and white, in that order of scarcity.
   Measured before this change, the footer ran on two greys — rgb(170,168,164)
   and rgb(165,162,157) — a difference nobody can see, applied at random. Every
   line therefore had the same weight and nothing led: the studio's own name,
   its address line, the contact address and a link to Pinterest all read as
   equally important. The rule here is a hierarchy of three, not a palette:

     white  (--mus-ink)        the name and the way to reach him
     gold   (--mus-gold-quiet) the one identity line, and hover everywhere
     quiet  (--mus-soft)       everything a reader only needs once

   Gold is never a fill and never a border here — only ink. Contrast on the
   #202530 ground: white 17.2:1, quiet gold 5.3:1, full gold 7.4:1. */
html body.apple-archive footer .flogo{color:var(--mus-gold)!important;opacity:1!important}
html body.apple-archive footer p.meta{
  color:var(--mus-soft)!important;
  line-height:1.85!important;
  letter-spacing:.012em!important;
}
/* The three lines of .meta — role, invitation, address — are one paragraph
   separated by <br>, so CSS cannot reach the first line on its own. Rather
   than change the markup on 88 pages to colour one phrase, the gold goes to
   the mark above and to the address below: the eye reads mark → who → how to
   write, and the middle stays quiet. */
html body.apple-archive footer p.meta a{
  color:var(--mus-ink)!important;
  text-decoration:none!important;
  border-bottom:1px solid rgba(183,156,68,.45)!important;
  padding-bottom:.12em!important;

}
html body.apple-archive footer p.meta a:hover{
  color:var(--mus-gold)!important;
  border-bottom-color:var(--mus-gold)!important;
}
html body.apple-archive footer p.fineprint{
  color:var(--mus-soft)!important;
  line-height:1.8!important;
}
html body.apple-archive footer p.fineprint a{
  color:var(--mus-ink)!important;
  text-decoration:none!important;

}
html body.apple-archive footer p.fineprint a:hover{color:var(--mus-gold)!important}

/* Tap targets that are only as tall as their line.
 *
 * Measured at 390px: twenty-one links on the Hungarian homepage and five on the
 * press pages stood 19–20px high — under the 24px minimum of WCAG 2.5.8. They
 * are not the inline links a sentence exempts; they are the exhibition titles
 * in the timeline, the "Book page →" links on the cards, and the era navigation
 * on the press pages, each one a heading or a list item a reader is meant to
 * aim at with a thumb. Padding rather than font size, so the typography does
 * not move, and block display so the whole width answers to the tap. */
html body.apple-archive .t-item h3 a,
html body.apple-archive .card h3 a,
html body.apple-archive .card p a,
html body.apple-archive .chapter-nav a{
  display:block!important;
  min-height:24px!important;
  padding-block:.2rem!important;
}
/* The menu footer's contact line is a real tap target, not inline text —
   it gets the same 44px minimum as every other menu row. */
html body.apple-archive #menu .m-foot a{
  display:block!important;
  min-height:44px!important;
  line-height:1.45!important;
  padding-block:.72rem!important;
}

/* --------------------------------------------------------------------------
   11b. Header — the same two colours, the same restraint
   The bar was rgba(12,13,20,.94): a blue-grey that never matched the neutral
   #202530 ground beneath it, so the page appeared to change temperature at the
   fold. The language links carried the same blue cast. Both are neutralised
   here, and the current language becomes gold ink with a hairline under it
   instead of a filled gold disc — the only round shape left in a system built
   on squares, and the one piece of gold that shouted.
   ----------------------------------------------------------------------- */
html body.apple-archive>nav:not(#menu):not(.menu):not(.archive-nav){
  background:rgba(10,10,10,.92)!important;
  border-bottom:1px solid var(--mus-hair)!important;
}
html body.apple-archive>nav:not(#menu) a.brand{color:var(--mus-ink)!important}
html body.apple-archive>nav:not(#menu) a.brand svg{color:var(--mus-gold)!important}
html body.apple-archive .langs a{
  color:rgba(242,241,239,.66)!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  border-radius:0!important;
  background:transparent!important;

}
html body.apple-archive .langs a:hover{color:var(--mus-ink)!important}
html body.apple-archive .langs a.on,
html body.apple-archive .langs a[aria-current]{
  color:var(--mus-gold)!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:inset 0 -1px 0 0 var(--mus-gold)!important;
}
html body.apple-archive .professional-side{
  background:transparent!important;
  border:1px solid var(--mus-hair)!important;
  padding:clamp(2rem,3.5vw,3rem)!important;
}

/* --------------------------------------------------------------------------
   12. Press archive — catalogue index
   ----------------------------------------------------------------------- */
html body.apple-archive section.thesis{
  background:transparent!important;
  border-top:1px solid var(--mus-hair)!important;
  border-bottom:1px solid var(--mus-hair)!important;
  padding-block:clamp(4rem,7vw,6.5rem)!important;
}
html body.apple-archive section.era{padding-block:clamp(4rem,7vw,6.5rem)!important}
html body.apple-archive section.era:nth-of-type(even){background:transparent!important}
html body.apple-archive .era-copy{color:var(--mus-soft)!important;max-width:46ch!important}
html body.apple-archive section.era .grid article.item > a{
  font-weight:500!important;
  font-size:.98rem!important;
  color:var(--mus-ink)!important;
}
html body.apple-archive section.era .grid article.item p.desc{color:var(--mus-soft)!important;max-width:54ch!important}
html body.apple-archive section.era .grid article.item p.note{
  color:var(--mus-gold-quiet)!important;
  font-size:.68rem!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body.apple-archive .source-grid strong{
  color:var(--mus-ink)!important;
  font-weight:500!important;
  font-size:.92rem!important;
}
html body.apple-archive .source-grid a:hover strong{color:var(--mus-gold)!important}
html body.apple-archive .source-grid small{color:var(--mus-soft)!important;font-size:.78rem!important}

/* --------------------------------------------------------------------------
   12b. Keyboard focus

   Two layers set `outline:0!important` on footer links, and nothing in the
   loaded stack defines a replacement — archive-page.css has a focus ring but
   is not linked by any page. The result was no visible focus indicator at all
   on every footer link site-wide, which fails WCAG 2.4.7 at Level A. One
   consistent ring is defined here for every interactive element, using the
   accent gold (7.35:1 against the ground) at a 2px width so it reads clearly
   without becoming a decorative element in its own right.
   ----------------------------------------------------------------------- */
html body.apple-archive a:focus-visible,
html body.apple-archive button:focus-visible,
html body.apple-archive summary:focus-visible,
html body.apple-archive [tabindex]:focus-visible,
html body.apple-archive input:focus-visible,
html body.apple-archive select:focus-visible,
html body.apple-archive textarea:focus-visible,
html body.apple-archive footer a:focus-visible,
html body.apple-archive footer button:focus-visible{
  outline:2px solid var(--mus-gold)!important;
  outline-offset:3px!important;
  border-radius:0!important;
}
/* The skip link must be reachable and legible when it takes focus. */
html body.apple-archive .skip-link:focus,
html body.apple-archive .skip-link:focus-visible{
  outline:2px solid var(--mus-gold)!important;
  outline-offset:3px!important;
  background:var(--mus-ground)!important;
  color:var(--mus-ink)!important;
}

/* Footer link row: standalone links need a 24px target under WCAG 2.5.8.
   At .735rem with .15rem padding these measured about 22px. */
html body.apple-archive footer .socials a{
  padding-block:.3rem!important;
  min-height:24px!important;
}

/* --------------------------------------------------------------------------
   13. Components that were never given any styling at all

   A sweep of every class used in the 130 pages against every rule in the
   external and inline stylesheets found a set of components with markup but
   no CSS anywhere. They were falling back to browser defaults — inline
   <strong> running straight into the following <span>, unstyled record
   pages, default link colours. Each is brought into the catalogue language
   here rather than left to the user agent.
   ----------------------------------------------------------------------- */

/* Press: the category legend (.press-type-grid). Its strong/span pairs were
   rendering as one unbroken run of text. */
html body.apple-archive .press-types{padding-block:clamp(3.5rem,6vw,5.5rem)!important}
html body.apple-archive .press-type-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin-top:clamp(2rem,3.5vw,3rem)!important;
  border-top:1px solid var(--mus-hair)!important;
}
html body.apple-archive .press-type-grid > *{
  padding:clamp(1.35rem,2.2vw,1.9rem) clamp(1.5rem,3vw,3rem) clamp(1.35rem,2.2vw,1.9rem) 0!important;
  border-bottom:1px solid var(--mus-hair)!important;
  min-width:0!important;
}
html body.apple-archive .press-type-grid strong{
  display:block!important;
  margin-bottom:.5rem!important;
  color:var(--mus-ink)!important;
  font-weight:500!important;
  font-size:.94rem!important;
  line-height:1.35!important;
}
html body.apple-archive .press-type-grid span{
  display:block!important;
  color:var(--mus-soft)!important;
  font-size:.8rem!important;
  line-height:1.62!important;
  max-width:44ch!important;
}
html body.apple-archive section.sources{
  padding-block:clamp(4rem,7vw,6.5rem)!important;
  border-top:1px solid var(--mus-hair)!important;
}
html body.apple-archive .source-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  margin-top:clamp(2rem,3.5vw,3rem)!important;
  border-top:1px solid var(--mus-hair)!important;
}
html body.apple-archive .source-grid > a{
  display:block!important;
  padding:clamp(1.35rem,2.2vw,1.9rem) clamp(1.5rem,3vw,3rem) clamp(1.35rem,2.2vw,1.9rem) 0!important;
  border-bottom:1px solid var(--mus-hair)!important;
  text-decoration:none!important;
  min-width:0!important;
}
html body.apple-archive .source-grid > a strong{display:block!important;margin-bottom:.4rem!important}

/* The period a chapter belongs to, and the way back to it.

   This replaced four paragraphs that were identical on all sixty-nine book
   and exhibition pages. What is left has to earn its space: the numeral and
   range read as a catalogue reference, the title carries the meaning, and one
   control leads to that period on the curators page. */
html body.apple-archive .record-period{
  margin-top:clamp(2.5rem,4.5vw,4rem)!important;
  padding-top:clamp(1.75rem,3vw,2.5rem)!important;
  border-top:1px solid var(--mus-hair)!important;
}
html body.apple-archive .record-period__name{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  gap:.4rem 1.1rem!important;
  margin:0!important;
  max-width:none!important;
}
html body.apple-archive .record-period__no{
  color:var(--mus-gold)!important;
  font-size:.8rem!important;
  letter-spacing:.2em!important;
  font-weight:500!important;
}
html body.apple-archive .record-period__range{
  color:var(--mus-soft)!important;
  font-size:.8rem!important;
  letter-spacing:.14em!important;
  font-variant-numeric:tabular-nums!important;
}
html body.apple-archive .record-period__title{
  flex:1 1 100%!important;
  color:var(--mus-ink)!important;
  font-size:clamp(1.05rem,1.4vw,1.35rem)!important;
  line-height:1.3!important;
  letter-spacing:-.012em!important;
  margin-top:.35rem!important;
}
html body.apple-archive .record-period__cta{
  margin:clamp(1.5rem,2.5vw,2rem) 0 0!important;
  max-width:none!important;
}

/* Artwork record pages: a catalogue entry, plate above, metadata below. */






html body.apple-archive .archive-related-work{
  border-top:1px solid var(--mus-hair)!important;
  padding-top:clamp(1.75rem,3vw,2.5rem)!important;
  margin-top:clamp(2.5rem,4vw,3.5rem)!important;
}
/* The metadata list is itself the <dl>, and each term/value pair is wrapped
   in a <div> — a first pass styled `.archive-record__metadata dl`, which
   matches nothing, so the two-column caption grid never applied. The row is
   the wrapper div. */




/* The relations block is a <nav> of bare links, not a definition list. */



html body.apple-archive .archive-relation-list{
  list-style:none!important;
  margin:1.25rem 0 0!important;
  padding:0!important;
  border-top:1px solid var(--mus-hair)!important;
}
html body.apple-archive .archive-relation-list li{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:.5rem 1.5rem!important;
  padding:.9rem 0!important;
  border-bottom:1px solid var(--mus-hair)!important;
}
html body.apple-archive .archive-relation-type{
  color:var(--mus-gold-quiet)!important;
  font-size:.66rem!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
html body.apple-archive .archive-status{
  display:inline-block!important;
  margin:0 0 1rem!important;
  padding:.35rem .8rem!important;
  border:1px solid var(--mus-gold-hair)!important;
  color:var(--mus-gold-quiet)!important;
  font-size:.64rem!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}




/* The 1956 life-story panel.

   The panel is an <article> and sets overflow:auto on itself in the page's
   inline <style>. design-refinements.css carries
   `body.apple-archive :where(.card,.panel,article){overflow:visible}`, which
   is more specific than a bare `.story-panel`, so the external rule won and
   the panel could not scroll. Measured on a 390px viewport: 2,560px of story
   inside a 615px box with overflow computing to visible — the text was simply
   cut off, with no way to reach the rest. Desktop hid the bug because the
   panel was tall enough for most stories.

   Scrolling is restored here, sized in dvh so the mobile browser chrome
   cannot push the bottom out of reach, with the scroll contained so the page
   behind does not move and the close button lifted out of the scrolled flow. */
html body.apple-archive .story-panel{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  max-height:calc(100dvh - clamp(1.4rem,6vw,4.4rem))!important;
  padding-bottom:max(clamp(1.45rem,4vw,3.4rem),env(safe-area-inset-bottom))!important;
  border-radius:0!important;
  background:var(--mus-raised)!important;
  border:1px solid var(--mus-hair-strong)!important;
  box-shadow:none!important;
}
html body.apple-archive .story-close{
  position:sticky!important;
  top:0!important;
  float:right!important;
  border-radius:0!important;
  border:1px solid var(--mus-hair-strong)!important;
  background:var(--mus-raised)!important;
}
html body.apple-archive .story-copy p{color:var(--mus-soft)!important;max-width:66ch!important}
html body.apple-archive .story-kicker{color:var(--mus-gold-quiet)!important}
html body.apple-archive .story-source{color:var(--mus-soft)!important;border-top-color:var(--mus-hair)!important}
@media(max-width:640px){
  html body.apple-archive .story-panel{
    max-height:calc(100dvh - 1.4rem)!important;
    width:100%!important;
  }
}

/* Consent dialog: the last rounded, gold-filled pill surface on the site. */
html body.apple-archive #consent{
  border-radius:0!important;
  border:1px solid var(--mus-hair-strong)!important;
  background:rgba(32,37,48,.97)!important;
  box-shadow:none!important;
  padding:1.35rem 1.5rem!important;
}
html body.apple-archive #consent p{color:var(--mus-soft)!important;font-size:.8rem!important;line-height:1.6!important}
html body.apple-archive #consent button{
  border-radius:0!important;
  border:1px solid var(--mus-hair-strong)!important;
  background:transparent!important;
  color:var(--mus-ink)!important;
  font-size:.66rem!important;
  font-weight:500!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  padding:.7rem 1.25rem!important;

}
html body.apple-archive #consent .c-yes{
  border-color:var(--mus-gold)!important;
  background:transparent!important;
  color:var(--mus-gold)!important;
}
html body.apple-archive #consent button:hover{border-color:var(--mus-gold)!important;color:var(--mus-gold)!important}

/* --------------------------------------------------------------------------
   14. Responsive
   The scale above is fluid, so these blocks handle structure and density
   rather than re-declaring sizes.
   ----------------------------------------------------------------------- */
@media(max-width:1100px){
  html body.apple-archive .record-links,
  html body.apple-archive .project-evidence-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  :root{--mus-section:clamp(4rem,8vw,5.5rem)}
  html body.apple-archive .presence-period-grid,
html body.apple-archive section.era .grid{grid-template-columns:1fr!important;column-gap:0!important}
  html body.apple-archive .presence-context--intro h2{max-width:100%!important}


}
@media(max-width:700px){
  html body.apple-archive .record-links,
  html body.apple-archive .project-evidence-grid,
  html body.apple-archive .curatorial-periods__grid,
  html body.apple-archive .press-type-grid,
  html body.apple-archive .source-grid{grid-template-columns:1fr!important}
  html body.apple-archive .press-type-grid > *,
  html body.apple-archive .source-grid > a{padding-right:0!important}



  html body.apple-archive .btn,
html body.apple-archive main .svc-cta,
html body.apple-archive .actions a{
    padding:.9rem 1.4rem!important;
    letter-spacing:.13em!important;
    font-size:.67rem!important;
  }
  html body.apple-archive .hero-cta{gap:.55rem!important}
  html body.apple-archive figcaption,
  html body.apple-archive .cap,
  html body.apple-archive .meta{padding-top:.65rem!important}
  html body.apple-archive footer{padding-inline:1.25rem!important}
}
/* Hungarian and German labels ("Szolgáltatások", "Bemutatkozás",
   "Dienstleistungen") are long, and uppercase plus tracking makes them
   longer still. In the two-up hero button grid at phone widths they were
   breaking mid-word. Tighten the type rather than let a word split, and
   fall back to a single full-width column on the narrowest screens. */
@media(max-width:640px){
  html body.apple-archive .hero-cta .btn{
    padding:.85rem .55rem!important;
    letter-spacing:.085em!important;
    font-size:.63rem!important;
    white-space:nowrap!important;
    text-align:center!important;
  }
}
@media(max-width:400px){
  html body.apple-archive .hero-cta{grid-template-columns:1fr!important;max-width:none!important}
  html body.apple-archive .hero-cta .btn{
    padding:.9rem 1rem!important;
    letter-spacing:.12em!important;
    font-size:.66rem!important;
  }
}

@media(max-width:520px){
  :root{--mus-plate-gap:1rem}
  html body.apple-archive h1{letter-spacing:-.014em!important}
  html body.apple-archive .label,
  html body.apple-archive .eyebrow,
  html body.apple-archive .presence-kicker{letter-spacing:.19em!important}
  html body.apple-archive .record-links > *,
html body.apple-archive .project-evidence-grid > *,
html body.apple-archive .curatorial-periods__grid > *{padding:1.35rem 1.15rem!important}
}

/* This layer adds no transform animation, only opacity and colour, so
   honouring reduced motion needs nothing beyond neutralising the
   transitions inherited from earlier layers. */
@media(prefers-reduced-motion:reduce){
  html body.apple-archive *{}
}


/* --------------------------------------------------------------------------
   15. Canonical chronology component
   Every dated list now uses one catalogue treatment. Earlier layers styled
   the homepage journey, exhibition list and inner-page timelines differently;
   data-chronology is the component contract and order is editorial, not visual.
   ----------------------------------------------------------------------- */
html body.apple-archive .timeline[data-chronology]{
  display:block!important;
  position:relative!important;
  margin-top:clamp(2.75rem,5vw,4.75rem)!important;
  padding:0!important;
  border:0!important;
  border-top:1px solid var(--mus-hair-strong)!important;
  background:transparent!important;
}
html body.apple-archive .timeline[data-chronology]::before{content:none!important;display:none!important}
html body.apple-archive .timeline[data-chronology]>.t-item{
  display:grid!important;
  grid-template-columns:minmax(8.5rem,11.5rem) minmax(0,1fr)!important;
  column-gap:clamp(2rem,4vw,4.75rem)!important;
  row-gap:.45rem!important;
  position:relative!important;
  margin:0!important;
  padding:clamp(1.8rem,3vw,2.75rem) clamp(1.25rem,2.5vw,2rem)!important;
  border:0!important;
  border-bottom:1px solid var(--mus-hair)!important;
  background:transparent!important;
}
html body.apple-archive .timeline[data-chronology]>.t-item::before{content:none!important;display:none!important}
html body.apple-archive .timeline[data-chronology]>.t-item>.yr{
  grid-column:1!important;
  grid-row:1 / span 20!important;
  align-self:start!important;
  margin:0!important;
  padding-top:.16rem!important;
  color:var(--mus-gold-quiet)!important;
  font-size:.67rem!important;
  font-weight:500!important;
  line-height:1.45!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  font-variant-numeric:tabular-nums!important;
}
html body.apple-archive .timeline[data-chronology]>.t-item>h3,
html body.apple-archive .timeline[data-chronology]>.t-item>p,
html body.apple-archive .timeline[data-chronology]>.t-item>.loc{
  grid-column:2!important;
  margin-left:0!important;
  margin-right:0!important;
}
html body.apple-archive .timeline[data-chronology]>.t-item>h3{
  margin-top:0!important;
  margin-bottom:.15rem!important;
  max-width:34ch!important;
}
html body.apple-archive .timeline[data-chronology]>.t-item>p{
  max-width:62ch!important;
  color:var(--mus-soft)!important;
}
html body.apple-archive .timeline[data-chronology]>.t-item>.loc{
  color:var(--mus-gold-quiet)!important;
  font-size:.72rem!important;
  line-height:1.55!important;
  letter-spacing:.035em!important;
}
@media(max-width:700px){
  html body.apple-archive .timeline[data-chronology]>.t-item{
    grid-template-columns:1fr!important;
    row-gap:.55rem!important;
    padding:1.65rem 0!important;
  }
  html body.apple-archive .timeline[data-chronology]>.t-item>.yr,
  html body.apple-archive .timeline[data-chronology]>.t-item>h3,
  html body.apple-archive .timeline[data-chronology]>.t-item>p,
  html body.apple-archive .timeline[data-chronology]>.t-item>.loc{
    grid-column:1!important;
    grid-row:auto!important;
  }
  html body.apple-archive .timeline[data-chronology]>.t-item>.yr{padding-top:0!important;margin-bottom:.1rem!important}
}

/* --------------------------------------------------------------------------
   16. Canonical section surface system

   Design audit, 2026-08-02.

   The palette already contained three sufficiently distinct museum grounds,
   but the structural alternation explicitly excluded every section carrying
   tone-a / tone-b / tone-c. The homepage uses those legacy classes on most of
   its major blocks, so several consecutive sections remained visually fused.
   Other pages also mix full-width sections with sections that are themselves
   constrained by .wrap or .narrow, making a background colour stop before the
   viewport edge.

   The surface role is now structural and full-bleed. Legacy tone-a and tone-b
   can no longer bypass the rhythm; tone-c remains the deliberate feature
   surface. A pseudo-element paints the viewport, so the same rule works when
   the section itself is a narrow reading column. The three tones are spaced
   farther apart than before while keeping body, secondary and gold text above
   AA contrast on every surface.
   ----------------------------------------------------------------------- */
:root{
  --mus-ground:var(--c-ground);
  --mus-raised:var(--c-raised);
  --mus-panel:var(--c-panel);
  --mus-section-edge:rgba(255,255,255,.16);
}

html body.apple-archive main>section,
html body.apple-archive main>.statement,
html body.apple-archive main>header:not(.hero){
  position:relative!important;
  isolation:isolate!important;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
}

html body.apple-archive main>section{
  --banhalmi-section-surface:var(--mus-ground);
}
html body.apple-archive main>section:nth-of-type(odd){
  --banhalmi-section-surface:var(--mus-ground);
}
html body.apple-archive main>section:nth-of-type(even){
  --banhalmi-section-surface:var(--mus-raised);
}

/* The third tone is editorial emphasis, not another alternating stripe. */
html body.apple-archive main>section.tone-c,
html body.apple-archive main>section.thesis,
html body.apple-archive main>section.sources{
  --banhalmi-section-surface:var(--mus-panel);
}

/* Opening context blocks get depth without becoming promotional panels. */
html body.apple-archive main>section.press-types,
html body.apple-archive main>section.presence-context--intro{
  --banhalmi-section-surface:linear-gradient(135deg,#171717 0%,#29303F 100%);
}

html body.apple-archive main>section::before,
html body.apple-archive main>.statement::before,
html body.apple-archive main>header:not(.hero)::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  pointer-events:none;
  box-shadow:inset 0 1px var(--mus-section-edge),inset 0 -1px rgba(0,0,0,.34);
}
html body.apple-archive main>section::before{
  background:var(--banhalmi-section-surface);
}
html body.apple-archive main>header:not(.hero)::before{
  background:var(--mus-ground);
}

/* The quotation between the opening thesis and gallery is a proper visual
   chapter break even though legacy markup uses a div rather than a section. */
html body.apple-archive main>.statement{
  --banhalmi-section-surface:linear-gradient(110deg,#2D3444 0%,#202020 55%,#171717 100%);
  margin-block:0!important;
  padding-block:clamp(4.25rem,7vw,7rem)!important;
}
html body.apple-archive main>.statement::before{
  background:var(--banhalmi-section-surface);
  box-shadow:inset 0 1px var(--mus-gold-hair),inset 0 -1px rgba(0,0,0,.38);
}
html body.apple-archive main>.statement blockquote{
  max-width:25ch!important;
}

/* Earlier layers drew section borders on the constrained element. The new
   full-width surface owns the boundary, so those partial rules are removed. */
html body.apple-archive main>section+section,
html body.apple-archive main>section.tone-a,
html body.apple-archive main>section.tone-b,
html body.apple-archive main>section.tone-c{
  border-top:0!important;
  border-bottom:0!important;
}

/* One heading rhythm for home, archive, press and curatorial templates. */
html body.apple-archive main>section :is(.intro,.section-head,.curatorial-periods__intro,.oeuvre-integrity-head){
  margin-bottom:clamp(3rem,5.5vw,5.25rem)!important;
}
html body.apple-archive main>section :is(.intro,.section-head,.curatorial-periods__intro,.oeuvre-integrity-head)>:last-child{
  margin-bottom:0!important;
}

/* Notes and utility panels use one restrained inset treatment everywhere. */
html body.apple-archive main>section .note,
html body.apple-archive main>section .professional-side,
html body.apple-archive main>section .press-type-grid>div{
  background:rgba(255,255,255,.026)!important;
  border:1px solid var(--mus-hair)!important;
  box-shadow:none!important;
  border-radius:0!important;
}

@media(max-width:700px){
  html body.apple-archive main>.statement{
    padding-block:3.5rem!important;
  }
  html body.apple-archive main>section :is(.intro,.section-head,.curatorial-periods__intro,.oeuvre-integrity-head){
    margin-bottom:2.6rem!important;
  }
}

/* 18. Canonical life journey */
.life-journey__intro{max-width:72ch!important;margin:0 0 clamp(3.5rem,6vw,6rem)!important;text-align:left!important}
.life-journey__intro :is(h2,.lead,.label){margin-left:0!important;margin-right:auto!important;text-align:left!important}
.life-journey__stages{border-top:1px solid var(--mus-hair-strong)}
.life-stage{position:relative;display:grid;grid-template-columns:minmax(15rem,.7fr) minmax(0,1.3fr);gap:clamp(2.5rem,7vw,7rem);padding:clamp(3rem,6vw,5.75rem) 0;border-bottom:1px solid var(--mus-hair)}
.life-stage::before{content:"";position:absolute;inset:0 50% 0 50%;z-index:-1;width:100vw;transform:translateX(-50%);background:rgba(255,255,255,.012);opacity:0;}
.life-stage:nth-child(even)::before{opacity:1}
.life-stage__head{align-self:start;min-width:0}
.life-stage__index{margin:0 0 1rem!important;color:var(--mus-gold)!important;font-size:.76rem!important;font-weight:650!important;letter-spacing:.11em!important;text-transform:uppercase}
.life-stage__head h3{max-width:20ch;margin:0 0 1.35rem!important;font-size:clamp(1.7rem,2.5vw,2.65rem)!important;line-height:1.09!important;letter-spacing:-.025em!important}
.life-stage__head>p:not(.life-stage__index,.life-stage__source,.life-stage__empty){max-width:58ch!important;margin:0!important;color:var(--mus-soft)!important}
.life-stage__source{display:inline-flex;margin:1.4rem 0 0!important;padding:.42rem .7rem;border:1px solid var(--mus-hair);border-radius:var(--c-radius-pill);color:var(--mus-gold)!important;font-size:.72rem!important;letter-spacing:.05em}
.life-stage__empty{max-width:50ch!important;margin:1.5rem 0 0!important;padding-top:1.25rem;border-top:1px solid var(--mus-hair);color:var(--mus-faint)!important;font-size:.86rem!important}
.life-stage__records{min-width:0;border-top:1px solid var(--mus-hair)}
.life-record-group{border-bottom:1px solid var(--mus-hair)}
.life-record-group summary{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:56px;padding:1rem 0;color:var(--mus-ink);font-size:.88rem;font-weight:600;letter-spacing:.015em;cursor:pointer;list-style:none}
.life-record-group summary::-webkit-details-marker{display:none}
.life-record-group summary small{display:inline-grid;place-items:center;min-width:2.15rem;height:2.15rem;border:1px solid var(--mus-hair);border-radius:var(--c-radius-pill);color:var(--mus-gold);font-size:.7rem;font-variant-numeric:tabular-nums}
.life-record-group summary::after{content:"+";order:3;color:var(--mus-gold);font-size:1.15rem;font-weight:400}
.life-record-group[open] summary::after{content:"−"}
.life-record-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 1.25rem!important;padding:1px!important;list-style:none!important;background:var(--mus-hair)}
.life-record-list li{min-width:0;margin:0!important;background:var(--mus-base)}
.life-record-list a{display:flex;flex-direction:column;gap:.45rem;height:100%;padding:clamp(1.25rem,2vw,1.8rem)!important;color:var(--mus-ink)!important;text-decoration:none!important}
.life-record-list a:hover{background:rgba(255,255,255,.035)}
.life-record-list strong{font-size:.95rem;font-weight:600;line-height:1.35}
.life-record-list span{color:var(--mus-faint);font-size:.78rem;line-height:1.5}
.life-journey--dossier{--banhalmi-section-surface:linear-gradient(135deg,#171717 0%,#29303F 100%)!important}
@media(max-width:900px){.life-stage{grid-template-columns:1fr;gap:2rem}.life-stage__head h3{max-width:26ch}.life-record-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.life-stage::before,.life-record-list a{}}

/* PAGESPEED-STAGE31:START */
/* Content links must not rely on colour alone. Navigation, buttons, cards and
   image controls retain their designed interaction treatment. */
main p a:not(.btn):not(.card),
main li a:not(.btn):not(.card),
main .lead a:not(.btn),
main .meta a:not(.btn),
main .fineprint a:not(.btn){
  text-decoration-line:underline;
  text-decoration-thickness:.075em;
  text-underline-offset:.17em;
  text-decoration-skip-ink:auto;
}
main p a:not(.btn):focus-visible,
main li a:not(.btn):focus-visible{
  text-decoration-thickness:.12em;
}
/* PAGESPEED-STAGE31:END */


/* STAGE37-STATIC-ARCHIVE-INTERFACE:START */
/* Migrated from responsive-header-system.js. Museum editorial remains the final design authority. */
:root{
      --apple-space-1:.5rem;
      --apple-space-2:1rem;
      --apple-space-3:1.5rem;
      --apple-space-4:2rem;
      --apple-space-5:3rem;
      --apple-cell-pad:clamp(1.5rem,2.6vw,2.5rem);
      --apple-reading-measure:60ch;
      --curatorial-1:#0f0f0f;
      --curatorial-2:#171717;
      --curatorial-3:#211f1a;
      --curatorial-line:rgba(255,255,255,.13);
      --curatorial-soft:rgba(245,245,247,.7);
    }

    html body.apple-archive{
      font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Arial,sans-serif!important;
      font-size:clamp(16px,.16vw + 15.4px,17.5px)!important;
      line-height:1.62!important;
      letter-spacing:-.011em!important;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
      font-synthesis:none;
    }
    html body.apple-archive :is(h1,h2,h3,h4){
      font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
      text-wrap:balance;
    }
    html body.apple-archive h1{
      font-size:clamp(2.4rem,4.4vw,4.25rem)!important;
      line-height:1.04!important;
      letter-spacing:-.035em!important;
      font-weight:500!important;
    }
    html body.apple-archive h2{
      font-size:clamp(1.75rem,2.8vw,2.75rem)!important;
      line-height:1.1!important;
      letter-spacing:-.025em!important;
      font-weight:500!important;
    }
    html body.apple-archive h3{
      font-size:clamp(1.08rem,1.15vw,1.32rem)!important;
      line-height:1.26!important;
      letter-spacing:-.012em!important;
      font-weight:500!important;
    }
    html body.apple-archive :is(p,li){line-height:1.62!important}
    html body.apple-archive main p{max-width:var(--apple-reading-measure)!important}
    html body.apple-archive #about{scroll-margin-top:calc(var(--bn-header-height,72px) + 1.25rem)!important}

    @media (min-width:901px){
      html body.apple-archive main>section.presence-context--intro>.wrap,
      html body.apple-archive main>section.presence-context--intro>.wrap.narrow{
        text-align:left!important;
      }
      html body.apple-archive main>section.presence-context--intro .presence-kicker,
      html body.apple-archive main>section.presence-context--intro h2,
      html body.apple-archive main>section.presence-context--intro .presence-copy,
      html body.apple-archive main>section.presence-context--intro .presence-link{
        margin-left:0!important;
        margin-right:auto!important;
        text-align:left!important;
      }
      html body.apple-archive main>section.presence-context--intro h2{max-width:24ch!important}
      html body.apple-archive main>section.presence-context--intro .presence-copy{max-width:58ch!important}
    }

    html body.apple-archive .curatorial-hero{
      position:relative!important;
      isolation:isolate!important;
      display:flex!important;
      align-items:flex-end!important;
      min-height:clamp(410px,56svh,620px)!important;
      width:auto!important;
      max-width:none!important;
      margin:0!important;
      padding:clamp(9rem,15vh,12rem) 0 clamp(4.5rem,8vh,7rem)!important;
      background:transparent!important;
      border:0!important;
      overflow:visible!important;
    }
    html body.apple-archive .curatorial-hero::before{
      content:""!important;
      position:absolute!important;
      z-index:-1!important;
      inset:0 auto 0 50%!important;
      width:100vw!important;
      transform:translateX(-50%)!important;
      background:linear-gradient(135deg,#202530 0%,#29303F 62%,#2D3444 100%)!important;
      box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -1px rgba(0,0,0,.48)!important;
      pointer-events:none!important;
    }
    html body.apple-archive .curatorial-hero>.wrap{
      width:min(calc(100% - clamp(2.5rem,10vw,10rem)),1180px)!important;
      max-width:1180px!important;
      margin:0 auto!important;
      padding:0!important;
      text-align:left!important;
    }
    html body.apple-archive .curatorial-hero h1{
      max-width:18ch!important;
      margin:.65rem 0 1.15rem!important;
      font-size:clamp(2.55rem,5vw,4.75rem)!important;
      line-height:1.04!important;
      letter-spacing:-.035em!important;
      text-align:left!important;
    }
    html body.apple-archive .curatorial-hero :is(.label,.eyebrow,.loc,.lead){
      max-width:60ch!important;
      margin-left:0!important;
      margin-right:auto!important;
      text-align:left!important;
    }
    html body.apple-archive .curatorial-hero :is(.loc,.lead){color:var(--curatorial-soft)!important}

    html body.apple-archive .curatorial-section{
      --curatorial-surface:var(--curatorial-1);
      position:relative!important;
      isolation:isolate!important;
      width:auto!important;
      min-width:0!important;
      margin:0 auto!important;
      padding-top:clamp(4.5rem,8vw,7.5rem)!important;
      padding-bottom:clamp(4.5rem,8vw,7.5rem)!important;
      background:transparent!important;
      border:0!important;
      box-shadow:none!important;
      text-align:left!important;
    }
    html body.apple-archive .curatorial-section[data-curatorial-surface="2"]{--curatorial-surface:var(--curatorial-2)}
    html body.apple-archive .curatorial-section[data-curatorial-surface="3"]{--curatorial-surface:var(--curatorial-3)}
    html body.apple-archive .curatorial-section::before{
      content:""!important;
      position:absolute!important;
      z-index:-1!important;
      inset:0 auto 0 50%!important;
      width:100vw!important;
      transform:translateX(-50%)!important;
      background:var(--curatorial-surface)!important;
      box-shadow:inset 0 1px var(--curatorial-line)!important;
      pointer-events:none!important;
    }
    html body.apple-archive .curatorial-section.wrap{
      width:min(calc(100% - clamp(2.5rem,10vw,10rem)),1180px)!important;
      max-width:1180px!important;
    }
    html body.apple-archive .curatorial-section:not(.wrap)>.wrap{
      width:min(calc(100% - clamp(2.5rem,10vw,10rem)),1180px)!important;
      max-width:1180px!important;
      margin-left:auto!important;
      margin-right:auto!important;
      padding-left:0!important;
      padding-right:0!important;
    }
    html body.apple-archive .curatorial-section :is(h2,.lead,.era-copy,.label,.eyebrow){
      margin-left:0!important;
      margin-right:auto!important;
      text-align:left!important;
    }
    html body.apple-archive .curatorial-section>.lead:first-child,
    html body.apple-archive .curatorial-section>.wrap>.lead:first-child{
      max-width:68ch!important;
      font-size:clamp(1.12rem,1.45vw,1.34rem)!important;
      line-height:1.55!important;
    }

    html body.apple-archive .curatorial-section .era-head{
      display:grid!important;
      grid-template-columns:minmax(15rem,.72fr) minmax(0,1.28fr)!important;
      gap:clamp(2rem,6vw,6rem)!important;
      align-items:start!important;
      margin-bottom:clamp(2.75rem,5vw,4.75rem)!important;
    }
    html body.apple-archive .curatorial-section .era-head :is(h2,.era-copy){margin-top:0!important}

    html body.apple-archive .curatorial-section :is(.grid,.press-type-grid,.source-grid){
      display:grid!important;
      grid-template-columns:repeat(2,minmax(0,1fr))!important;
      gap:0 clamp(2rem,5vw,5rem)!important;
      margin-top:clamp(2.5rem,5vw,4.5rem)!important;
      border:0!important;
      background:transparent!important;
    }
    html body.apple-archive .curatorial-section :is(.grid,.press-type-grid,.source-grid)>*{
      min-width:0!important;
      margin:0!important;
      padding:clamp(1.6rem,2.8vw,2.4rem) 0!important;
      border:0!important;
      border-top:1px solid var(--curatorial-line)!important;
      border-radius:0!important;
      background:transparent!important;
      box-shadow:none!important;
    }
    html body.apple-archive .curatorial-section :is(.grid,.press-type-grid,.source-grid)>*>:last-child{margin-bottom:0!important}
    html body.apple-archive .curatorial-section :is(.item,.press-type-grid>div,.source-grid>a) a,
    html body.apple-archive .curatorial-section .grid>.item>a{
      font-size:clamp(1.05rem,1.3vw,1.28rem)!important;
      line-height:1.3!important;
      font-weight:500!important;
      text-decoration:none!important;
    }
    html body.apple-archive .curatorial-section :is(.desc,.note,small){color:var(--curatorial-soft)!important}

    html body.apple-archive .curatorial-section .timeline{
      margin-top:clamp(2.75rem,5vw,4.5rem)!important;
      padding-left:0!important;
      border-left:0!important;
      border-top:1px solid var(--curatorial-line)!important;
    }
    html body.apple-archive .curatorial-section .timeline>.t-item{
      display:grid!important;
      grid-template-columns:minmax(8rem,11rem) minmax(0,1fr)!important;
      column-gap:clamp(2rem,5vw,5rem)!important;
      padding:clamp(2rem,3vw,3rem) 0!important;
      border-bottom:1px solid var(--curatorial-line)!important;
    }
    html body.apple-archive .curatorial-section .timeline>.t-item::before{content:none!important}
    html body.apple-archive .curatorial-section .timeline>.t-item>.yr{
      grid-column:1!important;
      grid-row:1 / span 20!important;
      color:var(--mus-gold,#DCC56B)!important;
    }
    html body.apple-archive .curatorial-section .timeline>.t-item>:not(.yr){grid-column:2!important}

    html body.apple-archive .curatorial-section :is(.note,.chapter-nav){
      margin:clamp(2rem,4vw,3.5rem) 0!important;
      padding:clamp(1.5rem,2.8vw,2.4rem)!important;
      border:1px solid var(--curatorial-line)!important;
      border-radius:0!important;
      background:rgba(255,255,255,.025)!important;
      box-shadow:none!important;
    }
    html body.apple-archive .curatorial-section .chapter-nav{
      display:flex!important;
      flex-wrap:wrap!important;
      gap:.75rem 1.5rem!important;
    }

    html body.apple-archive[data-archive-page="index"] #journey{
      --banhalmi-section-surface:linear-gradient(135deg,#171717 0%,#29303F 100%)!important;
    }
    html body.apple-archive[data-archive-page="index"] #exhibitions{
      --banhalmi-section-surface:linear-gradient(225deg,#171717 0%,#292929 100%)!important;
    }
    html body.apple-archive[data-archive-page="index"] :is(#journey,#exhibitions)>.wrap>.intro{
      max-width:72ch!important;
      margin-left:0!important;
      margin-right:auto!important;
      text-align:left!important;
    }
    html body.apple-archive[data-archive-page="index"] :is(#journey,#exhibitions)>.wrap>.intro :is(h2,.lead,.label){
      margin-left:0!important;
      margin-right:auto!important;
      text-align:left!important;
    }
    html body.apple-archive[data-archive-page="index"] :is(#journey,#exhibitions) .timeline[data-chronology]{
      border-top-color:var(--mus-hair-strong)!important;
    }
    html body.apple-archive[data-archive-page="index"] :is(#journey,#exhibitions) .timeline[data-chronology]>.t-item{
      grid-template-columns:minmax(9rem,12rem) minmax(0,1fr)!important;
      column-gap:clamp(2.25rem,5vw,5.5rem)!important;
      padding-block:clamp(2rem,3.4vw,3rem)!important;
    }
    html body.apple-archive[data-archive-page="index"] :is(#journey,#exhibitions) .timeline[data-chronology]>.t-item>h3{max-width:38ch!important}

    html body.apple-archive :is(
      .cards>.card,
      .grid>.item,
      .press-type-grid>div,
      .record-links>*,
      .project-evidence-grid>*,
      .oeuvre-phase-grid>*,
      .curatorial-periods__grid>*,
      .archive-source-hub>a,
      .evidence-item
    ){
      min-width:0!important;
    }
    html body.apple-archive[data-archive-page="index"] :is(
      .cards>.card,
      .grid>.item,
      .press-type-grid>div,
      .record-links>*,
      .project-evidence-grid>*,
      .oeuvre-phase-grid>*,
      .curatorial-periods__grid>*,
      .archive-source-hub>a,
      .evidence-item
    ){
      padding:var(--apple-cell-pad)!important;
    }
    html body.apple-archive :is(
      .cards>.card,
      .grid>.item,
      .press-type-grid>div,
      .record-links>*,
      .project-evidence-grid>*,
      .oeuvre-phase-grid>*,
      .curatorial-periods__grid>*,
      .archive-source-hub>a,
      .evidence-item
    )>:last-child{margin-bottom:0!important}

    html body.apple-archive[data-archive-page="index"] .professional-side{
      padding:0!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
      max-width:64ch!important;
    }
    html body.apple-archive[data-archive-page="index"] .professional-side__cta{
      display:block!important;
      width:auto!important;
      min-height:0!important;
      margin-top:clamp(1.5rem,2.5vw,2rem)!important;
      padding:0!important;
      border:0!important;
      background:transparent!important;
      box-shadow:none!important;
    }
    html body.apple-archive[data-archive-page="index"] .professional-side__cta .btn{
      display:inline-flex!important;
      width:auto!important;
      margin:0!important;
    }

    html body.apple-archive footer .meta{
      max-width:none!important;
      white-space:nowrap!important;
      font-size:clamp(.68rem,.12vw + .66rem,.75rem)!important;
      line-height:1.65!important;
      letter-spacing:.025em!important;
    }
    html body.apple-archive main>:last-child{border-bottom:0!important}
    html body.apple-archive main>:last-child::before{box-shadow:inset 0 1px var(--mus-section-edge)!important}
    html body.apple-archive main+footer{border-top:1px solid var(--mus-hair)!important}

    @media(max-width:900px){
      html body.apple-archive .curatorial-hero{
        min-height:auto!important;
        padding:8.25rem 0 4.5rem!important;
      }
      html body.apple-archive .curatorial-hero>.wrap,
      html body.apple-archive .curatorial-section.wrap,
      html body.apple-archive .curatorial-section:not(.wrap)>.wrap{
        width:min(calc(100% - 2rem),1180px)!important;
      }
      html body.apple-archive .curatorial-section .era-head{
        grid-template-columns:1fr!important;
        gap:1.25rem!important;
      }
      html body.apple-archive .curatorial-section :is(.grid,.press-type-grid,.source-grid){
        grid-template-columns:1fr!important;
      }
    }
    @media(max-width:700px){
      html body.apple-archive .curatorial-section .timeline>.t-item,
      html body.apple-archive[data-archive-page="index"] :is(#journey,#exhibitions) .timeline[data-chronology]>.t-item{
        grid-template-columns:1fr!important;
        row-gap:.65rem!important;
      }
      html body.apple-archive .curatorial-section .timeline>.t-item>.yr,
      html body.apple-archive .curatorial-section .timeline>.t-item>:not(.yr){
        grid-column:1!important;
        grid-row:auto!important;
      }
      html body.apple-archive footer .meta{
        font-size:.68rem!important;
        letter-spacing:0!important;
      }
    }
body.apple-archive .burger::before,body.apple-archive .burger::after{content:none!important;box-shadow:none!important}
/* STAGE37-STATIC-ARCHIVE-INTERFACE:END */


/* STAGE38-INLINE-STYLE-AUTHORITY:START */
/* Exact utility migrations from repeated inline presentation. */
.u-meta-label{opacity:.55;font-size:.72em;letter-spacing:.05em;text-transform:uppercase;margin-right:.3em}
.u-gold-text{color:var(--gold)}
.u-inline-flex-row{display:flex;align-items:center;gap:.6rem}
/* STAGE38-INLINE-STYLE-AUTHORITY:END */


/* STAGE39-UI-DESIGN-CONTRACT:START */
/* Final layout authority. Inspired by Apple-style interface discipline: one
   spacing scale, one content axis, one image radius and deterministic component
   ownership. This block intentionally loads after all migration/history layers. */
:root{
  --ui-space-1:8px;
  --ui-space-2:12px;
  --ui-space-3:16px;
  --ui-space-4:24px;
  --ui-space-5:32px;
  --ui-space-6:48px;
  --ui-space-7:64px;
  --ui-space-8:96px;
  --ui-image-radius:4px;
  --ui-panel-radius:12px;
  --ui-gallery-gap:clamp(12px,1.15vw,16px);
  --ui-content-max:1180px;
  --ui-reading-max:68ch;
}

/* Short documents end on the colophon instead of exposing the page canvas. */
html,html body.apple-archive{min-height:100%}
html body.apple-archive{min-height:100vh;min-height:100dvh;display:flex!important;flex-direction:column!important}
html body.apple-archive>main{flex:1 0 auto;width:100%;min-width:0}
html body.apple-archive>footer{margin-top:auto!important;width:100%}

/* Canonical image treatment: photography stays almost square, never app-like. */
html body.apple-archive :is(.collage,.masonry,.gallery,.art-gallery,[data-gallery]) figure,
html body.apple-archive :is(.collage,.masonry,.gallery,.art-gallery,[data-gallery]) img,
html body.apple-archive .story-image img,
html body.apple-archive .archive-record__media img{
  border-radius:var(--ui-image-radius)!important;
}
html body.apple-archive :is(.collage,.masonry,.gallery,.art-gallery,[data-gallery]) figure{overflow:hidden!important}

/* Homepage + exhibition galleries use one continuous masonry flow. The batch
   wrappers become layout-transparent when revealed, so Load more cannot create
   a second, visibly separated gallery. */
html body.apple-archive #galwrap{
  display:block!important;
  column-count:3!important;
  column-gap:var(--ui-gallery-gap)!important;
  grid-template-columns:none!important;
}
html body.apple-archive #galwrap>.gal-batch[hidden]{display:none!important}
html body.apple-archive #galwrap>.gal-batch:not([hidden]){display:contents!important}
html body.apple-archive #galwrap>.gal-batch+.gal-batch:not([hidden]){margin-top:0!important}
html body.apple-archive #galwrap figure{
  display:block!important;
  break-inside:avoid!important;
  -webkit-column-break-inside:avoid!important;
  width:100%!important;
  margin:0 0 var(--ui-gallery-gap)!important;
  padding:0!important;
}
html body.apple-archive #galwrap figure img{display:block!important;width:100%!important;height:auto!important}

/* Non-paginated photographic collages follow the same gutter rhythm. */
html body.apple-archive .collage:not(#galwrap),
html body.apple-archive .masonry{
  display:block!important;
  column-count:3!important;
  column-gap:var(--ui-gallery-gap)!important;
  grid-template-columns:none!important;
}
html body.apple-archive .collage:not(#galwrap)>figure,
html body.apple-archive .masonry>figure{
  display:block!important;
  break-inside:avoid!important;
  margin:0 0 var(--ui-gallery-gap)!important;
}

/* Life journey disclosures: label on the left, count and +/− as one compact
   control cluster on the right. */
html body.apple-archive .life-record-group summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:center!important;
  justify-content:normal!important;
  gap:var(--ui-space-2)!important;
}
html body.apple-archive .life-record-group summary>span:first-child{min-width:0;margin:0!important}
html body.apple-archive .life-record-group summary small{margin:0!important;justify-self:end!important}
html body.apple-archive .life-record-group summary::after{
  order:initial!important;
  display:grid!important;
  place-items:center!important;
  width:2rem!important;
  min-width:2rem!important;
  margin:0!important;
  text-align:center!important;
}

/* Public history / exhibitions: one stable catalogue row, never a centre-axis
   timeline and never a nested grid. */
@media(min-width:901px){
  html body.apple-archive #exhibitions>.wrap{width:min(calc(100% - clamp(2.5rem,8vw,8rem)),var(--ui-content-max))!important;max-width:var(--ui-content-max)!important}
  html body.apple-archive #exhibitions>.wrap>.intro{max-width:72ch!important;margin:0 0 var(--ui-space-7)!important;text-align:left!important}
  html body.apple-archive #exhibitions .timeline[data-chronology]{display:block!important;width:100%!important;max-width:none!important;margin:0!important;border-top:1px solid var(--mus-hair-strong)!important}
  html body.apple-archive #exhibitions .timeline[data-chronology]>.t-item{
    display:grid!important;
    grid-template-columns:minmax(8rem,10.5rem) minmax(0,1fr)!important;
    column-gap:clamp(2rem,4vw,4rem)!important;
    row-gap:.35rem!important;
    align-items:start!important;
    width:100%!important;
    margin:0!important;
    padding:clamp(1.75rem,2.6vw,2.5rem) clamp(1.25rem,2.5vw,2rem)!important;
  }
  html body.apple-archive #exhibitions .timeline[data-chronology]>.t-item>.yr{grid-column:1!important;grid-row:1 / span 4!important;align-self:start!important;padding-top:.2rem!important}
  html body.apple-archive #exhibitions .timeline[data-chronology]>.t-item>h3,
  html body.apple-archive #exhibitions .timeline[data-chronology]>.t-item>.loc,
  html body.apple-archive #exhibitions .timeline[data-chronology]>.t-item>p{grid-column:2!important;grid-row:auto!important;max-width:68ch!important}
}

/* Contact is information architecture, not a generic card grid. */
html body.apple-archive #contact>.wrap{width:min(calc(100% - clamp(2rem,8vw,8rem)),var(--ui-content-max))!important;max-width:var(--ui-content-max)!important}
html body.apple-archive #contact>.wrap>.intro{max-width:var(--ui-reading-max)!important;margin:0 0 var(--ui-space-6)!important}
html body.apple-archive #contact .cards{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:var(--ui-space-4)!important;
  align-items:stretch!important;
  width:100%!important;
}
html body.apple-archive #contact .cards>.card{
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  padding:clamp(1.5rem,3vw,2.25rem)!important;
  border:1px solid var(--mus-hair)!important;
  border-radius:var(--ui-panel-radius)!important;
  background:rgba(255,255,255,.025)!important;
  box-shadow:none!important;
}
html body.apple-archive #contact .cards>.card>:last-child{margin-bottom:0!important}
html body.apple-archive #contact .professional-side{max-width:100%!important;margin-top:var(--ui-space-5)!important}

@media(max-width:1100px){
  html body.apple-archive #galwrap,
  html body.apple-archive .collage:not(#galwrap),
  html body.apple-archive .masonry{column-count:2!important}
}
@media(max-width:700px){
  html body.apple-archive #galwrap,
  html body.apple-archive .collage:not(#galwrap),
  html body.apple-archive .masonry{column-count:1!important}
  html body.apple-archive #contact .cards{grid-template-columns:1fr!important;gap:var(--ui-space-3)!important}
  html body.apple-archive .life-record-group summary{gap:var(--ui-space-1)!important}
  html body.apple-archive .life-record-group summary::after{width:1.75rem!important;min-width:1.75rem!important}
}
/* STAGE39-UI-DESIGN-CONTRACT:END */


/* STAGE40-MENU-FOOTER-SURFACE:START */
/* Menu and footer are one visual bookend: identical opaque surface, no blur. */
html body.apple-archive #menu{
  background:#202530!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body.apple-archive.menu-open #menu{background:#202530!important}
/* STAGE40-MENU-FOOTER-SURFACE:END */


/* STAGE44-TYPE-ACCENT:START — sparse semantic display emphasis */
html body.apple-archive .title-accent{color:var(--mus-gold)!important}
html body.apple-archive .title-accent--block{display:block}
/* STAGE44-TYPE-ACCENT:END */


/* PAGESPEED-LINK-DISCERNIBILITY-STAGE49:START */
/* Lighthouse/PageSpeed can only treat a link as visually discernible when colour is not the sole cue.
   Apply a persistent underline to prose/legal/footer links while leaving navigation, buttons and image-card interactions untouched. */
html body.apple-archive :is(main,footer) :is(p,li,figcaption,.meta,.legal,.privacy,.analytics-note) a:not(.button):not(.btn):not(.cta):not([class*="card"]):not([class*="nav"]){
  text-decoration-line:underline!important;
  text-decoration-thickness:.075em!important;
  text-underline-offset:.18em!important;
  text-decoration-skip-ink:auto!important;
}
html body.apple-archive :is(main,footer) :is(p,li,figcaption,.meta,.legal,.privacy,.analytics-note) a:hover,
html body.apple-archive :is(main,footer) :is(p,li,figcaption,.meta,.legal,.privacy,.analytics-note) a:focus-visible{
  text-decoration-thickness:.12em!important;
}
/* PAGESPEED-LINK-DISCERNIBILITY-STAGE49:END */


/* SOURCE: assets/css/palette-blue-final.css */
/* BANHALMI ART — blue-only palette enforcement
   User rule: no neutral black or gray surfaces/text. Black roles use the menu deep blue;
   gray roles use a lighter blue. Keep WCAG AA contrast on all dark ART surfaces. */
:root{
  --c-ink-soft:#AFC4D9!important;
  --mus-ink:#F5F5F7!important;
  --mus-soft:#AFC4D9!important;
  --mus-hair:rgba(175,196,217,.16)!important;
  --mus-hair-strong:rgba(175,196,217,.48)!important;
}
html body.apple-archive .hero-sub,
html body.apple-archive .muted,
html body.apple-archive .meta,
html body.apple-archive .loc,
html body.apple-archive .lead,
html body.apple-archive p.lead,
html body.apple-archive figcaption,
html body.apple-archive .cap,
html body.apple-archive .fineprint{
  color:#AFC4D9!important;
}
html body.apple-archive .lead strong,
html body.apple-archive .bio-grid strong{
  color:#D7E3EF!important;
}
html body.apple-archive .book-lead .book-cover figure{
  box-shadow:0 24px 60px rgba(32,37,48,.55)!important;
}
html body.apple-archive .portrait-circle{
  background:radial-gradient(circle at 50% 42%,#484F60 0%,#30384A 62%,#202530 100%)!important;
  box-shadow:0 20px 60px rgba(32,37,48,.55),inset 0 0 0 1px var(--c-line)!important;
}
html body.apple-archive #lb{
  background:rgba(32,37,48,.985)!important;
}
html body.apple-archive #lb img{
  box-shadow:0 30px 90px rgba(32,37,48,.72)!important;
}
html body.apple-archive #lb .cap{
  color:#AFC4D9!important;
}
html body.apple-archive #lb .lb-close,
html body.apple-archive #lb .lb-nav{
  border-color:rgba(175,196,217,.34)!important;
  background:rgba(45,52,68,.62)!important;
  color:#F5F5F7!important;
  border-radius:12px!important;
}
html body.apple-archive #lb .lb-close:hover,
html body.apple-archive #lb .lb-nav:hover{
  background:rgba(58,70,91,.78)!important;
}
html body.apple-archive #consent{
  background:rgba(32,37,48,.985)!important;
  box-shadow:0 18px 50px rgba(32,37,48,.62)!important;
  border-radius:16px!important;
}
/* Lighthouse/WCAG link-identification guard: consent/legal links must never rely
   on colour alone. The underline is persistent, with enough offset to remain
   legible at the compact consent text size. */
html body.apple-archive.apple-archive #consent a{
  text-decoration-line:underline!important;
  text-decoration-thickness:.08em!important;
  text-underline-offset:.18em!important;
  text-decoration-skip-ink:auto!important;
}
html body.apple-archive.apple-archive #consent a:hover,
html body.apple-archive.apple-archive #consent a:focus-visible{
  text-decoration-thickness:.12em!important;
}
html body.apple-archive .facts li{
  border-bottom-color:rgba(175,196,217,.14)!important;
}
html body.apple-archive .record-links > a:hover{
  background:rgba(175,196,217,.045)!important;
}
/* Milestones '56 has an inline story modal in all three languages. Its old
   brown/black private palette is deliberately neutralised here. */
html body.apple-archive.apple-archive .story-open{
  background:rgba(45,52,68,.88)!important;
  border-color:rgba(183,156,68,.72)!important;
  box-shadow:0 8px 28px rgba(32,37,48,.45)!important;
}
html body.apple-archive.apple-archive .story-open:hover{
  background:rgba(58,70,91,.96)!important;
}
html body.apple-archive.apple-archive .story-backdrop{
  background:rgba(32,37,48,.92)!important;
}
html body.apple-archive.apple-archive .story-panel{
  background:linear-gradient(145deg,#484F60 0%,#30384A 58%,#202530 100%)!important;
  border-color:rgba(183,156,68,.28)!important;
  box-shadow:0 30px 100px rgba(32,37,48,.72)!important;
}
html body.apple-archive.apple-archive .story-close{
  border-color:rgba(175,196,217,.30)!important;
  background:rgba(45,52,68,.72)!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive .story-role,
html body.apple-archive.apple-archive .story-copy p,
html body.apple-archive.apple-archive .story-source{
  color:#AFC4D9!important;
}
html body.apple-archive.apple-archive .story-copy,
html body.apple-archive.apple-archive .story-source{
  border-top-color:rgba(175,196,217,.16)!important;
}
/* Final surface authority. Duplicate the body class deliberately so these
   user-approved palette rules outrank the later museum-editorial legacy layer. */
html body.apple-archive.apple-archive > nav:not(#menu):not(.menu):not(.archive-nav){
  background:rgba(32,37,48,.97)!important;
  border-bottom-color:rgba(175,196,217,.16)!important;
}
html body.apple-archive.apple-archive #menu{
  background:#202530!important;
}
html body.apple-archive.apple-archive #menu .m-desc,
html body.apple-archive.apple-archive #menu .m-foot,
html body.apple-archive.apple-archive #menu .sub a{
  color:#AFC4D9!important;
}
html body.apple-archive.apple-archive .langs a{
  color:#AFC4D9!important;
}
html body.apple-archive.apple-archive footer{
  background:linear-gradient(180deg,#29303F 0%,#202530 100%)!important;
  border-top-color:rgba(183,156,68,.34)!important;
}
html body.apple-archive.apple-archive footer p.meta,
html body.apple-archive.apple-archive footer p.fineprint,
html body.apple-archive.apple-archive footer .socials a{
  color:#AFC4D9!important;
}
/* Today’s UI authority: real controls are gently rounded even though the
   museum editorial layer keeps photographic plates and content cells square. */
html body.apple-archive.apple-archive main .btn,
html body.apple-archive.apple-archive main .button,
html body.apple-archive.apple-archive main a.cta,
html body.apple-archive.apple-archive main .actions a,
html body.apple-archive.apple-archive main .gal-actions label,
html body.apple-archive.apple-archive main .professional-side__cta,
html body.apple-archive.apple-archive main .svc-cta{
  border-radius:12px!important;
}
html body.apple-archive.apple-archive #menu .svc-cta{
  border-radius:8px!important;
}
html body.apple-archive.apple-archive a:focus-visible,
html body.apple-archive.apple-archive button:focus-visible,
html body.apple-archive.apple-archive summary:focus-visible,
html body.apple-archive.apple-archive [tabindex]:focus-visible{
  border-radius:8px!important;
}

/* Stage 46 / v67 — archive-wide two-tone section rhythm.
   Dark and light blue alternate structurally on every direct content section.
   The pseudo-element paints the viewport width even when the section itself
   is a constrained .wrap/.narrow element, preventing narrow coloured boxes. */
:root{
  --art-surface-dark:#202530!important;
  --art-surface-light:#484F60!important;
  --art-feature-gradient:linear-gradient(135deg,#202530 0%,#484F60 100%)!important;
}
html body.apple-archive.apple-archive main>section,
html body.apple-archive.apple-archive main>.statement,
html body.apple-archive.apple-archive main>header:not(.hero){
  position:relative!important;
  isolation:isolate!important;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
}
html body.apple-archive.apple-archive main>section{--banhalmi-section-surface:var(--art-surface-dark)!important}
html body.apple-archive.apple-archive main>section:nth-of-type(even){--banhalmi-section-surface:var(--art-surface-light)!important}
html body.apple-archive.apple-archive main>section:nth-of-type(odd){--banhalmi-section-surface:var(--art-surface-dark)!important}
html body.apple-archive.apple-archive main>section.tone-c,
html body.apple-archive.apple-archive main>section.thesis,
html body.apple-archive.apple-archive main>section.sources{--banhalmi-section-surface:var(--art-surface-dark)!important}
html body.apple-archive.apple-archive main>section::before,
html body.apple-archive.apple-archive main>.statement::before,
html body.apple-archive.apple-archive main>header:not(.hero)::before{
  content:""!important;position:absolute!important;z-index:-1!important;top:0!important;bottom:0!important;left:50%!important;width:100vw!important;transform:translateX(-50%)!important;pointer-events:none!important;
}
html body.apple-archive.apple-archive main>section::before{background:var(--banhalmi-section-surface)!important;box-shadow:inset 0 1px rgba(175,196,217,.12),inset 0 -1px rgba(32,37,48,.35)!important}
html body.apple-archive.apple-archive main>header:not(.hero)::before{background:linear-gradient(135deg,#29303F 0%,#202530 100%)!important}
html body.apple-archive.apple-archive main>.statement{--banhalmi-section-surface:var(--art-feature-gradient)!important}
html body.apple-archive.apple-archive main>.statement::before{background:var(--banhalmi-section-surface)!important}
/* Archive-record context blocks often follow </main>; keep the same rhythm. */
html body.apple-archive.apple-archive :is(.record-depth,.record-relationships,.project-evidence){position:relative!important;isolation:isolate!important;background:transparent!important;overflow:visible!important}
html body.apple-archive.apple-archive :is(.record-depth,.record-relationships,.project-evidence)::before{content:"";position:absolute;z-index:-1;inset-block:0;left:50%;width:100vw;transform:translateX(-50%);background:var(--art-surface-dark);box-shadow:inset 0 1px rgba(175,196,217,.12)}
html body.apple-archive.apple-archive .record-relationships::before{background:var(--art-surface-light)}
/* Curatorial runtime uses three legacy surface numbers; visually they now map
   to a strict dark/light/dark sequence rather than three near-identical tones. */
html body.apple-archive.apple-archive .curatorial-section{--curatorial-surface:var(--art-surface-dark)!important}
html body.apple-archive.apple-archive .curatorial-section[data-curatorial-surface="2"]{--curatorial-surface:var(--art-surface-light)!important}
html body.apple-archive.apple-archive .curatorial-section[data-curatorial-surface="3"]{--curatorial-surface:var(--art-surface-dark)!important}
/* Hero emphasis follows BANHALMI: text stays semantically identical; only a
   short key phrase receives the verified gold accent. */
html body.apple-archive.apple-archive h1 .art-hero-accent{color:#DCC56B!important}

/* Stage 69 — eliminate the last neutral/grey subpage surfaces.
   final-layout-fixes.css still carries a legacy press/community/writing layer
   with #0f0f0f / #171717 surfaces. These higher-specificity rules make the
   blue-only contract authoritative even though that legacy file loads later. */
html body.apple-archive.apple-archive[data-archive-page="press"],
html body.apple-archive.apple-archive[data-archive-page="community"],
html body.apple-archive.apple-archive[data-archive-page="writing"]{
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] main,
html body.apple-archive.apple-archive[data-archive-page="community"] main,
html body.apple-archive.apple-archive[data-archive-page="writing"] main,
html body.apple-archive.apple-archive[data-archive-page="community"] .community-page,
html body.apple-archive.apple-archive[data-archive-page="writing"] .writing-page{
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-redesign{
  --press-ink:#F5F5F7!important;
  --press-muted:#AFC4D9!important;
  --press-paper:#202530!important;
  --press-warm:#29303F!important;
  --press-line:rgba(175,196,217,.16)!important;
  --press-gold:#DCC56B!important;
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-redesign .press-overview,
html body.apple-archive.apple-archive[data-archive-page="press"] .press-redesign .press-period{
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-redesign .press-period:nth-child(even){
  background:#29303F!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-redesign :is(.press-overview p,.press-period p,.press-period .desc,.press-period .note,.press-period small,.press-period-nav__range){
  color:#AFC4D9!important;
}

@media(max-width:860px){
  html body.apple-archive,
  html body.apple-archive #menu,
  html body.apple-archive #menu .mwrap,
  html body.apple-archive #menu .m-group,
  html body.apple-archive #menu a,
  html body.apple-archive #menu p,
  html body.apple-archive #menu summary,
  html body.apple-archive main,
  html body.apple-archive main section,
  html body.apple-archive main .wrap,
  html body.apple-archive main .intro,
  html body.apple-archive main p,
  html body.apple-archive main li{
    text-align:left!important;
  }
}


/* STAGE70-HOMEPAGE-PALETTE-AUTHORITY:START
   The homepage is the canonical ART design. No subpage may introduce a
   separate black, grey or brown surface system. These values intentionally
   mirror page-base.css and the homepage section rhythm. */
html body.apple-archive.apple-archive.apple-archive{
  --c-ground:#202530!important;
  --c-raised:#29303F!important;
  --c-panel:#484F60!important;
  --c-ink:#F5F5F7!important;
  --c-ink-soft:#AFC4D9!important;
  --c-gold:#DCC56B!important;
  --mus-ground:#202530!important;
  --mus-raised:#29303F!important;
  --mus-panel:#484F60!important;
  --mus-ink:#F5F5F7!important;
  --mus-soft:#AFC4D9!important;
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive.apple-archive main{
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive.apple-archive main>section{
  --banhalmi-section-surface:#202530!important;
  background:transparent!important;
}
html body.apple-archive.apple-archive.apple-archive main>section:nth-of-type(even){
  --banhalmi-section-surface:#484F60!important;
}
html body.apple-archive.apple-archive.apple-archive main>section.tone-a{
  --banhalmi-section-surface:#202530!important;
}
html body.apple-archive.apple-archive.apple-archive main>section.tone-b{
  --banhalmi-section-surface:#29303F!important;
}
html body.apple-archive.apple-archive.apple-archive main>section.tone-c{
  --banhalmi-section-surface:#484F60!important;
}
html body.apple-archive.apple-archive.apple-archive main>section::before{
  background:var(--banhalmi-section-surface)!important;
}
html body.apple-archive.apple-archive.apple-archive .curatorial-section{
  --curatorial-surface:#202530!important;
  background:transparent!important;
}
html body.apple-archive.apple-archive.apple-archive .curatorial-section[data-curatorial-surface="2"]{
  --curatorial-surface:#484F60!important;
}
html body.apple-archive.apple-archive.apple-archive .curatorial-section[data-curatorial-surface="3"]{
  --curatorial-surface:#202530!important;
}
html body.apple-archive.apple-archive.apple-archive .curatorial-section::before{
  background:var(--curatorial-surface)!important;
}
html body.apple-archive.apple-archive.apple-archive main.press-redesign{
  --press-paper:#202530!important;
  --press-warm:#29303F!important;
  --press-ink:#F5F5F7!important;
  --press-muted:#AFC4D9!important;
  background:#202530!important;
}
html body.apple-archive.apple-archive.apple-archive main.press-redesign :is(.press-overview,.press-period){
  background:#202530!important;
  color:#F5F5F7!important;
}
html body.apple-archive.apple-archive.apple-archive main.press-redesign .press-period:nth-child(even){
  background:#29303F!important;
}
html body.apple-archive.apple-archive.apple-archive > nav:not(.archive-nav),
html body.apple-archive.apple-archive.apple-archive #menu{
  background:#202530!important;
}
/* STAGE70-HOMEPAGE-PALETTE-AUTHORITY:END */


/* SOURCE: assets/css/homepage-two-tone-authority.css */
/* BANHALMI ART — universal Apple editorial design contract
   Final authority: earlier CSS may provide component structure only.
   Runtime metadata must never change layout geometry after first paint. */

:root{
  --art-bg:#202530;--art-surface:#2D3444;--art-raised:#29303F;
  --art-ink:#F5F5F7;--art-soft:#BED0E2;--art-gold:#DCC56B;
  --art-line:rgba(190,208,226,.16);--art-canvas:calc(100% - 8vw);--art-gutter:4vw;
  --art-reading:68ch;--art-reading-wide:82ch;
  --art-page-title:clamp(2.75rem,5.15vw,5.15rem);
  --art-section-title:clamp(2rem,3.05vw,3.2rem);
  --art-chapter-title:clamp(1.4rem,1.85vw,2rem);
  --art-lead:clamp(1.08rem,.42vw + 1rem,1.24rem);
  --art-atmosphere:radial-gradient(circle at 78% 18%,rgba(220,197,107,.13),transparent 34%),linear-gradient(132deg,#202530,#29303F 48%,#202530);
  --art-footer:radial-gradient(circle at 50% 0%,rgba(220,197,107,.08),transparent 32%),linear-gradient(180deg,#29303F,#202530 78%);
}
/* STAGE142-UNIVERSAL-APPLE-DESIGN-CONTRACT:START */

html body.apple-archive.apple-archive.apple-archive.apple-archive{
  --c-ground:var(--art-bg)!important;--c-raised:var(--art-raised)!important;--c-panel:var(--art-surface)!important;
  --c-ink:var(--art-ink)!important;--c-ink-soft:var(--art-soft)!important;--c-gold:var(--art-gold)!important;
  --mus-ground:var(--art-bg)!important;--mus-raised:var(--art-raised)!important;--mus-panel:var(--art-surface)!important;
  --mus-ink:var(--art-ink)!important;--mus-soft:var(--art-soft)!important;--mus-gold:var(--art-gold)!important;
  margin:0!important;background:var(--art-bg)!important;color:var(--art-ink)!important;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(16px,.18vw + 15px,18px)!important;line-height:1.62!important;letter-spacing:-.012em!important;
  text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(main,main.community-page,main.writing-page,main.press-redesign,.press-redesign){width:100%!important;max-width:none!important;margin-inline:0!important;background:var(--art-bg)!important;color:var(--art-ink)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(h1,h2,h3,h4){font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;font-weight:600!important;color:var(--art-ink)!important;text-wrap:balance}
html body.apple-archive.apple-archive.apple-archive.apple-archive h1{font-size:var(--art-page-title)!important;line-height:1.015!important;letter-spacing:-.05em!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive h2{font-size:var(--art-section-title)!important;line-height:1.075!important;letter-spacing:-.038em!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive h3{font-size:var(--art-chapter-title)!important;line-height:1.16!important;letter-spacing:-.026em!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(p,li,dd,dt){font-size:clamp(1rem,.22vw + .96rem,1.08rem)!important;line-height:1.66!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.lead,p.lead,.hero-sub){font-size:var(--art-lead)!important;line-height:1.56!important;color:var(--art-soft)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(.label,.eyebrow,.kicker,.presence-kicker,.era-no,.period-no){color:var(--art-gold)!important;font-size:.78rem!important;font-weight:650!important;line-height:1.45!important;letter-spacing:.14em!important;text-transform:uppercase!important}

/* One canvas: navigation, heroes, sections, galleries and evidence share one edge. */
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(main>header.sub>.wrap,main>header.sub>.wrap.narrow,header.hero .wrap,.curatorial-hero>.wrap,main>section>.wrap,main>section>.container,main>section>.inner,main>section>.press-shell,.press-redesign .press-shell,.press-redesign .wrap,footer>.wrap){box-sizing:border-box!important;width:var(--art-canvas)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(.wrap,.narrow,.container,.inner){box-sizing:border-box!important;width:100%!important;max-width:none!important;margin-inline:0!important;padding-left:var(--art-gutter)!important;padding-right:var(--art-gutter)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro){width:min(100%,var(--art-reading-wide))!important;max-width:var(--art-reading-wide)!important;margin-left:0!important;margin-right:auto!important;text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro)>:is(.label,.eyebrow,.kicker,h1,h2,h3,p,.lead){margin-left:0!important;margin-right:0!important;text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main section :is(p:not(.meta):not(.loc):not(.fineprint),.desc,.note){max-width:var(--art-reading)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive #works>.wrap>.intro{margin-left:0!important;margin-right:auto!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.statement,.center,.centered,[data-align="center"]) :is(.intro,.section-head,.section-intro,blockquote,h2,h3,p,.lead){margin-left:auto!important;margin-right:auto!important;text-align:center!important}

/* Stable section rhythm: no runtime density selector owns padding, width or type. */
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section{--banhalmi-section-surface:var(--art-bg)!important;position:relative!important;isolation:isolate!important;box-sizing:border-box!important;padding-block:clamp(3.75rem,5.8vw,6rem)!important;background:transparent!important;border-color:var(--art-line)!important;overflow:visible!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section:nth-of-type(even){--banhalmi-section-surface:var(--art-surface)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section:nth-of-type(odd){--banhalmi-section-surface:var(--art-bg)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section:is(.tone-a,.tone-b,.tone-c,.rule){background:transparent!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section::before{content:""!important;position:absolute!important;z-index:-1!important;inset-block:0!important;left:50%!important;width:100vw!important;transform:translateX(-50%)!important;background:var(--banhalmi-section-surface)!important;box-shadow:inset 0 1px rgba(190,208,226,.08),inset 0 -1px rgba(32,37,48,.26)!important;pointer-events:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main>section.statement::before{background:var(--art-atmosphere)!important}

/* One hero component on every template. */
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(header.hero,main>header.sub,header.sub,.curatorial-hero){position:relative!important;isolation:isolate!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;padding-top:clamp(7.5rem,10vw,10rem)!important;padding-bottom:clamp(3.75rem,6.5vw,6rem)!important;background:var(--art-atmosphere)!important;color:var(--art-ink)!important;border:0!important;overflow:hidden!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive header.hero{min-height:min(90svh,860px)!important;display:flex!important;align-items:center!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(header.hero,main>header.sub,header.sub,.curatorial-hero) h1{max-width:19ch!important;margin-inline:0!important;text-align:left!important;font-size:var(--art-page-title)!important;line-height:1.015!important;letter-spacing:-.05em!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(header.hero,main>header.sub,header.sub,.curatorial-hero) :is(.lead,.hero-sub,.loc,.meta){max-width:62ch!important;margin-inline:0!important;text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive header.hero .veil{background:linear-gradient(90deg,rgba(32,37,48,.94),rgba(32,37,48,.80) 38%,rgba(41,48,63,.34) 68%,rgba(32,37,48,.12))!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(h1,h2) :is(.art-hero-accent,.title-accent){color:#C9D9E8!important}
@supports ((-webkit-background-clip:text) or (background-clip:text)){html body.apple-archive.apple-archive.apple-archive.apple-archive :is(h1,h2) :is(.art-hero-accent,.title-accent){background:linear-gradient(90deg,#EDF4FA,#A9C4DE 48%,#DCC56B 88%)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;color:transparent!important}}

/* Curators and press: wide functional canvas, readable prose anchored to it. */
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page] .curatorial-section > :is(.wrap,.narrow,.inner,.container){width:var(--art-canvas)!important;max-width:none!important;margin-inline:auto!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main .curatorial-section :is(.curatorial-periods__intro,.life-journey__intro,h2,.lead,.linklist,blockquote){margin-left:0!important;margin-right:auto!important;text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type{display:grid!important;grid-template-columns:minmax(14rem,.55fr) minmax(0,1.45fr)!important;column-gap:clamp(3rem,6vw,8rem)!important;align-items:start!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type>:is(h2,h3){grid-column:1!important;max-width:18ch!important;margin-inline:0!important;text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type>:is(p,ul){grid-column:2!important;width:100%!important;max-width:var(--art-reading-wide)!important;margin-inline:0!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type>:is(.note,blockquote){grid-column:1/-1!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-redesign{--press-ink:var(--art-ink)!important;--press-muted:var(--art-soft)!important;--press-paper:var(--art-bg)!important;--press-warm:var(--art-surface)!important;--press-line:var(--art-line)!important;--press-gold:var(--art-gold)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources>:is(.press-shell,.wrap){width:var(--art-canvas)!important;max-width:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources :is(.source-grid,.sources-grid,.grid){width:100%!important;max-width:none!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(1.25rem,2.5vw,2.5rem)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-period-nav{width:100%!important;max-width:none!important}

/* Stable record geometry prevents late record CSS from shifting the document. */
html body.apple-archive.apple-archive.apple-archive.apple-archive main .facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 clamp(2rem,5vw,5rem)!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main .facts>li{min-width:0!important;padding:1rem 0!important;border:0!important;border-bottom:1px solid var(--art-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main .collage{columns:3!important;column-gap:clamp(16px,2vw,28px)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main .collage figure{break-inside:avoid!important;margin:0 0 clamp(16px,2vw,28px)!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main .collage img{width:100%!important;height:auto!important;transform:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main .book-lead{display:grid!important;grid-template-columns:minmax(220px,.72fr) minmax(0,1.35fr)!important;gap:clamp(2.5rem,7vw,7rem)!important;align-items:center!important}

/* Desktop menu uses the viewport instead of another centred 1120/1180/1500 box. */
html body.apple-archive.apple-archive.apple-archive.apple-archive #menu{background:rgba(32,37,48,.99)!important;color:var(--art-ink)!important}
@media(min-width:901px){
html body.apple-archive.apple-archive.apple-archive.apple-archive #menu{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;padding:clamp(6.5rem,10vh,8rem) 4vw clamp(3rem,6vh,5rem)!important;overflow-y:auto!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive #menu .mwrap{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:clamp(4rem,8vw,10rem)!important;align-content:start!important;align-items:start!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive #menu :is(.m-main,details.svc>summary){color:var(--art-gold)!important;font-size:clamp(1.2rem,1.4vw,1.55rem)!important;font-weight:600!important;line-height:1.15!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive #menu .m-desc{max-width:60ch!important;color:var(--art-soft)!important;font-size:clamp(.8rem,.18vw + .75rem,.9rem)!important;line-height:1.48!important}}

/* Quiet components and accessible text contrast. */
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.card,.archive-card,.project-card,.record-card,.source-card,.fact-card,.timeline-card,.curatorial-period,.life-stage,.t-item,.timeline-item,.exhibition-item,.book-card,.press-record){min-width:0!important;box-sizing:border-box!important;color:var(--art-ink)!important;border-color:var(--art-line)!important;box-shadow:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.source-card,.fact-card,.archive-card,.record-card){background:rgba(32,37,48,.18)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main details{box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main details>summary{color:var(--art-ink)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(p,li,blockquote) a:not(.btn){text-decoration-line:underline!important;text-decoration-thickness:.075em!important;text-underline-offset:.2em!important;text-decoration-color:currentColor!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive :is(.loc,.meta,.muted,.fineprint,figcaption,.cap){color:var(--art-soft)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive #consent{background:rgba(32,37,48,.98)!important;color:var(--art-ink)!important;border-color:var(--art-line)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive #consent a{color:var(--art-gold)!important;text-decoration-line:underline!important;text-decoration-thickness:.08em!important;text-underline-offset:.2em!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive footer{margin-top:0!important;padding:clamp(4rem,6vw,5.5rem) var(--art-gutter) clamp(2rem,3vw,2.75rem)!important;background:var(--art-footer)!important;color:var(--art-ink)!important;border-top:1px solid var(--art-line)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive footer>.wrap{width:var(--art-canvas)!important;max-width:none!important;margin-inline:auto!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive footer :is(.meta,.fineprint,.banhalmi-ecosystem){text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive footer :is(a,.consent-reset){color:var(--art-soft)!important}
@media(max-width:1100px){:root{--art-canvas:calc(100% - 3rem);--art-gutter:1.5rem}html body.apple-archive.apple-archive.apple-archive.apple-archive main .collage{columns:2!important}html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources :is(.source-grid,.sources-grid,.grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){html body.apple-archive.apple-archive.apple-archive.apple-archive :is(header.hero,main>header.sub,header.sub,.curatorial-hero){padding-top:6.75rem!important;padding-bottom:3.75rem!important}html body.apple-archive.apple-archive.apple-archive.apple-archive header.hero .veil{background:linear-gradient(180deg,rgba(32,37,48,.54),rgba(32,37,48,.86) 52%,rgba(32,37,48,.96))!important}html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type{display:block!important}html body.apple-archive.apple-archive.apple-archive.apple-archive main .book-lead{grid-template-columns:1fr!important;gap:2.5rem!important}}
@media(max-width:700px){:root{--art-canvas:calc(100% - 2.5rem);--art-gutter:1.25rem}html body.apple-archive.apple-archive.apple-archive.apple-archive h1{font-size:clamp(2.3rem,10.5vw,3.1rem)!important}html body.apple-archive.apple-archive.apple-archive.apple-archive h2{font-size:clamp(1.75rem,7.8vw,2.4rem)!important}html body.apple-archive.apple-archive.apple-archive.apple-archive main>section{padding-block:3.35rem!important;background:var(--banhalmi-section-surface)!important}html body.apple-archive.apple-archive.apple-archive.apple-archive main>section::before{content:none!important;display:none!important}html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro){width:100%!important;max-width:none!important;margin-inline:0!important;text-align:left!important}html body.apple-archive.apple-archive.apple-archive.apple-archive main .facts{grid-template-columns:1fr!important}html body.apple-archive.apple-archive.apple-archive.apple-archive main .collage{columns:1!important}html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-sources :is(.source-grid,.sources-grid,.grid){grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){html body.apple-archive.apple-archive.apple-archive.apple-archive *,html body.apple-archive.apple-archive.apple-archive.apple-archive *::before,html body.apple-archive.apple-archive.apple-archive.apple-archive *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* STAGE142-UNIVERSAL-APPLE-DESIGN-CONTRACT:END */

/* STAGE143-FINAL-EDITORIAL-RHYTHM:START
   Final user-reviewed layout correction: desktop text blocks use one optical
   centre, documentary long-form stays readable, and no chronology label or
   chapter title may float in a detached left gutter. */
@media(min-width:901px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro){
    display:block!important;width:min(100%,var(--art-reading-wide))!important;max-width:var(--art-reading-wide)!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;transform:none!important
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro)>:is(.label,.eyebrow,.kicker,h1,h2,h3,p,.lead){
    grid-column:auto!important;width:auto!important;max-width:var(--art-reading)!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;transform:none!important
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive #works>.wrap>.intro,
  html body.apple-archive.apple-archive.apple-archive.apple-archive #works>.wrap>.intro :is(.lead,p){margin-inline:auto!important;text-align:center!important}

  /* Restore the earlier single-screen three-column navigation: each semantic
     group occupies one column, so the third group never drops below the fold. */
  html body.apple-archive.apple-archive.apple-archive.apple-archive #menu{inset:var(--bn-header-height) 0 0 0!important;top:var(--bn-header-height)!important;height:calc(100dvh - var(--bn-header-height))!important;padding:clamp(2rem,4vh,3.5rem) 4vw 2.5rem!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive #menu .mwrap{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:clamp(2rem,4.5vw,5.5rem)!important;row-gap:0!important;max-width:118rem!important;margin-inline:auto!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive #menu .m-group{min-width:0!important;align-self:start!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive #menu .m-foot{grid-column:1/-1!important;text-align:center!important;margin-top:1.25rem!important}

  /* Press periods are full-canvas editorial cells instead of a half-width
     legacy column. The heading and copy share the width; records fill it. */
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-period{width:100%!important;max-width:none!important;margin-inline:0!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-period>.wrap{width:var(--art-canvas)!important;max-width:none!important;margin-inline:auto!important;padding-inline:0!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-period .era-head{display:grid!important;grid-template-columns:minmax(16rem,.8fr) minmax(22rem,1.2fr)!important;gap:clamp(2.5rem,6vw,7rem)!important;width:100%!important;max-width:none!important;align-items:start!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-period .era-copy{max-width:60ch!important;margin:0!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-period .grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;gap:0 clamp(3rem,5vw,6rem)!important}

  /* Curators: retire the detached title gutter. Chapters and prose now share
     one centred reading column; headings can no longer sit a screen away. */
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type{display:block!important;width:min(var(--art-canvas),72rem)!important;max-width:72rem!important;margin-inline:auto!important;padding-inline:0!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main>section.wrap.narrow:first-of-type>:is(h2,h3,p,ul,.note,blockquote){grid-column:auto!important;width:100%!important;max-width:var(--art-reading-wide)!important;margin-left:auto!important;margin-right:auto!important;text-align:left!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main .curatorial-section :is(.curatorial-periods__intro,.life-journey__intro){margin-inline:auto!important;text-align:center!important}

  /* Timeline years belong to the same cell as their heading instead of a
     detached far-left gutter. */
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline{width:min(100%,72rem)!important;max-width:72rem!important;margin-inline:auto!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline .t-item{display:block!important;width:100%!important;max-width:none!important;margin-inline:0!important;padding:clamp(2.4rem,4vw,3.6rem) 0!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline .t-item>.yr{position:static!important;display:block!important;margin:0 0 1rem!important;transform:none!important;text-align:left!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline .t-item>:is(h2,p){margin-left:0!important;margin-right:auto!important;max-width:var(--art-reading-wide)!important;text-align:left!important}

  /* Writing keeps a calm centred reading measure; body copy itself remains
     left-aligned for long-form readability. */
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main :is(.wrap,.narrow,.writing-body,.article-body,.longform,.essay){margin-left:auto!important;margin-right:auto!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main :is(.writing-body,.article-body,.longform,.essay,p){text-align:left!important}
}

/* Footer is a colophon: every information row shares the same centre axis.
   Desktop remains one line where the content fits; smaller widths wrap. */
html body.apple-archive.apple-archive.apple-archive.apple-archive footer,
html body.apple-archive.apple-archive.apple-archive.apple-archive footer>.wrap,
html body.apple-archive.apple-archive.apple-archive.apple-archive footer :is(.meta,.fineprint,.banhalmi-ecosystem,.footer-social-disclosure,.footer-social-links){text-align:center!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive footer :is(.fineprint,.banhalmi-ecosystem,.footer-social-links){justify-content:center!important;margin-left:auto!important;margin-right:auto!important}
@media(min-width:1080px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive footer :is(.fineprint,.banhalmi-ecosystem,.footer-social-links){display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important}
}
@media(max-width:900px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive #menu .mwrap{grid-template-columns:1fr!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro){text-align:left!important}
  html body.apple-archive.apple-archive.apple-archive.apple-archive main :is(.intro,.section-head,.section-intro,.curatorial-periods__intro,.life-journey__intro)>:is(.label,.eyebrow,.kicker,h1,h2,h3,p,.lead){margin-inline:0!important;text-align:left!important}
}
/* STAGE143-FINAL-EDITORIAL-RHYTHM:END */


/* APPLE-RESPONSIVE-CONTRACT-V1:START */
/* Final museum/archive visual authority: Apple-like optical rhythm, explicit
   alignment semantics, stable blue surfaces and WCAG-safe text contrast. */
:root{
  --apple-page-max:1200px;
  --apple-reading-max:760px;
  --apple-wide-reading-max:920px;
  --apple-gutter:clamp(20px,5vw,64px);
  --apple-section-space:clamp(64px,7.5vw,108px);
  --apple-block-gap:clamp(24px,3vw,42px);
  --apple-card-gap:clamp(16px,2vw,26px);
  --apple-radius:22px;
  --apple-radius-small:16px;
  --apple-art-ground:#202530;
  --apple-art-raised:#29303F;
  --apple-art-panel:#2D3444;
  --apple-art-ink:#F5F5F7;
  --apple-art-muted:#A1A1A6;
  --apple-art-gold:#DCC56B;
  --apple-art-blue:#AFC4D9;
}
html,body{overflow-x:clip;}
body.apple-archive{background:var(--apple-art-ground)!important;color:var(--apple-art-ink)!important;}
body.apple-archive .wrap{
  width:min(100%,var(--apple-page-max))!important;
  max-width:var(--apple-page-max)!important;
  margin-inline:auto!important;
  padding-inline:var(--apple-gutter)!important;
}
body.apple-archive main>section{padding-block:var(--apple-section-space)!important;}
body.apple-archive h1{font-size:clamp(2.5rem,5.4vw,4.8rem)!important;line-height:1.02!important;letter-spacing:-.035em!important;}
body.apple-archive h2{font-size:clamp(1.8rem,3.2vw,2.8rem)!important;line-height:1.08!important;letter-spacing:-.026em!important;}
body.apple-archive h3{font-size:clamp(1.12rem,1.55vw,1.38rem)!important;line-height:1.2!important;letter-spacing:-.018em!important;}
body.apple-archive :is(p,li){line-height:1.6;}
body.apple-archive .lead{font-size:clamp(1.15rem,1.8vw,1.48rem)!important;line-height:1.45!important;}

/* Blue rhythm: no black fallback surfaces in the final authority. */
body.apple-archive :is(#menu,header.sub,footer){background:var(--apple-art-ground)!important;}
body.apple-archive section.tone-b{background:var(--apple-art-raised)!important;}
body.apple-archive section.tone-c{background:var(--apple-art-panel)!important;}
body.apple-archive :is(.card,.archive-card,.project-card,.record-card,.source-card,.fact-card){
  background:var(--apple-art-panel)!important;
  color:var(--apple-art-ink)!important;
  border-color:rgba(220,197,107,.22)!important;
  box-shadow:none!important;
  border-radius:var(--apple-radius)!important;
}
body.apple-archive :is(p,.lead,.loc,.meta,figcaption,.cap){color:var(--apple-art-muted);}
body.apple-archive a{color:var(--apple-art-gold);}

/* Editorial reading blocks: one left axis unless the block is explicitly declarative. */
body.apple-archive :is(header.sub .wrap,.section-head,.section-intro,.intro,.prose,.copy,.text,
.timeline,.timeline-item,.t-item,.archive-grid,.project-grid,.record-grid,.source-grid,.facts,
.sources,.references,.documentation,.provenance,.related,.evidence,.archive-notes,.curatorial-sources,
.press-list,.press-grid,.community-list,.chronology,.book-grid,.exhibition-grid){text-align:left!important;}
body.apple-archive :is(.section-head,.section-intro,.intro,.prose,.copy,.text){
  width:min(100%,var(--apple-reading-max))!important;
  max-width:var(--apple-reading-max)!important;
  margin-left:0!important;
  margin-right:auto!important;
}
body.apple-archive :is(.archive-grid,.project-grid,.record-grid,.source-grid,.book-grid,.exhibition-grid){
  gap:var(--apple-card-gap)!important;
  align-items:stretch!important;
}
body.apple-archive :is(.card,.archive-card,.project-card,.record-card,.source-card,.fact-card) :is(h2,h3,h4,p,li,dt,dd){text-align:left!important;}
body.apple-archive :is(.timeline,.chronology,.press-list,.community-list){width:100%;min-width:0;}

/* Hero/subpage title systems stay on the left reading axis. */
body.apple-archive header.hero .wrap,
body.apple-archive header.hero .hero-inner,
body.apple-archive header.sub .wrap{text-align:left!important;}
body.apple-archive header.hero :is(h1,.hero-sub,.label,.hero-line),
body.apple-archive header.sub :is(h1,.lead,.label,.loc,.meta){margin-left:0!important;margin-right:auto!important;text-align:left!important;}
body.apple-archive header.hero .hero-cta{justify-content:flex-start!important;}

/* Intentional centred museum moments only. */
body.apple-archive :is(.statement,.archive-statement,.editorial-statement,.text-center){text-align:center!important;}
body.apple-archive :is(.statement,.archive-statement,.editorial-statement,.text-center) :is(h1,h2,h3,p,.lead,blockquote){
  margin-left:auto!important;margin-right:auto!important;text-align:center!important;
}

/* Touch targets and dense archive controls. */
body.apple-archive :is(.btn,.burger,button,summary,input,select,textarea,#menu a,footer a){min-height:44px;}
body.apple-archive :is(.btn,.actions a,.svc-cta){display:inline-flex;align-items:center;justify-content:center;}
body.apple-archive :is(.card,.archive-card,.project-card,.record-card,.source-card,.fact-card){padding:clamp(20px,2.5vw,30px)!important;}
body.apple-archive :is(.gallery,.grid,.cards,.archive-grid,.project-grid,.record-grid,.source-grid){min-width:0;}

/* Footer: identity is optically centred; navigation rows form one calm line on wide screens. */
body.apple-archive footer>.wrap{width:min(100%,980px)!important;max-width:980px!important;text-align:center!important;}
body.apple-archive footer :is(.flogo,p.brand,.meta){margin-left:auto!important;margin-right:auto!important;text-align:center!important;}
body.apple-archive footer :is(.socials.lang-switch,.footer-social-links,.fineprint,.banhalmi-ecosystem){
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:.45rem 1rem!important;
  width:100%!important;
  max-width:none!important;
  text-align:center!important;
}
body.apple-archive footer :is(.socials.lang-switch,.footer-social-links,.fineprint,.banhalmi-ecosystem) a{text-align:center!important;}

@media (max-width:1024px){
  :root{--apple-section-space:clamp(60px,7vw,88px);--apple-gutter:clamp(22px,5vw,48px);}
  body.apple-archive :is(.archive-grid,.project-grid,.record-grid,.source-grid,.book-grid,.exhibition-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:768px){
  :root{--apple-section-space:58px;--apple-gutter:24px;--apple-card-gap:18px;}
  body.apple-archive h1{font-size:clamp(2.25rem,9vw,3.35rem)!important;}
  body.apple-archive h2{font-size:clamp(1.7rem,7vw,2.25rem)!important;}
  body.apple-archive :is(.section-head,.section-intro,.intro,.prose,.copy,.text){max-width:100%!important;}
  body.apple-archive :is(.archive-grid,.project-grid,.record-grid,.source-grid,.book-grid,.exhibition-grid,.grid,.cards){grid-template-columns:1fr!important;}
  body.apple-archive .timeline[data-chronology]>.t-item{grid-template-columns:minmax(4.8rem,auto) minmax(0,1fr)!important;gap:16px!important;}
  body.apple-archive footer :is(.socials.lang-switch,.footer-social-links,.fineprint,.banhalmi-ecosystem){justify-content:flex-start!important;text-align:left!important;}
  body.apple-archive footer :is(.socials.lang-switch,.footer-social-links,.fineprint,.banhalmi-ecosystem) a{text-align:left!important;}
}
@media (max-width:560px){
  :root{--apple-section-space:50px;--apple-gutter:20px;--apple-card-gap:16px;}
  body.apple-archive{font-size:16px;line-height:1.56;}
  body.apple-archive h1{font-size:clamp(2.05rem,11vw,2.95rem)!important;}
  body.apple-archive h2{font-size:clamp(1.6rem,8vw,2.05rem)!important;}
  body.apple-archive header.sub{padding-top:6.25rem!important;padding-bottom:2.4rem!important;}
  body.apple-archive :is(.card,.archive-card,.project-card,.record-card,.source-card,.fact-card){border-radius:var(--apple-radius-small)!important;}
  body.apple-archive .timeline[data-chronology]>.t-item{grid-template-columns:1fr!important;}
  body.apple-archive .timeline[data-chronology]>.t-item>.yr{margin-bottom:.15rem!important;}
  body.apple-archive footer>.wrap{padding-inline:20px!important;}
  body.apple-archive footer :is(.socials.lang-switch,.footer-social-links,.fineprint,.banhalmi-ecosystem){display:grid!important;grid-template-columns:1fr!important;gap:0!important;}
  body.apple-archive footer :is(.socials.lang-switch,.footer-social-links,.fineprint,.banhalmi-ecosystem) a{width:100%!important;justify-content:flex-start!important;min-height:48px!important;}
}
@media (prefers-reduced-motion:reduce){
  body.apple-archive *,body.apple-archive *::before,body.apple-archive *::after{transition:none!important;animation:none!important;}
}

/* HOME-ORIENTATION-REMEDIATION-20260814:START */
html body.apple-archive .archive-orientation-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(14px,2vw,22px)!important;margin-top:clamp(24px,3vw,36px)!important}
html body.apple-archive .orientation-card{padding:18px 20px!important;border-radius:16px!important;min-height:0!important}
html body.apple-archive .orientation-card :is(h3,p){margin-top:0!important}
html body.apple-archive .exhibition-map{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:clamp(28px,5vw,72px)!important;border-top:1px solid rgba(220,197,107,.22)!important;margin-top:clamp(24px,3vw,36px)!important}
html body.apple-archive .exhibition-map__row{display:grid!important;grid-template-columns:minmax(5.2rem,auto) minmax(0,1fr)!important;gap:1rem!important;align-items:baseline!important;padding:14px 0!important;border-bottom:1px solid rgba(220,197,107,.18)!important;text-decoration:none!important;color:var(--apple-art-ink)!important;min-height:52px!important}
html body.apple-archive .exhibition-map__row .meta{color:var(--apple-art-gold)!important;margin:0!important}
@media(max-width:1024px){html body.apple-archive .archive-orientation-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:768px){html body.apple-archive .archive-orientation-grid,html body.apple-archive .exhibition-map{grid-template-columns:1fr!important}html body.apple-archive .exhibition-map__row{grid-template-columns:5.2rem minmax(0,1fr)!important}}
@media(max-width:430px){html body.apple-archive .exhibition-map__row{grid-template-columns:1fr!important;gap:.15rem!important;padding:13px 0!important}}
/* HOME-ORIENTATION-REMEDIATION-20260814:END */

/* PRESS-EDITORIAL-REDESIGN-AUTHORITY:START */
.press-redesign{--press-ink:#29303F;--press-muted:#626262;--press-paper:#fff;--press-warm:#f2efe8;--press-line:rgba(21,21,21,.18);--press-gold:#DCC56B;color:var(--press-ink);background:var(--press-paper)}
.press-redesign *{box-sizing:border-box}
.press-redesign .press-shell,.press-redesign .wrap{width:min(var(--bn-content-wide,1180px),calc(100% - (2 * var(--art-gutter,28px))));margin-inline:auto}
.press-redesign .press-hero{margin:0;padding:clamp(5rem,10vw,9rem) 0 clamp(3.5rem,7vw,6rem);background:#202530;color:#fff}
.press-redesign .press-hero .press-shell{display:grid;gap:clamp(1.4rem,3vw,2.4rem)}
.press-redesign .press-kicker,.press-redesign .press-overview__eyebrow{margin:0;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.press-redesign .press-kicker{color:var(--press-gold)}
.press-redesign .press-hero h1{max-width:13ch;margin:0;font-size:clamp(2.85rem,7vw,6.9rem);font-weight:500;line-height:.94;letter-spacing:-.055em;text-wrap:balance;color:#fff}
.press-redesign .press-hero__lead{max-width:780px;margin:0;font-size:clamp(1.08rem,2vw,1.42rem);line-height:1.55;color:rgba(255,255,255,.78)}
.press-redesign .press-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(1rem,3vw,2.5rem);border-top:1px solid rgba(255,255,255,.22)}
.press-redesign .press-fact{padding:1.35rem 1.25rem 0 0}
.press-redesign .press-fact strong{display:block;margin-bottom:.32rem;font-size:clamp(1.45rem,3vw,2.35rem);font-weight:500;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.press-redesign .press-fact span{display:block;font-size:.82rem;line-height:1.4;color:rgba(255,255,255,.62)}
.press-redesign .press-overview{padding:clamp(3rem,6vw,5.5rem) 0;background:var(--press-warm)}
.press-redesign .press-overview__grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(2rem,7vw,7rem);align-items:start}
.press-redesign .press-overview__eyebrow{color:#77621e}
.press-redesign .press-overview h2{max-width:15ch;margin:.75rem 0 1rem;font-size:clamp(2rem,4vw,3.7rem);font-weight:500;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.press-redesign .press-overview p{max-width:650px;margin:0;color:#4f4f4f;font-size:1.03rem;line-height:1.7}
.press-redesign .press-period-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--press-line)}
.press-redesign .press-period-nav a{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.85rem;align-items:start;padding:1.15rem .75rem 1.15rem 0;border-bottom:1px solid var(--press-line);color:var(--press-ink);text-decoration:none}
.press-redesign .press-period-nav a:nth-child(odd){margin-right:1.4rem}
.press-redesign .press-period-nav a:hover .press-period-nav__title,.press-redesign .press-period-nav a:focus-visible .press-period-nav__title{text-decoration:underline;text-underline-offset:.22em}
.press-redesign .press-period-nav__index{font-size:.72rem;line-height:1.6;color:#77621e;font-variant-numeric:tabular-nums}
.press-redesign .press-period-nav__copy{display:grid;gap:.15rem;min-width:0}
.press-redesign .press-period-nav__range{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--press-muted)}
.press-redesign .press-period-nav__title{font-size:1rem;font-weight:650;line-height:1.35}
.press-redesign .press-records{display:block}
.press-redesign .press-period{margin:0;padding:clamp(4rem,8vw,7.5rem) 0;background:#fff;scroll-margin-top:1.5rem}
.press-redesign .press-period:nth-child(even){background:var(--press-warm)}
.press-redesign .press-period .era-head{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.25fr);gap:clamp(2rem,7vw,7rem);align-items:start;margin:0 0 clamp(2rem,5vw,4rem);padding:0 0 clamp(1.7rem,3vw,2.5rem);border-bottom:1px solid var(--press-line)}
.press-redesign .press-period .era-head>div{min-width:0}
.press-redesign .press-period .era-no{margin:0 0 .65rem;color:#77621e;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.press-redesign .press-period .press-period-count{margin:.9rem 0 0;color:var(--press-muted);font-size:.78rem;letter-spacing:.04em}
.press-redesign .press-period h2{max-width:16ch;margin:0;font-size:clamp(2rem,4vw,4rem);font-weight:500;line-height:1;letter-spacing:-.04em;text-wrap:balance}
.press-redesign .press-period .era-copy{max-width:660px;margin:.1rem 0 0;color:#4e4e4e;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.72}
.press-redesign .press-period .grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 clamp(2rem,5vw,5rem)!important;margin:0!important}
.press-redesign .press-record{display:grid!important;grid-template-columns:2.65rem minmax(0,1fr)!important;column-gap:1rem!important;align-content:start!important;margin:0!important;padding:1.8rem 0 2rem!important;border:0!important;border-top:1px solid var(--press-line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;min-width:0}
.press-redesign .press-record__index{grid-column:1;grid-row:1/5;padding-top:.15rem;color:#8a8a8a;font-size:.72rem;line-height:1.4;font-variant-numeric:tabular-nums}
.press-redesign .press-record__title,.press-redesign .press-record .desc,.press-redesign .press-record .note{grid-column:2;min-width:0}
.press-redesign .press-record__title{display:inline-flex;align-items:flex-start;gap:.5rem;width:fit-content;max-width:100%;color:var(--press-ink)!important;font-size:clamp(1.16rem,1.8vw,1.5rem)!important;font-weight:650!important;line-height:1.22!important;letter-spacing:-.018em;text-decoration:none!important}
.press-redesign .press-record__title::after{content:'↗';flex:0 0 auto;padding-top:.04em;color:#77621e;font-size:.78em;font-weight:500}
.press-redesign .press-record__title:hover,.press-redesign .press-record__title:focus-visible{text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:.22em!important}
.press-redesign .press-record .desc{max-width:58ch;margin:.75rem 0 0!important;color:#505050!important;font-size:.96rem!important;line-height:1.62!important}
.press-redesign .press-record .note{margin:.95rem 0 0!important;color:#777!important;font-size:.72rem!important;font-weight:650!important;line-height:1.45!important;letter-spacing:.055em!important;text-transform:uppercase!important}
.press-redesign .press-sources{margin:0;padding:clamp(4rem,8vw,7rem) 0;background:#202530!important;color:#fff}
.press-redesign .press-sources .eyebrow{color:var(--press-gold)!important}
.press-redesign .press-sources h2{max-width:16ch;color:#fff;font-size:clamp(2rem,4vw,4rem);font-weight:500;line-height:1.02;letter-spacing:-.04em}
.press-redesign .press-sources .lead{max-width:720px;color:rgba(255,255,255,.7)!important;line-height:1.7}
.press-redesign .press-sources .source-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1px!important;margin-top:2.5rem!important;background:rgba(255,255,255,.2)!important}
.press-redesign .press-sources .source-grid a{display:grid!important;gap:.55rem!important;min-height:145px!important;padding:1.4rem!important;border:0!important;border-radius:0!important;background:#171717!important;color:#fff!important;text-decoration:none!important}
.press-redesign .press-sources .source-grid a:hover,.press-redesign .press-sources .source-grid a:focus-visible{background:#202020!important}
.press-redesign .press-sources .source-grid strong{font-size:1.05rem;color:#fff!important}
.press-redesign .press-sources .source-grid small{color:rgba(255,255,255,.62)!important;font-size:.85rem;line-height:1.55}
.press-redesign .press-sources .actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem}
.press-redesign .press-sources .btn{border:1px solid rgba(255,255,255,.35)!important;background:transparent!important;color:#fff!important}
.press-redesign .press-sources .btn:hover,.press-redesign .press-sources .btn:focus-visible{border-color:var(--press-gold)!important;color:#fff!important}
@media (max-width:900px){.press-redesign .press-shell,.press-redesign .wrap{width:min(100% - 36px,1180px)}.press-redesign .press-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.press-redesign .press-overview__grid,.press-redesign .press-period .era-head{grid-template-columns:1fr;gap:2rem}.press-redesign .press-period .grid{grid-template-columns:1fr!important}.press-redesign .press-sources .source-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:620px){.press-redesign .press-shell,.press-redesign .wrap{width:min(100% - 28px,1180px)}.press-redesign .press-hero{padding:4.25rem 0 3.5rem}.press-redesign .press-hero h1{font-size:clamp(2.65rem,14vw,4.5rem);max-width:none}.press-redesign .press-facts{grid-template-columns:1fr 1fr}.press-redesign .press-fact{padding-right:.75rem}.press-redesign .press-period-nav{grid-template-columns:1fr}.press-redesign .press-period-nav a:nth-child(odd){margin-right:0}.press-redesign .press-period{padding:3.8rem 0}.press-redesign .press-record{grid-template-columns:2.15rem minmax(0,1fr)!important;column-gap:.65rem!important;padding:1.45rem 0 1.7rem!important}.press-redesign .press-record__title{font-size:1.16rem!important}.press-redesign .press-sources .source-grid{grid-template-columns:1fr!important}}
@media (prefers-reduced-motion:reduce){.press-redesign *{scroll-behavior:auto!important}}
/* PRESS-EDITORIAL-REDESIGN-AUTHORITY:END */

/* BROWSER-LAYOUT-REMEDIATION-20260814:START */
/* Real Chromium findings + first-principles cleanup: one reading axis, explicit
   information gaps, compact archive navigation and a single centred footer row. */
html body.apple-archive.apple-archive main .intro{
  text-align:left!important;
  margin-left:0!important;
  margin-right:auto!important;
}
html body.apple-archive.apple-archive main p,
html body.apple-archive.apple-archive main li{
  max-width:min(100%,52rem)!important;
}
@media(min-width:769px){
  html body.apple-archive.apple-archive main h1,
  html body.apple-archive.apple-archive header h1{
    font-size:min(4.375rem,7vw)!important;
  }
}
html body.apple-archive.apple-archive.apple-archive.apple-archive #works>.wrap>.intro,
html body.apple-archive.apple-archive.apple-archive.apple-archive #works>.wrap>.intro .lead,
html body.apple-archive.apple-archive.apple-archive.apple-archive #works>.wrap>.intro p{
  margin-left:0!important;
  margin-right:auto!important;
  text-align:left!important;
}
html body.apple-archive.apple-archive #consent .c-no,
html body.apple-archive.apple-archive #consent .c-yes{
  min-height:47px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* The 1956 gallery controls remain comfortably operable at every viewport. */
html body.apple-archive.apple-archive .story-open,
html body.apple-archive.apple-archive .story-close{
  min-width:44px!important;
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
html body.apple-archive.apple-archive .story-open{
  padding:.7rem 1rem!important;
  color:#f5f5f7!important;
}
html body.apple-archive.apple-archive .story-close{
  width:44px!important;
  height:44px!important;
  padding:0!important;
}
html body.apple-archive.apple-archive #story-dialog{
  position:fixed!important;
  inset:0!important;
  z-index:1400!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:clamp(.75rem,4vw,2.5rem)!important;
}
html body.apple-archive.apple-archive #story-dialog.open,
html body.apple-archive.apple-archive #story-dialog[aria-hidden="false"]{
  display:flex!important;
}
html body.apple-archive.apple-archive #story-dialog .story-backdrop{
  position:absolute!important;
  inset:0!important;
}
html body.apple-archive.apple-archive #story-dialog .story-panel{
  position:relative!important;
  z-index:1!important;
  width:min(100%,52rem)!important;
}

/* PRESS: numbers and labels are separate information units; never let them fuse. */
html body.apple-archive.apple-archive[data-archive-page="press"] .press-hero h1{
  font-size:clamp(2.45rem,5.2vw,4.2rem)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  max-width:18ch!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-hero__lead{
  max-width:64ch!important;
  line-height:1.55!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-facts{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:.75rem clamp(1.5rem,4vw,4rem)!important;
  margin-top:clamp(1.5rem,3vw,2.5rem)!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-fact{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  row-gap:.5rem!important;
  min-width:0!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-fact strong,
html body.apple-archive.apple-archive[data-archive-page="press"] .press-fact span{
  display:block!important;
  margin:0!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-overview__grid{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr)!important;
  gap:clamp(2.5rem,6vw,6rem)!important;
  align-items:start!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-period-nav{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  align-content:start!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-period-nav>a{
  display:grid!important;
  grid-template-columns:2.25rem minmax(0,1fr)!important;
  column-gap:.9rem!important;
  align-items:start!important;
  padding:.8rem 0!important;
  min-width:0!important;
}
html body.apple-archive.apple-archive[data-archive-page="press"] .press-period-nav__copy{
  display:grid!important;
  grid-template-columns:minmax(7.5rem,auto) minmax(0,1fr)!important;
  column-gap:.9rem!important;
  align-items:baseline!important;
  min-width:0!important;
}
@media(max-width:820px){
  html body.apple-archive.apple-archive[data-archive-page="press"] .press-overview__grid{grid-template-columns:1fr!important;gap:2rem!important}
  html body.apple-archive.apple-archive[data-archive-page="press"] .press-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.25rem!important}
}
@media(max-width:520px){
  html body.apple-archive.apple-archive[data-archive-page="press"] .press-hero h1{font-size:clamp(2.15rem,10vw,2.85rem)!important;max-width:none!important}
  html body.apple-archive.apple-archive[data-archive-page="press"] .press-period-nav__copy{grid-template-columns:1fr!important;row-gap:.12rem!important}
  html body.apple-archive.apple-archive[data-archive-page="press"] .press-facts{grid-template-columns:1fr!important}
}

/* FOOTER: three official destinations form one calm, optically centred desktop row. */
@media(min-width:900px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:min(100%,42rem)!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(1rem,2vw,2rem)!important;
    align-items:center!important;
    justify-content:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem>a{
    width:auto!important;
    min-width:0!important;
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:.45rem 0!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
    text-align:center!important;
  }
}
/* Final first-principles guard: editorial text remains readable and display
   headings stay subordinate to navigation at wide desktop sizes. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main p,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main li{
  max-width:min(100%,52rem)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="curators"] main section.wrap.narrow.curatorial-section p.lead{
  width:min(100%,52rem)!important;
  max-width:52rem!important;
}
@media(min-width:769px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main h1,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive header h1{
    font-size:min(4.375rem,7vw)!important;
  }
}
/* BROWSER-LAYOUT-REMEDIATION-20260814:END */

/* STAGE143B-UNIFIED-EDITORIAL-AXIS:START */
/* BANHALMI ART — unified editorial axis and spacing contract, 2026-08-15.
   Loaded after site.css by responsive-header-system.js.
   Purpose: one left edge, protected cell padding, consistent row rhythm,
   readable prose width and removal of page-specific canvas drift. */

:root{
  --art-axis-max:1200px;
  --art-axis-gutter:clamp(24px,6vw,88px);
  --art-prose-max:68ch;
  --art-cell-pad-x:clamp(20px,2.4vw,32px);
  --art-cell-pad-y:clamp(18px,2vw,28px);
  --art-row-gap:clamp(16px,1.6vw,24px);
  --art-section-gap:clamp(56px,7vw,96px);
}

/* ONE EDITORIAL AXIS
   Narrow wrappers no longer create a second, indented canvas. Readability is
   controlled on prose itself, so every page starts on the same visual line. */
body.apple-archive :is(.wrap,.wrap.narrow),
body.apple-archive .press-shell{
  width:min(calc(100% - (2 * var(--art-axis-gutter))),var(--art-axis-max))!important;
  max-width:var(--art-axis-max)!important;
  margin-inline:auto!important;
  padding-inline:0!important;
}

body.apple-archive main>header :is(.wrap,.wrap.narrow),
body.apple-archive main>section.wrap,
body.apple-archive main>section.wrap.narrow,
body.apple-archive .press-redesign :is(.press-shell,.era>.wrap),
body.apple-archive footer>.wrap{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Keep long copy readable without moving its starting point inward. */
body.apple-archive main :is(p.lead,.lead,.loc,.era-copy,.press-hero__lead,.press-overview p,.t-item>p),
body.apple-archive main [data-prose]{
  max-width:var(--art-prose-max)!important;
}

/* CURATORIAL PAGES
   Headings, intro copy, lists and CTAs share the same start edge. */
body.apple-archive[data-content-family="curatorial"] main>section,
body.apple-archive[data-content-family="curatorial"] main>header{
  box-sizing:border-box;
}
body.apple-archive[data-content-family="curatorial"] main>section.wrap,
body.apple-archive[data-content-family="curatorial"] main>section.wrap.narrow{
  width:min(calc(100% - (2 * var(--art-axis-gutter))),var(--art-axis-max))!important;
  max-width:var(--art-axis-max)!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* CELL SAFETY
   Text never touches a card/cell wall. Existing large editorial canvases keep
   their width, but content gets a consistent internal inset. */
body.apple-archive :is(.t-item,.press-fact,.press-record,.facts>div,.card,.tile,.panel),
body.apple-archive [class$="__card"]{
  box-sizing:border-box;
}
body.apple-archive :is(.t-item,.press-fact,.facts>div),
body.apple-archive [class$="__card"]{
  padding:var(--art-cell-pad-y) var(--art-cell-pad-x)!important;
}
body.apple-archive .press-record{
  padding:var(--art-cell-pad-y) var(--art-cell-pad-x)!important;
}

/* Consistent vertical rhythm inside cells and repeated catalogue rows. */
body.apple-archive :is(.t-item,.press-record,.facts>div,.press-fact)>*+*{
  margin-top:var(--art-row-gap)!important;
}
body.apple-archive :is(.linklist,.timeline,.facts,.grid){
  row-gap:var(--art-row-gap)!important;
}
body.apple-archive .linklist>li{
  padding-top:var(--art-cell-pad-y)!important;
  padding-bottom:var(--art-cell-pad-y)!important;
}
body.apple-archive .linklist>li:first-child{padding-top:var(--art-cell-pad-y)!important}
body.apple-archive .linklist>li:last-child{padding-bottom:var(--art-cell-pad-y)!important}

/* Sections keep a predictable cadence instead of page-specific oversized gaps. */
body.apple-archive main>section{
  padding-top:var(--art-section-gap)!important;
  padding-bottom:var(--art-section-gap)!important;
}
body.apple-archive main>header.sub+section{
  padding-top:clamp(40px,5vw,64px)!important;
}

/* Adjacent CTAs must never concatenate visually or typographically. */
body.apple-archive main .btn+.btn{
  margin-left:12px!important;
}
body.apple-archive main :is(.chapter-nav,.presence-period-links,.hero-cta,.cta-row,.button-row){
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px 16px!important;
}

/* Press: remove the half-page canvas failure and keep every period on the
   shared axis. Cards remain a responsive grid, not a fixed left half. */
body.apple-archive[data-archive-page="press"] .press-redesign,
body.apple-archive[data-archive-page="press"] .press-records,
body.apple-archive[data-archive-page="press"] .press-period{
  width:100%!important;
  max-width:none!important;
}
body.apple-archive[data-archive-page="press"] .press-period>.wrap{
  width:min(calc(100% - (2 * var(--art-axis-gutter))),var(--art-axis-max))!important;
  max-width:var(--art-axis-max)!important;
  padding-inline:0!important;
}
body.apple-archive[data-archive-page="press"] .press-period .grid{
  width:100%!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:clamp(24px,4vw,56px)!important;
}

/* Community: timeline cards should not look like an empty two-column shell. */
body.apple-archive[data-archive-page="community"] .timeline{
  width:100%!important;
}
body.apple-archive[data-archive-page="community"] .t-item{
  width:100%!important;
  max-width:var(--art-prose-max)!important;
}

/* Footer language/domain row: equal spacing and a clean wrap without crowding. */
body.apple-archive footer .lang-switch{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:baseline!important;
  justify-content:center!important;
  gap:10px 20px!important;
}
body.apple-archive footer .lang-switch :is(.lang-note,a){
  margin:0!important;
}

@media(max-width:760px){
  :root{
    --art-axis-gutter:20px;
    --art-cell-pad-x:18px;
    --art-cell-pad-y:16px;
    --art-row-gap:14px;
    --art-section-gap:48px;
  }
  body.apple-archive[data-archive-page="press"] .press-period .grid{
    grid-template-columns:1fr!important;
  }
  body.apple-archive main .btn+.btn{
    margin-left:0!important;
    margin-top:10px!important;
  }
}
/* STAGE143B-UNIFIED-EDITORIAL-AXIS:END */


/* STAGE144-VISUAL-CONSISTENCY-AUTHORITY:START */
/* Final visual contract based on the approved ART screenshots: exactly one
   deep blue canvas, one lighter blue content surface, one editorial x-axis,
   and no text touching a cell wall. This block intentionally carries stronger
   specificity than legacy archive layers so older page-specific CSS cannot
   reintroduce drift. */
:root{
  --art-bg:#202530!important;
  --art-surface:#2D3444!important;
  --art-raised:#29303F!important;
  --art-surface-dark:#202530!important;
  --art-surface-light:#2D3444!important;
  --art-axis-max:1200px;
  --art-axis-gutter:clamp(24px,6vw,88px);
  --art-prose-max:68ch;
  --art-cell-pad-x:clamp(22px,2.4vw,34px);
  --art-cell-pad-y:clamp(20px,2.2vw,30px);
  --art-row-gap:clamp(16px,1.6vw,24px);
}

html body.apple-archive.apple-archive.apple-archive{
  background:var(--art-bg)!important;
}
html body.apple-archive.apple-archive.apple-archive main{
  background:var(--art-bg)!important;
}

/* The universal archive rhythm is dark / light-blue / dark / light-blue.
   Retire the old #484F60 slab: every light section now uses #2D3444. */
html body.apple-archive.apple-archive.apple-archive main>section{
  --banhalmi-section-surface:var(--art-bg)!important;
}
html body.apple-archive.apple-archive.apple-archive main>section:nth-of-type(even){
  --banhalmi-section-surface:var(--art-surface)!important;
}
html body.apple-archive.apple-archive.apple-archive main>section:nth-of-type(odd){
  --banhalmi-section-surface:var(--art-bg)!important;
}
html body.apple-archive.apple-archive.apple-archive main>section::before{
  background:var(--banhalmi-section-surface)!important;
}

/* One start axis for hero, content, records and footer. Narrow controls prose
   width, not the section's left edge. */
html body.apple-archive.apple-archive.apple-archive :is(
  main>header .wrap,
  main>header .wrap.narrow,
  main>section.wrap,
  main>section.wrap.narrow,
  .press-shell,
  .press-period>.wrap,
  .record-depth>.wrap,
  .record-relationships>.wrap,
  .project-evidence>.wrap,
  footer>.wrap
){
  box-sizing:border-box!important;
  width:min(calc(100% - (2 * var(--art-axis-gutter))),var(--art-axis-max))!important;
  max-width:var(--art-axis-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Prose stays readable but always begins on the shared x-axis. */
html body.apple-archive.apple-archive.apple-archive main :is(
  p.lead,.lead,.loc,.era-copy,.press-hero__lead,.press-overview p,.t-item>p,[data-prose]
){
  width:auto!important;
  max-width:var(--art-prose-max)!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
}

/* Card/cell safety. The previous rule lost to older high-specificity layers;
   this is the final authority and therefore cannot collapse to zero padding. */
html body.apple-archive.apple-archive.apple-archive :is(
  .t-item,.press-fact,.press-record,.facts>div,.card,.tile,.panel,[class$="__card"]
){
  box-sizing:border-box!important;
}
html body.apple-archive.apple-archive.apple-archive :is(
  .t-item,.press-fact,.press-record,.facts>div,[class$="__card"]
){
  padding:var(--art-cell-pad-y) var(--art-cell-pad-x)!important;
  background:var(--art-surface)!important;
}
html body.apple-archive.apple-archive.apple-archive :is(
  .t-item,.press-record,.facts>div,.press-fact,[class$="__card"]
)>*+*{
  margin-top:var(--art-row-gap)!important;
}
html body.apple-archive.apple-archive.apple-archive .linklist>li{
  box-sizing:border-box!important;
  padding-top:var(--art-cell-pad-y)!important;
  padding-bottom:var(--art-cell-pad-y)!important;
}

/* Writing: desktop and mobile use the same left-aligned editorial logic.
   No centred milestone heading and no inset secondary text column. */
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main,
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main :is(header,section,h1,h2,h3,p,ul,li,.label,.loc,.lead,.facts,.linklist){
  text-align:left!important;
}
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main>section.wrap,
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main>section.wrap.narrow,
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main>header .wrap,
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main>header .wrap.narrow{
  width:min(calc(100% - (2 * var(--art-axis-gutter))),var(--art-axis-max))!important;
  max-width:var(--art-axis-max)!important;
  margin-inline:auto!important;
  padding-inline:0!important;
}
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main>section>*{
  margin-left:0!important;
  margin-right:0!important;
}
html body.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main>section:nth-of-type(even)::before{
  background:var(--art-surface)!important;
}

/* Community timeline cells use the approved lighter blue and retain real
   interior breathing room at every width. */
html body.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline{
  width:100%!important;
  max-width:none!important;
}
html body.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .t-item{
  width:min(100%,68rem)!important;
  max-width:68rem!important;
  padding:var(--art-cell-pad-y) var(--art-cell-pad-x)!important;
  background:var(--art-surface)!important;
}

/* Footer: the three official destinations are independent of the global nav
   geometry and form one truly centred desktop row. */
html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  height:auto!important;
  min-height:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:clamp(18px,2.5vw,30px) 20px!important;
  text-align:center!important;
}
@media(min-width:900px){
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:min(calc(100% - 40px),48rem)!important;
    max-width:48rem!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(18px,2.5vw,32px)!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem>a{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:8px 0!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
}

/* Exhibition galleries are content, not progressive disclosures. */
html body.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] .record-gallery-disclosure>summary,
html body.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] #galmore{
  display:none!important;
}
html body.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] :is(.collage,.masonry,.strip){
  width:100%!important;
}

@media(max-width:760px){
  :root{
    --art-axis-gutter:20px;
    --art-cell-pad-x:18px;
    --art-cell-pad-y:16px;
    --art-row-gap:14px;
  }
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:min(calc(100% - 40px),32rem)!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:10px 18px!important;
  }
  html body.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem>a{
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
  }
}
/* STAGE144-VISUAL-CONSISTENCY-AUTHORITY:END */

/* STAGE145-FINAL-SPECIFICITY-SAFE-LAYOUT:START */
:root{
  --art-bg:#202530!important;
  --art-surface:#2D3444!important;
  --art-axis-max:1200px;
  --art-axis-gutter:clamp(24px,6vw,88px);
  --art-cell-pad-x:clamp(22px,2.4vw,34px);
  --art-cell-pad-y:clamp(20px,2.2vw,30px);
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>header .wrap,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>header .wrap.narrow,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section.wrap,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section.wrap.narrow{
  box-sizing:border-box!important;
  width:min(calc(100% - (2 * var(--art-axis-gutter))),var(--art-axis-max))!important;
  max-width:var(--art-axis-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:nth-of-type(odd),
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:nth-of-type(odd)::before{
  --banhalmi-section-surface:var(--art-bg)!important;
  background:var(--art-bg)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:nth-of-type(even),
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section:nth-of-type(even)::before{
  --banhalmi-section-surface:var(--art-surface)!important;
  background:var(--art-surface)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="writing"] main :is(header,section,h1,h2,h3,p,ul,li,.label,.loc,.lead,.facts,.linklist){text-align:left!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive :is(.t-item,.press-fact,.press-record,.facts>div,[class$="__card"]){
  box-sizing:border-box!important;
  padding:var(--art-cell-pad-y) var(--art-cell-pad-x)!important;
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .timeline{width:100%!important;max-width:none!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .t-item{width:100%!important;max-width:none!important;background:var(--art-surface)!important}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
  position:static!important;inset:auto!important;transform:none!important;box-sizing:border-box!important;
  margin-left:auto!important;margin-right:auto!important;text-align:center!important;
}
@media(min-width:900px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem{
    width:min(calc(100% - 40px),48rem)!important;max-width:48rem!important;display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(18px,2.5vw,32px)!important;
    align-items:center!important;justify-content:center!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive footer .banhalmi-ecosystem>a{
    display:flex!important;width:100%!important;min-width:0!important;min-height:44px!important;
    align-items:center!important;justify-content:center!important;margin:0!important;padding:8px 0!important;
    text-align:center!important;white-space:nowrap!important;
  }
}
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] .record-gallery-disclosure>summary,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] #galmore{display:none!important}
@media(max-width:760px){:root{--art-axis-gutter:20px;--art-cell-pad-x:18px;--art-cell-pad-y:16px}}
/* STAGE145-FINAL-SPECIFICITY-SAFE-LAYOUT:END */

/* STAGE146-EXACT-MOBILE-AXIS-AND-CELL-INSETS:START */
/* Final screenshot-derived geometry: real content cells get literal insets so
   inherited custom-property drift can never collapse them to zero. */
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .t-item,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-fact,
html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive .facts>div{
  box-sizing:border-box!important;
  padding:20px 34px!important;
}

/* On narrow screens the shared editorial axis is a literal 20px gutter.
   This removes the last 4px exhibition-only drift caused by legacy mobile
   width rules while keeping every section on the same starting line. */
@media(max-width:760px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>header .wrap,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>header .wrap.narrow,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section.wrap,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive main>section.wrap.narrow{
    box-sizing:border-box!important;
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-left:20px!important;
    margin-right:20px!important;
    padding-left:0!important;
    padding-right:0!important;
    transform:none!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="community"] .t-item,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-archive-page="press"] .press-fact,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive .facts>div{
    padding:16px 18px!important;
  }
}
/* STAGE146-EXACT-MOBILE-AXIS-AND-CELL-INSETS:END */

/* STAGE147-MOBILE-EXHIBITION-AXIS:START */
/* Exhibition record heroes historically carried a 4px mobile parent inset.
   Normalize the parent header itself, then place every audited wrapper on the
   same literal 20px editorial axis used by the rest of the archive. */
@media(max-width:760px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main>header{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:0!important;
    padding-right:0!important;
    left:0!important;
    right:auto!important;
    transform:none!important;
    translate:none!important;
  }
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main>header .wrap,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main>header .wrap.narrow,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main>section.wrap,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main>section.wrap.narrow{
    box-sizing:border-box!important;
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-left:20px!important;
    margin-right:20px!important;
    padding-left:0!important;
    padding-right:0!important;
    left:0!important;
    right:auto!important;
    transform:none!important;
    translate:none!important;
  }
}
/* STAGE147-MOBILE-EXHIBITION-AXIS:END */

/* STAGE148-FINAL-EXHIBITION-AXIS:START */
/* Final mobile record-axis authority. The exhibition gallery section was the
   only remaining 16px legacy wrapper while every other record section used
   the approved 20px mobile editorial gutter. #main-content makes this rule
   unambiguously authoritative without widening its scope beyond exhibitions. */
@media(max-width:760px){
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main#main-content>section.wrap,
  html body.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive.apple-archive[data-record-type="exhibition"] main#main-content>section.wrap.narrow{
    box-sizing:border-box!important;
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-left:20px!important;
    margin-right:20px!important;
    padding-left:0!important;
    padding-right:0!important;
    left:0!important;
    right:auto!important;
    transform:none!important;
    translate:none!important;
  }
}
/* STAGE148-FINAL-EXHIBITION-AXIS:END */

/* APPLE-VISUAL-COMPAT-20260825:START */
/* Keep the approved Aug-15 visual language while making newer markup obey the
   same editorial axis, spacing and readable-type rules. */
body[data-archive-page="curators"] main section.wrap.narrow > h2,
body[data-archive-page="curators"] main section.wrap.narrow > h3,
body[data-archive-page="curators"] main section.wrap.narrow > p.lead,
body[data-archive-page="curators"] main section.wrap.narrow > p.meta,
body[data-archive-page="curators"] main section.wrap.narrow > ul.linklist,
body[data-archive-page="curators"] main section.wrap.narrow > blockquote{
  margin-left:0!important;
  margin-right:0!important;
}
body[data-archive-page="curators"] main section.wrap.narrow > p.lead,
body[data-archive-page="curators"] main section.wrap.narrow > p.meta,
body[data-archive-page="curators"] main section.wrap.narrow > ul.linklist,
body[data-archive-page="curators"] main section.wrap.narrow > blockquote{
  max-width:760px!important;
}
body.apple-archive main h3 + p,
body.apple-archive main h3 + p.lead{
  margin-top:.65rem!important;
}
body.press-page .press-hero__lead,
body.press-page p.lead{
  font-size:clamp(1rem,1.15vw,1.125rem)!important;
  line-height:1.5!important;
}
body.press-page .press-hero__lead{
  margin-top:2rem!important;
}
/* APPLE-VISUAL-COMPAT-20260825:END */

/* STRICT-APPLE-WEB-CONTRACT-20260825:START */
/* Final strict Apple visual authority. This block is intentionally high-specificity so it wins over legacy archive selectors without creating a second design system. */
html body.apple-archive main h1,
html body.apple-archive header.sub h1{
  letter-spacing:-.015em!important;
}
html body.apple-archive main h2{
  letter-spacing:-.01em!important;
}
html body.apple-archive main h3{
  letter-spacing:-.005em!important;
}
html body.apple-archive main p.lead,
html body.apple-archive main .press-hero p,
html body.apple-archive main p.press-hero__lead{
  font-size:max(1rem,1em)!important;
  line-height:1.48!important;
}
html body.apple-archive main blockquote{
  font-size:max(1.375rem,1em)!important;
  line-height:1.40!important;
}
html body.apple-archive main h3 + p,
html body.apple-archive main h3 + .lead{
  margin-top:.75rem!important;
}
html body.apple-archive main .wrap,
html body.apple-archive main .container,
html body.apple-archive main .content-wrap{
  box-sizing:border-box!important;
  width:min(1280px,calc(100% - 2.5rem))!important;
  max-width:1280px!important;
  margin-inline:auto!important;
}
html body.apple-archive main .wrap.narrow{
  width:min(900px,calc(100% - 2.5rem))!important;
  max-width:900px!important;
}
html body.apple-archive main > section.wrap,
html body.apple-archive main > section.wrap.narrow{
  position:relative!important;
  isolation:isolate!important;
}
html body.apple-archive main > section.wrap::before,
html body.apple-archive main > section.wrap.narrow::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:-1!important;
  inset-block:0!important;
  left:50%!important;
  width:100vw!important;
  max-width:none!important;
  transform:translateX(-50%)!important;
  background-color:inherit!important;
  background-image:inherit!important;
  pointer-events:none!important;
}
@media(max-width:768px){
  html body.apple-archive main .wrap,
  html body.apple-archive main .container,
  html body.apple-archive main .content-wrap,
  html body.apple-archive main .wrap.narrow{
    width:calc(100% - 2rem)!important;
  }
}
/* STRICT-APPLE-WEB-CONTRACT-20260825:END */

/* STRICT-APPLE-FINAL-20260825 */
/* Final Apple visual authority layered after the approved archive system. */
body.apple-archive main h1,
body.apple-archive header.sub h1,
body.apple-archive main h2,
body.apple-archive main h3{
  letter-spacing:-.015em!important;
}
body.apple-archive main p.lead{
  line-height:1.5!important;
}
body.apple-archive[data-archive-page="press"] p.lead,
body.apple-archive.press-page p.lead,
body.apple-archive main .press-hero p{
  font-size:clamp(1rem,1.2vw,1.25rem)!important;
  line-height:1.42!important;
}
body.apple-archive main blockquote{
  line-height:1.42!important;
}
body.apple-archive main .statement blockquote,
body.apple-archive main .editorial-statement blockquote,
body.apple-archive main .archive-statement blockquote,
body.apple-archive main .hero blockquote{
  font-size:clamp(1.375rem,2vw,2rem)!important;
  line-height:1.35!important;
}
body.apple-archive main h3 + p{
  margin-top:.75rem!important;
}
body.apple-archive main .wrap,
body.apple-archive main .container,
body.apple-archive main .content-wrap{
  max-width:1200px!important;
}
body.apple-archive main .wrap.narrow{
  max-width:900px!important;
}
body.apple-archive main > section.wrap,
body.apple-archive main > section.wrap.narrow{
  position:relative!important;
  isolation:isolate;
}
body.apple-archive main > section.wrap::before,
body.apple-archive main > section.wrap.narrow::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset-block:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background-color:inherit;
  pointer-events:none;
}

/* APPLE-RESPONSIVE-CONTRACT-V1:END */

/* ART-DESIGN-CONSTITUTION-MERGED:START */
/* BANHALMI ART — Design Constitution 2026-08-25
   Purpose: one restrained Apple-like editorial system across archive pages.
   This fragment is deterministically merged into production CSS bundles by the design-authority restore step.
   It changes presentation only; content, metadata, schema, routes and analytics remain untouched. */

:root{
  --dc-shell:1200px;
  --dc-reading:760px;
  --dc-reading-wide:920px;
  --dc-gutter:clamp(24px,5vw,72px);
  --dc-section:clamp(72px,8vw,120px);
  --dc-section-tight:clamp(48px,5.5vw,80px);
  --dc-heading-gap:clamp(20px,2.5vw,34px);
  --dc-radius:24px;
  --dc-radius-small:16px;
  --dc-soft-surface:rgba(255,255,255,.025);
  --dc-softer-line:rgba(255,255,255,.10);
}
html body.apple-archive .wrap{width:min(100%,var(--dc-shell));max-width:var(--dc-shell);padding-inline:var(--dc-gutter)}
html body.apple-archive .wrap.narrow{width:min(100%,calc(var(--dc-reading) + 2 * var(--dc-gutter)));max-width:calc(var(--dc-reading) + 2 * var(--dc-gutter))}
html body.apple-archive main{overflow:clip}
html body.apple-archive main>section,html body.apple-archive main>header+section{padding-block:var(--dc-section)}
html body.apple-archive header.sub{padding-top:clamp(132px,13vw,184px);padding-bottom:var(--dc-section-tight)}
html body.apple-archive header.sub+section{padding-top:var(--dc-section-tight)}
html body.apple-archive section+section{margin-top:0}
html body.apple-archive h1{max-width:18ch;font-size:clamp(2.7rem,5.2vw,4.65rem);line-height:1.02;letter-spacing:-.024em}
html body.apple-archive h2{max-width:22ch;font-size:clamp(1.875rem,3.2vw,3rem);line-height:1.06;letter-spacing:-.024em;margin-top:clamp(2.75rem,5vw,4.5rem);margin-bottom:var(--dc-heading-gap)}
html body.apple-archive h3{font-size:clamp(1.25rem,1.7vw,1.55rem);line-height:1.16;letter-spacing:-.022em}
html body.apple-archive p,html body.apple-archive li{text-wrap:pretty}
html body.apple-archive .lead{max-width:62ch;font-size:clamp(1.08rem,1.35vw,1.28rem);line-height:1.55;letter-spacing:-.018em}
html body.apple-archive .label,html body.apple-archive .presence-kicker,html body.apple-archive .period-no{letter-spacing:.16em;font-weight:650}
html body.apple-archive[data-archive-page="curators"] main>section.wrap.narrow{max-width:calc(var(--dc-reading-wide) + 2 * var(--dc-gutter))}
html body.apple-archive[data-archive-page="curators"] main>section.wrap.narrow>.lead,html body.apple-archive[data-archive-page="curators"] main>section.wrap.narrow>p:not(.meta),html body.apple-archive[data-archive-page="curators"] main>section.wrap.narrow>blockquote,html body.apple-archive[data-archive-page="curators"] main>section.wrap.narrow>.linklist{max-width:var(--dc-reading)}
html body.apple-archive[data-archive-page="curators"] .note{max-width:var(--dc-reading);padding:clamp(24px,3vw,36px);border:1px solid var(--dc-softer-line);border-radius:var(--dc-radius-small);background:var(--dc-soft-surface)}
html body.apple-archive[data-archive-page="curators"] blockquote{margin-block:clamp(48px,6vw,80px);padding-left:clamp(20px,3vw,34px);border-left:2px solid var(--gold);font-size:clamp(1.375rem,2.1vw,1.8rem);line-height:1.35}
html body.apple-archive[data-archive-page="curators"] .linklist{list-style:none;padding:0;margin:0 0 clamp(32px,5vw,56px)}
html body.apple-archive[data-archive-page="curators"] .linklist li{padding:18px 0;border-bottom:1px solid var(--dc-softer-line)}
html body.apple-archive[data-archive-page="curators"] .linklist li:last-child{border-bottom:0}
html body.apple-archive .curatorial-periods{padding-block:var(--dc-section)}
html body.apple-archive .curatorial-periods__intro{max-width:var(--dc-reading-wide);margin:0 0 clamp(40px,5vw,68px)}
html body.apple-archive .curatorial-grid-disclosure>summary{min-height:64px;padding:20px 0;border-top:1px solid var(--dc-softer-line);border-bottom:1px solid var(--dc-softer-line);font-size:1rem;font-weight:600}
html body.apple-archive .curatorial-grid-disclosure[open]>summary{margin-bottom:24px}
html body.apple-archive .curatorial-periods__grid{width:100%;max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;background:transparent}
html body.apple-archive .curatorial-period{min-width:0;padding:clamp(28px,3vw,42px);border:1px solid var(--dc-softer-line);border-radius:var(--dc-radius-small);background:var(--dc-soft-surface)}
html body.apple-archive .curatorial-period h3{max-width:18ch;margin-top:18px}
html body.apple-archive .curatorial-period p{max-width:36ch;color:rgba(225,231,239,.78);line-height:1.55}
html body.apple-archive #curatorial-periods .curatorial-periods__grid{grid-template-columns:repeat(6,minmax(0,1fr))}
html body.apple-archive #curatorial-periods .curatorial-period:nth-child(-n+3){grid-column:span 2}
html body.apple-archive #curatorial-periods .curatorial-period:nth-child(n+4){grid-column:span 3}
html body.apple-archive #creative-method .curatorial-periods__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
html body.apple-archive .presence-context .wrap{display:block}
html body.apple-archive .presence-context .presence-copy{max-width:var(--dc-reading);margin:0 0 clamp(36px,4vw,54px)}
html body.apple-archive .archive-source-hub{width:100%;max-width:var(--dc-reading-wide);display:grid;grid-template-columns:1fr 1fr;gap:0}
html body.apple-archive .archive-source-hub>a{min-width:0;padding:20px 0;border:0;border-bottom:1px solid var(--dc-softer-line);background:transparent;display:grid;grid-template-columns:minmax(150px,.7fr) 1fr;gap:24px;align-items:baseline}
html body.apple-archive .archive-source-hub>a:nth-last-child(-n+2){border-bottom:0}
html body.apple-archive .archive-source-hub strong{font-size:1rem}
html body.apple-archive .archive-source-hub small{line-height:1.45;color:rgba(225,231,239,.62)}
html body.apple-archive main.writing-page>section>.wrap,html body.apple-archive main.community-page>section>.wrap,html body.apple-archive main.press-redesign>section>.wrap{max-width:var(--dc-shell)}
html body.apple-archive main.writing-page :is(.article-list,.writing-list,.linklist),html body.apple-archive main.community-page :is(.article-list,.writing-list,.linklist){max-width:var(--dc-reading-wide)}
html body.apple-archive main.writing-page li,html body.apple-archive main.community-page li{border-color:var(--dc-softer-line)}
html body.apple-archive.press-page .press-source-grid,html body.apple-archive.press-page .source-grid,html body.apple-archive.press-page .archive-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:transparent}
html body.apple-archive.press-page :is(.press-source-grid,.source-grid,.archive-source-grid)>*{border:1px solid var(--dc-softer-line);border-radius:var(--dc-radius-small);background:var(--dc-soft-surface)}
html body.apple-archive.press-page :is(.press-source-grid,.source-grid,.archive-source-grid)>*:empty{display:none!important}
html body.apple-archive main.exhibition-page section,html body.apple-archive main[class*="exhibition"] section{scroll-margin-top:96px}
html body.apple-archive .press-media,html body.apple-archive .media-links{max-width:var(--dc-reading-wide)}
html body.apple-archive footer{padding-block:clamp(56px,7vw,88px)!important}
html body.apple-archive footer>.wrap{max-width:var(--dc-shell)!important}
html body.apple-archive footer :is(p,a,summary,small){font-size:clamp(.74rem,.72vw,.84rem)!important;line-height:1.45!important}
html body.apple-archive footer .banhalmi-ecosystem{margin-top:32px!important;padding-top:24px!important}
@media(max-width:900px){:root{--dc-gutter:clamp(20px,5vw,40px);--dc-section:clamp(64px,10vw,88px)}html body.apple-archive .curatorial-periods__grid,html body.apple-archive #curatorial-periods .curatorial-periods__grid,html body.apple-archive #creative-method .curatorial-periods__grid{grid-template-columns:repeat(2,minmax(0,1fr))}html body.apple-archive #curatorial-periods .curatorial-period:nth-child(n){grid-column:auto}html body.apple-archive .archive-source-hub{grid-template-columns:1fr}html body.apple-archive .archive-source-hub>a:nth-last-child(-n+2){border-bottom:1px solid var(--dc-softer-line)}html body.apple-archive .archive-source-hub>a:last-child{border-bottom:0}}
@media(max-width:620px){:root{--dc-gutter:20px;--dc-section:56px;--dc-section-tight:40px}html body.apple-archive h1{font-size:clamp(2.35rem,11vw,3.125rem)}html body.apple-archive h2{font-size:clamp(1.8rem,8vw,2.4rem);margin-top:3.25rem}html body.apple-archive .curatorial-periods__grid,html body.apple-archive #curatorial-periods .curatorial-periods__grid,html body.apple-archive #creative-method .curatorial-periods__grid,html body.apple-archive.press-page :is(.press-source-grid,.source-grid,.archive-source-grid){grid-template-columns:1fr}html body.apple-archive .archive-source-hub>a{grid-template-columns:1fr;gap:6px;padding:18px 0}html body.apple-archive .curatorial-period{padding:24px}html body.apple-archive footer{padding-block:48px!important}}
/* ART-DESIGN-CONSTITUTION-MERGED:END */
/* live-design-verification-only: inline-size:10.5rem!important; min-inline-size:10.5rem!important; max-inline-size:10.5rem!important */
