.fm-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;overscroll-behavior:contain}.fm-modal[hidden]{display:none!important}.fm-backdrop{position:absolute;inset:0;background:#0c234080;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.fm-dialog{position:relative;width:min(1080px,96vw);max-height:92vh;overflow:auto;padding:clamp(22px,3vw,34px);border-radius:calc(var(--r) + 6px);background:#fffffff2;border:1px solid rgba(255,255,255,.9);box-shadow:0 40px 90px -28px #0c234066,inset 0 1px #fffffff2;animation:fm-in .24s ease}@keyframes fm-in{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}.fm-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:none;border-radius:11px;z-index:4;background:var(--bg-soft);color:var(--muted);cursor:pointer;display:grid;place-items:center;transition:.15s}.fm-close:hover{color:var(--ink);background:#fff;box-shadow:0 4px 12px #0c23401f}.fm-head{display:flex;gap:16px;align-items:flex-start;padding-right:34px}.fm-icon{width:54px;height:54px;border-radius:15px;flex:none;background:linear-gradient(135deg,#1fb6d329,#0f846529);display:grid;place-items:center;color:var(--teal)}.fm-slot .fm-title{font-size:clamp(1.3rem,2.4vw,1.62rem);font-weight:800;letter-spacing:-.02em;line-height:1.15}.fm-slot .fm-lead{color:var(--ink-soft);font-size:1.02rem;margin-top:6px;line-height:1.5}.fm-cols{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:30px;align-items:start;margin-top:24px}.fm-detail{display:flex;flex-direction:column;justify-content:flex-start;align-self:start;min-width:0}.fm-carousel{position:relative;align-self:start}.fm-viewport{overflow:hidden;border-radius:calc(var(--r) - 4px);border:1px solid var(--line);background:linear-gradient(180deg,#fbfdff,#eef5fa)}.fm-viewport:has(.fm-video-bare),.fm-viewport:has(.fm-phone-bare),.fm-viewport:has(.fm-reminder-bare),.fm-viewport:has(.fm-extra-bare),.fm-viewport:has(.fm-pay-bare),.fm-viewport:has(.fm-consult-hero),.fm-viewport:has(.fm-consult-modal){background:transparent;border-color:transparent}.fm-track{display:flex;transition:transform .42s cubic-bezier(.4,0,.2,1)}.fm-slide{flex:0 0 100%;min-width:0;margin:0;padding:18px 22px;display:flex;flex-direction:column}.fm-slide:has(.fm-extra-bare),.fm-slide:has(.fm-reminder-bare),.fm-slide:has(.fm-pay-bare),.fm-slide:has(.fm-consult-hero),.fm-slide:has(.fm-consult-modal){padding:6px 2px}.fm-art{border-radius:14px;overflow:hidden;box-shadow:0 18px 40px -22px #0c234073;background:#fff}.fm-art:has(.fm-shot--piece),.fm-art:has(.fm-shot--full),.fm-art:has(.fm-ai-bubbles),.fm-art:has(.fm-video-bare),.fm-art:has(.fm-phone-bare),.fm-art:has(.fm-reminder-bare),.fm-art:has(.fm-pay-bare),.fm-art:has(.fm-sync-bare),.fm-art:has(.fm-extra-bare),.fm-art:has(.fm-consult-modal),.fm-art:has(.fm-consult-hero){border-radius:0;overflow:visible;box-shadow:none;background:transparent}.fm-art .fm-shot--full{display:block;width:100%;max-width:100%;height:auto}.fm-art .fm-shot--piece{display:block;width:min(640px,100%);max-width:100%;height:auto;margin:0 auto;object-fit:contain}.fm-art .fm-shot--piece-lg{display:block;width:min(720px,100%);max-width:100%;height:auto;margin:0 auto}.fm-art svg{display:block;width:100%;height:auto}.fm-art:has(.fm-consult-hero) svg.fm-consult-hero,.fm-art:has(.fm-consult-modal) svg.fm-consult-modal{width:100%;max-width:none;margin:0 auto;border-radius:14px;overflow:hidden}.fm-slot .fm-detail-title{font-size:1.12rem;font-weight:800;letter-spacing:-.01em;line-height:1.2;color:var(--ink);margin:0}.fm-slot .fm-detail-titles+.fm-detail-pane,.fm-slot .fm-detail-titles~.fm-detail-pane{margin-top:1.5rem}.fm-detail-title-pane{display:none}.fm-detail-title-pane.on{display:block}.fm-nav{position:absolute;top:44%;transform:translateY(-50%);width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:#fffffff0;color:var(--ink);cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 20px -10px #0c234066;transition:.15s;z-index:2}.fm-nav:hover{color:var(--teal);border-color:var(--cyan)}.fm-prev{left:12px}.fm-next{right:12px}.fm-nav[disabled]{opacity:0;pointer-events:none}.fm-slide-count{margin:12px 0 0;text-align:center;font-size:.84rem;font-weight:700;letter-spacing:.05em;color:var(--muted)}.fm-slide-count[hidden]{display:none}.fm-slide-count .fm-slide-current{color:var(--teal)}.fm-dots{display:flex;gap:8px;justify-content:center;margin-top:8px}.fm-dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:var(--line);cursor:pointer;transition:.2s}.fm-dot.on{background:var(--teal);width:22px;border-radius:5px}.fm-slot .fm-body{color:var(--ink-soft);font-size:1.02rem;line-height:1.65;margin:0;display:block}.fm-slot .fm-body+.fm-body{margin-top:1.65em}.fm-detail-pane{display:none}.fm-detail-pane.on{display:block}.fm-slot .fm-detail-pane .fm-body+.fm-ticks,.fm-slot .fm-detail>.fm-body+.fm-ticks{margin-top:1.75rem}.fm-slot .fm-ticks{margin-top:1.5rem}@media(prefers-reduced-motion:reduce){.fm-track{transition:none}.fm-dialog{animation:none}}@media(max-width:900px){.fm-cols{grid-template-columns:1fr;gap:0;margin-top:18px}.fm-detail{justify-content:flex-start;margin-top:18px}}@media(max-width:620px){.fm-modal{padding:0}.fm-head{padding-right:46px;gap:13px}.fm-icon{width:46px;height:46px;border-radius:13px}.fm-cols{margin-top:16px}.fm-slide{padding:10px 8px}.fm-nav{width:34px;height:34px;top:40%}.fm-prev{left:6px}.fm-next{right:6px}.fm-modal.is-feat{place-items:stretch}.fm-modal.is-feat .fm-dialog{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;padding:16px 14px calc(20px + env(safe-area-inset-bottom,0px))}.fm-modal.is-extra{place-items:end stretch}.fm-modal.is-extra .fm-dialog{width:100%;max-width:100%;max-height:90vh;border-radius:24px 24px 0 0;padding:8px 16px calc(22px + env(safe-area-inset-bottom,0px));animation:fm-sheet-up .3s cubic-bezier(.2,.7,.2,1)}.fm-modal.is-extra .fm-dialog:before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:var(--line);margin:2px auto 8px}.fm-modal.is-extra .fm-close{top:12px;right:12px;width:34px;height:34px}}@keyframes fm-sheet-up{0%{transform:translateY(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){.fm-modal.is-extra .fm-dialog{animation:none}}
