/* Normal document images: native page pinch zoom, no internal scrolling box. */
body.bp-public .bp-floor-plan .bp-floor-viewport,
body.bp-public.page-building .bp-floor-plan .bp-floor-viewport{position:relative;isolation:auto;aspect-ratio:auto;min-height:0;max-height:none;height:auto;padding:clamp(10px,1.7vw,24px);overflow:visible;overscroll-behavior:auto;touch-action:auto;cursor:auto}
body.bp-public .bp-floor-plan .bp-plan-canvas{position:static;inset:auto;transform:none;user-select:auto;-webkit-user-select:auto;touch-action:auto}
body.bp-public .bp-floor-plan .bp-floor-svg,
body.bp-public.page-building .bp-floor-plan .bp-floor-svg{display:block;width:100%;height:auto;max-width:100%;max-height:none;min-width:0;touch-action:auto}
body.bp-public .bp-furnished-image{display:block;position:relative;touch-action:auto}
body.bp-public .bp-furnished-image>img{display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;mix-blend-mode:darken;touch-action:auto}
/* At browser zoom > 1, one finger may pan in both directions. */
body.bp-public .lightbox.is-page-zoomed,
body.bp-public .lightbox.is-page-zoomed .lightbox-figure,
body.bp-public .lightbox.is-page-zoomed img{touch-action:auto!important}

body.bp-public .bp-intro-bottom{grid-template-columns:1fr;gap:38px}
body.bp-public .bp-intro-bottom>p{max-width:680px}
body.bp-public .bp-project-numbers{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:0}
body.bp-public .bp-project-numbers>div{min-width:0;padding-left:24px;gap:20px}
body.bp-public .bp-project-numbers>div:first-child{padding-left:0;border-left:0}
body.bp-public .bp-project-numbers strong{font-size:clamp(62px,6.2vw,96px)}
body.bp-public .bp-project-numbers span{font-size:12px;letter-spacing:.1em;line-height:1.5}
body.bp-public .bp-property-heading{min-height:102px}
body.bp-public .bp-property-count>span{font:400 clamp(26px,2.5vw,38px)/1.1 var(--serif)}
body.bp-public .bp-property-area dd{font-size:clamp(32px,2.9vw,43px);font-weight:600}

body.bp-public .bp-parking-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:28px 0 0}
body.bp-public .bp-parking-totals>div{display:flex;flex-direction:column;gap:10px;min-width:0}
body.bp-public .bp-parking-totals dt{font:400 14px/1.5 var(--sans);color:#78613e;order:2}
body.bp-public .bp-parking-totals dd{font:500 clamp(46px,4.5vw,68px)/1 var(--serif);color:#242019;margin:0}
body.bp-public .bp-apartment-parking{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px 32px;margin:0 0 32px;border:1px solid #af945f73;background:#e9e1d3}
body.bp-public .bp-apartment-parking>p{font:400 27px/1.15 var(--serif);margin:0;color:#3f3527;max-width:230px}
body.bp-public .bp-apartment-parking .bp-parking-totals{margin:0;gap:clamp(28px,5vw,76px)}
body.bp-public .bp-apartment-parking .bp-parking-totals dd{font-size:52px}
body.bp-public .bp-capacity-inline{display:flex;flex-wrap:wrap;gap:8px 24px;padding:18px 0;margin:22px 0 0;border-top:1px solid #a8906252;border-bottom:1px solid #a8906252;font:400 15px/1.6 var(--sans);color:#62533e}
body.bp-public .bp-capacity-inline>span:first-child{color:#8b6c3a}
body.bp-public .bp-capacity-inline strong{font-weight:500;color:#29231a}
body.bp-public .bp-contact-heading .bp-capacity-inline{color:#e7ddcd;border-color:#c9a76855}
body.bp-public .bp-contact-heading .bp-capacity-inline>span:first-child,body.bp-public .bp-contact-heading .bp-capacity-inline strong{color:#ddc28e}
body.bp-public .bp-commercial-summary .bp-capacity-inline{margin-bottom:22px}
body.bp-public .bp-apartment-measures .bp-unit-parking{display:flex;flex-direction:column;gap:8px;margin:24px 0 0;padding-top:20px;border-top:1px solid #c9a76845;color:#e4d9c7;font:400 14px/1.65 var(--sans)}
body.bp-public .bp-unit-parking>span:first-child{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#c9a768}
body.bp-public .bp-unit-parking strong{font-weight:500;color:#e8cd97}
body.bp-public .footer .bp-footer-capacity{display:flex;flex-direction:column;gap:8px;margin-top:23px;font:400 14px/1.5 var(--sans);color:#e5dccc;letter-spacing:.01em}
body.bp-public .bp-footer-capacity strong{display:inline-block;min-width:31px;margin-right:5px;font:500 25px/1 var(--serif);color:#c9a768}

/* The action remains readable while a slow highlight passes behind its label. */
body.bp-public .mobile-contact a:last-child{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#bf9a59,#e0c187 52%,#c3a063);color:#17120a;font-weight:500;box-shadow:inset 0 1px 0 #f4dfb2;animation:bp-inquiry-glow 5s ease-in-out infinite}
body.bp-public .mobile-contact a:last-child:before{content:'';position:absolute;z-index:-1;inset:-80% -35%;background:linear-gradient(105deg,transparent 40%,#fff3d766 50%,transparent 60%);transform:translateX(-80%);animation:bp-inquiry-shine 6s ease-in-out infinite;pointer-events:none}
body.bp-public .mobile-contact a:last-child:after{content:'';position:absolute;inset:4px;border:1px solid #fff0cc55;pointer-events:none}
@keyframes bp-inquiry-shine{0%,62%{transform:translateX(-80%)}90%,100%{transform:translateX(80%)}}
@keyframes bp-inquiry-glow{0%,100%{box-shadow:inset 0 1px 0 #f4dfb2,0 0 0 #c9a76800}50%{box-shadow:inset 0 1px 0 #fff0cc,0 0 24px #c9a76855}}

body.bp-public.page-home .bp-hero-hotspot{display:grid;place-items:center;width:72px;height:72px;border:0;border-radius:50%;padding:0;line-height:1;pointer-events:auto;cursor:pointer;color:#f5e3bd;text-decoration:none;background:transparent;-webkit-tap-highlight-color:transparent}
body.bp-public.page-home .bp-hero-hotspot:before{content:'';position:absolute;inset:13px;border:1px solid #ecd19c66;border-radius:50%;background:#00000035;backdrop-filter:blur(2px);transition:background .3s,border-color .3s}
body.bp-public.page-home .bp-hero-hotspot .bp-tap-icon{position:relative;display:block;width:29px;height:36px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;filter:drop-shadow(0 1px 2px #0008)}
body.bp-public.page-home .bp-hero-hotspot .bp-hotspot-ring{inset:9px;pointer-events:none}
body.bp-public.page-home .bp-hero-hotspot:where(:hover,:focus-visible){color:#fff3d8}
body.bp-public.page-home .bp-hero-hotspot:where(:hover,:focus-visible):before{background:#00000070;border-color:#eed3a0}
body.bp-public.page-home .bp-hero-hotspot:focus-visible{outline:2px solid #f5e3bd;outline-offset:3px}

@media(max-width:800px){
 body.bp-public .bp-property-heading{min-height:86px}
 body.bp-public .bp-property-count>span{font-size:32px}
 body.bp-public .bp-property-area dd{font-size:36px}
 body.bp-public .bp-project-numbers{gap:16px}
 body.bp-public .bp-project-numbers>div{padding-left:16px}
 body.bp-public .bp-project-numbers span{font-size:11px;letter-spacing:.06em}
}
@media(max-width:650px){
 body.bp-public .bp-intro-bottom{display:block}
 body.bp-public .bp-project-numbers{grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 12px;margin-top:36px}
 body.bp-public .bp-project-numbers>div{grid-column:span 2;padding-left:14px;gap:14px}
 body.bp-public .bp-project-numbers>div:nth-child(n+4){grid-column:span 3;padding-top:22px;border-top:1px solid #baaa8d66}
 body.bp-public .bp-project-numbers>div:nth-child(4){padding-left:0;border-left:0}
 body.bp-public .bp-project-numbers strong{font-size:58px}
 body.bp-public .bp-project-numbers span{font-size:12px;letter-spacing:.07em}
 body.bp-public .bp-apartment-parking{display:block;padding:24px;margin-bottom:26px}
 body.bp-public .bp-apartment-parking>p{max-width:none;font-size:27px;margin-bottom:25px}
 body.bp-public .bp-apartment-parking .bp-parking-totals{gap:24px}
 body.bp-public .bp-apartment-parking .bp-parking-totals dd{font-size:48px}
 body.bp-public .bp-parking-totals dt{font-size:14px}
 body.bp-public .bp-capacity-inline{gap:7px 18px;font-size:14px}
 body.bp-public .bp-capacity-inline>span:first-child{flex-basis:100%}
 body.bp-public.page-home .bp-hero-hotspot{width:60px;height:60px}
 body.bp-public.page-home .bp-hero-hotspot:before{inset:9px}
 body.bp-public.page-home .bp-hero-hotspot .bp-tap-icon{width:26px;height:32px}
 body.bp-public.page-home .bp-hero-hotspot .bp-hotspot-ring{inset:6px}
}
@media(max-width:420px){
 body.bp-public .bp-property-count>span{font-size:28px}
 body.bp-public .bp-property-heading{min-height:80px}
 body.bp-public .bp-property-area dd{font-size:32px}
}
@media(max-width:360px){
 body.bp-public .bp-property-count>span{font-size:24px}
 body.bp-public .bp-property-heading{min-height:75px}
 body.bp-public .bp-property-area dd{font-size:28px}
 body.bp-public .bp-project-numbers strong{font-size:52px}
 body.bp-public .bp-project-numbers span{font-size:11px}
}
/* A short landscape screen has a normal header and all its height for content. */
@media(orientation:landscape) and (max-width:1100px) and (max-height:600px){
 body.bp-public .header,body.bp-public.page-home .header,body.bp-public .header.is-scrolled,body.bp-public.page-home .header.is-scrolled,body.bp-public .header.menu-is-open{position:relative;inset:auto;top:auto;height:calc(72px + env(safe-area-inset-top,0px));background:#000;backdrop-filter:none;box-shadow:none}
 body.bp-public .header:after{display:none}
 body.bp-public .brand,body.bp-public .header.is-scrolled .brand{width:190px}
 body.bp-public .mobile-contact,body.bp-public.page-home.has-scrolled .mobile-contact{display:none!important}
 body.bp-public .nav.open{top:calc(72px + env(safe-area-inset-top,0px));max-height:calc(100dvh - 72px - env(safe-area-inset-top,0px));overflow-y:auto}
 body.bp-public{padding-bottom:0}
}
@media(prefers-reduced-motion:reduce){
 body.bp-public .mobile-contact a:last-child,body.bp-public .mobile-contact a:last-child:before{animation:none}
 body.bp-public .mobile-contact a:last-child:before{display:none}
 body.bp-public.page-home .bp-hero-hotspot .bp-hotspot-ring{animation:none}
 body.bp-public.page-home .bp-hero-hotspot:before{transition:none}
}
