.fa-modal-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:opacity .3s var(--ease)}.fa-modal-overlay.open{opacity:1;visibility:visible}.fa-modal-panel{position:absolute;top:0;right:0;height:100%;width:min(92vw,420px);background:var(--wine-soft);border-left:1px solid var(--line);padding:64px 40px;transform:translateX(100%);transition:transform .38s var(--ease);box-shadow:-16px 0 50px rgba(0,0,0,.45);overflow-y:auto}.fa-modal-overlay.open .fa-modal-panel{transform:none}.fa-modal-close{position:absolute;top:18px;right:22px;font-size:2rem;line-height:1;color:var(--text-muted)}.fa-modal-close:hover{color:var(--gold)}.fa-modal-body h3{font-family:var(--font-serif-cn);font-size:1.4rem;color:var(--white);letter-spacing:.1em;margin-bottom:24px}.fa-qr{text-align:center}.fa-qr-img{width:220px;height:220px;margin:0 auto 22px;background:var(--white);padding:12px}.fa-qr-img img{width:100%;height:100%;object-fit:contain}.fa-qr-img.fa-qr-img-fill{height:240px;background:0 0;padding:0}.fa-qr-img.fa-qr-img-fill img{object-fit:cover}.fa-qr-img.qr-empty{display:flex;align-items:center;justify-content:center}.fa-qr-img.qr-empty::after{content:"二维码";color:#999;font-family:var(--font-sans-cn)}.fa-qr p{color:var(--text-muted);font-size:.9375rem}.fa-contact-line{display:flex;flex-direction:column;gap:4px;margin:0 0 20px}.fa-contact-line span{font-size:.8125rem;color:var(--text-muted);letter-spacing:.1em}.fa-contact-line a{font-family:var(--font-serif-latin);font-size:1.5rem;color:var(--text-light);letter-spacing:.04em}.fa-contact-line a:hover{color:var(--gold)}.fa-contact-hours{font-size:.8125rem;color:var(--text-muted);margin:-12px 0 22px}.fa-todo{color:var(--text);font-size:.9375rem;line-height:1.9}.fa-todo a{color:var(--gold)}.fa-toast{position:fixed;left:50%;bottom:48px;transform:translateX(-50%) translateY(20px);z-index:300;background:rgba(42,16,24,.95);border:1px solid var(--line);color:var(--text-light);padding:13px 26px;border-radius:4px;font-size:.9375rem;letter-spacing:.04em;opacity:0;visibility:hidden;transition:opacity .3s var(--ease),transform .3s var(--ease);max-width:88vw;text-align:center}.fa-toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}body.modal-open{overflow:hidden}.fa-modal-overlay.fa-modal-video-mode{background:rgba(0,0,0,.85);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}.fa-modal-overlay.fa-modal-video-mode .fa-modal-panel{position:absolute;top:50%;left:50%;right:auto;transform:translate(-50%,-40%) scale(.95);width:min(90vw,calc(85vh * 9 / 16));aspect-ratio:9/16;height:auto;max-height:85vh;background:0 0;border:none;padding:0;box-shadow:0 24px 64px rgba(0,0,0,.8);border-radius:12px;overflow:hidden;opacity:0;transition:transform .4s var(--ease),opacity .4s var(--ease)}.fa-modal-overlay.fa-modal-video-mode.open .fa-modal-panel{transform:translate(-50%,-50%) scale(1);opacity:1}.fa-modal-overlay.fa-modal-video-mode .fa-modal-close{top:16px;right:16px;width:36px;height:36px;display:grid;place-items:center;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.15);border-radius:50%;color:rgba(255,255,255,.85);font-size:1.4rem;font-weight:300;z-index:10;text-shadow:none;transition:all .3s var(--ease)}.fa-modal-overlay.fa-modal-video-mode .fa-modal-close:hover{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.4);transform:rotate(90deg) scale(1.1)}.fa-modal-overlay.fa-modal-video-mode .fa-modal-body{padding:0;height:100%}.fa-video-modal-container{width:100%;height:100%;background:#000}.fa-modal-video{width:100%;height:100%;object-fit:cover;display:block}.hero-slide{display:none}.hero-slide.active{display:block}.hero-slide img{width:100%}.hero-slide[data-link],.hero-slide[data-modal]{cursor:pointer}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;background:rgba(42,16,24,.3);color:#fff;border-radius:50%;font-size:1.2rem}.hero-arrow.prev{left:24px}.hero-arrow.next{right:24px}.hero-arrow:hover{background:rgba(122,46,62,.7)}.hero-dots{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:3}.hero-dot{width:9px;height:9px;padding:0;border-radius:50%;background:rgba(255,255,255,.5)}.hero-dot.active{background:#fff}.contact-section{display:none;background:var(--wine-soft);padding:clamp(56px,8vw,96px) 0}.contact-section.is-active{display:block}.contact-section .form-wrap{max-width:640px;margin:0 auto;text-align:center}.contact-section .section-title{margin-bottom:12px;color:var(--white)}.contact-section .eyebrow{display:block;margin-bottom:18px;color:var(--text-muted)}.contact-section .btn-line{border-color:var(--line-light);color:var(--text-light)}.contact-section .btn-line:hover{border-color:var(--gold);color:var(--gold)}.contact-intro{color:var(--text-muted);font-size:.9375rem;max-width:480px;margin:0 auto}.fa-form{display:grid;gap:18px;margin-top:36px;text-align:left}.fa-form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fa-form label{display:block;font-size:.8125rem;color:var(--text-muted);letter-spacing:.1em;margin-bottom:8px}.fa-form input,.fa-form textarea{width:100%;background:rgba(0,0,0,.25);border:1px solid var(--line);color:var(--text-light);padding:13px 16px;font-family:var(--font-body);font-size:.9375rem}.fa-form input:focus,.fa-form textarea:focus{outline:0;border-color:var(--gold)}.fa-form textarea{min-height:120px;resize:vertical}.fa-form .btn-line{justify-self:center;margin-top:8px;padding:.8em 3em}@media (max-width:560px){.fa-form .row{grid-template-columns:1fr}.fa-modal-panel{padding:56px 26px}}