/* Shared feedback for the public pages; camera transforms stay independent. */
:root{--feedback-ease:cubic-bezier(.22,.75,.25,1);--feedback-spring:cubic-bezier(.2,.8,.3,1.15)}
body[data-page="scroll"] #journey .chapter:not(.cover-section,.billboard) .chapter-copy{
  transition:opacity 200ms ease-out,translate 300ms var(--feedback-spring),border-color 220ms ease,box-shadow 300ms var(--feedback-ease);
}
:is(.community-card,.interactive-panel,.reconstruction-panel,.clip-item){
  transition:translate 300ms var(--feedback-spring),box-shadow 300ms var(--feedback-ease),border-color 220ms ease;
}
.interactive-image img,.footer-logo img,.wordmark img{
  transition:scale 350ms var(--feedback-ease),filter 250ms ease;
}
:is(.chapter-copy,.community-card-copy,.reconstruction-copy,.guide-questions,.footer-links,.footer-meta,.gallery-intro,.clip-item) a{
  transition:color 200ms ease,text-decoration-color 200ms ease,translate 250ms var(--feedback-ease),background-color 200ms ease;
  text-underline-offset:4px;
}
:is(.chapter-copy,.community-card-copy,.reconstruction-copy,.guide-questions,.footer-links,.footer-meta,.clip-item) a :is(svg,span[aria-hidden="true"]){
  transition:translate 250ms var(--feedback-spring);
}
:is(.memorial-menu,.dedication-toolbar,.dedication-filters) :is(input:not([type=range]),select),#dedications .name-search-box{
  transition:border-color 200ms ease,box-shadow 200ms ease,background-color 200ms ease;
}
.memorial-menu :is(.mn-search-submit,.mn-clear,.mn-more,.mn-reset,.mn-account-submit,.mn-account-sign-out,.mn-account-tabs button),
#dedications :is(button,select),.dedication-app-dialog :is(button,a),#plaque-lightbox button,
.after-dedications .memorial-pill,#remembrance-motion,.nf-button,body[data-page="gallery"] :is(button,.button){
  transition:translate 220ms var(--feedback-spring),scale 160ms ease,background-color 200ms ease,color 200ms ease,border-color 200ms ease,box-shadow 220ms ease;
}
.memorial-menu :is(.mn-section-link,.memorial-menu-result,.mn-browse-all,.mn-feature-link,.mn-account-recover){
  transition:translate 240ms var(--feedback-spring),background-color 200ms ease,border-color 200ms ease,color 200ms ease;
}
.memorial-menu :is(.mn-section-link,.memorial-menu-result)>.mn-icon{transition:translate 240ms var(--feedback-spring),color 200ms ease}
#dedications .plaque-preview-button svg{transition:rotate 250ms var(--feedback-spring)}
.guide-questions details{transition:background-color 220ms ease,box-shadow 250ms ease}
.guide-questions summary{transition:color 200ms ease,background-color 200ms ease;touch-action:manipulation}
.guide-questions summary>span{transition:transform 380ms var(--feedback-spring),color 200ms ease}
.guide-questions details[data-expanded="false"] summary>span{transform:rotate(0)}
.guide-questions details[data-expanded="true"] summary>span{transform:rotate(180deg)}
.guide-questions details:focus-within{box-shadow:inset 0 0 0 1px #9c774958}

@media(hover:hover) and (pointer:fine){
  body[data-page="scroll"] #journey .chapter:not(.cover-section,.billboard) .chapter-copy:hover{translate:0 -5px}
  :is(.community-card,.interactive-panel,.reconstruction-panel,.clip-item):hover{translate:0 -5px;box-shadow:0 17px 35px #19160f18}
  .interactive-panel:hover .interactive-image img{scale:1.025}
  :is(.footer-logo,.wordmark):hover img{scale:1.025;filter:brightness(1.08)}
  :is(.chapter-copy,.community-card-copy,.reconstruction-copy,.guide-questions,.footer-links,.footer-meta,.clip-item) a:hover{
    text-decoration:underline;text-decoration-thickness:1px;
  }
  .footer-meta a.footer-makers:hover{text-decoration:none}
  :is(.chapter-copy,.community-card-copy,.reconstruction-copy,.guide-questions,.footer-links,.clip-item) a:hover :is(svg,span[aria-hidden="true"]){translate:2px -1px}
  .footer-links a:hover,.footer-links button:hover{translate:3px 0}
  .memorial-menu :is(.mn-section-link,.memorial-menu-result):hover{translate:0 -2px}
  .memorial-menu :is(.mn-section-link,.memorial-menu-result):hover>.mn-icon:last-child{translate:2px -1px}
  .memorial-menu :is(.mn-browse-all,.mn-feature-link,.mn-account-recover):hover{color:#f1ce9c;text-decoration:underline}
  .memorial-menu :is(.mn-search-submit,.mn-more,.mn-reset,.mn-account-submit):hover:not(:disabled),
  #dedications :is(.search-submit,#more-dedications,#filter-toggle):hover:not(:disabled),
  .nf-button:hover,body[data-page="gallery"] :is(button,.button):hover:not(:disabled){translate:0 -2px;box-shadow:0 5px 12px #0002}
  .memorial-menu .mn-account-tabs button:hover:not(:disabled){color:#f1ce9c}
  .memorial-menu .mn-clear:hover{color:#f1ce9c;scale:1.05}
  .memorial-menu :is(input:not([type=range]),select):hover:not(:disabled),#dedications :is(.name-search-box,select):hover{border-color:#b98a4a}
  #dedications :is(#clear-name,#clear-filters):hover{color:#f1ce9c}
  #dedications .plaque-preview-button:hover svg{rotate:8deg}
  #dedications input.range-handle:hover::-webkit-slider-thumb{box-shadow:0 0 0 4px #c7a06445}
  #dedications input.range-handle:hover::-moz-range-thumb{box-shadow:0 0 0 4px #c7a06445}
  .guide-questions details:hover{background:#d8d2c7;box-shadow:0 6px 18px #3025190c}
  .guide-questions summary:hover{color:#79511f}
  #remembrance-motion:hover{translate:0 -2px}
  .dedication-app-close:hover{rotate:6deg}
}

/* Press feedback also works on touch, without persistent hover displacement. */
.memorial-menu :is(button,.mn-account-submit):not([class*="cl-"]):active:not(:disabled),
#dedications button:active:not(:disabled),.dedication-app-dialog button:active:not(:disabled),#plaque-lightbox button:active:not(:disabled),
.after-dedications .memorial-pill:active,#remembrance-motion:active,.nf-button:active,body[data-page="gallery"] :is(button,.button):active:not(:disabled){
  translate:0 1px;scale:.98;
}
.guide-questions summary:active{background:#b98a4a16}
.section-marker:active .section-marker-tick{opacity:1;scale:.85}
.guide-questions a:focus-visible,.footer-links a:focus-visible,.footer-links button:focus-visible{ text-decoration:underline }
:is(.memorial-menu button.mn-search-submit,.memorial-account .mn-account-submit,.memorial-account .mn-account-edit:hover,.after-dedications .memorial-pill,#dedications .search-submit,#dedications .plaque-action,#plaque-lightbox .lightbox-dedication,.clip-play:hover){color:#000}
:is(.memorial-menu button.mn-search-submit,.memorial-account .mn-account-submit,.after-dedications .memorial-pill,#dedications .search-submit,#dedications .plaque-action,#plaque-lightbox .lightbox-dedication) :is(svg,span,.mn-icon){color:#000}

@media(prefers-reduced-motion:reduce){
  body[data-page="scroll"] #journey .chapter:not(.cover-section,.billboard) .chapter-copy,
  :is(.community-card,.interactive-panel,.reconstruction-panel,.clip-item,.wordmark img,.footer-logo img,.interactive-image img),
  .memorial-menu :is(a,button,input,select,.mn-icon),#dedications :is(button,select,.name-search-box,svg),
  :is(.chapter-copy,.community-card-copy,.reconstruction-copy,.guide-questions,.footer-links,.footer-meta,.clip-item) :is(a,svg,span[aria-hidden="true"]),
  .guide-questions :is(details,summary,summary>span),.dedication-app-dialog :is(button,a),#plaque-lightbox button,
  .after-dedications .memorial-pill,#remembrance-motion,.nf-button,body[data-page="gallery"] :is(button,.button),.section-marker-tick{
    transition:none!important;translate:none!important;scale:none!important;rotate:none!important;
  }
}
