.studio-footer {
  --forest: #1d3025;
  --ivory: #eee5cf;
  --footer-paper: #e6e6de;
  --wash-height: clamp(72px, 7vw, 112px);
  --engraving-inset: clamp(12px, 4vw, 64px);
  --engraving-width: calc(100% - var(--engraving-inset) - var(--engraving-inset));
  color: var(--ivory);
  background: var(--forest);
}
.news-page .studio-footer { --footer-paper: var(--paper); }
.closing-print {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  color: var(--ivory);
  background: var(--forest);
}
/* The engraving is transparent ink: gaps expose the same forest as the rest
   of the footer. The spacer keeps all detail clear of the text. */
.closing-print::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: auto 0 0;
  width: var(--engraving-width);
  margin-inline: auto;
  aspect-ratio: 3 / 2;
  pointer-events: none;
  /* The irregular strokes end inside the asset; no straight edge mask. */
  background: url("/assets/illustrations/cosmic-order-scattered.webp") center bottom / 100% auto no-repeat;
}
/* Let the paper dissolve into the ink. Keep the wash behind, never over, text. */
.closing-print::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: var(--wash-height);
  pointer-events: none;
  background: var(--footer-paper);
  /* A short, eased paper edge; the SVG displaces only the decorative mask. */
  mask-image: url("/assets/footer-paper-edge.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
}
.order-engraving {
  width: var(--engraving-width);
  /* Reserve the taller spray silhouette below the contact content. */
  aspect-ratio: 2.1;
  margin: 20px auto 0;
}
.closing-content { position: relative; max-width: 1600px; margin: 0 auto; padding: calc(var(--wash-height) + 32px) var(--gutter) 0; }
.closing-wordmark { display: inline-flex; align-items: center; gap: 16px; font: 36px/1.2 Caslon, Georgia, serif; letter-spacing: -.02em; }
.closing-symbol {
  display: block;
  width: 42px;
  height: 42px;
  flex-shrink: 0;
  background: currentColor;
  mask: url("/assets/quartio-symbol.svg") center / contain no-repeat;
  -webkit-mask: url("/assets/quartio-symbol.svg") center / contain no-repeat;
}
.closing-grid { display: grid; grid-template-columns: minmax(0, 1fr) 160px 200px; gap: 58px; margin-top: 48px; }
.closing-title { margin: 0; font: 400 clamp(56px, 5.4vw, 82px)/1.04 Caslon, Georgia, serif; letter-spacing: -.025em; }
.invitation-link { display: inline-flex; align-items: center; gap: 58px; margin-top: 22px; min-height: 44px; border-bottom: 1px solid #bbb7a4; font-size: 14px; }
.invitation-link > span:last-child { font-size: 23px; }
.closing-label { margin: 8px 0 15px; font-size: 11px; font-weight: 400; text-transform: uppercase; letter-spacing: .12em; color: #c8c9b6; }
.footer-nav a { display: flex; align-items: center; width: fit-content; min-height: 40px; font-size: 14px; }
.footer-people a { display: flex; flex-direction: column; gap: 7px; width: fit-content; margin-top: 20px; font-size: 14px; line-height: 1.4; min-height: 44px; }
.person { font: 24px/1.1 Caslon, Georgia, serif; }
.footer-nav a:hover, .footer-people a:hover, .closing-colophon a:hover { text-decoration: underline; text-underline-offset: 5px; }
.invitation-link:hover { border-bottom-color: #fff; color: #fff; }
.closing-colophon { display: flex; justify-content: space-between; gap: 20px; align-items: center; max-width: 1600px; margin: 0 auto; padding: 13px var(--gutter) 24px; font-size: 11px; color: #c8c9b6; }
.closing-colophon a { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; }
@media (max-width: 1000px) {
  .closing-grid { grid-template-columns: 1fr 1fr; gap: 38px 24px; margin-top: 40px; }
  .invitation { grid-column: 1 / -1; }
  .order-engraving { margin-top: 38px; }
  .footer-people { display: grid; grid-template-columns: 1fr; }
  .footer-people .closing-label { margin-bottom: 0; }
  .footer-people a { margin-top: 16px; }
}
@media (max-width: 560px) {
  .closing-wordmark { font-size: 29px; gap: 12px; }
  .closing-symbol { width: 32px; height: 32px; }
  .closing-grid { margin-top: 42px; gap: 35px 20px; grid-template-columns: .8fr 1.2fr; }
  .closing-title { font-size: clamp(47px, 12.8vw, 66px); }
  .invitation-link { margin-top: 17px; gap: 38px; font-size: 13px; }
  .closing-label { font-size: 10px; margin-bottom: 12px; }
  .footer-nav a, .footer-people a { font-size: 12px; }
  .person { font-size: 22px; }
  .order-engraving { margin-top: 34px; }
  .closing-colophon { align-items: flex-start; gap: 0; flex-direction: column; padding: 20px var(--gutter) 16px; font-size: 11px; }
}
.studio-footer a:focus-visible, .studio-footer button:focus-visible { outline: 2px solid currentColor; outline-offset: 6px; }
.closing-links { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; }
.closing-links .analytics-settings { min-height: 44px; }
@media (max-width: 560px) {
  .closing-links { align-items: flex-start; gap: 0 24px; }
}
