
/* JJ V1 multi-page extension: keeps MASTER components, only page routing/layout additions */
.subpage-spacer{height:92px}.subpage-main{min-height:55vh}
.community-visual{display:block!important;margin:28px auto 0!important;max-width:1200px!important}.community-visual img{width:100%;height:auto;object-fit:contain}
.lapore-floor-tabs{justify-content:center!important}
.lapore-hero-1 .iv-copy{left:7%!important;right:auto!important;text-align:left!important;top:19%!important;transform:none!important;max-width:720px}
.lapore-hero-1 .iv-copy h1{font-size:clamp(36px,4.2vw,72px);line-height:1.1}
.lapore-hero-2 .iv-copy{left:auto!important;right:8%!important;top:42%!important;text-align:right!important;transform:none!important}
.lapore-hero-2 .iv-copy h1{font-size:clamp(38px,4.5vw,76px)}
/* 3-up unit carousel, one-card movement */
.osan-carousel.three-up{height:auto;min-height:420px;overflow:hidden;padding:0 70px 58px}
.osan-carousel.three-up .osan-carousel-track{position:relative;inset:auto;display:flex;gap:22px;transition:transform .5s ease}
.osan-carousel.three-up .osan-unit-slide{position:relative;inset:auto;opacity:1;flex:0 0 calc((100% - 44px)/3);height:390px;cursor:zoom-in}
.osan-carousel.three-up .osan-unit-slide img{width:100%;height:100%;object-fit:contain;background:#fff}
.unit-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.86);z-index:99999;display:none;align-items:center;justify-content:center;padding:4vw}
.unit-lightbox.open{display:flex}.unit-lightbox img{max-width:94vw;max-height:90vh;object-fit:contain}.unit-lightbox button{position:absolute;right:25px;top:20px;border:0;background:transparent;color:#fff;font-size:44px;cursor:pointer}
.standalone-project{padding-top:60px}
@media(max-width:768px){.subpage-spacer{height:72px}.lapore-floor-tabs{justify-content:center}.lapore-hero-1 .iv-copy{left:7%!important;top:18%!important;right:7%!important}.lapore-hero-2 .iv-copy{right:7%!important;left:7%!important;top:38%!important}.osan-carousel.three-up{padding:0 44px 55px;min-height:390px}.osan-carousel.three-up .osan-unit-slide{flex-basis:100%;height:340px}.community-visual{max-width:94%!important}}

/* LAPORE revision 2 */
/* The supplied first hero already contains its full promotional typography; do not duplicate it. */
.lapore-copy-ref1{display:none!important}
/* Slide 2 reference typography: left-side editorial composition matching supplied visual. */
.lapore-copy-ref2{left:4.4%!important;right:auto!important;top:14%!important;transform:none!important;text-align:left!important;width:min(650px,44vw)!important;color:#132c45!important;text-shadow:none!important}
.lapore-copy-ref2>p:first-child{margin:0 0 22px!important;font-size:clamp(22px,2vw,36px)!important;line-height:1.35!important;font-weight:500!important}
.lapore-copy-ref2 h1{margin:0!important;font-family:Georgia,"Noto Serif KR",serif!important;font-size:clamp(52px,5.2vw,88px)!important;line-height:1.08!important;letter-spacing:-.055em!important;font-weight:500!important;color:#17324a!important}
.lapore-copy-ref2 h1 em{font-style:normal;color:#8c7768!important}
.lapore-copy-ref2>p:nth-of-type(2){margin:30px 0 0!important;font-size:clamp(18px,1.55vw,27px)!important;color:#29455e!important}
.lapore-copy-ref2 strong{display:block;margin-top:48px;font-size:clamp(22px,1.9vw,32px);font-weight:600;letter-spacing:-.03em}
/* Keep important baked-in hero text/phone within viewport by showing the full artwork. */
.lapore-hero-1 img{object-fit:contain!important;object-position:center center!important;background:#e9f2f8}
.lapore-hero-2 img{object-position:center center!important}
/* Floor controls directly under heading and centered. */
.final-floor-section .lapore-floor-tabs{width:min(900px,92vw)!important;grid-template-columns:repeat(5,1fr)!important;margin:8px auto 48px!important;padding:0!important}
/* Larger unit photography: fill the card rather than leaving large white letterbox areas. */
.osan-carousel.three-up{max-width:1450px!important;padding:0 62px 58px!important}
.osan-carousel.three-up .osan-unit-slide{height:500px!important;background:#fff;overflow:hidden}
.osan-carousel.three-up .osan-unit-slide img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;background:#fff!important}
.standalone-content{padding-top:65px}
/* Additional subpage entrance motion */
.project-motion .osan-project-image,.project-motion .osan-project-info,.final-floor-tabs{will-change:transform,opacity}
@media(max-width:900px){
 .lapore-hero-1 img{object-fit:contain!important;object-position:center center!important}
 .lapore-copy-ref2{left:7%!important;right:7%!important;top:12%!important;width:auto!important}
 .lapore-copy-ref2>p:first-child{font-size:clamp(16px,4.8vw,23px)!important;margin-bottom:14px!important}
 .lapore-copy-ref2 h1{font-size:clamp(35px,10vw,50px)!important;line-height:1.1!important}
 .lapore-copy-ref2>p:nth-of-type(2){font-size:clamp(14px,4vw,18px)!important;margin-top:18px!important;max-width:82%!important;margin-left:0!important}
 .lapore-copy-ref2 strong{font-size:clamp(17px,4.8vw,23px);margin-top:28px}
 .final-floor-section .lapore-floor-tabs{grid-template-columns:repeat(5,1fr)!important;width:94vw!important;gap:5px!important;margin:4px auto 28px!important}
 .osan-carousel.three-up{padding:0 38px 55px!important;min-height:440px!important}
 .osan-carousel.three-up .osan-unit-slide{height:400px!important}
}
/* revision 2 */
.lapore-copy-ref1{left:8%;right:auto;top:14%;width:min(46vw,720px);text-align:left;color:#09254a;text-shadow:none}
.lapore-copy-ref1 p{font-size:clamp(16px,1.25vw,24px);letter-spacing:.28em;line-height:1.8;margin:0 0 24px;font-weight:600}
.lapore-copy-ref1 h1{font-size:clamp(34px,3.5vw,68px);line-height:1.08;margin:0 0 20px;font-weight:800;color:#09254a}
.lapore-copy-ref1 h1 span{color:#b69252}
.lapore-copy-ref1 strong{font-size:clamp(22px,2vw,38px);letter-spacing:.03em;color:#09254a}
.standalone-content .layout-only{display:block;margin:36px auto 0!important;max-width:min(1180px,92vw)!important;width:100%!important}
.standalone-content .layout-only img{display:block;margin:0 auto;max-width:100%;height:auto}
@media(max-width:768px){.lapore-copy-ref1{left:7%;top:11%;width:86%;}.lapore-copy-ref1 p{font-size:12px;letter-spacing:.16em;margin-bottom:12px}.lapore-copy-ref1 h1{font-size:clamp(25px,8vw,38px)}.lapore-copy-ref1 strong{font-size:18px}.lapore-copy-ref2 h1{font-size:clamp(30px,9vw,44px)}}
.lapore-copy-ref1{display:block!important}
