*{margin:0;padding:0;box-sizing:border-box}:root{--font-fam: "Space Grotesk", sans-serif}:root{line-height:1.5;font-weight:400;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.croissant-one-regular{font-family:var(--font-fam);font-weight:400;font-style:normal}.space-grotesk-uniquifier{font-family:Space Grotesk,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.bricolage-grotesque-uniquifier{font-family:Bricolage Grotesque,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-variation-settings:"wdth" 100}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--font-fam)}html,body,#root{margin:0;padding:0;width:100%;height:100%;overflow:hidden;font-family:var(--font-fam)}canvas{display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:10px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#fff6}.raven-loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#d9d6d2;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--font-fam);color:#000}.loader-circle{width:55px;height:55px;border:2px solid #aaa;border-top:2px solid #000;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:28px}@keyframes spin{to{transform:rotate(360deg)}}.loader-logo{font-size:28px;letter-spacing:8px;font-weight:600;margin-bottom:10px}.loader-tagline{font-family:var(--font-fam);font-size:14px;margin-bottom:28px;white-space:nowrap}.loader-bar{width:220px;height:3px;background:#bfbcbc;overflow:hidden}.loader-bar-fill{height:100%;background:#000;transition:width .2s linear}.loader-percent{font-family:var(--font-fam);margin-top:10px;font-size:12px}.loader-logo-img{width:300px;height:auto;margin-bottom:20px;display:block}.raven-loader{background:#0a0a0a;color:#f0ede8}.loader-tagline{color:#f0ede880}.loader-bar{background:#ffffff1a}.loader-bar-fill{background:#c8a96e}.loader-percent{color:#f0ede880}.menuBtn{position:fixed;top:20px;right:20px;width:48px;height:48px;border-radius:50%;background:#00000059;backdrop-filter:blur(24px) saturate(180%) brightness(.85);-webkit-backdrop-filter:blur(24px) saturate(180%) brightness(.85);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1f;display:flex;align-items:center;justify-content:center;cursor:pointer}.rightPanel{position:fixed;top:16px;right:16px;height:calc(100vh - 32px);width:380px;max-width:90%;background:#00000059;backdrop-filter:blur(24px) saturate(180%) brightness(.85);-webkit-backdrop-filter:blur(24px) saturate(180%) brightness(.85);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1f;border-radius:24px;transform:translate(120%);transition:transform .4s cubic-bezier(.22,1,.36,1);z-index:1000;padding:10px;outline:1px solid rgba(255,255,255,.05)}.rightPanel.open{transform:translate(0)}.rightPanel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px;pointer-events:none}.closeBtn{position:absolute;top:10px;right:10px;background:none;border:none;color:#fff;font-size:18px;cursor:pointer}.panelHeader{position:absolute;top:10px;left:10px;right:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px;border-radius:14px;background:#ffffff0f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12)}.panelBtn{flex:1;height:32px;border-radius:10px;font-size:12px;color:#fff;background:#ffffff14;border:1px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;transition:all .2s ease}.panelBtn:hover{background:#ffffff2e}.panelBtn.close{flex:0;width:32px;font-size:14px}.panelContent{margin-top:30px;height:calc(100% - 30px);overflow-y:auto;padding-right:4px}.panelContent::-webkit-scrollbar{width:4px}.panelContent::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.accItem{margin-bottom:10px;border-radius:16px;background:#ffffff0d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);overflow:hidden}.accHeader{width:100%;height:48px;display:flex;justify-content:space-between;align-items:center;padding:0 14px;background:transparent;border:none;color:#fff;font-size:13px;cursor:pointer;font-family:var(--font-fam)}.accHeader .left{display:flex;align-items:center;gap:10px}.accIcon{font-size:16px;opacity:.9}.chevron{transition:transform .3s ease}.accItem.open .chevron{transform:rotate(180deg)}.accContent{overflow:hidden;transition:height .3s cubic-bezier(.22,1,.36,1)}.inner{padding:10px 14px 14px;font-size:12px;color:#fffc}#appContainer{width:100%;height:100vh}.colorPicker{margin-bottom:32px}.cpTitle{font-size:16px;margin-bottom:8px;color:#ffffffb3}.cpGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(32px,1fr));gap:8px}.cpItem{width:100%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.15);cursor:pointer;transition:all .2s ease}.cpItem:hover{transform:scale(1.1)}.cpItem.active{transform:scale(1.15);border:2px solid white;box-shadow:0 0 10px #fff9}.shareBtn{padding:16px;border-radius:100px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer}.shareDialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;max-width:360px;padding:20px;border-radius:16px;color:#fff;background:#00000059;backdrop-filter:blur(24px) saturate(180%) brightness(.85);-webkit-backdrop-filter:blur(24px) saturate(180%) brightness(.85);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1f;z-index:1000}.shareDialogTitle{margin-bottom:10px}.shareDialogBtn{width:100%;padding:8px;border-radius:8px;border:none;background:#ffffff4d;color:#fff;cursor:pointer;margin-bottom:10px}.shareDialogClose{margin-top:10px;width:100%;padding:6px;border-radius:8px;border:none;background:#ffffff26;color:#fff;cursor:pointer}.property-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:999}.property-modal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(95%,960px);height:min(90vh,880px);border-radius:24px;background:#0000000d;backdrop-filter:blur(24px) saturate(180%) brightness(.85);-webkit-backdrop-filter:blur(24px) saturate(180%) brightness(.85);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1f;display:flex;flex-direction:column;overflow:hidden}.property-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.15)}.property-content{overflow-y:auto;padding:16px}.property-gallery{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-bottom:16px}.property-gallery img{width:100%;border-radius:12px;object-fit:cover}.property-floorplan img{width:100%;border-radius:12px}.property-map iframe{width:100%;height:250px;border-radius:12px;border:none}@media (max-width: 768px){.property-modal{top:auto;bottom:0;transform:translate(-50%);height:90vh;border-radius:20px 20px 0 0}.property-gallery{grid-template-columns:1fr}}.close-btn{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#ffffff1f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;font-size:16px;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:#ffffff40;transform:scale(1.05)}.close-btn:active{transform:scale(.95)}.tabs-wrapper{display:flex;gap:6px;width:100%;padding:6px;margin:12px 0;border-radius:999px;background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15)}.tab{flex:1;text-align:center;padding:10px 0;border-radius:999px;background:transparent;border:none;color:#ffffffb3;font-size:13px;cursor:pointer;transition:all .2s ease;font-family:var(--font-fam)}.tab.active{background:#fff3;color:#fff;box-shadow:inset 0 1px #ffffff40,0 4px 10px #0003;font-family:var(--font-fam)}.tab:hover{color:#fff}@media (max-width: 768px){.tabs-wrapper{overflow-x:auto;gap:8px;padding:6px}.tab{padding:8px 14px}}.tabs-wrapper::-webkit-scrollbar{height:4px}.tabs-wrapper::-webkit-scrollbar-track{background:transparent}.tabs-wrapper::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}.tabIcon{display:none}.tabName{display:block}@media (max-width:600px){.tabIcon{display:block}.tabName{display:none}}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gallery-grid img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:14px;cursor:pointer;transition:transform .2s ease}.gallery-grid img:hover{transform:scale(1.03)}.gallery-full{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.gallery-full img{max-width:100%;max-height:70vh;border-radius:16px}.nav{margin-top:12px}.g-btn{position:absolute;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s ease}.g-btn:hover{background:#0009;transform:scale(1.05)}.g-btn:active{transform:scale(.95)}.g-btn.close{top:16px;right:16px}.g-btn.left{left:16px;top:50%;transform:translateY(-50%)}.g-btn.right{right:16px;top:50%;transform:translateY(-50%)}.g-counter{position:absolute;bottom:16px;left:50%;transform:translate(-50%);padding:6px 12px;border-radius:999px;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:12px}.location-wrapper{display:flex;flex-direction:column;gap:28px}.location-top{display:flex;justify-content:space-between;gap:40px}.location-text{max-width:480px}.location-text h3{font-size:22px;font-weight:600;margin-bottom:10px}.location-text p{font-size:14px;line-height:1.6;opacity:.85}.location-points{display:flex;flex-direction:column;gap:14px;min-width:200px}.location-points div{display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08);font-size:14px}.point-left{display:flex;align-items:center;gap:8px;opacity:.9}.time{font-weight:500;opacity:.7}.location-bottom{margin-top:4px}.map-container{width:100%;height:450px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 30px #00000040}.map-container iframe{width:100%;height:100%;border:none}@media (max-width: 768px){.location-top{flex-direction:column;gap:20px}.location-text{max-width:100%}.location-points{gap:10px}.map-container{height:240px}}.amenities-wrapper{display:flex;flex-direction:column;height:100%;gap:14px}.amenity-content{overflow-y:auto;flex:1;padding-right:4px}.amenity-tabs{display:flex;justify-content:center;align-items:center;gap:6px;width:100%;padding:6px;border-radius:999px;background:#ffffff0f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1)}.amenity-tab{flex:1;text-align:center;padding:8px 10px;border-radius:999px;border:none;background:transparent;color:#fff9;font-size:13px;cursor:pointer;transition:all .2s ease}.amenity-tab.active{background:#fff3;color:#fff}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.amenity-card{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:14px;background:#ffffff0f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);transition:all .2s ease;cursor:pointer}.amenity-card:hover{background:#ffffff1f;transform:translateY(-2px)}.amenity-card span{font-size:14px;opacity:.9}.amenity-tabs::-webkit-scrollbar{display:none}.amenity-tabs{scrollbar-width:none}@media (max-width: 768px){.amenity-tabs{justify-content:space-between;overflow-x:auto;padding:6px 4px;scroll-snap-type:x mandatory}.amenity-tab{flex:0 0 auto;padding:8px 14px;scroll-snap-align:center}.amenity-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.amenity-grid{grid-template-columns:repeat(1,1fr)}}.amenity-card svg{opacity:.8}.project-details{display:flex;flex-direction:column;gap:16px;padding:16px;border-radius:18px;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08)}.pd-header h2{font-size:18px;font-weight:600}.pd-header p{font-size:13px;opacity:.7}.pd-rera{display:flex;justify-content:space-between;align-items:center;padding:10px;border-radius:12px;background:#ffffff0a}.pd-rera span{font-size:11px;opacity:.6}.pd-rera p{font-size:13px}.qr-box{width:40px;height:40px;border-radius:8px;background:#ffffff1a;display:flex;align-items:center;justify-content:center;font-size:10px}.pd-price{text-align:center;padding:10px;border-radius:12px;font-weight:600;background:#ffffff1a}.pd-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pd-item{display:flex;gap:10px;align-items:center;padding:10px;border-radius:12px;background:#ffffff0a}.pd-item span{font-size:11px;opacity:.6}.pd-item p{font-size:13px}.pd-actions{display:flex;gap:10px}.primary-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;border-radius:12px;border:none;background:#ffffff26;color:#fff;cursor:pointer}.icon-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;border:none;background:#ffffff1f;color:#fff;cursor:pointer}@media (max-width: 768px){.pd-grid{grid-template-columns:1fr}}.configContainer{padding:16px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);margin-top:16px}.configContainer h4{margin-bottom:6px}.config-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.config-card{border-radius:18px;overflow:hidden;background:#ffffff0f;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);transition:.25s ease}.config-card:hover{transform:translateY(-4px);background:#ffffff1f}.card-img{position:relative;height:240px;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover}.card-overlay{position:absolute;bottom:0;left:0;right:0;padding:12px;background:linear-gradient(to top,#0009,#0000);color:#fff}.card-overlay h3{font-size:15px;margin-bottom:6px}.card-icons{display:flex;gap:10px;font-size:12px}.card-icons span{display:flex;align-items:center;gap:4px;opacity:.9}.card-content{padding:12px;display:flex;justify-content:space-between;align-items:center}.price{font-size:14px;font-weight:600}.status{font-size:11px;padding:4px 8px;border-radius:999px;text-transform:capitalize}.status.available{background:#00ff6426}.status.limited{background:#ffc80033}.view-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;border-radius:8px;border:none;background:#ffffff26;color:#fff;font-size:12px;cursor:pointer}.view-btn:hover{background:#ffffff4d}@media (max-width: 768px){.config-cards{grid-template-columns:1fr}.card-img{height:180px}}.builder-info{padding:16px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);margin-top:16px}.builder-info h4{margin-bottom:6px}.builder-info p{font-size:13px;line-height:1.5;opacity:.8}.clientLogo{position:fixed;top:20px;left:20px}.clientLogo img{width:100px;height:auto;cursor:pointer}.companyLogo{position:fixed;bottom:20px;left:20px}.companyLogo img{width:100px;height:auto;cursor:pointer}.color-picker-panel{position:relative;bottom:220px;left:50%;transform:translate(-50%);width:min(95vw,900px);padding:18px 24px;background:#00000059;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:14px;color:#fff;text-align:center}.color-picker-close{position:absolute;top:8px;right:10px;width:28px;height:28px;border:none;border-radius:50%;background:#ffffff26;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.color-picker-close:hover{background:#ffffff59}.color-buttons-container{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding:8px 50px;scroll-behavior:smooth}.color-buttons-container button{width:42px;height:42px;min-width:42px;border-radius:50%;border:none;cursor:pointer;transition:transform .15s ease}.color-buttons-container button.selected{transform:scale(1.15);box-shadow:0 0 0 3px #fff}.color-buttons-container::-webkit-scrollbar{height:5px}.color-buttons-container::-webkit-scrollbar-track{background:#fff3;border-radius:10px}.color-buttons-container::-webkit-scrollbar-thumb{background:#fff;border-radius:10px}.color-scroll-wrapper{position:relative;margin-top:14px}.color-scroll-wrapper:before,.color-scroll-wrapper:after{content:"";position:absolute;top:0;bottom:0;width:40px;pointer-events:none;z-index:2}.color-scroll-wrapper:before{left:0;background:linear-gradient(to right,rgba(0,0,0,.5),transparent)}.color-scroll-wrapper:after{right:0;background:linear-gradient(to left,rgba(0,0,0,.5),transparent)}@media (max-width:600px){.color-picker-panel{bottom:210px;padding:14px}.color-buttons-container button{width:36px;height:36px;min-width:36px}}.wall-color-btn{width:34px;height:34px;border-radius:50%;border:none;background:#fff;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000040;transition:transform .15s}.wall-color-btn:hover{transform:scale(1.1)}.btnFontFam{font-family:var(--font-fam)}.texturePicker{display:flex;flex-direction:column;gap:8px}.fileUpload{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff14;border-radius:12px;height:80px;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:.2s ease}.fileUpload:hover{background:#ffffff1f}.previewImg{width:100%;height:100%;object-fit:cover}.tpTitle{font-size:16px;margin-bottom:8px;color:#ffffffb3}.tpControls{display:flex;flex-direction:column;gap:12px;margin-top:16px;margin-bottom:16px}.sliderControl{display:flex;flex-direction:column;gap:6px}.sliderHeader{display:flex;justify-content:space-between;font-size:12px;opacity:.85}.sliderHeader .value{font-variant-numeric:tabular-nums;opacity:.7}input[type=range]{-webkit-appearance:none;height:4px;border-radius:10px;background:#fff3;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#4da3ff;cursor:pointer;transition:.2s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.bottomPanel{position:fixed;bottom:0;left:0;right:0;z-index:100;padding:0 0 calc(env(safe-area-inset-bottom,16px) + 16px);display:flex;flex-direction:column;align-items:center;gap:14px;pointer-events:none}.dotsLayer{display:flex;flex-direction:column;align-items:center;gap:14px;pointer-events:all}.dotsLayer.animIn{animation:dotsIn .38s cubic-bezier(.34,1.5,.64,1) forwards}.dotsLayer.animOut{animation:dotsOut .24s ease forwards}.dotsLayer{width:100%;max-width:500px}.pillsRow{width:auto;max-width:min(500px,calc(100% - 20px))}@keyframes dotsIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes dotsOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(14px)}}.closeFloat{width:30px;height:30px;border-radius:50%;background:#ffffff1f;border:.5px solid rgba(255,255,255,.28);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ffffffd1;transition:background .18s,transform .18s,box-shadow .18s;animation:closeIn .36s cubic-bezier(.34,1.5,.64,1);box-shadow:0 2px 8px #00000059,0 1px 2px #00000040,inset 0 .5px #ffffff2e}.closeFloat:hover{background:#fff3;transform:scale(1.1);box-shadow:0 4px 14px #0006,0 1px 3px #0000004d,inset 0 .5px #ffffff38}.closeFloat:active{transform:scale(.88)}@keyframes closeIn{0%{transform:scale(.5) rotate(-90deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.cpDotsRow{display:flex;gap:11px;overflow-x:auto;padding:4px 6px 10px;width:100%;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}.cpDotsRow::-webkit-scrollbar{height:3px}.cpDotsRow::-webkit-scrollbar-track{background:#ffffff0f;border-radius:2px;margin:0 8px}.cpDotsRow::-webkit-scrollbar-thumb{background:#ffffff47;border-radius:2px;transition:background .2s}.cpDotsRow::-webkit-scrollbar-thumb:hover{background:#ffffff73}.cpDot{width:44px;height:44px;border-radius:50%;flex-shrink:0;cursor:pointer;border:2.5px solid transparent;transition:transform .2s,border-color .2s,box-shadow .2s;animation:dotPop .34s cubic-bezier(.34,1.5,.64,1) both;box-shadow:0 3px 10px #0000004d,inset 0 1px #ffffff59,inset 0 -1px #0000001f}.cpDot:hover{transform:scale(1.1);box-shadow:0 6px 16px #00000061,inset 0 1px #fff6,inset 0 -1px #00000026}.cpDot:active{transform:scale(.84)}.cpDot.sel{border-color:#fffffff2;transform:scale(1.08);box-shadow:0 0 0 2px #00000059,0 0 0 5px #ffffff2e,0 6px 18px #0006,inset 0 1px #fff6,inset 0 -1px #00000026;animation:dotSel .38s cubic-bezier(.34,1.5,.64,1)}@keyframes dotPop{0%{transform:scale(.4);opacity:0}65%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes dotSel{0%{transform:scale(1)}35%{transform:scale(.78)}70%{transform:scale(1.18)}to{transform:scale(1.08)}}.pillsRow{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;background:#120b0394;border:.5px solid rgba(255,255,255,.11);backdrop-filter:blur(24px) saturate(1.8);-webkit-backdrop-filter:blur(24px) saturate(1.8);border-radius:26px;padding:2px;pointer-events:all}.pillsRow::-webkit-scrollbar{display:none}.partPill{flex-shrink:0;height:44px;padding:0 18px;border-radius:22px;background:transparent;border:none;color:#ffffff73;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:8px;white-space:nowrap;transition:color .2s,background .2s}.partPill:active{transform:scale(.93)}.partPill.active{background:#ffffff21;color:#fff}.pillSwatch{width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(255,255,255,.2);flex-shrink:0;transition:background .3s ease}.texDot{border-radius:12px;width:44px;height:44px;box-shadow:0 3px 10px #00000059,0 0 0 0 transparent}.texDot.sel{border-color:#ffffffe6;transform:scale(1.08);box-shadow:0 0 0 2px #00000059,0 0 0 5px #ffffff2e,0 6px 18px #0006;animation:dotSel .38s cubic-bezier(.34,1.5,.64,1)}.texDot:hover{transform:scale(1.1);box-shadow:0 6px 16px #00000061}.hotspot-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;-webkit-user-select:none;user-select:none;pointer-events:auto}.hotspot-premium{position:relative;width:52px;height:52px;border-radius:999px;border:none;outline:none;cursor:pointer;background:radial-gradient(circle at center,#ffffff24,#ffffff0a);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;transition:transform .35s ease,background .35s ease;box-shadow:0 0 0 1px #ffffff8c,0 0 0 2px #00000026,0 8px 30px #00000059;animation:hotspotFloat 3s ease-in-out infinite}.hotspot-premium:hover{transform:scale(1.08) translateY(-2px);background:radial-gradient(circle at center,#ffffff38,#ffffff14)}.hotspot-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:2px solid rgba(255,255,255,.7);animation:hotspotPulse 2.4s infinite}.hotspot-core{width:32px;height:32px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#ffffff40,#ffffff14);box-shadow:inset 0 1px 2px #ffffff73,0 2px 10px #00000040}.hotspot-label{padding:8px 14px;border-radius:999px;font-size:13px;font-weight:500;letter-spacing:.2px;color:#fff;background:#0f0f0fad;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 14px #0000004d;white-space:nowrap}@keyframes hotspotFloat{0%{transform:translateY(0)}50%{transform:translateY(-4px)}to{transform:translateY(0)}}@keyframes hotspotPulse{0%{transform:scale(1);opacity:.9}70%{transform:scale(1.25);opacity:0}to{transform:scale(1.25);opacity:0}}.panorama-loader{width:180px;height:180px;border-radius:999px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(circle at center,#ffffff1f,#ffffff08);border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 40px #00000059,inset 0 1px 1px #ffffff1a;animation:loaderFloat 3s ease-in-out infinite}.loader-ring{position:relative;width:120px;height:120px}.loader-svg{width:120px;height:120px;transform:rotate(-90deg)}.loader-track{fill:none;stroke:#ffffff14;stroke-width:4}.loader-progress{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .2s linear;filter:drop-shadow(0 0 10px rgba(255,255,255,.5))}.loader-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.loader-percent-pano{color:#fff;font-size:28px;font-weight:600;letter-spacing:-1px}.loader-text{color:#ffffffb8;font-size:12px;text-transform:uppercase;letter-spacing:2px}@keyframes loaderFloat{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.roomSwitcher{position:fixed;bottom:0;left:0;right:0;z-index:100;padding:0 0 calc(env(safe-area-inset-bottom,16px) + 16px);display:flex;flex-direction:column;align-items:center;gap:12px;pointer-events:none}.subRoomRow{display:flex;flex-direction:column;align-items:center;gap:10px;width:min(500px,calc(100% - 20px));pointer-events:all}.subRoomRow.animIn{animation:dotsIn .38s cubic-bezier(.34,1.5,.64,1) forwards}.subRoomRow.animOut{animation:dotsOut .24s ease forwards}.subRoomScroll{display:flex;gap:10px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent;padding:4px 4px 8px;width:100%;cursor:grab;user-select:none;-webkit-user-select:none}.subRoomScroll::-webkit-scrollbar{height:3px}.subRoomScroll::-webkit-scrollbar-track{background:#ffffff0f;border-radius:2px;margin:0 6px}.subRoomScroll::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:2px}.subRoomCard{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:0;animation:dotPop .34s cubic-bezier(.34,1.5,.64,1) both;transition:transform .2s}.subRoomCard:hover{transform:scale(1.05)}.subRoomCard:active{transform:scale(.92)}.subRoomThumb{width:72px;height:54px;border-radius:12px;overflow:hidden;border:2px solid transparent;position:relative;transition:border-color .22s,box-shadow .22s;box-shadow:0 3px 10px #00000059}.subRoomThumb img{width:100%;height:100%;object-fit:cover;display:block}.subRoomCard.active .subRoomThumb{border-color:#ffffffe0;box-shadow:0 0 0 2px #0000004d,0 0 0 4px #ffffff26,0 6px 18px #0006}.subRoomActiveDot{position:absolute;top:5px;right:5px;width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80b3;border:1px solid rgba(0,0,0,.3)}.subRoomLabel{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#fff9;white-space:nowrap;transition:color .2s}.subRoomCard.active .subRoomLabel{color:#fffffff2}.roomDot{width:7px;height:7px;border-radius:50%;background:#ffffff38;flex-shrink:0;transition:background .25s,box-shadow .25s,transform .25s}.roomDot.active{background:#4ade80;box-shadow:0 0 6px #4ade80a6;animation:dotPulse .4s ease}@keyframes dotPulse{0%{transform:scale(1)}50%{transform:scale(1.5)}to{transform:scale(1)}}
