:root {
  --paper: #f5f1e9;
  --paper-2: #ebe7df;
  --ink: #242424;
  --muted: #716f6b;
  --line: #cfc9bf;
  --accent: #667783;
  --deep: #20272b;
  --max: 1380px;
  --serif: "Libre Caslon Display", Georgia, serif;
  --sans: "DM Sans", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img { display: block; width: 100%; height: auto; }
a { color: inherit; }
button { font: inherit; }

.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  transform: translateY(-200%);
  background: var(--ink);
  color: white;
  padding: .65rem 1rem;
  z-index: 1000;
}
.skip-link:focus { transform: translateY(0); }

.section-shell {
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  background: color-mix(in srgb, var(--paper) 92%, transparent);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(36,36,36,.12);
}
.header-inner {
  width: min(calc(100% - 48px), var(--max));
  min-height: 92px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.brand {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  line-height: 1.05;
}
.brand-logo {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 6px;
  flex: 0 0 auto;
}
.brand-text {
  display: grid;
  gap: 7px;
}
.brand-name { font: 500 1.2rem/1 var(--sans); letter-spacing: .14em; }
.brand-person { font: 1.1rem/1.1 var(--serif); }
.primary-nav { display: flex; gap: clamp(20px, 3vw, 42px); align-items: center; }
.primary-nav a {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .76rem;
  font-weight: 600;
  position: relative;
}
.primary-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -7px;
  height: 1px;
  background: var(--ink);
  transition: right .25s ease;
}
.primary-nav a:hover::after,
.primary-nav a:focus-visible::after { right: 0; }

.menu-toggle {
  display: none;
  border: 0;
  background: transparent;
  padding: 10px;
  cursor: pointer;
}
.menu-icon {
  display: inline-block;
  width: 24px;
  height: 1px;
  background: var(--ink);
  position: relative;
  margin-left: 8px;
  vertical-align: middle;
}
.menu-icon::after {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 24px;
  height: 1px;
  background: var(--ink);
}

.hero {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.35fr);
  gap: clamp(38px, 6vw, 90px);
  align-items: center;
  padding-block: clamp(50px, 8vw, 120px);
}
.eyebrow {
  margin: 0 0 18px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .74rem;
  font-weight: 600;
  color: var(--accent);
}
h1, h2, h3, p { margin-top: 0; }
h1 {
  font: clamp(3rem, 6vw, 6.6rem)/.98 var(--serif);
  letter-spacing: -.035em;
  margin-bottom: 28px;
  max-width: 8.5ch;
}
h2 {
  font: clamp(2.6rem, 4.5vw, 5rem)/1.02 var(--serif);
  letter-spacing: -.025em;
  margin-bottom: 22px;
}
h3 { font: 1.6rem/1.2 var(--serif); }
.hero-intro { max-width: 54ch; color: #4e4d4a; }
.hero-art img { aspect-ratio: 1 / 1; object-fit: cover; }
figcaption {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: var(--muted);
  font-size: .82rem;
  margin-top: 12px;
}
.text-link {
  display: inline-flex;
  gap: 14px;
  align-items: center;
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 4px;
}
.text-link span { transition: transform .2s ease; }
.text-link:hover span { transform: translateX(5px); }

.statement-band {
  background: var(--deep);
  color: #f5f1e9;
  padding-block: clamp(70px, 10vw, 140px);
}
.statement-band .eyebrow { color: #aab7bf; }
.statement-grid {
  display: grid;
  grid-template-columns: .55fr 1.45fr;
  gap: 40px;
}
.statement-large {
  font: clamp(2rem, 3.5vw, 4rem)/1.12 var(--serif);
  margin: 0;
  max-width: 24ch;
}
.statement-large.small { font-size: clamp(2rem, 3vw, 3.2rem); }

.terraformation,
.selected-works,
.research,
.exhibitions,
.about,
.studio {
  padding-block: clamp(90px, 11vw, 160px);
}
.section-heading { margin-bottom: clamp(38px, 5vw, 72px); }
.split-heading {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 40px;
}
.section-note {
  max-width: 42ch;
  color: var(--muted);
  margin-bottom: 8px;
}
.terra-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(40px, 7vw, 100px);
  align-items: center;
}
.feature-art img { aspect-ratio: 1 / 1; object-fit: cover; }
.terra-copy { font-size: 1.06rem; }
.terra-copy p { max-width: 48ch; color: #474643; }

.selected-works { border-top: 1px solid var(--line); }
.art-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 28px;
}
.art-card { grid-column: span 4; margin: 0; }
.art-card.wide { grid-column: span 7; }
.art-card.tall { grid-column: span 5; }
.art-open {
  border: 0;
  padding: 0;
  background: transparent;
  width: 100%;
  cursor: zoom-in;
}
.art-card img {
  aspect-ratio: 4/5;
  object-fit: cover;
  transition: transform .45s ease, filter .45s ease;
}
.art-card.wide img { aspect-ratio: 7/5; }
.art-card.tall img { aspect-ratio: 5/6; }
.art-open:hover img { transform: scale(1.012); filter: contrast(1.03); }
.art-card figcaption { font-size: .86rem; color: var(--ink); }
.art-card figcaption span { color: var(--muted); }

.red-feature {
  background: #d5d1ca;
  padding-block: clamp(80px, 10vw, 140px);
}
.red-grid {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: clamp(44px, 8vw, 110px);
  align-items: center;
}
.red-copy p:not(.eyebrow) { max-width: 42ch; }
.red-grid figure { margin: 0; }
.red-grid img { max-height: 840px; object-fit: contain; }

.research-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.research-card {
  padding: 44px 36px 50px 0;
}
.research-card + .research-card {
  border-left: 1px solid var(--line);
  padding-left: 36px;
}
.number { color: var(--accent); font-size: .8rem; letter-spacing: .1em; }
.research-card p { color: #52514e; }

.place-band {
  background: var(--paper-2);
  padding-block: clamp(85px, 10vw, 140px);
}
.place-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.place-grid article {
  background: rgba(255,255,255,.36);
  min-height: 300px;
  padding: 36px;
  border: 1px solid rgba(36,36,36,.08);
}
.place-grid article span {
  display: inline-block;
  margin-bottom: 62px;
  color: var(--accent);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: .72rem;
  font-weight: 600;
}
.place-grid article p { color: #575652; }

.studio {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: clamp(40px, 7vw, 100px);
  align-items: center;
}
.studio-image img { aspect-ratio: 1 / 1; object-fit: cover; object-position: center; }
.studio-copy p:last-child { max-width: 42ch; }

.exhibitions { border-top: 1px solid var(--line); }
.exhibition-list { border-top: 1px solid var(--line); }
.exhibition-list article {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 24px;
  padding: 28px 0;
  border-bottom: 1px solid var(--line);
}
.exhibition-list .year {
  font: 1.4rem var(--serif);
  color: var(--accent);
}
.exhibition-list h3 { margin-bottom: 6px; }
.exhibition-list p { margin-bottom: 0; color: var(--muted); }

.about {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: clamp(40px, 8vw, 120px);
  align-items: center;
  border-top: 1px solid var(--line);
}
.portrait img { aspect-ratio: 4/5; object-fit: cover; }
.about-copy p { max-width: 58ch; }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.button {
  text-decoration: none;
  background: var(--ink);
  color: white;
  padding: 12px 18px;
  border: 1px solid var(--ink);
  font-weight: 600;
  font-size: .9rem;
}
.button.ghost { background: transparent; color: var(--ink); }

.site-footer {
  background: var(--deep);
  color: #f2eee7;
  padding-block: 56px;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr 1fr;
  gap: 40px;
}
.footer-brand { letter-spacing: .14em; font-weight: 600; margin-bottom: 8px; }
.footer-links { display: grid; gap: 8px; }
.footer-links a, .footer-meta a { text-decoration: none; }
.footer-meta { text-align: right; }
.muted { color: #a9a49c; }

.lightbox {
  width: min(94vw, 1200px);
  border: 0;
  padding: 20px;
  background: #111;
  color: white;
}
.lightbox::backdrop { background: rgba(0,0,0,.82); }
.lightbox img { max-height: 78vh; object-fit: contain; }
.lightbox-caption {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding-top: 12px;
  color: #d7d7d7;
}
.lightbox-close {
  position: absolute;
  right: 18px;
  top: 14px;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.9);
  color: #111;
  cursor: pointer;
  font-size: 1.8rem;
  line-height: 1;
}

@media (max-width: 900px) {
  .section-shell, .header-inner { width: min(calc(100% - 32px), var(--max)); }
  .menu-toggle { display: inline-flex; align-items: center; }
  .primary-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0; right: 0;
    background: var(--paper);
    border-bottom: 1px solid var(--line);
    padding: 22px 24px 30px;
    flex-direction: column;
    align-items: flex-start;
  }
  .primary-nav.open { display: flex; }
  .hero,
  .terra-grid,
  .red-grid,
  .studio,
  .about,
  .statement-grid {
    grid-template-columns: 1fr;
  }
  .hero-copy { max-width: 720px; }
  h1 { max-width: 11ch; }
  .statement-large { max-width: 28ch; }
  .split-heading { display: grid; }
  .research-grid { grid-template-columns: 1fr; }
  .place-grid { grid-template-columns: repeat(2, 1fr); }
  .research-card + .research-card {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding-left: 0;
  }
  .place-grid article { min-height: 0; }
  .place-grid article span { margin-bottom: 28px; }
  .art-card,
  .art-card.wide,
  .art-card.tall { grid-column: span 6; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-meta { text-align: left; }
}

@media (max-width: 620px) {
  body { font-size: 16px; }
  .header-inner { min-height: 78px; }
  .brand-logo { width: 48px; height: 48px; }
  .menu-label { display: none; }
  h1 { font-size: clamp(3rem, 16vw, 5rem); }
  h2 { font-size: clamp(2.5rem, 12vw, 4rem); }
  figcaption, .lightbox-caption {
    flex-direction: column;
    gap: 2px;
  }
  .place-grid { grid-template-columns: 1fr; }
  .art-grid { gap: 42px 0; }
  .art-card,
  .art-card.wide,
  .art-card.tall { grid-column: 1 / -1; }
  .art-card img,
  .art-card.wide img,
  .art-card.tall img { aspect-ratio: 1 / 1; }
  .exhibition-list article { grid-template-columns: 1fr; gap: 4px; }
  .footer-grid { grid-template-columns: 1fr; }
}


/* ===== Artwork architecture: Stage 1 ===== */
.nav-group { position: relative; }
.nav-parent {
  border: 0; background: transparent; color: inherit; cursor: pointer; padding: 0;
  text-transform: uppercase; letter-spacing: .08em; font-size: .76rem; font-weight: 600;
}
.nav-parent span { display:inline-block; margin-left:4px; transition:transform .2s ease; }
.nav-group.open .nav-parent span { transform:rotate(180deg); }
.nav-submenu {
  position:absolute; top:calc(100% + 18px); left:-22px; width:270px; padding:16px 0;
  background:var(--paper); border:1px solid var(--line); box-shadow:0 16px 36px rgba(0,0,0,.10);
  opacity:0; visibility:hidden; transform:translateY(-6px); transition:.2s ease;
}
.nav-group.open .nav-submenu, .nav-group:focus-within .nav-submenu {
  opacity:1; visibility:visible; transform:none;
}
.nav-submenu a {
  display:block; padding:10px 22px; font-size:.72rem; line-height:1.35;
  text-transform:none; letter-spacing:.03em; font-weight:500;
}
.nav-submenu a::after { display:none; }
.nav-submenu a:hover, .nav-submenu a:focus-visible { background:var(--paper-2); }

.series-index-hero { padding-block:clamp(72px,9vw,135px); max-width:980px; margin-left:max(24px, calc((100vw - var(--max))/2)); }
.series-index-hero h1, .series-hero h1 { max-width:none; }
.series-index { padding-bottom:clamp(90px,11vw,160px); }
.series-card {
  display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:clamp(34px,7vw,100px); align-items:center; padding:clamp(48px,7vw,92px) 0;
  border-top:1px solid var(--line);
}
.series-card:nth-child(even) .series-card-image { order:2; }
.series-card-image img { aspect-ratio:4/3; object-fit:cover; }
.series-card h2 { margin-bottom:16px; }
.series-card h2 a { text-decoration:none; }
.series-card-copy p:not(.eyebrow) { max-width:48ch; color:#4f4d49; }

.series-hero {
  display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(38px,7vw,100px); align-items:center; padding-block:clamp(60px,9vw,130px);
}
.series-hero h1 { font-size:clamp(3rem,5.8vw,6.2rem); }
.series-hero-art img { aspect-ratio:4/3; object-fit:contain; max-height:760px; }
.series-statement-band { background:var(--paper-2); padding-block:clamp(75px,9vw,125px); border-block:1px solid var(--line); }
.series-statement-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(40px,8vw,110px); }
.series-statement-grid h2 { font-size:clamp(2.2rem,3.4vw,3.7rem); }
.series-statement-grid p { max-width:70ch; font-size:1.04rem; color:#474643; }
.series-next { padding-bottom:clamp(80px,10vw,140px); display:flex; justify-content:space-between; }

.lightbox { width:min(94vw,1180px); max-height:92vh; border:0; padding:0; background:var(--paper); color:var(--ink); }
.lightbox::backdrop { background:rgba(20,22,23,.86); }
.lightbox-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.42fr); min-height:70vh; }
.lightbox-inner img { width:100%; height:100%; max-height:88vh; object-fit:contain; background:#1e2224; }
.lightbox-caption { padding:42px 34px; align-self:end; }
.lightbox-caption h2 { font-size:clamp(1.8rem,3vw,3rem); margin-bottom:16px; }
.lightbox-caption p { color:var(--muted); }
.lightbox-close { position:absolute; right:14px; top:8px; z-index:2; border:0; background:rgba(245,241,233,.92); width:44px; height:44px; cursor:pointer; font-size:1.8rem; line-height:1; }

@media (max-width: 900px) {
  .primary-nav.open { align-items:stretch; }
  .nav-group { width:100%; }
  .nav-parent { width:100%; text-align:left; padding:14px 0; display:flex; justify-content:space-between; align-items:center; }
  .nav-submenu {
    position:static; width:100%; box-shadow:none; border:0; border-top:1px solid var(--line);
    padding:0; opacity:1; visibility:visible; transform:none; display:none; background:transparent;
  }
  .nav-group.open .nav-submenu { display:block; }
  .nav-submenu a { padding:12px 18px; }
  .series-card, .series-hero, .series-statement-grid { grid-template-columns:1fr; }
  .series-card:nth-child(even) .series-card-image { order:0; }
  .series-hero-art { order:-1; }
  .lightbox-inner { grid-template-columns:1fr; }
  .lightbox-caption { padding:24px; }
}
@media (max-width: 640px) {
  .series-index-hero { margin-left:auto; }
  .series-card { grid-template-columns:1fr; }
}


/* ===== Stage 2: preserve complete artwork views ===== */
.art-open {
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}
.art-card img,
.art-card.wide img,
.art-card.tall img {
  width: 100%;
  height: auto;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center;
  max-height: 760px;
  background: transparent;
}
.art-card.wide,
.art-card.tall {
  grid-column: span 4;
}
.series-hero-art {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 420px;
}
.series-hero-art img {
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 760px;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center;
}
.series-card-image {
  display: flex;
  align-items: center;
  justify-content: center;
}
.series-card-image img {
  width: 100%;
  height: auto;
  max-height: 560px;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}
.detail-view figcaption span {
  font-style: italic;
}
@media (max-width: 900px) {
  .art-card, .art-card.wide, .art-card.tall { grid-column: span 6; }
  .series-hero-art { min-height: 0; }
}
@media (max-width: 640px) {
  .art-card, .art-card.wide, .art-card.tall { grid-column: 1 / -1; }
  .art-card img, .series-hero-art img { max-height: none; }
}

/* Research page */
.research-hero{padding:clamp(64px,9vw,130px) 0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.72fr);gap:clamp(42px,7vw,110px);align-items:center}.research-hero h1{font:clamp(3.2rem,7vw,7.4rem)/.93 var(--serif);font-weight:400;letter-spacing:-.035em;margin:.25em 0}.research-lede{font-size:clamp(1.08rem,1.6vw,1.35rem);max-width:760px;color:var(--muted)}.research-hero figure,.research-gallery figure,.book-grid figure{margin:0}.research-hero figcaption,.research-gallery figcaption{font-size:.76rem;color:var(--muted);margin-top:10px}.research-intro,.research-timeline,.medalta{padding-block:clamp(80px,10vw,150px)}.research-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:clamp(42px,7vw,110px);align-items:start}.research-two-col blockquote{margin:0;padding:0 0 0 30px;border-left:1px solid var(--accent);font:clamp(1.65rem,3vw,2.7rem)/1.22 var(--serif);color:var(--deep)}.research-stop{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1.38fr);gap:clamp(42px,6vw,90px);padding:clamp(58px,7vw,100px) 0;border-top:1px solid var(--line);align-items:start}.stop-copy{position:sticky;top:125px}.stop-copy h3{font:clamp(2rem,3.4vw,3.5rem)/1.05 var(--serif);font-weight:400;margin:.2em 0 .5em}.stop-copy .number{font-size:.78rem;letter-spacing:.12em;color:var(--muted)}.research-gallery{display:grid;gap:20px}.research-gallery.two{grid-template-columns:repeat(2,minmax(0,1fr))}.research-gallery.three{grid-template-columns:repeat(3,minmax(0,1fr))}.research-gallery img{aspect-ratio:4/5;object-fit:cover;background:var(--paper-2)}.book-feature{background:var(--deep);color:var(--paper);padding:clamp(80px,10vw,150px) 0}.book-grid{display:grid;grid-template-columns:minmax(280px,.65fr) minmax(0,1fr);gap:clamp(50px,8vw,120px);align-items:center}.book-grid figure{max-width:520px}.book-grid h2{font:clamp(2.8rem,5vw,5.8rem)/.98 var(--serif);font-weight:400;margin:.2em 0}.book-subtitle{font:clamp(1.35rem,2vw,2rem)/1.25 var(--serif);color:#d7d1c8}.research-close{background:var(--paper-2);padding:clamp(80px,10vw,150px) 0}.research-close .statement-large{max-width:1100px;margin-bottom:35px}.primary-nav a[aria-current="page"]::after{right:0}
@media(max-width:900px){.research-hero,.research-two-col,.research-stop,.book-grid{grid-template-columns:1fr}.stop-copy{position:static}.research-gallery.three{grid-template-columns:repeat(2,minmax(0,1fr))}.research-hero figure{max-width:620px}.book-grid figure{max-width:440px}}
@media(max-width:600px){.research-gallery.two,.research-gallery.three{grid-template-columns:1fr}.research-gallery img{aspect-ratio:auto}.research-two-col blockquote{font-size:1.7rem}.research-hero h1{font-size:3.2rem}}

/* Research geographic exploration */
.research-explore { padding-top: 1rem; padding-bottom: 3.5rem; }
.research-link-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
.research-link-card { display:flex; flex-direction:column; gap:.45rem; min-height:150px; padding:1.4rem; border:1px solid rgba(70,58,43,.18); border-radius:18px; background:#f6f1e8; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease; }
.research-link-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(55,45,32,.10); }
.research-link-card span { font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:#735c43; }
.research-link-card strong { font-family:"Libre Caslon Display",serif; font-size:1.35rem; line-height:1.2; font-weight:400; color:#2f291f; }
.location-page-hero { padding-top:4.5rem; padding-bottom:2.5rem; }
.location-page-hero .research-lede { max-width:780px; }
.location-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; margin:2rem 0 3rem; }
.location-gallery figure { margin:0; }
.location-gallery img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:14px; display:block; }
.location-gallery figcaption { padding:.6rem .15rem 0; font-size:.9rem; line-height:1.45; }
.location-gallery .portrait img { aspect-ratio:3/4; }
.location-copy { max-width:840px; }
.location-copy h2 { margin-top:2.5rem; }
@media (max-width:900px){ .research-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.location-gallery{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:600px){ .research-link-grid,.location-gallery{grid-template-columns:1fr;} }

/* About page */
.about-hero{padding:clamp(64px,9vw,130px) 0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.72fr);gap:clamp(42px,7vw,110px);align-items:center}
.about-hero h1{font:clamp(3.2rem,7vw,7.1rem)/.94 var(--serif);font-weight:400;letter-spacing:-.035em;margin:.25em 0}
.about-lede{font-size:clamp(1.08rem,1.6vw,1.34rem);max-width:760px;color:var(--muted)}
.about-actions{display:flex;gap:26px;flex-wrap:wrap;margin-top:34px}
.about-hero-photo,.about-portrait{margin:0}
.about-hero-photo img,.about-portrait img{width:100%;height:auto;object-fit:contain;background:var(--paper-2)}
.about-hero-photo figcaption,.about-portrait figcaption{font-size:.76rem;color:var(--muted);margin-top:10px}
.about-story,.about-career,.about-scholarship{padding-block:clamp(80px,10vw,150px)}
.about-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:clamp(48px,8vw,120px);align-items:start}
.about-prose p,.about-columns p,.about-wide-copy,.about-today p{font-size:clamp(1.02rem,1.3vw,1.18rem);line-height:1.8}
.about-portrait{max-width:480px;justify-self:end}
.about-dark{background:var(--deep);color:var(--paper);padding-block:clamp(80px,10vw,150px)}
.about-dark .eyebrow{color:#aab7bf}.about-dark .section-heading h2{color:var(--paper)}
.degree-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.18);margin-top:48px}
.degree-grid article{background:var(--deep);padding:32px 26px;min-height:190px}
.degree-grid span{display:block;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:#aab7bf;margin-bottom:28px}
.degree-grid h3{font:1.55rem/1.2 var(--serif);font-weight:400;margin:0 0 10px}
.degree-grid p{color:#d7d1c8;margin:0}
.about-wide-copy{max-width:900px;color:#d7d1c8;margin:48px 0 0}
.about-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.68fr);gap:clamp(48px,8vw,120px);align-items:start}
.about-callout,.about-link-panel{border-top:1px solid var(--line);padding-top:28px}
.about-callout p:last-child,.about-link-panel p{color:var(--muted)}
.about-link-panel h3{font:clamp(1.8rem,2.6vw,2.8rem)/1.08 var(--serif);font-weight:400;margin:.2em 0 .5em}
.about-soft{background:var(--paper-2);padding-block:clamp(80px,10vw,150px)}
.residency-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.residency-grid article{background:var(--paper);padding:30px;min-height:145px;border:1px solid var(--line)}
.residency-grid h3{font:1.7rem/1.15 var(--serif);font-weight:400;margin:0 0 14px}
.residency-grid p{margin:0;color:var(--muted)}
.about-today{background:var(--deep);color:var(--paper);padding-block:clamp(80px,10vw,150px)}
.about-today .eyebrow{color:#aab7bf}.about-today h2{font:clamp(2.8rem,5vw,5.4rem)/.98 var(--serif);font-weight:400;margin:.2em 0 .45em}.about-today p{color:#d7d1c8}
.about-today-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:clamp(48px,8vw,120px);align-items:end}
.about-signoff{border-top:1px solid rgba(255,255,255,.28);padding-top:28px}.about-signoff>span{font:clamp(2rem,3.5vw,3.7rem)/1 var(--serif)}.about-signoff p{font-size:.95rem;margin:14px 0 28px}
@media(max-width:900px){.about-hero,.about-story-grid,.about-columns,.about-today-grid{grid-template-columns:1fr}.about-hero-photo,.about-portrait{max-width:620px;justify-self:start}.degree-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.residency-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.degree-grid,.residency-grid{grid-template-columns:1fr}.about-hero h1{font-size:3.2rem}.about-actions{display:grid;gap:16px}.degree-grid article{min-height:auto}.about-portrait{max-width:none}}

/* Exhibition context features */
.exhibition-feature{background:#f2eee7;padding:clamp(4rem,7vw,7rem) 0;margin-top:clamp(2rem,4vw,4rem)}
.feature-heading{max-width:920px;margin-bottom:2.5rem}.feature-heading h2{font-family:"Libre Caslon Display",serif;font-size:clamp(2.1rem,4vw,4rem);font-weight:400;line-height:1.03;margin:.35rem 0 1rem}.feature-deck{font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.6;max-width:780px}.feature-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(320px,1.28fr);gap:clamp(2rem,5vw,5rem);align-items:start}.feature-layout-landscape{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}.feature-poster img,.feature-landscape img,.feature-gallery img{display:block;width:100%;height:auto}.feature-poster img{max-height:760px;object-fit:contain;background:#fff}.feature-poster figcaption,.feature-landscape figcaption,.feature-gallery figcaption{font-size:.82rem;line-height:1.45;margin-top:.65rem;color:#625e58}.feature-copy h3{font-family:"Libre Caslon Display",serif;font-size:clamp(1.65rem,2.5vw,2.5rem);font-weight:400;margin:0 0 1rem}.feature-copy p{line-height:1.75;margin:0 0 1.15rem}.feature-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:3rem}.feature-gallery figure{margin:0}.feature-gallery img{aspect-ratio:4/3;object-fit:contain;background:#e8e3db}.collection-note{margin-top:2.5rem;padding:1.4rem 0;border-top:1px solid rgba(25,25,25,.2);border-bottom:1px solid rgba(25,25,25,.2)}.collection-note p{margin:.25rem 0}@media(max-width:820px){.feature-layout,.feature-layout-landscape{grid-template-columns:1fr}.feature-poster{max-width:560px}}@media(max-width:600px){.feature-gallery{grid-template-columns:1fr}}


/* Exhibitions page */
.exhibitions-hero{padding:clamp(70px,10vw,145px) 0 clamp(55px,8vw,110px)}.exhibitions-hero h1{font:clamp(3.4rem,7.5vw,7.8rem)/.92 var(--serif);font-weight:400;letter-spacing:-.04em;margin:.22em 0}.exhibitions-lede{font-size:clamp(1.08rem,1.55vw,1.34rem);line-height:1.7;color:var(--muted);max-width:900px}.exhibition-jump{display:flex;gap:12px;flex-wrap:wrap;margin-top:38px}.exhibition-jump a{border:1px solid var(--line);padding:11px 16px;text-decoration:none;font-size:.88rem}.exhibition-overview{padding-bottom:clamp(35px,5vw,70px)}.exhibition-story{padding-block:clamp(72px,9vw,135px);border-top:1px solid var(--line)}.exhibition-story.soft{background:var(--paper-2);max-width:none}.exhibition-story.soft>.section-shell{padding-top:0;padding-bottom:0}.exhibition-story-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:clamp(35px,7vw,100px);align-items:end;margin-bottom:42px}.exhibition-story-head h2{font:clamp(2.4rem,4.6vw,5rem)/1 var(--serif);font-weight:400;margin:.2em 0 .3em}.exhibition-story-head>div>p:last-child{color:var(--muted);line-height:1.6}.story-intro{font-size:1.06rem;line-height:1.75;color:var(--muted);margin:0}.exhibition-media{display:grid;gap:clamp(22px,4vw,52px);align-items:start}.poster-plus{grid-template-columns:minmax(240px,.42fr) minmax(0,1.58fr)}.exhibition-media figure,.media-grid figure,.international-grid figure{margin:0}.exhibition-media>figure>img{width:100%;height:auto;max-height:760px;object-fit:contain;background:#fff}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.media-grid figure.wide{grid-column:1/-1}.media-grid img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain;background:#e9e4dc}.media-grid figure{display:flex;flex-direction:column;min-width:0}.media-grid figcaption{position:relative;z-index:1;background:inherit;padding-top:2px}.exhibition-media figcaption,.media-grid figcaption,.international-grid figcaption{font-size:.8rem;color:var(--muted);line-height:1.45;margin-top:8px}.video-feature{display:grid;grid-template-columns:minmax(240px,.45fr) minmax(0,1.55fr);gap:clamp(30px,5vw,70px);align-items:center;margin-top:55px;padding-top:40px;border-top:1px solid var(--line)}.video-feature h3{font:clamp(1.8rem,3vw,3rem)/1.1 var(--serif);font-weight:400;margin:.25em 0}.video-feature video{width:100%;max-height:620px;background:#111}.international-feature{background:var(--deep);color:var(--paper);padding-block:clamp(80px,10vw,150px)}.exhibition-story-head.light .eyebrow{color:#aab7bf}.exhibition-story-head.light>div>p:last-child,.exhibition-story-head.light .story-intro{color:#d7d1c8}.international-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.international-grid img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;background:#171717}.international-grid figcaption{color:#c8c1b7}.collection-highlight{margin-top:42px;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25);padding:28px 0;display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px}.collection-highlight .eyebrow{color:#aab7bf}.collection-highlight p:last-child{font:clamp(1.3rem,2vw,2rem)/1.45 var(--serif);margin:0}.collaborative{padding-block:clamp(85px,10vw,150px)}.poster-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,38px);margin-top:48px}.poster-trio article{border-top:1px solid var(--line);padding-top:18px}.poster-trio img{display:block;width:100%;height:480px;object-fit:contain;background:var(--paper-2);margin-bottom:24px}.poster-trio h3{font:clamp(1.55rem,2.2vw,2.35rem)/1.1 var(--serif);font-weight:400;margin:.3em 0}.poster-trio article>p:last-child{color:var(--muted);line-height:1.6}.exhibition-close{background:var(--paper-2);padding-block:clamp(80px,10vw,140px)}.exhibition-close h2{font:clamp(2.2rem,4.5vw,4.8rem)/1.05 var(--serif);font-weight:400;max-width:1100px;margin:.25em 0 .7em}@media(max-width:900px){.exhibition-story-head,.poster-plus,.video-feature{grid-template-columns:1fr}.exhibition-media>figure{max-width:540px}.poster-trio{grid-template-columns:1fr 1fr}.poster-trio img{height:420px}.collection-highlight{grid-template-columns:1fr}.international-grid{grid-template-columns:1fr}}@media(max-width:600px){.media-grid,.poster-trio{grid-template-columns:1fr}.poster-trio img{height:auto;max-height:520px}.exhibitions-hero h1{font-size:3.3rem}.exhibition-story-head h2{font-size:2.65rem}}

/* Stage 15 — A Practice Shaped by Place */
.place-intro{padding-block:clamp(80px,10vw,150px) clamp(60px,8vw,110px)}
.place-lede{max-width:920px;font:clamp(1.45rem,2.2vw,2.15rem)/1.5 var(--serif);margin:0;color:var(--ink)}
.place-journey{border-top:1px solid var(--line)}
.place-chapter{display:grid;grid-template-columns:minmax(0,.8fr) minmax(360px,1.2fr);gap:clamp(44px,7vw,100px);align-items:center;padding-block:clamp(70px,9vw,130px);border-bottom:1px solid var(--line)}
.place-chapter.place-reverse .place-copy{order:2}.place-chapter.place-reverse .place-photo,.place-chapter.place-reverse .place-gallery{order:1}
.place-copy h3{font:clamp(2.3rem,4vw,4.4rem)/1.02 var(--serif);font-weight:400;margin:.2em 0 .45em}
.place-copy p:last-child{font-size:clamp(1.02rem,1.3vw,1.16rem);line-height:1.8;color:var(--muted)}
.place-photo,.place-gallery figure{margin:0}.place-photo img,.place-gallery img{display:block;width:100%;height:auto;max-height:720px;object-fit:cover}
.place-photo img.no-crop{height:auto;max-height:none;object-fit:contain}
.place-photo figcaption,.place-gallery figcaption{font-size:.78rem;line-height:1.45;color:var(--muted);margin-top:10px}
.place-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.place-gallery-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.place-gallery-three img{aspect-ratio:4/5;object-fit:cover}
.place-closing{margin-top:0}
@media(max-width:900px){.place-chapter{grid-template-columns:1fr}.place-chapter.place-reverse .place-copy,.place-chapter.place-reverse .place-photo,.place-chapter.place-reverse .place-gallery{order:initial}.place-gallery-three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.place-gallery,.place-gallery-three{grid-template-columns:1fr}.place-chapter{padding-block:64px}.place-intro{padding-block:72px 56px}}


/* Stage 20 — Contact page */
.contact-hero{padding:clamp(78px,10vw,150px) 0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.62fr);gap:clamp(50px,9vw,140px);align-items:end}.contact-hero h1{font:clamp(3.5rem,8vw,8rem)/.92 var(--serif);font-weight:400;letter-spacing:-.04em;margin:.22em 0}.contact-lede{font-size:clamp(1.08rem,1.55vw,1.34rem);line-height:1.75;color:var(--muted);max-width:820px}.contact-primary{border-top:1px solid var(--line)}.contact-item{padding:26px 0;border-bottom:1px solid var(--line)}.contact-item>span{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.contact-item a,.contact-item p{font:clamp(1.35rem,2.2vw,2.05rem)/1.25 var(--serif);color:var(--ink);margin:0;text-decoration:none}.contact-item a:hover{text-decoration:underline;text-underline-offset:5px}.contact-connect{background:var(--paper-2);padding-block:clamp(80px,10vw,150px)}.contact-connect-grid{display:grid;grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);gap:clamp(50px,9vw,140px);align-items:start}.contact-heading{position:sticky;top:125px}.contact-heading h2{font:clamp(2.5rem,4.6vw,5rem)/1 var(--serif);font-weight:400;margin:.2em 0 .45em}.contact-heading>p:last-child{font-size:1.05rem;line-height:1.75;color:var(--muted);max-width:520px}.contact-links{border-top:1px solid var(--line)}.contact-links a{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;transition:padding-left .2s ease}.contact-links a:hover{padding-left:8px}.contact-links span{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.contact-links strong{font:clamp(1.25rem,2vw,1.75rem)/1.25 var(--serif);font-weight:400}.contact-links b{font-size:1.1rem;font-weight:400}.contact-close{background:var(--deep);color:var(--paper);padding-block:clamp(80px,10vw,145px)}.contact-close-grid{display:grid;grid-template-columns:180px minmax(0,1fr);gap:40px}.contact-close .eyebrow{color:#aab7bf}.contact-close .statement-large{max-width:1050px;margin:0}@media(max-width:900px){.contact-hero,.contact-connect-grid{grid-template-columns:1fr}.contact-heading{position:static}.contact-primary{max-width:650px}.contact-close-grid{grid-template-columns:1fr}}@media(max-width:600px){.contact-hero h1{font-size:3.35rem}.contact-links a{grid-template-columns:1fr auto;gap:7px 18px}.contact-links span{grid-column:1/-1}.contact-links strong{font-size:1.3rem}}


/* Stage 21 — Contact inquiry form */
.contact-inquiry{padding-block:clamp(80px,10vw,150px);border-top:1px solid var(--line)}
.contact-inquiry-grid{display:grid;grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);gap:clamp(50px,9vw,140px);align-items:start}
.contact-form-heading h2{font:clamp(2.5rem,4.6vw,5rem)/1 var(--serif);font-weight:400;margin:.2em 0 .45em}
.contact-form-heading>p:last-child{font-size:1.05rem;line-height:1.75;color:var(--muted);max-width:540px}
.contact-form-heading a{color:var(--ink);text-underline-offset:4px}
.inquiry-form{border-top:1px solid var(--line)}
.form-row{padding:22px 0;border-bottom:1px solid var(--line)}
.form-row label{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.form-row input,.form-row select,.form-row textarea{width:100%;box-sizing:border-box;border:0;background:transparent;color:var(--ink);font:1.08rem/1.5 var(--sans);padding:7px 0;outline:none;border-radius:0}
.form-row textarea{resize:vertical;min-height:150px}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{box-shadow:inset 0 -2px 0 var(--ink)}
.inquiry-submit{margin-top:28px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:14px 20px;font:600 .84rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;display:inline-flex;gap:18px;align-items:center;transition:transform .2s ease,opacity .2s ease}
.inquiry-submit:hover{transform:translateY(-2px);opacity:.9}
@media(max-width:900px){.contact-inquiry-grid{grid-template-columns:1fr}.contact-form-heading{max-width:650px}}
