/* Kit Carson · supporting surfaces
   Load AFTER studio.css. Content, original photographs and service behavior stay intact.
   Display / reading / utility are deliberately separate. No site-header/footer rules. */

/* A monograph opening: the real wall, an unframed portrait, a readable text column. */
.about-wall {
  height: auto;
  width: 100%;
  opacity: 1;
  mix-blend-mode: normal;
  object-fit: contain;
}
.about-page {
  width: min(1200px, calc(100% - 2 * var(--kc-gutter)));
  padding-bottom: clamp(64px, 8vw, 120px);
  color: var(--kc-ink);
}
.about-page .page-heading {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.15fr);
  gap: 8%;
  align-items: end;
  max-width: none;
  padding: clamp(36px, 5vw, 72px) 0 36px;
}
.about-page .page-heading > .eyebrow {
  margin: 0 0 7px;
  color: var(--kc-turquoise);
  font: 600 .8125rem/1.5 var(--kc-utility);
  letter-spacing: .12em;
}
.about-page .page-heading h1 {
  margin: 0;
  font: 600 clamp(3.6rem, 6.8vw, 6rem)/.98 var(--kc-display);
  letter-spacing: -.025em;
}
.about-page .about-layout {
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.15fr);
  gap: 8%;
}
.about-page .about-aside {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  position: static;
  background: transparent;
  transform: none;
  box-shadow: none;
}
.about-page .artist-portrait {
  width: 100%;
  height: auto;
  aspect-ratio: auto;
  object-fit: contain;
  border: 0;
  transform: none;
  box-shadow: none;
}
.about-page .portrait-caption,
.about-page .about-porch figcaption {
  margin: 0;
  padding: 12px 0 0;
  color: var(--kc-muted);
  font: 400 .875rem/1.5 var(--kc-utility);
}
.about-page .about-porch {
  width: 78%;
  margin: clamp(32px, 5vw, 72px) 0 0 auto;
  padding: 0;
  background: transparent;
  transform: none;
  box-shadow: none;
}
.about-page .about-porch img { width: 100%; height: auto; }
.about-page .biography { min-width: 0; max-width: 62ch; }
.about-page .biography p {
  margin: 0 0 1.35em;
  color: var(--kc-ink);
  font: 400 clamp(1.0625rem, 1.4vw, 1.1875rem)/1.75 var(--kc-reading);
}
.about-page .biography p:first-child {
  font-size: clamp(1.3125rem, 1.9vw, 1.5625rem);
  line-height: 1.5;
}
.about-page .biography .arrow-link {
  margin: 12px 28px 0 0;
  color: var(--kc-turquoise);
  min-height: 44px;
  font: 600 .9375rem/1.4 var(--kc-utility);
  gap: 24px;
}

/* Correspondence, not a floating postcard. Truthful delivery status stays prominent. */
.contact-scene {
  position: relative;
  isolation: isolate;
  background: var(--kc-black);
  padding: 0 0 24px;
  color: var(--kc-white);
}
.contact-scene .contact-landscape {
  inset: auto 0 0;
  width: 100%;
  height: 230px;
  object-fit: cover;
  object-position: center 65%;
  z-index: -2;
}
.contact-scene::before {
  inset: auto 0 0;
  height: 230px;
  background: linear-gradient(var(--kc-black), #090b0b55);
  z-index: -1;
}
.contact-scene .contact-page {
  width: min(1200px, calc(100% - 2 * var(--kc-gutter)));
  padding: clamp(32px, 4vw, 56px) 0 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 148px;
  gap: 0 48px;
}
.contact-scene .page-heading {
  max-width: none;
  padding: 0 0 36px;
  align-self: center;
  color: var(--kc-white);
}
.contact-scene .page-heading .eyebrow {
  max-width: none;
  color: var(--kc-turquoise-light);
  font: 600 .8125rem/1.5 var(--kc-utility);
  letter-spacing: .1em;
  margin-bottom: 16px;
}
.contact-scene .page-heading h1 {
  margin: 0 0 16px;
  font: 600 clamp(3.6rem, 6.8vw, 6rem)/.98 var(--kc-display);
  letter-spacing: -.025em;
}
.contact-scene .page-heading p {
  font: 400 1.125rem/1.6 var(--kc-reading);
  color: var(--kc-white);
}
.contact-scene .contact-memento {
  position: static;
  width: 100%;
  margin: 0 0 32px;
  padding: 0;
  align-self: start;
  transform: none;
  background: transparent;
  box-shadow: none;
}
.contact-scene .contact-memento img { width: 100%; height: auto; }
.contact-scene .contact-memento figcaption {
  padding: 8px 0 0;
  color: var(--kc-white);
  font: 400 .875rem/1.4 var(--kc-utility);
}
.contact-scene .contact-layout {
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
  gap: 0;
  padding: 0;
  border: 0;
  background: var(--kc-white);
  color: var(--kc-ink);
  box-shadow: none;
}
.contact-scene .contact-form { display: flex; flex-direction: column; padding: 36px 40px 40px; }
.contact-scene .contact-form fieldset { gap: 20px 24px; }
.contact-scene .contact-field label {
  font: 600 .9375rem/1.4 var(--kc-utility);
  margin-bottom: 7px;
}
.contact-scene .contact-field input,
.contact-scene .contact-field textarea {
  border: 1px solid #78827b;
  background: var(--kc-white);
  color: var(--kc-ink);
  font: 400 1.0625rem/1.5 var(--kc-utility);
  padding: 10px 12px;
  min-height: 48px;
  border-radius: 0;
}
.contact-scene .contact-field textarea {
  font-family: var(--kc-reading);
  min-height: 170px;
}
.contact-scene .contact-consent { font: 400 .9375rem/1.5 var(--kc-utility); align-items: start; padding-block: 8px; }
.contact-scene .contact-consent input { margin: 2px 0 0; accent-color: var(--kc-turquoise); }
.contact-scene .contact-privacy { font: 400 .875rem/1.5 var(--kc-utility); color: var(--kc-muted); }
.contact-scene .contact-piece { font: 600 .9375rem/1.5 var(--kc-utility); color: var(--kc-turquoise); padding-block: 10px; }
.contact-scene .contact-form .button {
  min-height: 48px;
  font: 600 1rem/1.3 var(--kc-utility);
  border: 1px solid var(--kc-black);
  background: var(--kc-black);
  color: var(--kc-white);
  padding: 13px 26px;
  box-shadow: none;
  transform: none;
}
.contact-scene .contact-form .button:hover:not(:disabled) { background: var(--kc-turquoise); border-color: var(--kc-turquoise); }
.contact-scene .contact-form .button:disabled {
  opacity: 1;
  color: var(--kc-muted);
  background: var(--kc-silver);
  border-color: #78827b;
  cursor: not-allowed;
}
.contact-scene .form-status {
  order: -1;
  margin: 0 0 28px;
  padding: 12px 16px;
  border-left: 3px solid var(--kc-turquoise);
  background: var(--kc-porcelain);
  color: var(--kc-ink);
  font: 400 .9375rem/1.5 var(--kc-utility);
}
.contact-scene .contact-fallback-links { display: flex; flex-wrap: wrap; gap: 0 24px; margin-top: 6px; }
.contact-scene .contact-fallback-links a { display: inline-flex; align-items: center; min-height: 44px; font: 600 .9375rem/1.4 var(--kc-utility); color: var(--kc-turquoise); }
.contact-scene .contact-details {
  min-width: 0;
  padding: 40px 36px;
  border-left: 1px solid var(--kc-rule);
  background: var(--kc-porcelain);
}
.contact-scene .contact-details .eyebrow {
  color: var(--kc-turquoise);
  font: 600 .8125rem/1.5 var(--kc-utility);
  letter-spacing: .08em;
  margin-bottom: 4px;
}
.contact-scene .contact-details .contact-address {
  margin-bottom: 28px;
  min-height: 44px;
  padding: 8px 0;
  font: 400 clamp(1.0625rem, 1.5vw, 1.25rem)/1.5 var(--kc-utility);
  color: var(--kc-ink);
  text-decoration: underline;
}
.contact-scene .contact-details h2 {
  font: 600 clamp(1.875rem, 2.3vw, 2.5rem)/1.08 var(--kc-display);
  letter-spacing: -.015em;
  margin: 36px 0 16px;
}
.contact-scene .contact-details > p { font: 400 1.0625rem/1.7 var(--kc-reading); color: var(--kc-ink); }
.contact-scene .contact-details > a:last-child,
.contact-scene .social-links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font: 600 .9375rem/1.4 var(--kc-utility);
  color: var(--kc-turquoise);
}
.contact-scene .contact-details > a:last-child { margin-top: 20px; }
.contact-scene .contact-details > h2:first-child { margin-top: 0; }
.contact-scene .contact-details .contact-piece { display: inline-flex; align-items: center; min-height: 44px; padding-block: 0; }
/* Contact at launch: the form's panel holds a plain card, Kit's email and phone. */
.contact-scene .contact-card {
  min-width: 0;
  padding: 44px 40px 40px;
  font-style: normal;
}
.contact-scene .contact-card .eyebrow {
  color: var(--kc-turquoise);
  font: 600 .8125rem/1.5 var(--kc-utility);
  letter-spacing: .08em;
  margin-bottom: 4px;
}
.contact-scene .contact-card .contact-address {
  width: fit-content;
  max-width: 100%;
  min-height: 44px;
  margin-bottom: 32px;
  padding: 6px 0;
  font: 400 clamp(1.375rem, 1rem + 1.3vw, 2.125rem)/1.35 var(--kc-utility);
  color: var(--kc-ink);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
}
.contact-scene .contact-card .social-links { gap: 0 24px; }
.contact-scene .contact-landscape-caption {
  grid-column: 1 / -1;
  justify-self: start;
  margin: 120px 0 0;
  padding: 10px 14px;
  min-height: 44px;
  color: var(--kc-white);
  background: var(--kc-black);
  font: 400 .875rem/1.5 var(--kc-utility);
}

/* The original server-rendered pages: a quiet, useful catalogue without JavaScript. */
body[data-page=archive] { --sand: var(--kc-porcelain); --white: var(--kc-white); --line: var(--kc-rule); }
body[data-page=archive] .archive-container {
  width: min(1280px, calc(100% - 2 * var(--kc-gutter)));
  padding: 24px 0 56px;
  margin-inline: auto;
  color: var(--kc-ink);
}
body[data-page=archive] .archive-container .page-heading { max-width: none; padding: 24px 0 32px; }
body[data-page=archive] .archive-container .page-heading h1 {
  max-width: 20ch;
  font: 600 clamp(3rem, 5.4vw, 5rem)/1.02 var(--kc-display);
  letter-spacing: -.025em;
  margin: 12px 0 16px;
}
body[data-page=archive] .archive-container .page-heading p { font: 400 1.125rem/1.6 var(--kc-reading); color: var(--kc-muted); max-width: 54ch; }
body[data-page=archive] .archive-container .small-label,
body[data-page=archive] .archive-caption-label {
  font: 600 .75rem/1.5 var(--kc-utility);
  letter-spacing: .1em;
  color: var(--kc-turquoise);
}
body[data-page=archive] .back-link { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; font: 600 .9375rem/1.5 var(--kc-utility); color: var(--kc-turquoise); margin: 0; }
body[data-page=archive] .more-work-index { gap: 32px; margin: 4px 0 40px; }
body[data-page=archive] .more-work-card { display: block; padding-bottom: 20px; border-bottom: 1px solid var(--kc-rule); }
body[data-page=archive] .more-work-card img {
  height: clamp(260px, 28vw, 380px);
  width: 100%;
  object-fit: contain;
  object-position: center;
  background: var(--kc-porcelain);
  padding: 18px;
}
body[data-page=archive] .more-work-card h2 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin: 18px 0 0;
  font: 600 clamp(2rem, 3vw, 2.75rem)/1.05 var(--kc-display);
  letter-spacing: -.02em;
}
body[data-page=archive] .more-work-card h2 span { font: 400 1.25rem/1 var(--kc-utility); color: var(--kc-turquoise); }
body[data-page=archive] .more-work-card:hover h2 { color: var(--kc-turquoise); text-underline-offset: .12em; }
body[data-page=archive] .more-work-links { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px 32px; padding: 16px 0; }
body[data-page=archive] .more-work-links :is(a, summary),
body[data-page=archive] .more-work-inquiry a {
  font: 600 1rem/1.5 var(--kc-utility);
  color: var(--kc-turquoise);
  min-height: 44px;
  padding-block: 10px;
}
body[data-page=archive] .more-work-links details { min-width: 0; }
body[data-page=archive] .more-work-links summary { padding-left: 2px; color: var(--kc-ink); }
body[data-page=archive] .more-work-links details a { font-weight: 400; }
body[data-page=archive] .more-work-inquiry { margin-top: 32px; padding: 28px 0 0; border-top: 1px solid var(--kc-rule); gap: 12px 32px; }
body[data-page=archive] .more-work-inquiry p { font: 500 clamp(1.625rem, 2.7vw, 2.25rem)/1.25 var(--kc-display); font-style: italic; margin-right: auto; }
body[data-page=archive] .gallery-note,
body[data-page=archive] .archive-note {
  max-width: 76ch;
  margin: 0 0 32px;
  padding: 16px 20px;
  background: var(--kc-porcelain);
  border: 0;
  border-left: 3px solid var(--kc-turquoise);
  color: var(--kc-ink);
  font: 400 1rem/1.6 var(--kc-reading);
}
body[data-page=archive] .gallery-note a,
body[data-page=archive] .archive-note a { color: var(--kc-turquoise); }
body[data-page=archive] .archive-note p { margin: 0; color: var(--kc-ink); font: inherit; }
body[data-page=archive] .archive-note p + p { margin-top: 12px; }
body[data-page=archive] .archive-note strong { color: var(--kc-turquoise); font: 600 .8125rem/1.5 var(--kc-utility); letter-spacing: .08em; }
body[data-page=archive] .gallery-directory { border-top: 1px solid var(--kc-ink); }
body[data-page=archive] .gallery-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
  gap: 32px;
  padding: 28px 0;
  border-bottom: 1px solid var(--kc-rule);
}
body[data-page=archive] .gallery-row h2 { font: 600 clamp(1.75rem, 2.4vw, 2.25rem)/1.12 var(--kc-display); letter-spacing: -.015em; }
body[data-page=archive] .gallery-row p { font: 400 1.0625rem/1.65 var(--kc-utility); color: var(--kc-ink); white-space: pre-line; overflow-wrap: anywhere; }
body[data-page=archive] .archive-text { max-width: 68ch; margin: 28px 0 36px; }
body[data-page=archive] .archive-text p,
body[data-page=archive] .archive-timeline p {
  font: 400 1.0625rem/1.75 var(--kc-reading);
  color: var(--kc-ink);
}
body[data-page=archive] .archive-text h2,
body[data-page=archive] .archive-section-heading { font: 600 clamp(2rem, 3.5vw, 3.25rem)/1.08 var(--kc-display); letter-spacing: -.02em; }
body[data-page=archive] .archive-gallery { gap: 36px 24px; margin: 24px 0 48px; }
body[data-page=archive] .archive-photo-link { background: var(--kc-porcelain); min-height: 0; padding: 18px; }
body[data-page=archive] .archive-photo-link img { height: clamp(240px, 27vw, 370px); object-fit: contain; width: 100%; }
body[data-page=archive] .archive-figure figcaption { color: var(--kc-muted); font: 400 .9375rem/1.65 var(--kc-utility); padding: 14px 0 0; overflow-wrap: anywhere; }
body[data-page=archive] .archive-figure-story { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 40px; padding-top: 28px; border-top: 1px solid var(--kc-rule); }
body[data-page=archive] .archive-figure-story .archive-photo-link img { height: auto; max-height: 600px; }
body[data-page=archive] .archive-figure-story figcaption { font: 400 1.0625rem/1.75 var(--kc-reading); color: var(--kc-ink); padding: 0; }
body[data-page=archive] .archive-caption-label { display: block; margin-bottom: 8px; }
body[data-page=archive] .archive-small-note,
body[data-page=archive] .archive-provenance { font: 400 .875rem/1.6 var(--kc-utility); color: var(--kc-muted); overflow-wrap: anywhere; }
body[data-page=archive] .archive-timeline { max-width: 1040px; margin: 32px 0 48px; }
body[data-page=archive] .archive-timeline section { grid-template-columns: minmax(0, 190px) minmax(0, 1fr); gap: 40px; padding: 24px 0; border-top: 1px solid var(--kc-rule); }
body[data-page=archive] .archive-timeline h2 { font: 600 1.125rem/1.5 var(--kc-utility); letter-spacing: 0; color: var(--kc-turquoise); font-variant-numeric: tabular-nums; }
body[data-page=archive] .archive-quote { max-width: 64ch; margin: 32px 0; padding: 24px 0; background: transparent; border: 0; border-block: 1px solid var(--kc-rule); }
body[data-page=archive] .archive-quote p { font: 500 clamp(1.625rem, 3vw, 2.25rem)/1.35 var(--kc-display); font-style: italic; color: var(--kc-ink); }
body[data-page=archive] .archive-quote footer { font: 400 .875rem/1.5 var(--kc-utility); color: var(--kc-muted); }
body[data-page=archive] .archive-collectors { font: 400 1.0625rem/1.6 var(--kc-utility); }
body[data-page=archive] .archive-collectors li { border-color: var(--kc-rule); padding-block: 12px; }

/* Places is a photographic journal, not another uniform object catalogue. */
body[data-page=archive] .places-page .page-heading{padding:24px 0 30px}
.places-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:8px 32px;border-block:1px solid var(--kc-rule);padding:8px 0;margin-bottom:48px;font:600 .9375rem/1.4 var(--kc-utility)}
.places-navigation a{display:inline-flex;align-items:center;min-height:44px;color:var(--kc-turquoise);text-decoration:none}
.places-navigation a:hover{text-decoration:underline}
.places-navigation>span{font-weight:400;font-size:.8125rem;color:var(--kc-muted);margin-left:auto}
.places-chapter{scroll-margin-top:28px;margin-bottom:64px}
.places-chapter:focus{outline:none}
.places-chapter-heading{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:28px}
.places-number{display:block;font:400 .75rem/1.4 var(--kc-utility);color:var(--kc-muted);margin-bottom:10px}
.places-chapter h2{font:600 clamp(2.25rem,4vw,3.75rem)/1 var(--kc-display);letter-spacing:-.025em}
.places-introduction{max-width:58ch;font:400 1rem/1.6 var(--kc-reading);color:var(--kc-muted)}
.places-introduction p{white-space:pre-line}
.places-introduction a{color:var(--kc-turquoise)}
body[data-page=archive] .places-introduction .archive-small-note{margin:10px 0 0;font-size:.8125rem}
.places-spread{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:24px 32px;align-items:center}
.places-spread>.archive-figure:first-child{grid-row:1/3;grid-column:1}
.places-spread>.archive-figure:not(:first-child){grid-column:2}
body[data-page=archive] .places-spread .archive-photo-link{padding:0;background:transparent;display:block}
body[data-page=archive] .places-spread .archive-photo-link img{width:100%;height:auto;max-height:540px;object-fit:contain}
body[data-page=archive] .places-spread>.archive-figure:not(:first-child) img{max-height:245px}
.places-contact-sheet{border-bottom:1px solid var(--kc-rule);margin-top:24px;padding-bottom:8px}
.places-contact-sheet summary{cursor:pointer;min-height:48px;padding:12px 0;font:600 .9375rem/1.5 var(--kc-utility);color:var(--kc-turquoise)}
.places-contact-sheet summary span{font-weight:400;color:var(--kc-muted);margin-left:12px}
body[data-page=archive] .places-contact-sheet .archive-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 22px;margin:24px 0}
body[data-page=archive] .places-contact-sheet .archive-photo-link{padding:0;background:transparent}
body[data-page=archive] .places-contact-sheet .archive-photo-link img{height:220px}
body[data-page=archive] .places-contact-sheet .archive-figure-story{grid-column:span 2;display:block;border:0;padding:0}
body[data-page=archive] .places-contact-sheet figcaption{padding-top:12px;font:400 .875rem/1.5 var(--kc-utility)}
@media(max-width:760px){
  .places-navigation{gap:0 22px;margin-bottom:32px}.places-navigation>span{width:100%;margin:6px 0 10px}
  .places-chapter{margin-bottom:48px}.places-chapter-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px}
  .places-spread{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;align-items:start}
  .places-spread>.archive-figure:first-child{grid-column:1/-1;grid-row:auto}
  .places-spread>.archive-figure:not(:first-child){grid-column:auto}
  body[data-page=archive] .places-spread>.archive-figure:not(:first-child) img{height:220px;max-height:none}
  body[data-page=archive] .places-contact-sheet .archive-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
  body[data-page=archive] .places-contact-sheet .archive-photo-link img{height:190px}
}
@media print{.places-contact-sheet>.archive-gallery{display:grid!important}.places-navigation{display:none}.places-chapter{break-inside:avoid}}

/* Scope interaction improvements to these surfaces, including the native textarea. */
.about-page :is(a, button):focus-visible,
.contact-scene :is(a, button, input, textarea):focus-visible,
body[data-page=archive] main :is(a, summary):focus-visible { outline: 3px solid var(--kc-turquoise); outline-offset: 5px; }
.contact-scene .contact-landscape-caption:focus-visible { outline-color: var(--kc-turquoise-light); }

@media (max-width: 900px) {
  .contact-scene .contact-form, .contact-scene .contact-card { padding: 28px; }
  .contact-scene .contact-details { padding: 32px 26px; }
  .contact-scene .contact-layout { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); }
  .contact-scene .contact-form fieldset { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .about-page .page-heading { display: block; padding-block: 32px; }
  .about-page .page-heading > .eyebrow { margin-bottom: 14px; }
  .about-page .about-layout { grid-template-columns: 1fr; gap: 32px; }
  .about-page .about-aside { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); align-items: start; gap: 0 18px; }
  .about-page .artist-portrait { grid-column: 1; grid-row: 1; }
  .about-page .portrait-caption { grid-column: 1; grid-row: 2; }
  .about-page .about-porch { grid-column: 2; grid-row: 1 / 3; width: 100%; margin: 28px 0 0; }
  .about-page .biography { max-width: none; }
  .contact-scene .contact-page { grid-template-columns: minmax(0, 1fr) 88px; gap: 0 20px; }
  .contact-scene .page-heading { padding-bottom: 28px; }
  .contact-scene .page-heading .eyebrow { font-size: .75rem; }
  .contact-scene .page-heading h1 { font-size: clamp(2.5rem, 9vw, 3.6rem); }
  .contact-scene .page-heading p { font-size: 1rem; }
  .contact-scene .contact-layout { grid-template-columns: 1fr; }
  .contact-scene .contact-form, .contact-scene .contact-card { padding: 24px; }
  .contact-scene .contact-details { border-left: 0; border-top: 1px solid var(--kc-rule); padding: 28px 24px; }
  .contact-scene .contact-landscape-caption { margin-top: 96px; }
  body[data-page=archive] .archive-container { padding-top: 16px; }
  body[data-page=archive] .more-work-index { grid-template-columns: 1fr; gap: 24px; }
  body[data-page=archive] .more-work-card { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: center; gap: 22px; padding-bottom: 24px; }
  body[data-page=archive] .more-work-card img { height: 220px; padding: 10px; }
  body[data-page=archive] .more-work-card h2 { font-size: clamp(1.625rem, 5vw, 2.5rem); margin: 0; gap: 8px; }
  body[data-page=archive] .more-work-links { grid-template-columns: 1fr; gap: 4px; }
  body[data-page=archive] .more-work-inquiry p { width: 100%; }
  body[data-page=archive] .gallery-row { grid-template-columns: 1fr; gap: 12px; padding-block: 24px; }
  body[data-page=archive] .archive-gallery { gap: 28px 16px; }
  body[data-page=archive] .archive-photo-link { padding: 10px; }
  body[data-page=archive] .archive-photo-link img { height: clamp(170px, 44vw, 300px); }
  body[data-page=archive] .archive-figure-story { grid-template-columns: 1fr; gap: 20px; }
  body[data-page=archive] .archive-timeline section { grid-template-columns: 1fr; gap: 12px; }
}
@media (max-width: 420px) {
  .contact-scene .contact-page { grid-template-columns: minmax(0, 1fr) 64px; gap: 0 16px; }
  .contact-scene .contact-form,
  .contact-scene .contact-card,
  .contact-scene .contact-details { padding-inline: 20px; }
  body[data-page=archive] .more-work-card { gap: 16px; }
  body[data-page=archive] .more-work-card img { height: 190px; }
  body[data-page=archive] .more-work-card h2 { display: block; }
  body[data-page=archive] .more-work-card h2 span { display: block; margin-top: 12px; }
  body[data-page=archive] .archive-gallery { grid-template-columns: 1fr; }
  body[data-page=archive] .archive-photo-link img { height: auto; max-height: 420px; }
}
@media (prefers-reduced-motion: reduce) {
  .about-page *, .contact-scene *, body[data-page=archive] main * { transition: none; animation: none; }
}
@media print {
  .contact-scene { background: white; color: black; }
  .contact-scene .page-heading, .contact-scene .page-heading p, .contact-scene .page-heading .eyebrow { color: black; }
  .contact-scene .contact-landscape, .contact-scene::before { display: none; }
  .about-page .about-layout { display: block; }
  .about-page .about-aside { max-width: 320px; margin-bottom: 24px; }
  body[data-page=archive] .archive-figure, body[data-page=archive] .gallery-row, body[data-page=archive] .archive-timeline section { break-inside: avoid; }
}
