/* Canon Moment Photography — floating contact menu + "Text Us" modal styles.
   Shared by every page (was pasted inline into 459 pages). */
.fcm{position:fixed;bottom:24px;right:24px;z-index:9998;font-family:'Jost',sans-serif}
.fcm-toggle{position:relative;width:56px;height:56px;border-radius:50%;background:transparent;border:1px solid #C9A96E;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .25s,background .25s;padding:0;outline-offset:4px}
.fcm-toggle:hover{background:rgba(201,169,110,.08);transform:scale(1.04)}
.fcm-toggle .dot{position:absolute;top:6px;right:6px;width:9px;height:9px;border-radius:50%;background:#C9A96E;box-shadow:0 0 0 3px #1C1C1C}
.fcm-toggle svg{width:22px;height:22px;stroke:#C9A96E;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.fcm.open .fcm-toggle svg{transform:rotate(45deg)}
.fcm.open .fcm-toggle .icon-chat{display:none}
.fcm.open .fcm-toggle .icon-close{display:block}
.fcm-toggle .icon-close{display:none}
.fcm-options{position:absolute;bottom:72px;right:0;display:flex;flex-direction:column;gap:10px;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .25s,transform .25s}
.fcm.open .fcm-options{opacity:1;pointer-events:auto;transform:translateY(0)}
.fcm-opt{display:flex;align-items:center;gap:12px;background:rgba(28,28,28,.96);border:.5px solid rgba(201,169,110,.4);backdrop-filter:blur(10px);padding:12px 18px;text-decoration:none;color:#FDFCFA;font-size:13px;letter-spacing:.06em;transition:background .25s,border-color .25s,transform .25s;min-width:180px;cursor:pointer;font-family:inherit;font-weight:300;justify-content:flex-end}
.fcm-opt:hover{background:rgba(201,169,110,.12);border-color:#C9A96E;transform:translateX(-4px)}
.fcm-opt svg{width:18px;height:18px;flex-shrink:0;stroke:#C9A96E;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fcm-modal{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.7);display:none;align-items:center;justify-content:center;padding:24px}
.fcm-modal.show{display:flex}
.fcm-modal-inner{background:#1C1C1C;border:.5px solid #C9A96E;padding:32px;max-width:420px;width:100%;font-family:'Jost',sans-serif;color:#FDFCFA;position:relative}
.fcm-modal-inner h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:24px;margin:0 0 8px;color:#FDFCFA}
.fcm-modal-inner p{font-size:13px;color:#B8B8B8;margin:0 0 18px;letter-spacing:.04em;line-height:1.6}
.fcm-modal-inner textarea,.fcm-modal-inner input{width:100%;background:transparent;border:.5px solid rgba(201,169,110,.4);color:#FDFCFA;padding:12px;font-family:inherit;font-size:14px;outline:none;margin-bottom:10px;border-radius:0}
.fcm-modal-inner textarea{resize:none;height:90px}
.fcm-modal-inner textarea:focus,.fcm-modal-inner input:focus{border-color:#C9A96E}
.fcm-modal-inner button.send{width:100%;background:#C9A96E;border:none;color:#1C1C1C;font-family:inherit;font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:14px;cursor:pointer;font-weight:500;transition:background .25s}
.fcm-modal-inner button.send:hover{background:#9B7A3F}
.fcm-modal-close{position:absolute;top:14px;right:18px;background:none;border:none;color:#B8B8B8;font-size:24px;cursor:pointer;line-height:1}
.fcm-success{display:none;color:#2ECC71;font-size:13px;margin-top:10px;text-align:center}
@media(max-width:600px){.fcm{bottom:18px;right:18px}.fcm-opt{min-width:160px;font-size:12px;padding:11px 16px}}
/* --- Text Us draft-message menu --- */
.sms-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.sms-preset{background:transparent;border:.5px solid rgba(201,169,110,.45);color:#E8E0D2;font-family:'Jost',sans-serif;font-size:11.5px;letter-spacing:.04em;padding:8px 12px;cursor:pointer;transition:background .2s,border-color .2s;text-align:left;border-radius:0}
.sms-preset:hover{background:rgba(201,169,110,.14);border-color:#C9A96E}
#sms-modal .fcm-modal-inner{max-height:90vh;overflow-y:auto}
