@keyframes floorPillFadeIn{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes floorPlanPoiPop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes floorPlanPoiFade{0%{opacity:0}to{opacity:1}}@keyframes floorPlanPoiTooltipIn{0%{opacity:0}to{opacity:1}}@keyframes heroAngleFadeIn{0%{opacity:0;transform:scale(1.015)}to{opacity:1;transform:none}}@keyframes heroAngleFadeInFlat{0%{opacity:0}to{opacity:1}}@keyframes heroFloorPulse{0%,to{opacity:.3}50%{opacity:.8}}.floor-plans-hero__zoom-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:#fff;color:#1f2937;box-shadow:0 1px 4px rgba(0,0,0,.15);cursor:pointer;transition:background .18s ease,box-shadow .18s ease,color .18s ease}.floor-plans-hero__zoom-btn:hover{background:#f3f4f6;box-shadow:0 2px 8px rgba(0,0,0,.2)}.floor-plans-hero__zoom-btn:active{background:#e5e7eb}.floor-plans-hero__zoom-btn:focus-visible{outline:2px solid var(--theme-svg-unit-hover,#6366f1);outline-offset:2px}.floor-plans-skeleton{width:100%}.floor-plans-skeleton-layout{display:flex;gap:32px;width:100%;align-items:flex-start}.floor-plans-skeleton-layout__grid{flex:1 1 0;min-width:0}.floor-plans-skeleton-layout__hero{flex:0 0 clamp(200px,35vw,480px);width:clamp(200px,35vw,480px)}@media(max-width:900px){.floor-plans-skeleton-layout{flex-direction:column}.floor-plans-skeleton-layout__grid{flex:1 1 100%;max-width:100%}.floor-plans-skeleton-layout__hero{flex:1 1 100%;width:100%;order:-1}}.floor-plans-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(260px,180px + 120px * var(--theme-floor-plan-card-ratio,1.3333),340px),1fr));gap:24px}@media(max-width:768px){.floor-plans-skeleton-grid{grid-template-columns:1fr;gap:20px}}.floor-plan-skeleton-card{width:100%;aspect-ratio:var(--theme-floor-plan-card-ratio,1.3333);overflow:hidden}.floor-plan-skeleton-hero{border-radius:12px;aspect-ratio:3/4;overflow:hidden;width:100%}.floor-plans-view{width:100%;position:relative}.floor-plans-view--loading,.floor-plans-view__empty,.floor-plans-view__error{padding:80px 20px;text-align:center;color:rgba(31,27,49,.6)}.floor-plans-view__error button{margin-top:16px;padding:8px 20px;border-radius:8px;border:1px solid rgba(31,27,49,.2);background:rgba(31,27,49,.05);color:#1f1b31;cursor:pointer;font-size:.9rem;transition:background .2s ease}.floor-plans-view__error button:hover{background:rgba(31,27,49,.1)}.floor-plans-skeleton-overlay{position:absolute;inset:0;pointer-events:none;z-index:5}.floor-plans-layout{display:flex;gap:32px;width:100%;align-items:flex-start}.floor-plans-layout__grid{flex:1 1 0;min-width:0}.floor-plans-layout__hero{flex-grow:0;flex-shrink:0;flex-basis:auto;align-self:flex-start;max-width:40vw;min-width:200px;position:sticky;top:calc(var(--navbar-height) + 80px);transition:flex-basis .45s cubic-bezier(.22,1,.36,1),max-width .45s cubic-bezier(.22,1,.36,1)}.floor-plans-layout[data-hero-expanded=true] .floor-plans-layout__hero{flex-basis:auto;width:min(65vw,70vh*var(--hero-ratio,1.6));max-width:65vw}@media(max-width:900px){.floor-plans-layout[data-hero-expanded=true] .floor-plans-layout__hero{width:100%;max-width:100%}}.floor-plans-layout[data-hero-expanded=true] .floor-plans-grid{grid-template-columns:1fr}.floor-plans-layout[data-hero-expanded=true] .floor-plans-hero[data-has-enlarged=true] .floor-plans-hero__image--default{position:absolute;inset:0;width:100%;height:100%;opacity:0}.floor-plans-layout[data-hero-expanded=true] .floor-plans-hero[data-has-enlarged=true] .floor-plans-hero__image--enlarged{position:static;opacity:1;width:100%;height:auto}.floor-plans-layout[data-hero-expanded=true] .floor-plans-hero[data-has-enlarged=true] .floor-plans-hero__svg:not(.floor-plans-hero__svg--enlarged){display:none}.floor-plans-layout[data-hero-expanded=true] .floor-plans-hero[data-has-enlarged=true] .floor-plans-hero__svg--enlarged{display:block}@media(max-width:900px){.floor-plans-layout{flex-direction:column}.floor-plans-layout__grid{flex:1 1 100%;width:100%;max-width:100%}.floor-plans-layout__hero{flex:1 1 100%;max-width:100%;position:relative;top:0;order:-1}}.floor-plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(260px,180px + 120px * var(--theme-floor-plan-card-ratio,1.3333),340px),1fr));gap:24px;transition:gap .4s ease;align-items:start}.floor-plans-grid[data-expanded=true]{grid-template-columns:1fr;gap:0}@media(max-width:768px){.floor-plans-grid{grid-template-columns:1fr;gap:20px}}[data-fp-columns=single] .floor-plans-grid,[data-fp-columns=single] .floor-plans-skeleton-grid{grid-template-columns:minmax(0,1fr)}.floor-plans-hero{border-radius:12px;position:relative;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.0784313725)}.floor-plans-hero__image{width:100%;height:auto;max-height:70vh;object-fit:contain;display:block;transition:opacity .45s cubic-bezier(.22,1,.36,1)}.floor-plans-hero__image--enlarged{position:absolute;inset:0;width:100%;height:100%;opacity:0}.floor-plans-hero__svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.floor-plans-hero__svg--enlarged{display:none}.floor-plans-hero__pulse{animation:heroFloorPulse 2.8s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.floor-plans-hero__pulse{animation:none;opacity:.7}}.floor-plans-hero__floor-pill{position:absolute;top:12px;left:12px;z-index:4;pointer-events:none;padding:6px 12px;border-radius:999px;background:var(--theme-floor-plan-hero-label-bg,#ffffff);color:var(--theme-floor-plan-hero-label-text,#000000);font-family:var(--font-heading,system-ui,sans-serif);font-size:.85rem;font-weight:500;line-height:1;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 1px 4px rgba(0,0,0,.15);animation:floorPillFadeIn .15s ease-out}@media(max-width:900px){.floor-plans-hero__floor-pill--floor{display:none}}.floor-plans-hero__floor-pill--angle{animation:floorPillFadeIn .26s ease-out}@media(prefers-reduced-motion:reduce){.floor-plans-hero__floor-pill--angle{animation-duration:.15s}}.floor-plans-hero__stage{position:relative}.floor-plans-hero__stage--ghost{pointer-events:none}.floor-plans-hero__ghost-image{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain}.floor-plans-hero__stage--incoming{position:absolute;inset:0;z-index:2;animation:heroAngleFadeIn .26s cubic-bezier(.22,1,.36,1) both}.floor-plans-hero__stage--incoming .floor-plans-hero__image{max-height:100%}@media(prefers-reduced-motion:reduce){.floor-plans-hero__stage--incoming{animation-name:heroAngleFadeInFlat}}.floor-plans-hero__zoom-btn{position:absolute;top:12px;right:12px;z-index:5;pointer-events:auto}@media(max-width:900px){.floor-plans-hero__zoom-btn{display:none}}.floor-plans-hero__angle-nav{position:absolute;inset:0;z-index:4;pointer-events:none}.floor-plans-hero__angle-btn{position:absolute;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:24px;height:64px;padding:0;border:none;pointer-events:auto;cursor:pointer;background:rgba(17,24,39,.55);backdrop-filter:blur(2px);color:#fff;transition:background .18s ease}.floor-plans-hero__angle-btn:hover{background:rgba(17,24,39,.72)}.floor-plans-hero__angle-btn:active{background:rgba(17,24,39,.82)}.floor-plans-hero__angle-btn:focus-visible{outline:2px solid var(--theme-svg-unit-hover,#6366f1);outline-offset:-2px}.floor-plans-hero__angle-btn--prev{left:0;border-radius:0 4px 4px 0}.floor-plans-hero__angle-btn--next{right:0;border-radius:4px 0 0 4px}@media(prefers-reduced-motion:reduce){.floor-plans-hero__angle-btn{transition:none}}.floor-plans-hero__pois{position:absolute;z-index:3;pointer-events:none}.floor-plans-hero__poi-wrap{position:absolute;transform:translate(-50%,-50%);pointer-events:none}.floor-plans-hero__poi-pop{width:100%;height:100%;animation:floorPlanPoiPop .34s cubic-bezier(.34,1.56,.64,1) both}@media(prefers-reduced-motion:reduce){.floor-plans-hero__poi-pop{animation:floorPlanPoiFade .2s ease-out both}}.floor-plans-hero__poi{width:100%;height:100%;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;pointer-events:auto;cursor:pointer;box-shadow:0 1px 6px rgba(0,0,0,.3);transition:transform .2s ease,border-width .2s ease}.floor-plans-hero__poi img{width:100%;height:100%;object-fit:cover}.floor-plans-hero__poi:focus-visible{outline:none;box-shadow:0 1px 6px rgba(0,0,0,.3),0 0 0 3px var(--theme-svg-unit-hover,#6366f1)}.floor-plan-poi-tooltip{position:fixed;transform:translate(-50%,-100%);pointer-events:none;z-index:1000;max-width:260px}.floor-plan-poi-tooltip[data-below=true]{transform:translate(-50%)}.floor-plan-poi-tooltip__card{background:var(--theme-floor-plan-tooltip-bg,#ec8d77);border:1px solid var(--theme-floor-plan-tooltip-border,transparent);color:var(--theme-floor-plan-tooltip-text,#ffffff);border-radius:12px;box-shadow:0 6px 22px rgba(0,0,0,.18);padding:10px 14px;animation:floorPlanPoiTooltipIn .14s ease-out}.floor-plan-poi-tooltip__title{font-size:.9375rem;font-weight:700;letter-spacing:.01em}.floor-plan-poi-tooltip__body{margin-top:3px;font-size:.8125rem;line-height:1.35;opacity:.92}.floor-plan-card{border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.08);transition:transform .2s ease,box-shadow .2s ease}.floor-plan-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.18)}.floor-plan-card[data-card-state=hidden]{display:none}.floor-plan-card[data-card-state=expanded]{animation:floorPlanExpandPop .45s cubic-bezier(.22,1,.36,1) both;width:min(100%,calc(78vh - var(--navbar-height, 51px))*var(--fp-ratio,var(--theme-floor-plan-card-ratio,1.3333)));margin-inline:auto}@media(max-width:768px){.floor-plan-card[data-card-state=expanded]{width:100%}}.floor-plan-card[data-card-state=expanded][data-fp-shape=tall],[data-fp-site-shape=tall] .floor-plan-card[data-card-state=expanded]:not([data-fp-shape]){width:100%}.floor-plan-card__image-container{position:relative;width:100%;aspect-ratio:var(--fp-ratio,var(--theme-floor-plan-card-ratio,1.3333));background:var(--theme-floor-plan-card-bg,#ffffff)}@media(max-width:768px){.floor-plan-card__image-container{aspect-ratio:auto}}.floor-plan-card__image-inner{width:100%;height:100%;padding:var(--fp-pad,var(--theme-floor-plan-image-padding,0))}@media(max-width:768px){.floor-plan-card__image-inner{height:auto}}.floor-plan-card__image-frame{position:relative;width:100%;height:100%}@media(max-width:768px){.floor-plan-card__image-frame{height:auto}}.floor-plan-card__image{width:100%;height:100%;object-fit:contain;display:block;filter:var(--theme-floor-plan-image-filter,none)}@media(max-width:768px){.floor-plan-card__image{height:auto}}.floor-plan-card__svg-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:all}.floor-plan-card__info{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:8px;padding:12px;display:flex;position:absolute;top:0;left:0;right:0}.floor-plan-card__info-left{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.floor-plan-card__building,.floor-plan-card__title{display:inline-block;max-width:100%;padding:6px 12px;border-radius:999px;background:var(--theme-floor-plan-hero-label-bg,#ffffff);color:var(--theme-floor-plan-hero-label-text,#000000);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 1px 4px rgba(0,0,0,.15)}.floor-plan-card__title{margin:0;font-family:var(--font-heading,system-ui,sans-serif);font-size:.85rem;font-weight:500}.floor-plan-card__building{font-family:var(--font-body);font-size:.75rem}.floor-plan-card__zoom-btn{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:8px;padding:0;border:none;border-radius:50%;background:var(--theme-floor-plan-hero-label-bg,#ffffff);color:var(--theme-floor-plan-hero-label-text,#000000);box-shadow:0 1px 4px rgba(0,0,0,.15);cursor:pointer;flex-shrink:0;transition:box-shadow .2s ease,transform .15s ease}.floor-plan-card__zoom-btn:hover{box-shadow:0 2px 8px rgba(0,0,0,.25);transform:scale(1.08)}.floor-plan-card__zoom-btn:active{transform:scale(.95)}.floor-plan-card__zoom-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--theme-svg-unit-hover,#6366f1)}@media(max-width:768px){.floor-plan-card__zoom-btn{display:none}}@keyframes floorPlanExpandPop{0%{transform:scale(.985);opacity:.85}to{transform:scale(1);opacity:1}}.floor-plan-unit{transition:fill-opacity .2s ease,stroke-width .2s ease}.floor-plan-tooltip{background:var(--theme-floor-plan-tooltip-bg,#ec8d77);border:1px solid var(--theme-floor-plan-tooltip-border,transparent);color:var(--theme-floor-plan-tooltip-text,#ffffff);border-radius:18px;box-shadow:0 6px 22px rgba(0,0,0,.18);padding:12px 16px 14px;pointer-events:none;z-index:1000;min-width:200px;max-width:260px;display:flex;flex-direction:column;gap:6px}.floor-plan-tooltip p{margin:0}.floor-plan-tooltip__header{display:flex;justify-content:space-between;align-items:center;gap:12px}.floor-plan-tooltip__header strong{font-size:1rem;font-weight:700;letter-spacing:.01em;color:inherit;flex-shrink:0}.floor-plan-tooltip__status{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:hsla(0,0%,100%,.18);color:inherit;text-align:center}.floor-plan-tooltip__meta{display:flex;align-items:center;gap:14px;padding:6px 0 2px;font-size:.8125rem;font-weight:600}.floor-plan-tooltip__meta-item{display:inline-flex;align-items:center;gap:5px}.floor-plan-tooltip__meta-item svg{opacity:.9}.floor-plan-tooltip__category{font-size:.75rem;opacity:.8}.floor-plan-tooltip__price{font-size:1.0625rem;font-weight:700;letter-spacing:.01em}.floor-plan-tooltip__price--part{font-size:.8125rem;font-weight:500;opacity:.85}.floor-plan-tooltip__breakdown{display:flex;flex-direction:column;gap:2px}.floor-plan-tooltip__options{display:flex;flex-direction:column;gap:3px;padding-top:2px}.floor-plan-tooltip__options-title{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;opacity:.75}.floor-plan-tooltip__options-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.floor-plan-tooltip__option{display:flex;justify-content:space-between;gap:12px;font-size:.8125rem;font-weight:500}.floor-plan-tooltip__option--active{font-weight:700}.floor-plan-tooltip__option-price{opacity:.85;white-space:nowrap}.floor-plan-tooltip__price-title{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.75;margin-bottom:-4px}.floor-plan-legend{position:fixed;left:12px;bottom:calc(12px + env(safe-area-inset-bottom) + var(--legend-footer-lift, 0px));z-index:9990;width:max-content;max-width:min(220px,100vw - 24px);padding:4px;border-radius:12px;border:1px solid rgba(0,0,0,.07);background:hsla(0,0%,100%,.95);backdrop-filter:blur(6px);box-shadow:0 4px 18px rgba(0,0,0,.14);color:#1f2937;font-family:var(--font-body,system-ui,sans-serif)}.floor-plan-legend__toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:4px 6px;border:none;border-radius:8px;background:rgba(0,0,0,0);color:inherit;cursor:pointer;transition:background .15s ease}.floor-plan-legend__toggle:hover{background:rgba(0,0,0,.05)}.floor-plan-legend__toggle:focus-visible{outline:2px solid #6366f1;outline-offset:1px}.floor-plan-legend__title{font-size:.625rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap;opacity:.7}.floor-plan-legend__chevron{flex-shrink:0;opacity:.55;transition:transform .25s ease}.floor-plan-legend[data-open=false] .floor-plan-legend__chevron{transform:rotate(180deg)}.floor-plan-legend[data-open=false] .floor-plan-legend__list{max-height:0;margin-top:0;padding-top:0;padding-bottom:0;opacity:0;overflow:hidden;visibility:hidden}.floor-plan-legend__list{display:flex;flex-direction:column;gap:5px;margin:4px 0 0;padding:0 6px 4px;list-style:none;max-height:40vh;overflow-y:auto;opacity:1;transition:max-height .25s ease,opacity .2s ease,margin-top .25s ease,padding-top .25s ease,padding-bottom .25s ease}.floor-plan-legend__item{display:flex;align-items:center;gap:7px;font-size:.6875rem;font-weight:500;line-height:1.25}.floor-plan-legend__dot{flex-shrink:0;width:9px;height:9px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}.floor-plan-legend__label{min-width:0;overflow-wrap:anywhere}@media(max-width:768px){.floor-plan-legend{left:10px;bottom:calc(10px + env(safe-area-inset-bottom) + var(--legend-footer-lift, 0px));max-width:min(180px,100vw - 20px)}.floor-plan-legend__list{max-height:32vh}.floor-plan-legend[data-yield=true]{display:none}}.floor-plans-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px;padding:100px 20px;text-align:center;color:rgba(31,27,49,.4)}.floor-plans-placeholder svg{color:rgba(31,27,49,.2)}.floor-plans-placeholder h3{font-size:1.5rem;font-weight:600;color:#1f1b31;margin:8px 0 4px}.floor-plans-placeholder p{font-size:.95rem;color:rgba(31,27,49,.5);margin:0}.floor-plans-placeholder__count{margin-top:8px;font-weight:600;color:#1f1b31}