/* Interaction feedback is shared by the reading, ministry and project pages. */
.header-inner nav a,.project-jump a{position:relative}
.header-inner nav a:after,.project-jump a:after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.header-inner nav a:hover:after,.header-inner nav a:focus-visible:after,.project-jump a:hover:after,.project-jump a:focus-visible:after{transform:scaleX(1)}
.button,.study-card,.credential-list>li,.model-choice,.model-controls button,.lightbox-controls button,.lightbox-close{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,border-color .25s ease}
.button svg,.quiet-link svg,.study-card .text-link svg,.chapter-row .row-arrow svg{transition:transform .25s ease}
.ministry-photo-frame{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.ministry-photo-frame img{transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.ministry-photo:focus-visible{outline:2px solid var(--olive);outline-offset:7px;border-radius:5px}
.ministry-photo:focus-visible .ministry-photo-frame{border-color:var(--olive);box-shadow:0 0 0 3px var(--olive-soft)}
.button:active,.model-choice:active,.lightbox-controls button:active{transform:scale(.98)}
@media(hover:hover) and (pointer:fine){
 .button:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(35,26,22,.12)}
 .button:hover svg,.quiet-link:hover svg,.study-card:hover .text-link svg,.chapter-row:hover .row-arrow svg{transform:translateX(4px)}
 .study-card:hover{transform:translateY(-5px)}
 .credential-list>li:hover{transform:translateX(5px)}
 .ministry-photo:hover .ministry-photo-frame{transform:translateY(-4px);box-shadow:0 12px 28px rgba(35,26,22,.14)}
 .ministry-photo:hover img{transform:scale(1.035)}
 .model-choice:hover,.model-controls button:hover,.lightbox-controls button:hover,.lightbox-close:hover{transform:translateY(-2px);border-color:var(--olive)}
}
@media(prefers-reduced-motion:no-preference){
 .motion-arrive{animation:pwg-arrive .65s cubic-bezier(.2,.7,.2,1) both}
 #ministry-lightbox[open],#project-lightbox[open]{animation:pwg-dialog .24s ease-out}
 #ministry-lightbox[open]::backdrop,#project-lightbox[open]::backdrop{animation:pwg-backdrop .24s ease-out}
 @keyframes pwg-arrive{from{opacity:.15;translate:0 20px}to{opacity:1;translate:0 0}}
 @keyframes pwg-dialog{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
 @keyframes pwg-backdrop{from{opacity:0}to{opacity:1}}
}
@media(prefers-reduced-motion:reduce){
 .button:active,.model-choice:active,.lightbox-controls button:active,.button:hover,.study-card:hover,.credential-list>li:hover,.ministry-photo:hover .ministry-photo-frame,.ministry-photo:hover img,.model-choice:hover,.model-controls button:hover,.lightbox-controls button:hover,.lightbox-close:hover,.button:hover svg,.quiet-link:hover svg,.study-card:hover .text-link svg,.chapter-row:hover .row-arrow svg{transform:none}
 .motion-arrive{opacity:1;translate:none;animation:none}
}
@media print{.motion-arrive{opacity:1!important;translate:none!important;animation:none!important}}
