/* The workshop journal's art direction, limited to the sections below the hero. */
:is(#academy, #impact, #participant-reviews, #collaborations) {
  --gallery-ink: #203d5b;
  --gallery-muted: #52667b;
  --gallery-paper: #fcfaf5;
  --gallery-border: #cfdae3;
  --gallery-blue: #e8eff9;
  --gallery-green: #e5eee7;
  --gallery-gold: #f6eacc;
  --gallery-accent: #735321;
}
html[data-theme=dark] :is(#academy, #impact, #participant-reviews, #collaborations) {
  --gallery-ink: #edf2f7;
  --gallery-muted: #b7c7d5;
  --gallery-paper: #132231;
  --gallery-border: #3c5163;
  --gallery-blue: #192f48;
  --gallery-green: #203d38;
  --gallery-gold: #433825;
  --gallery-accent: #e5c894;
}
:is(#academy, #contact) .gallery-painting {
  min-width: 0;
  margin: 0;
  padding: 9px;
  border: 1px solid var(--gallery-border);
  border-radius: 22px;
  background: var(--gallery-paper);
  box-shadow: 0 12px 30px #1b34500a;
}
:is(#academy, #contact) .gallery-painting picture { display: block; overflow: hidden; border-radius: 14px; }
:is(#academy, #contact) .gallery-painting img { display: block; width: 100%; height: auto; object-fit: cover; }
:is(#academy, #contact) .gallery-painting figcaption {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 13px 6px 6px; color: var(--gallery-muted);
  font: 400 12px/1.6 DM, sans-serif;
}
:is(#academy, #contact) .gallery-painting figcaption > span:last-child {
  color: var(--gallery-accent); font: italic 16px/1.5 Cormorant, Georgia, serif;
  white-space: nowrap;
}
#academy .academy-message > .eyebrow { color: var(--gallery-accent); }
#academy .academy-message h2 { font-size: clamp(38px, 4.4vw, 62px); }
html[lang=ar] #academy .academy-message h2 { font-size: clamp(36px, 4vw, 54px); line-height: 1.5; }
#academy .academy-definition { color: var(--gallery-muted); max-width: 520px; margin-block: 20px 26px; }
#academy .academy-painting img { aspect-ratio: 1.95; object-position: center 63%; }
#academy .track-overview li {
  border-color: var(--gallery-border); background: var(--gallery-blue);
  box-shadow: 0 10px 26px #203d5b08; border-radius: 22px;
}
#academy .track-overview li:nth-child(2) { background: var(--gallery-paper); }
#academy .track-overview li:nth-child(3) { background: var(--gallery-green); }
#academy .track-overview li:nth-child(4) { background: var(--gallery-gold); }
#academy .track-overview li::after { opacity: .09; }
#academy .track-overview p { color: var(--gallery-muted); }
#academy .track-overview h3 { color: var(--gallery-ink) !important; }
#academy .track-token { box-shadow: none; }
#impact .eyebrow { color: var(--gallery-accent); }
#impact .impact-stat { border-color: var(--gallery-border); background: var(--gallery-paper); box-shadow: 0 10px 26px #203d5b08; }
#impact .impact-stat:nth-child(2), #impact .impact-stat:nth-child(5) { background: var(--gallery-blue); }
#impact .impact-stat:nth-child(3) { background: var(--gallery-green); }
#impact .impact-stat:nth-child(4) { background: var(--gallery-gold); }
#impact .impact-stat dd { color: var(--gallery-ink) !important; }
#impact .impact-stat dt { color: var(--gallery-muted) !important; }
#impact .impact-stat .number-plus { color: var(--gallery-accent); }
#collaborations .collaboration-heading > .eyebrow { color: var(--gallery-accent); }
/* Frames only: keep the original moving DOM/WebGL geometry and gestures. */
#collaborations .signature-gallery .collaborator > a {
  border: 1px solid var(--gallery-border); border-radius: 23px;
  background: var(--gallery-paper); box-shadow: 0 10px 24px #203d5b08;
}
#collaborations .signature-gallery .collaborator-safira > a { background: var(--gallery-green); }
#collaborations .signature-gallery .signature-identity { border-top: 1px solid var(--gallery-border); }
#collaborations .signature-gallery .signature-name { color: var(--gallery-ink) !important; }
#collaborations .signature-gallery .collaborator > a:focus-visible { outline: 3px solid #5379ae; outline-offset: -4px; }
#contact.partner-invitation {
  display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 32px; align-items: center; direction: ltr;
  max-width: 1240px; margin: 64px auto 0; padding: 12px;
  border: 1px solid var(--gallery-border); border-radius: 26px;
  color: var(--gallery-ink); background: var(--gallery-paper);
  box-shadow: 0 14px 36px #203d5b0c;
}
#contact .contact-painting { padding: 0; border: 0; border-radius: 17px; box-shadow: none; }
#contact .contact-painting picture { border-radius: 17px; }
#contact .contact-painting img { aspect-ratio: 4/3; }
#contact .contact-painting figcaption { padding: 13px 8px 5px; }
#contact .gallery-contact-content { padding: 24px 30px 24px 0; min-width: 0; direction: ltr; }
#contact .gallery-contact-content .eyebrow { color: var(--gallery-accent) !important; margin: 0 0 15px; }
#contact .gallery-contact-content h3 { color: var(--gallery-ink) !important; font-size: clamp(32px, 3.3vw, 46px); line-height: 1.25; margin: 0 0 16px; }
#contact .gallery-contact-content p:not(.eyebrow) { color: var(--gallery-muted) !important; font-size: 16px; line-height: 1.85; margin: 0; }
#contact .partner-actions { align-items: flex-start; gap: 14px; margin-top: 26px; }
#contact .partner-link { background: #315989; color: #fff; border: 1px solid #315989; border-radius: 13px; min-height: 48px; box-shadow: none; }
#contact .partner-link:hover { background: #244775; color: #fff; }
#contact .partner-link:focus-visible { outline: 3px solid #658ac0; outline-offset: 4px; }
#contact .partner-email { color: var(--gallery-muted) !important; font-size: 12px; max-width: 100%; overflow-wrap: anywhere; }
html[lang=ar] :is(#academy, #contact) .gallery-painting figcaption { direction: rtl; font: 500 15px/1.6 ThmanyahText, serif; }
html[lang=ar] #contact .gallery-contact-content { direction: rtl; }
html[lang=ar] #contact .gallery-contact-content h3 { font-size: clamp(31px, 3.4vw, 46px); line-height: 1.5; }
html[lang=ar] #contact .gallery-contact-content p:not(.eyebrow) { font: 500 18px/1.8 ThmanyahText, serif; }
@media (max-width: 1050px) {
  #contact.partner-invitation { gap: 24px; }
  #contact .gallery-contact-content { padding-inline-end: 16px; }
  :is(#academy, #contact) .gallery-painting figcaption { flex-wrap: wrap; gap: 4px 10px; }
}
@media (max-width: 760px) {
  #academy .academy-message { max-width: 560px; }
  #academy .academy-definition { margin-bottom: 24px; }
  #academy .academy-painting { margin-bottom: 10px; }
  #academy .academy-painting img { aspect-ratio: 1.8; }
  #contact.partner-invitation { grid-template-columns: minmax(0,1fr); gap: 4px; margin-top: 40px; padding: 9px; border-radius: 23px; }
  #contact .contact-painting img { aspect-ratio: 1.55; }
  #contact .gallery-contact-content { padding: 25px 15px 22px; }
  #contact .gallery-contact-content h3, html[lang=ar] #contact .gallery-contact-content h3 { font-size: 33px; }
  #contact .partner-actions { align-items: stretch; }
  #contact .partner-link { text-align: center; justify-content: center; }
  #contact .partner-email { text-align: center; }
  :is(#academy, #contact) .gallery-painting figcaption { font-size: 12px; }
  html[lang=ar] :is(#academy, #contact) .gallery-painting figcaption { font-size: 14px; }
}
