@layer ds.tokens,ds.base;@layer ds.components{.m2-plan{gap:var(--space-4);color:var(--color-text-primary);grid-template-columns:minmax(0,1fr);margin:0;display:grid;container:m2-plan/inline-size}.m2-plan--split{border-radius:var(--radius-2xl);overflow:hidden}@media (min-width:1024px){.m2-plan--split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0}}.m2-plan__photo{background:var(--color-surface-sunken);min-height:0;position:relative;overflow:hidden}.m2-plan__photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.m2-plan__hero{z-index:1;gap:var(--space-3);min-width:0;color:var(--color-text-on-photo);display:grid;position:relative}.m2-plan__hero-name{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-heading-lg);text-transform:uppercase;line-height:var(--leading-display);opacity:.85;text-wrap:balance;overflow-wrap:anywhere}.m2-plan__facts{gap:var(--space-2) var(--space-6);margin:var(--space-1) 0 0;padding-top:var(--space-3);border-top:var(--border-hairline) solid currentColor;border-top-color:color-mix(in srgb, currentColor 25%, transparent);flex-wrap:wrap;display:flex}.m2-plan__fact dt{font-size:var(--text-label);font-weight:var(--weight-medium);letter-spacing:var(--tracking-label);text-transform:uppercase;opacity:.7}.m2-plan__fact dd{font-family:var(--font-display);font-weight:var(--weight-display);font-size:clamp(1.25rem,1rem + .9vw,1.75rem);line-height:var(--leading-display);font-variant-numeric:var(--numeric-display);white-space:nowrap;margin:0}.m2-plan__hero-area{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-lg);font-variant-numeric:var(--numeric-display);white-space:nowrap;line-height:.9}.m2-plan__panel{gap:var(--space-5);background:var(--color-surface-page);grid-template-columns:minmax(0,1fr);align-content:start;padding:clamp(1.25rem,.5rem + 3vw,3rem);display:grid;container:m2-plan/inline-size}.m2-plan__head{justify-content:space-between;align-items:flex-end;gap:var(--space-2) var(--space-6);flex-wrap:wrap;display:flex}.m2-plan__head-value{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-md);text-transform:uppercase;line-height:var(--leading-display);font-variant-numeric:var(--numeric-display)}.m2-plan__head-sub{font-size:var(--text-body-sm);color:var(--color-text-secondary)}.m2-plan__tiers{justify-self:start}.m2-plan__stage{aspect-ratio:4/3;border-radius:var(--radius-lg);background:var(--color-plan-paper);color:var(--color-plan-line);touch-action:pan-y pinch-zoom;position:relative;overflow:hidden}.m2-plan__stage[data-tier=blueprint]{border-radius:var(--radius-xs)}.m2-plan__stage img{object-fit:contain;width:100%;height:100%}.m2-plan__stage[data-tier=blueprint] img{mix-blend-mode:var(--illustration-blend);filter:var(--illustration-filter)}.m2-plan__stage[data-tier=furnished]{background:var(--color-plan-raster-paper);padding:var(--space-3)}.m2-plan__stage[data-tier="3d"]{background:radial-gradient(120% 90% at 50% 40%, var(--color-surface-raised), var(--color-surface-sunken))}.m2-plan__stage[aria-busy=true]:after{content:"";background:linear-gradient(100deg, transparent 30%, var(--color-surface-skeleton-shine) 50%, transparent 70%) 0 0 / 200% 100%, var(--color-surface-skeleton);animation:1.4s linear infinite m2-shimmer;position:absolute;inset:0}.m2-plan__empty{place-items:center;gap:var(--space-2);padding:var(--space-6);text-align:center;font-size:var(--text-body-sm);color:var(--color-text-muted);display:grid;position:absolute;inset:0}.m2-plan-svg{width:100%;height:100%}.m2-plan-svg .wall{fill:none;stroke:var(--color-plan-line);stroke-width:var(--plan-wall,5px);stroke-linecap:square;vector-effect:non-scaling-stroke}.m2-plan-svg .wall--thin{stroke-width:calc(var(--plan-wall,5px) * .45)}.m2-card-unit__plan,.m2-plan__thumb,.m2-hero-editorial__inset{--plan-wall:2px}.m2-plan-svg .fixture{fill:none;stroke:var(--color-plan-line);stroke-width:1px;opacity:.85}.m2-plan-svg .door{fill:none;stroke:var(--color-plan-line);stroke-width:1px}.m2-plan-svg .window{stroke:var(--color-plan-line);stroke-width:1px;fill:var(--color-plan-paper)}.m2-plan-svg .hatch{stroke:var(--color-plan-line);stroke-width:.75px;opacity:.6}.m2-plan-svg .dim-line{stroke:var(--color-plan-dimension);stroke-width:1px;stroke-dasharray:2 3;fill:none}.m2-plan-svg .dim-tick{stroke:var(--color-plan-dimension);stroke-width:1px}.m2-plan-svg .dim-label{fill:var(--color-plan-dimension);font-family:var(--font-sans);font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--color-plan-paper);stroke-width:4px;font-size:12px}.m2-plan-svg .room-label{fill:var(--color-plan-line);font-family:var(--font-sans);font-size:13px;font-weight:600}.m2-plan-svg .room-area{fill:var(--color-plan-dimension);font-family:var(--font-sans);font-variant-numeric:tabular-nums;font-size:12px}.m2-plan-svg .marker{fill:var(--color-plan-marker)}.m2-plan-svg .marker-halo{fill:var(--color-plan-marker);opacity:.22}.m2-plan-svg .compass{fill:none;stroke:var(--color-plan-line);stroke-width:1px}.m2-plan-svg .room.is-active{fill:color-mix(in srgb, var(--color-plan-marker) 14%, transparent)}@media (hover:hover){.m2-plan-svg .room[data-room]:hover{fill:color-mix(in srgb, var(--color-plan-marker) 14%, transparent)}}.m2-plan__toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.m2-plan__nav{gap:var(--space-2);display:flex}.m2-plan__counter{font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:var(--numeric-data)}.m2-plan__thumbs{gap:var(--space-2);padding:0 0 var(--space-1);scrollbar-width:none;margin:0;list-style:none;display:flex;overflow-x:auto}.m2-plan__thumbs::-webkit-scrollbar{display:none}.m2-plan__thumb{aspect-ratio:1;border-radius:var(--radius-sm);border:var(--border-hairline) solid var(--color-border-default);background:var(--color-plan-paper);opacity:.7;width:4.5rem;transition:opacity var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);flex:none;overflow:hidden}.m2-plan__thumb img{object-fit:contain;width:100%;height:100%}.m2-plan__thumb:has(>img){background:var(--color-plan-raster-paper)}@media (hover:hover){.m2-plan__thumb:hover{opacity:1}}.m2-plan__thumb[aria-current=true]{opacity:1;border-color:var(--color-text-primary);box-shadow:inset 0 0 0 1px var(--color-text-primary)}.m2-plan__stats{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}@container m2-plan (max-width:30rem){.m2-plan__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.m2-plan-svg .room-label,.m2-plan-svg .room-area,.m2-plan-svg .dim-label{display:none}}.m2-plan__stat dt{font-size:var(--text-body-sm);color:var(--color-text-secondary)}.m2-plan__stat dd{margin:var(--space-1) 0 0;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-sm);line-height:var(--leading-display);font-variant-numeric:var(--numeric-display);white-space:nowrap;display:flex}.m2-plan__stat dd svg{width:var(--icon-lg);height:var(--icon-lg);flex:none}.m2-plan__rooms summary{min-height:var(--touch-min);font-size:var(--text-body-sm);font-weight:var(--weight-medium);color:var(--color-text-link);align-items:center;display:inline-flex}.m2-plan__source{font-size:var(--text-caption);color:var(--color-text-muted)}.m2-plan:fullscreen,.m2-plan.is-fullscreen{padding:var(--space-6);background:var(--color-surface-page);overflow:auto}.m2-plan:fullscreen .m2-plan__stage{aspect-ratio:auto;height:calc(var(--viewport-h) - 12rem)}.m2-gallery{gap:var(--space-2);grid-template-rows:auto;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.m2-gallery__item{border-radius:var(--radius-lg);background:var(--color-surface-sunken);aspect-ratio:4/3;position:relative;overflow:hidden}.m2-gallery__item:first-child{aspect-ratio:16/10;border-radius:var(--radius-xl);grid-column:1/-1}.m2-gallery__item:nth-child(n+4){display:none}@media (min-width:768px){.m2-gallery{aspect-ratio:16/7.5;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:2fr 1fr 1fr}.m2-gallery__item,.m2-gallery__item:first-child{aspect-ratio:auto;grid-column:auto}.m2-gallery__item:first-child{grid-row:1/span 2}.m2-gallery__item:nth-child(n+4){display:block}.m2-gallery__item:nth-child(n+6){display:none}}.m2-gallery__btn{cursor:zoom-in;width:100%;height:100%;display:block;position:absolute;inset:0}.m2-gallery__btn:focus-visible{outline:var(--border-focus) solid transparent;outline-offset:-3px;box-shadow:inset 0 0 0 3px var(--color-focus-ring)}.m2-gallery__img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slower) var(--ease-standard)}@media (hover:hover){.m2-gallery__btn:hover .m2-gallery__img{transform:scale(1.02)}}.m2-gallery__more{background:var(--color-surface-scrim);color:var(--color-text-on-photo);font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-display-sm);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.m2-gallery__credit{inset-inline-end:var(--space-2);bottom:var(--space-2);border-radius:var(--radius-xs);background:var(--color-surface-glass);color:var(--color-text-primary);padding:.125rem .5rem;font-size:.6875rem;position:absolute}.m2-gallery--empty{aspect-ratio:auto;display:block}.m2-gallery--empty .m2-gallery__item,.m2-gallery--empty .m2-gallery__item:first-child{aspect-ratio:auto;border-radius:var(--radius-xl);min-height:15rem;display:grid}@media (min-width:768px){.m2-gallery--empty .m2-gallery__item:first-child{min-height:20rem}}.m2-lightbox{width:min(72rem, calc(100vw - var(--space-6)));max-width:none;height:min(52rem, calc(var(--viewport-h) - var(--space-8)));border:var(--border-hairline) solid var(--color-lightbox-line);border-radius:var(--radius-xl);background:var(--color-lightbox-bg);max-height:none;color:var(--color-lightbox-text);box-shadow:var(--shadow-4);-webkit-user-select:none;user-select:none;margin:auto;padding:0;overflow:hidden}.m2-lightbox[open]{animation:m2-fade-in var(--duration-base) var(--ease-standard);grid-template-rows:auto minmax(0,1fr) auto auto;display:grid}.m2-lightbox:has(.m2-lightbox__grid){grid-template-rows:auto minmax(0,1fr)}.m2-lightbox::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0e0d0a9e}.m2-lightbox img,.m2-gallery img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.m2-lightbox img::selection,.m2-gallery img::selection{background:0 0}.m2-lightbox__bar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3) var(--space-2) var(--space-4);display:flex}.m2-lightbox__counter{font-size:var(--text-body-sm);font-variant-numeric:var(--numeric-data);color:var(--color-lightbox-text-muted)}.m2-lightbox__actions{align-items:center;gap:var(--space-2);display:flex}.m2-lightbox__mode{align-items:center;gap:var(--space-2);min-height:2.25rem;padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--color-lightbox-control-bg);color:var(--color-lightbox-text);font-size:var(--text-body-sm);display:inline-flex}.m2-lightbox__mode svg{width:var(--icon-sm);height:var(--icon-sm)}@media (hover:hover){.m2-lightbox__mode:hover{background:var(--color-lightbox-control-bg-hover)}}.m2-lightbox__mode:focus-visible{outline:var(--border-focus) solid transparent;box-shadow:0 0 0 2px var(--color-lightbox-bg), 0 0 0 4px var(--color-lightbox-focus)}.m2-lightbox__stage{min-height:0;padding-inline:var(--space-3);touch-action:pan-y pinch-zoom;place-items:center;display:grid;position:relative}.m2-lightbox__img{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:100%}.m2-lightbox__prev,.m2-lightbox__next{color:var(--color-lightbox-text);background:var(--color-lightbox-control-bg);margin-top:-1.375rem;position:absolute;top:50%}.m2-lightbox__prev{inset-inline-start:var(--space-4)}.m2-lightbox__next{inset-inline-end:var(--space-4)}.m2-lightbox .m2-icon-btn{color:var(--color-lightbox-text)}@media (hover:hover){.m2-lightbox__prev:hover,.m2-lightbox__next:hover{background:var(--color-lightbox-control-bg-hover)}}.m2-lightbox .m2-icon-btn:focus-visible{outline:var(--border-focus) solid transparent;outline-offset:var(--focus-offset);box-shadow:0 0 0 2px var(--color-lightbox-bg), 0 0 0 4px var(--color-lightbox-focus)}.m2-lightbox__strip{gap:var(--space-2);padding:var(--space-3) var(--space-4) 0;scrollbar-width:thin;display:flex;overflow-x:auto}.m2-lightbox__thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);opacity:.55;width:4.5rem;box-shadow:0 0 0 1px var(--color-lightbox-line);flex:none;overflow:hidden}.m2-lightbox__thumb img{object-fit:cover;width:100%;height:100%}.m2-lightbox__thumb[aria-current=true]{opacity:1;box-shadow:0 0 0 2px var(--color-lightbox-focus)}@media (hover:hover){.m2-lightbox__thumb:hover{opacity:1}}.m2-lightbox__thumb:focus-visible,.m2-lightbox__cell:focus-visible{outline:var(--border-focus) solid transparent;box-shadow:0 0 0 2px var(--color-lightbox-bg), 0 0 0 4px var(--color-lightbox-focus)}.m2-lightbox__grid{gap:var(--space-2);padding:var(--space-2) var(--space-4) var(--space-4);overscroll-behavior:contain;grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));align-content:start;margin:0;list-style:none;display:grid;overflow-y:auto}.m2-lightbox__cell{aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--color-lightbox-control-bg);cursor:zoom-in;width:100%;display:block;overflow:hidden}.m2-lightbox__cell img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slower) var(--ease-standard)}@media (hover:hover){.m2-lightbox__cell:hover img{transform:scale(1.04)}}.m2-lightbox__caption{padding:var(--space-2) var(--space-4) var(--space-3);font-size:var(--text-body-sm);color:var(--color-lightbox-text-muted);text-align:center}@media (max-width:640px){.m2-lightbox{width:100vw;height:var(--viewport-h);border-inline:0;border-radius:0;max-height:none}.m2-lightbox__thumb{width:3.5rem}}@media (prefers-reduced-motion:reduce){@media (hover:hover){.m2-gallery__btn:hover .m2-gallery__img{transform:none}}}}@layer ds.utilities;.m2-plan__stage img.m2-plan__zoomable{cursor:zoom-in}.m2-plan__stage--empty{aspect-ratio:auto;background:color-mix(in srgb, var(--color-surface-raised) 55%, transparent);border:var(--border-hairline) dashed var(--color-border-default);min-height:15rem}.m2-plan__stage--empty .m2-plan__empty{padding:var(--space-6) var(--space-5);gap:var(--space-3);position:static}.m2-noplan{justify-items:center;gap:var(--space-3);max-width:26rem;color:var(--color-text-secondary);margin-inline:auto;display:grid}.m2-noplan__art{width:clamp(7rem,40%,10rem);height:auto;color:var(--color-text-muted)}.m2-noplan__title{font-size:var(--text-heading-xs);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin:0}.m2-noplan__body{font-size:var(--text-body-sm);margin:0}.m2-plan--split .m2-plan__panel{gap:var(--space-3);padding:clamp(1rem,.5rem + 2vw,1.75rem)}.m2-plan--split .m2-plan__head:not(:has(.m2-plan__tiers)){display:none}.m2-plan--split .m2-plan__head>div{display:none}.m2-plan--split .m2-plan__stage[data-tier]{aspect-ratio:4/3;justify-self:center;width:100%;max-height:20rem}.m2-plan--split .m2-plan__source{font-size:var(--text-caption)}.m2-plan--split .m2-media-ph--hero:after{display:none}@media (min-width:1024px){.m2-plan--split .m2-media-ph--hero:after{display:block;inset:8% 5% 38% 55%}}.m2-plan__hero-code,.m2-plan__hero-complex{display:block}.m2-plan__hero-complex{letter-spacing:.02em;opacity:.9;font-size:.62em}@media (min-width:1024px){.m2-plan--split .m2-media-ph--hero .m2-plan__hero{max-inline-size:55%}}
