/* Cards Almanac source mechanics, adapted only to Grendesign card content.
 * The active stack retains 46vh between-card pacing and a real 66vh tail.
 * This file is deliberately last in the service page stylesheet manifest. */
.gren-release .gsg .gren-almanac{position:relative;display:block;overflow:visible;padding-bottom:0;scroll-snap-type:none}
.gren-release .gsg .gren-almanac>.gren-almanac-card{position:relative;margin:0 0 24px!important;transform-origin:50% 0;scroll-snap-align:none}
.gren-release .gsg .gren-almanac>.gren-almanac-tail{display:none!important}
.gren-release .gsg .gren-almanac.gren-almanac-active>.gren-almanac-card{position:sticky!important;top:var(--gren-stack-top,88px)!important;margin-bottom:46vh!important;align-self:start;will-change:transform,filter}
/* The tail follows the articles, so :last-child cannot select the final card.
 * Remove only its unused inter-card margin. The unchanged tail still lets the
 * last card rise and rest before the next content follows the finished stack. */
.gren-release .gsg .gren-almanac.gren-almanac-active>.gren-almanac-card:where(:last-of-type){margin-bottom:0!important}
.gren-release .gsg .gren-almanac.gren-almanac-active>.gren-almanac-tail{display:block!important;height:clamp(52vh,66vh,74vh);pointer-events:none}
/* Focus must never raise an earlier card above later cards. The controller's
 * ascending 10+i order remains authoritative after closing an image viewer. */
.gren-release .gsg .gren-almanac>.gren-almanac-card,
.gren-release .gsg .gren-almanac>.gren-almanac-card:focus-within{z-index:var(--gren-stack-z,10)!important}
.gren-release .gsg .gren-almanac>.gren-almanac-card:focus-within{filter:var(--gren-stack-brightness,brightness(1))!important}
.gren-release .gsg .gren-almanac-card :is(a,button):focus-visible{outline:2px solid #715600;outline-offset:4px}
/* Original arrival reveal and reverse-scroll re-arm; content is visible before
 * JavaScript enables the effect and in every static/accessibility fallback. */
.gren-release .gsg .gren-almanac-active>.gren-almanac-card :is(.rs-journey-copy,.gsg-social-journey-copy,.ggp-stack-body,.ggp-stack-foot){transition:opacity .6s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.gren-release .gsg .gren-almanac-active>.gren-almanac-card:not(.-in) :is(.rs-journey-copy,.gsg-social-journey-copy,.ggp-stack-body,.ggp-stack-foot){opacity:0;transform:translateY(20px)}
.gren-release .gsg .gren-almanac-active>.gren-almanac-card.-in :is(.rs-journey-copy,.gsg-social-journey-copy,.ggp-stack-body){opacity:1;transform:none;transition-delay:.2s}
.gren-release .gsg .gren-almanac-active>.gren-almanac-card.-in .ggp-stack-foot{opacity:1;transform:none;transition-delay:.3s}
.gren-release .gsg .gren-almanac-active>.gren-almanac-card>a>img{transform:scale(1.12);transform-origin:center;transition:transform 1.15s cubic-bezier(.2,.7,.2,1);will-change:transform}
.gren-release .gsg .gren-almanac-active>.gren-almanac-card.-in>a>img{transform:scale(1)}
.gren-release .gsg .gren-almanac:not(.gren-almanac-active) :is(.rs-journey-copy,.gsg-social-journey-copy,.ggp-stack-body,.ggp-stack-foot){opacity:1!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.gren-release .gsg .gren-almanac[data-stack-controller]>.gren-almanac-card{position:relative!important;top:auto!important;margin-bottom:24px!important;transform:none!important;filter:none!important;will-change:auto}.gren-release .gsg .gren-almanac[data-stack-controller]>.gren-almanac-tail{display:none!important}.gren-release .gsg .gren-almanac :is(.rs-journey-copy,.gsg-social-journey-copy,.ggp-stack-body,.ggp-stack-foot,img){opacity:1!important;transform:none!important;transition:none!important}}
@media print{.gren-release .gsg .gren-almanac[data-stack-controller]>.gren-almanac-card{position:relative!important;top:auto!important;margin-bottom:24px!important;transform:none!important;filter:none!important;will-change:auto;break-inside:avoid}.gren-release .gsg .gren-almanac[data-stack-controller]>.gren-almanac-tail{display:none!important}.gren-release .gsg .gren-almanac :is(.rs-journey-copy,.gsg-social-journey-copy,.ggp-stack-body,.ggp-stack-foot,img){opacity:1!important;transform:none!important;transition:none!important}}
