.artist-editorial {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(36px, 7vw, 115px);
  align-items: center;
  padding: clamp(64px, 8vw, 120px) clamp(24px, 8vw, 132px);
  background: radial-gradient(ellipse at 15% 75%, #41232b36, transparent 55%), #111012;
  border-block: 1px solid #d4af701c;
  overflow: hidden;
}
.artist-portrait { position: relative; padding: 0 24px 28px 0; min-width: 0; }
.artist-photo-frame { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 45% 45% 3px 3px; background: #30272a; }
.artist-photo-frame::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 65%, #100b0bce); pointer-events: none; }
.artist-photo-frame img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }
.artist-photo-label { position: absolute; z-index: 1; bottom: 24px; left: 24px; right: 24px; color: #f1e7d4; font: italic 18px/1.5 var(--serif); }
.artist-margin-note { display: block; margin-top: 16px; color: #b9a991; font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.artist-ribbon { position: absolute; top: -18px; right: -20px; width: 110%; height: 108%; pointer-events: none; stroke: #d4af7066; stroke-width: .8; }
.artist-story { position: relative; min-width: 0; }
.artist-story .eyebrow, .access-story .eyebrow { line-height: 1.8; }
.artist-story h2, .access-story h2 { margin: 24px 0; color: #f6eee2; font: 500 clamp(46px, 5.3vw, 80px)/1.06 var(--serif); letter-spacing: -.045em; overflow-wrap: anywhere; }
.artist-story h2 em, .access-story h2 em { color: #dfc18e; font-weight: 500; }
.artist-introduction { margin: 0 0 22px; color: #e7ddd0; font: 400 clamp(19px, 2vw, 25px)/1.5 var(--serif); }
.artist-biography { max-width: 46ch; margin: 0; color: #aaa3a6; font-size: 14px; line-height: 1.95; overflow-wrap: anywhere; }
.artist-disciplines { display: flex; flex-wrap: wrap; gap: 9px 20px; margin: 27px 0 32px; padding-top: 22px; border-top: 1px solid #d4af7029; color: #c9b58f; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }
.editorial-link { display: inline-flex; align-items: center; gap: 26px; padding: 12px 0; border-bottom: 1px solid #d4af7080; color: #e8cfa5; font-size: 13px; line-height: 1.6; }
.editorial-link span { display: grid; place-items: center; flex: 0 0 34px; height: 34px; border: 1px solid #d4af7040; border-radius: 50%; font-size: 18px; }
.editorial-link:hover { color: #fff1d9; border-color: #fff1d9; }
.access-editorial {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  position: relative;
  isolation: isolate;
  align-items: center;
  gap: 48px;
  overflow: hidden;
  padding: clamp(64px, 7vw, 108px) clamp(24px, 8vw, 132px);
  border-block: 1px solid #d4af7030;
  background: radial-gradient(ellipse at 80% 45%, #6f3b4229, transparent 56%), linear-gradient(115deg, #20151a, #100f12 75%);
}
.access-ribbon { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; stroke: #d4af7028; stroke-width: .7; pointer-events: none; }
.access-story { min-width: 0; }
.access-story > p:not(.eyebrow):not(.access-note) { max-width: 46ch; margin: 0 0 27px; color: #bdb3b7; font-size: 14px; line-height: 1.9; }
.access-price { display: grid; gap: 7px; justify-items: start; margin: 0 0 29px; padding-left: 21px; border-left: 1px solid #d4af7070; }
.access-price > span:first-child { color: #e0d2b7; font-size: 11px; letter-spacing: .13em; text-transform: uppercase; }
.access-price strong { color: #f4e3c3; font: 500 clamp(30px, 3vw, 43px)/1.25 var(--serif); overflow-wrap: anywhere; max-width: 100%; }
.access-price strong small { font: 500 13px var(--sans); letter-spacing: .07em; }
.access-price > span:last-child { color: #a99a9d; font-size: 11px; }
.access-story .button { gap: 38px; min-height: 48px; }
.access-story .access-note { margin: 16px 0 0; color: #a99a9d; font-size: 11px; line-height: 1.8; }
.access-art { position: relative; display: grid; place-items: center; min-width: 0; min-height: 420px; }
.access-medallion {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(220px, 24vw, 340px);
  aspect-ratio: 1;
  border: 1px solid #c6a26a;
  border-radius: 50%;
  outline: 1px solid #d4af703a;
  outline-offset: 10px;
  color: #e5c38d;
  background: radial-gradient(circle at 32% 20%, #5f4932, #30241f 43%, #151215 78%);
  box-shadow: inset 0 0 0 8px #e0bc7720, inset 0 0 0 10px #d4af7040, 0 30px 80px #0007;
}
.medallion-brand { font-size: 9px; letter-spacing: .23em; }
.medallion-monogram { margin: 12px 0 0; font: 500 clamp(75px, 8vw, 112px)/1.1 var(--serif); letter-spacing: -.13em; padding-right: .13em; }
.medallion-monogram em { font-size: .75em; font-weight: 400; }
.medallion-rule { width: 34px; height: 1px; margin: 14px 0; background: #d4af7070; }
.medallion-caption { font-size: 9px; letter-spacing: .13em; text-transform: uppercase; }
.access-orbit { position: absolute; width: 100%; height: 65%; border: 1px solid #d4af7029; border-radius: 50%; pointer-events: none; }
.access-orbit-one { transform: rotate(-32deg); }
.access-orbit-two { transform: rotate(38deg); }
.access-art-caption { position: absolute; bottom: -5px; color: #bba68b; font: italic 16px/1.5 var(--serif); text-align: center; }
.artist-editorial a:focus-visible, .access-editorial a:focus-visible { outline: 2px solid var(--gold); outline-offset: 6px; }
@media (min-width: 1500px) {
  .artist-photo-frame { max-height: 650px; }
}
@media (max-width: 900px) {
  .artist-editorial, .access-editorial { gap: 34px; padding-inline: 32px; }
  .artist-story h2, .access-story h2 { font-size: 50px; }
  .artist-portrait { padding-right: 12px; }
  .access-art { min-height: 340px; }
}
@media (max-width: 650px) {
  .artist-editorial, .access-editorial { grid-template-columns: minmax(0, 1fr); gap: 30px; padding: 56px 24px; }
  .artist-portrait { max-width: 420px; width: 100%; margin-inline: auto; padding-right: 18px; }
  .artist-story h2, .access-story h2 { font-size: clamp(46px, 11vw, 65px); }
  .artist-ribbon { right: -10px; }
  .artist-biography, .access-story > p:not(.eyebrow):not(.access-note) { font-size: 13px; }
  .artist-photo-label { font-size: 16px; bottom: 18px; left: 18px; right: 18px; }
  .access-art { min-height: 310px; margin-top: 12px; }
  .access-medallion { width: 228px; }
  .medallion-monogram { font-size: 83px; }
  .access-orbit { max-width: 350px; }
}
