/* One existing POSH silver treatment for lead/navigation CTAs.
   No sizing, typography, spacing or display changes. The gallery ID within :is
   intentionally gives this final appearance layer priority over pearl-header
   outline rules. Dynamic lead buttons get the same treatment without an observer. */
body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button){
 position:relative;isolation:isolate;overflow:hidden;
 color:#222e38;border-color:#71808e;
 background:linear-gradient(115deg,#aeb2b7 0%,#e5e7eb 18%,#fafbfc 31%,#bcc0c5 48%,#eff0f2 64%,#b5b9bf 82%,#d8dbe0 100%);
 background-size:180% 100%;background-position:0 50%;
 box-shadow:inset 0 1px #fff,0 1px 2px #00000012;
 transition:background-position 1.6s ease,box-shadow .25s ease;
}
body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button)::after{
 content:"";position:absolute;inset:-30% -60%;z-index:-1;pointer-events:none;opacity:0;
 background:linear-gradient(110deg,transparent 35%,#ffffff05 42%,#ffffffe0 49%,#ffffff12 56%,transparent 62%);
 transform:translateX(-55%);animation:none;
}
body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button):focus-visible{
 background-position:100% 50%;color:#222e38;
 box-shadow:inset 0 1px #fff,0 2px 8px #0000001c;
}
body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button):focus-visible::after{
 animation:posh-silver-action-sweep 1.8s ease-in-out 1;
}
/* Hover is separate from keyboard focus: touch devices must not retain a
   hover sweep after their finite .silver-press feedback has completed. */
@media(hover:hover){
 body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button):hover{
  background-position:100% 50%;color:#222e38;
  box-shadow:inset 0 1px #fff,0 2px 8px #0000001c;
 }
 body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button):hover::after{
  animation:posh-silver-action-sweep 1.8s ease-in-out 1;
 }
}
body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button).silver-press::after{
 animation:posh-silver-action-sweep .85s ease-in-out 1;
}
body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button):active{
 box-shadow:inset 0 1px 3px #00000030;
}
@keyframes posh-silver-action-sweep{
 0%{transform:translateX(-55%);opacity:0}
 15%{opacity:.7}80%{opacity:.7}
 100%{transform:translateX(55%);opacity:0}
}
@media(prefers-reduced-motion:reduce){
 body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button){transition:none!important;background-position:0 50%!important}
 body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button)::after{animation:none!important;opacity:0!important}
}
@media(forced-colors:active){
 body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button){background:ButtonFace;color:ButtonText;border-color:ButtonText;box-shadow:none;transition:none}
 body.contrast-option.contrast-a :is(.posh-silver-action,button[data-enquiry],#gallery-action>button.button)::after{content:none;animation:none}
}
