:root{--black: #1A1A1A;--black-light: #2A2A2A;--white: #FFFFFF;--white-off: #F8F8F6;--gold: #C9A961;--gold-light: #D4B87A;--gold-dark: #A68B5B;--gray: #6B6B6B;--gray-light: #999999;--gray-dark: #333333;--font-display: "MiSans", "D-DIN PRO", Georgia, serif;--font-body: "D-DIN PRO", "MiSans", -apple-system, BlinkMacSystemFont, sans-serif;--font-cn: "MiSans", "PingFang SC", "Microsoft YaHei", sans-serif;--transition-slow: .8s cubic-bezier(.16, 1, .3, 1);--transition-base: .4s cubic-bezier(.16, 1, .3, 1);--transition-fast: .2s cubic-bezier(.16, 1, .3, 1)}.fp-rooms *{margin:0;padding:0;box-sizing:border-box}.fp-rooms *::selection{background:var(--gold);color:var(--black)}@media(max-width:768px){body{font-size:12px}}.fp-rooms .page-hero{position:relative;height:60vh;min-height:400px;display:flex;align-items:flex-end;overflow:hidden}.fp-rooms .page-hero-bg{position:absolute;inset:0}.fp-rooms .page-hero-bg img{width:100%;height:100%;object-fit:cover}.fp-rooms .page-hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#ffffff1a,#1a1a1ab3)}.fp-rooms .page-hero-content{position:relative;z-index:2;padding:0 clamp(24px,5vw,120px) clamp(40px,8vh,80px);max-width:1500px;margin:0 auto;width:100%;color:var(--white)}.fp-rooms .page-hero-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,5rem);font-weight:300;line-height:1.1;letter-spacing:-.02em;margin-bottom:16px}.fp-rooms .page-hero-desc{font-size:15px;font-weight:300;color:#fffc;max-width:500px}.fp-rooms .section{padding:clamp(60px,10vw,120px) 0}.fp-rooms .section--alt{background:var(--white-off)}.fp-rooms .section-header{margin-bottom:clamp(40px,6vw,64px)}.fp-rooms .section-header.center{text-align:center;max-width:700px;margin-left:auto;margin-right:auto}.fp-rooms .section-eyebrow{font-family:var(--font-display);font-size:.875rem;font-weight:300;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:16px}.fp-rooms .section-eyebrow:before{content:"";width:40px;height:1px;background:var(--gold)}.fp-rooms .section-header.center .section-eyebrow{justify-content:center}.fp-rooms .section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1.2;margin-bottom:16px}.fp-rooms .section-desc{font-size:15px;font-weight:300;line-height:1.8;color:var(--gray)}.fp-rooms .room-category{margin-bottom:clamp(60px,8vw,100px);scroll-margin-top:100px}.fp-rooms .room-category:last-child{margin-bottom:0}.fp-rooms .room-category-header{display:flex;align-items:baseline;gap:24px;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid rgba(26,26,26,.1)}.fp-rooms .room-category-title{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:400}.fp-rooms .room-category-count{font-size:.875rem;color:var(--gray)}.fp-rooms .room-list{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.fp-rooms .room-list--3col{grid-template-columns:repeat(3,1fr)}.fp-rooms .room-list--2col{grid-template-columns:repeat(2,1fr)}.fp-rooms .room-list--mixed{grid-template-columns:repeat(6,1fr)}.fp-rooms .room-list--mixed .room-card--exec{grid-column:span 3}.fp-rooms .room-list--mixed .room-card--biz{grid-column:span 2}.fp-rooms .room-card--placeholder{pointer-events:none;border:none;background:transparent}.fp-rooms .room-card--placeholder:hover{box-shadow:none;transform:none}.fp-rooms .room-card{position:relative;cursor:pointer;overflow:hidden;background:var(--white);border:1px solid rgba(26,26,26,.08);transition:all var(--transition-base)}.fp-rooms .room-card:hover{box-shadow:0 20px 60px #0000001a;transform:translateY(-6px)}.fp-rooms .room-card-cover{position:relative;aspect-ratio:16/9;overflow:hidden}.fp-rooms .room-card-cover img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.fp-rooms .room-card:hover .room-card-cover img{transform:scale(1.05)}.fp-rooms .room-card-vr{position:absolute;top:16px;right:16px;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#1a1a1ab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--white);font-size:.75rem;font-weight:400;letter-spacing:.1em;border-radius:2px;transition:background var(--transition-fast)}.fp-rooms .room-card:hover .room-card-vr{background:var(--gold);color:var(--black)}.fp-rooms .room-card-vr svg{width:16px;height:16px;flex-shrink:0}.fp-rooms .room-card-info{padding:24px}.fp-rooms .room-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.fp-rooms .room-card-header .room-card-title{margin-bottom:0;flex:1}.fp-rooms .room-card-header .room-card-btn{flex-shrink:0;padding:8px 16px;font-size:.75rem}.fp-rooms .room-card-tag{font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}.fp-rooms .room-card-title{font-family:var(--font-display);font-size:clamp(1.125rem,1.5vw,1.5rem);font-weight:400;margin-bottom:12px}.fp-rooms .room-card-meta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.fp-rooms .room-card-meta span{font-size:.8125rem;color:var(--gray);display:flex;align-items:center;gap:6px}.fp-rooms .room-card-meta span:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold)}.fp-rooms .room-card-meta span:first-child:before{display:none}.fp-rooms .room-card-btn{display:inline-flex;align-items:center;gap:8px;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;color:var(--black);border:1px solid rgba(26,26,26,.2);padding:10px 24px;transition:all var(--transition-fast)}.fp-rooms .room-card-btn:hover{background:var(--black);color:var(--white);border-color:var(--black)}.fp-rooms .room-card-btn svg{transition:transform var(--transition-fast)}.fp-rooms .room-card-btn:hover svg{transform:translate(4px)}.fp-rooms .room-modal-overlay{position:fixed;inset:0;z-index:10000;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:all var(--transition-base);display:flex;align-items:flex-start;justify-content:center;padding:40px;overflow-y:auto;overscroll-behavior:contain}.fp-rooms .room-modal-overlay.active{opacity:1;visibility:visible}.fp-rooms .room-modal{background:var(--white);width:100%;max-width:1400px;max-height:min(80vh,calc(100dvh - 32px));display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:1fr;overflow:hidden;transform:scale(.95) translateY(20px);transition:transform var(--transition-base);position:relative;margin:auto 0;min-height:0}.fp-rooms .room-modal-overlay.active .room-modal{transform:scale(1) translateY(0)}.fp-rooms .room-modal-close{position:absolute;top:16px;right:16px;z-index:10;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;transition:all var(--transition-fast)}.fp-rooms .room-modal-close:hover{background:var(--black);color:var(--white)}.fp-rooms .room-modal-close svg{width:18px;height:18px}.fp-rooms .room-modal-gallery{position:relative;background:var(--black);overflow:hidden;height:100%;min-height:0}.fp-rooms .room-modal-carousel{position:relative;width:100%;height:100%;min-height:0}.fp-rooms .carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;height:100%}.fp-rooms .carousel-slide.active{opacity:1}.fp-rooms .carousel-slide img{width:100%;height:100%;object-fit:cover;object-position:center}.fp-rooms .carousel-slide.is-floorplan img{object-fit:cover;background:var(--white-off)}.fp-rooms .carousel-nav{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:5}.fp-rooms .carousel-dot{width:8px;height:8px;border-radius:50%;background:#fff6;cursor:pointer;transition:all var(--transition-fast)}.fp-rooms .carousel-dot.active{background:var(--white);transform:scale(1.3)}.fp-rooms .carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--white);transition:all var(--transition-fast)}.fp-rooms .carousel-arrow:hover{background:#ffffff4d}.fp-rooms .carousel-arrow--prev{left:16px}.fp-rooms .carousel-arrow--next{right:16px}.fp-rooms .carousel-arrow svg{width:20px;height:20px}.fp-rooms .room-modal-detail{padding:32px;overflow-y:auto;display:flex;flex-direction:column;min-height:0;max-height:100%}.fp-rooms .modal-detail-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.fp-rooms .modal-detail-header-left{flex:1}.fp-rooms .modal-detail-tag{font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}.fp-rooms .modal-detail-title{font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.75rem);font-weight:400;margin:0}.fp-rooms .modal-detail-actions-compact{display:flex;gap:10px;flex-shrink:0}.fp-rooms .modal-detail-actions-compact .modal-btn-primary,.fp-rooms .modal-detail-actions-compact .modal-btn-vr{font-size:.6875rem;padding:10px 18px;white-space:nowrap}.fp-rooms .modal-detail-meta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid rgba(26,26,26,.08)}.fp-rooms .modal-detail-meta span{font-size:.875rem;color:var(--gray);display:flex;align-items:center;gap:6px}.fp-rooms .modal-detail-meta span:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold)}.fp-rooms .modal-detail-meta span:first-child:before{display:none}.fp-rooms .modal-detail-desc{font-size:15px;color:var(--gray-dark);line-height:1.8;margin-bottom:28px}.fp-rooms .modal-detail-section-title{font-family:var(--font-display);font-size:1rem;font-weight:500;letter-spacing:.05em;margin-bottom:16px;color:var(--black)}.fp-rooms .modal-detail-features{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:32px}.fp-rooms .modal-detail-feature{font-family:var(--font-cn);font-size:.8125rem;color:#6b6b6b}.fp-rooms .modal-detail-feature:before{content:"·";color:var(--gold);font-weight:700;margin-right:4px}.fp-rooms .modal-service-section{margin-bottom:24px}.fp-rooms .modal-service-title{font-family:var(--font-display);font-size:1rem;font-weight:500;letter-spacing:.05em;margin-bottom:12px;color:var(--black);display:flex;align-items:center;gap:10px}.fp-rooms .modal-service-label{font-family:var(--font-cn);font-size:.6875rem;font-weight:400;padding:2px 10px;background:var(--white-off);color:var(--gray);border-radius:2px;letter-spacing:.02em}.fp-rooms .modal-service-label.premium{background:#c9a9611f;color:var(--gold-dark)}.fp-rooms .modal-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fp-rooms .modal-service-item{font-family:var(--font-cn);font-size:.8125rem;padding:10px 14px;background:var(--white-off);color:#6b6b6b;border-radius:2px;display:flex;align-items:center;gap:8px}.fp-rooms .modal-service-item.basic:before{content:"✓";color:var(--gold);font-size:.75rem;flex-shrink:0}.fp-rooms .modal-service-item.premium{background:#c9a9610f}.fp-rooms .modal-service-item.premium:before{content:"＋";color:var(--gold);font-size:.75rem;flex-shrink:0}@media(max-width:640px){.fp-rooms .modal-detail-features,.fp-rooms .modal-service-grid{grid-template-columns:repeat(2,1fr)}.fp-rooms .room-modal{max-height:min(90vh,calc(100dvh - 16px));overflow:hidden;grid-template-columns:1fr;min-height:0}.fp-rooms .room-modal-overlay{padding:0;align-items:flex-start}.fp-rooms .room-modal-gallery{height:40vh;min-height:200px;max-height:40vh}.fp-rooms .room-modal-detail{padding:20px;overflow-y:auto;max-height:100%;min-height:0}.fp-rooms .modal-detail-header{flex-direction:column;align-items:flex-start;gap:12px}.fp-rooms .modal-detail-actions-compact{width:100%;flex-direction:column}.fp-rooms .modal-detail-actions-compact .modal-btn-primary,.fp-rooms .modal-detail-actions-compact .modal-btn-vr{width:100%;text-align:center}}.fp-rooms .modal-detail-actions{margin-top:auto;padding-top:24px;border-top:1px solid rgba(26,26,26,.08);display:flex;gap:16px}.fp-rooms .modal-btn-primary{flex:1;text-align:center;font-size:.8125rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;padding:16px 32px;background:var(--gold);color:var(--black);transition:all var(--transition-fast)}.fp-rooms .modal-btn-primary:hover{background:var(--gold-light)}.fp-rooms .modal-btn-vr{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;padding:16px 24px;border:1px solid rgba(26,26,26,.2);transition:all var(--transition-fast)}.fp-rooms .modal-btn-vr:hover{background:var(--black);color:var(--white);border-color:var(--black)}.fp-rooms .modal-btn-vr svg{width:18px;height:18px}.fp-rooms .btn-primary{font-size:.8125rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;padding:18px 40px;background:var(--gold);color:var(--black);transition:all var(--transition-fast);display:inline-block}.fp-rooms .btn-primary:hover{background:var(--gold-light);transform:translateY(-2px)}.fp-rooms .cta-section{position:relative;padding:clamp(80px,12vw,160px) 0;overflow:hidden}.fp-rooms .cta-section-bg{position:absolute;inset:0}.fp-rooms .cta-section-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.4)}.fp-rooms .cta-section-bg:after{content:"";position:absolute;inset:0;background:#1a1a1a99}.fp-rooms .cta-section-content{position:relative;z-index:2;text-align:center;max-width:600px;margin:0 auto;color:var(--white)}.fp-rooms .cta-section-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:16px}.fp-rooms .cta-section-desc{font-size:15px;color:#fffc;margin-bottom:32px}.fp-rooms .cta-section-actions{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.fp-rooms .btn-outline-light{font-size:.8125rem;letter-spacing:.15em;text-transform:uppercase;padding:18px 40px;border:1px solid rgba(255,255,255,.5);color:var(--white);transition:all var(--transition-fast);display:inline-block}.fp-rooms .btn-outline-light:hover{background:var(--white);color:var(--black);border-color:var(--white)}.fp-rooms .footer-qr-placeholder{width:110px;height:110px;border:1px solid rgba(201,169,97,.4);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#c9a96199;background:#c9a9610d}@media(max-width:1024px){.header{gap:20px;padding:24px clamp(24px,5vw,120px)}.logo img{height:72px}.nav{display:none}.menu-toggle{display:block}.cta-btn{display:none}.lang-switcher{font-size:.8rem}.fp-rooms .room-list,.fp-rooms .room-list--3col,.fp-rooms .room-list--2col,.fp-rooms .room-list--mixed{grid-template-columns:repeat(2,1fr)}.fp-rooms .room-list--mixed .room-card--exec,.fp-rooms .room-list--mixed .room-card--biz{grid-column:span 1}.fp-rooms .room-modal{grid-template-columns:1fr;max-height:90vh;margin:20px auto}.fp-rooms .room-modal-detail{overflow-y:auto}.fp-rooms .room-modal-overlay{padding:16px}.fp-rooms .room-modal-gallery{min-height:200px;max-height:35vh}.fp-rooms .room-modal-gallery{min-height:300px;max-height:40vh;aspect-ratio:auto}.fp-rooms .room-modal-carousel{min-height:300px}.fp-rooms .modal-detail-header{flex-direction:column;align-items:flex-start}.fp-rooms .modal-detail-actions-compact{width:100%}.fp-rooms .modal-detail-actions-compact .modal-btn-primary{flex:1}.footer-content{grid-template-columns:1fr 1fr}}@media(max-width:640px){.header{gap:16px;padding:23px clamp(24px,5vw,120px)}.logo img{height:56px}.lang-switcher{font-size:.75rem}.fp-rooms .room-list,.fp-rooms .room-list--3col,.fp-rooms .room-list--2col,.fp-rooms .room-list--mixed{grid-template-columns:1fr}.fp-rooms .room-list--mixed .room-card--exec,.fp-rooms .room-list--mixed .room-card--biz{grid-column:span 1}.fp-rooms .room-modal-overlay{padding:16px}.footer-content{grid-template-columns:1fr}.fp-rooms .cta-section-actions{flex-direction:column}.fp-rooms .cta-section-actions .btn-primary,.fp-rooms .cta-section-actions .btn-outline-light{width:100%;text-align:center}.fp-rooms .modal-detail-actions{flex-direction:column}}@media(prefers-reduced-motion:reduce){.fp-rooms *,.fp-rooms *:before,.fp-rooms *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:768px){.floating-contact{bottom:16px;top:auto;transform:none;right:16px;flex-direction:column;gap:2px}.floating-contact-item:first-child{border-radius:6px 6px 0 0}.floating-contact-item:last-child{border-radius:0 0 6px 6px}.floating-contact-panel{inset:50% 54px auto auto;transform:translateY(-50%)}}.fp-rooms .room-modal-gallery,.fp-rooms .room-modal-detail{min-height:0}.fp-rooms .room-card-tag,.fp-rooms .room-card-title,.fp-rooms .modal-detail-tag,.fp-rooms .modal-detail-title,.fp-rooms .modal-detail-feature,.fp-rooms .modal-service-item,.fp-rooms .modal-service-label{word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.fp-rooms .room-card{display:flex;flex-direction:column}.fp-rooms .room-card-info{flex:1;display:flex;flex-direction:column}.fp-rooms .room-card-meta{margin-top:auto;margin-bottom:0}
