/* Exact supplied identity in the masthead; live sculptural mark in the hero. */
.site-header .brand img.rrr-jade-logo,
.footer-identity img.rrr-jade-logo { width: 56px; height: 56px; object-fit: contain; border-radius: 0; mix-blend-mode: normal; }
.site-header .brand { display: inline-flex; align-items: center; }
.jade-heading { width: 100%; }
.jade-stage { display: block; position: relative; width: 100%; aspect-ratio: 1.35; isolation: isolate; }
.jade-stage::before { content: ''; position: absolute; inset: 2% 3%; z-index: -1; background: radial-gradient(ellipse, rgba(28,89,57,.29), rgba(28,89,57,.08) 48%, transparent 71%); pointer-events: none; }
.jade-fallback { display: block; width: 100%; height: 100%; object-fit: contain; mask-image: radial-gradient(ellipse, #000 42%, transparent 73%); }
.jade-canvas { opacity: 0; display: block; position: absolute; inset: 0; width: 100%; height: 100%; }
.jade-stage[data-jade-ready="true"] .jade-fallback { opacity: 0; }
.jade-stage[data-jade-ready="true"] .jade-canvas { opacity: 1; }
.jade-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.zzz-mark-stage .zzz-signature { display: block; width: 62%; margin: 1.2rem auto 0; }
.zzz-mark-stage .jade-stage { width: 72%; max-width: 520px; margin-inline: auto; }
.zzz-hero { min-height: 520px; padding-top: 36px; padding-bottom: 48px; }
@media(max-width:719px) {
 .site-header .brand img.rrr-jade-logo { width: 44px; height: 44px; }
 .jade-stage { aspect-ratio: 1.2; }
 .zzz-mark-stage .jade-stage { width: 78%; max-width: 320px; }
 .zzz-hero { min-height: 0; padding-top: 24px; padding-bottom: 48px; }
 .zzz-mark-stage .zzz-signature { width: 76%; margin-top: 1rem; }
}
