/* Reversible button treatment. Solid fallback comes first. */
:is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.gallery-expand,.review-carousel-controls button){
 --glass-base:#173759;--glass-text:#fffdf7;--glass-edge:#49637e;
 background-color:var(--glass-base);color:var(--glass-text);border:1px solid var(--glass-edge);border-radius:0;
 background-image:linear-gradient(165deg,#ffffff26 0%,#ffffff0a 43%,#ffffff00 44%,#ffffff00 76%,#ffffff0d 100%);
 box-shadow:inset 0 1px 0 #ffffff66,inset 0 -1px 0 #00000018,0 4px 10px #12263f18;
 transition:background-color .18s,box-shadow .18s,transform .18s;
}
:is(.button-outline,.mobile-actions a:first-child,.gallery-prev,.gallery-next,.gallery-expand,.review-carousel-controls button){--glass-base:#f4f0e6;--glass-text:#142a43;--glass-edge:#7a8794;background-image:linear-gradient(165deg,#ffffffb3 0%,#ffffff29 43%,#ffffff00 44%,#ffffff00 76%,#ffffff55 100%)}
@supports ((backdrop-filter:blur(10px)) or (-webkit-backdrop-filter:blur(10px))){
 :is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.gallery-expand,.review-carousel-controls button){--glass-base:rgba(20,42,67,.94);-webkit-backdrop-filter:blur(10px) saturate(125%);backdrop-filter:blur(10px) saturate(125%)}
 :is(.button-outline,.mobile-actions a:first-child,.gallery-prev,.gallery-next,.gallery-expand,.review-carousel-controls button){--glass-base:rgba(250,247,239,.93)}
}
@media(hover:hover){
 :is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.review-carousel-controls button):not(:disabled):hover{background-color:var(--glass-base);color:var(--glass-text);border-color:var(--glass-edge);box-shadow:inset 0 1px 0 #ffffff99,inset 0 -1px 0 #00000018,0 7px 16px #12263f26;transform:translateY(-1px)}
}
:is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.review-carousel-controls button):focus-visible{outline:3px solid #142a43;outline-offset:4px;box-shadow:0 0 0 4px #fffdf7,inset 0 1px 0 #ffffff88}
:is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.review-carousel-controls button):not(:disabled):active{transform:translateY(1px);box-shadow:inset 0 2px 4px #00000033,0 1px 2px #12263f14}
:is(.button,.review-carousel-controls button):disabled{cursor:default;transform:none;box-shadow:none}
@media(prefers-reduced-motion:reduce){
 :is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.gallery-expand,.review-carousel-controls button){transition:none!important;transform:none!important}
}
@media(forced-colors:active){
 :is(.button,.floating-contact-toggle,.mobile-actions a,.gallery-prev,.gallery-next,.gallery-expand,.review-carousel-controls button){background:ButtonFace;color:ButtonText;border:1px solid ButtonText;box-shadow:none;backdrop-filter:none}
}
.photo-dialog-bottom :is(.gallery-prev,.gallery-next){background-color:var(--glass-base);background-image:linear-gradient(165deg,#ffffffb3 0%,#ffffff29 43%,#ffffff00 44%);color:#142a43;border-color:#7a8794}
