/** JP Engine V4 visual and performance layer */
:root{--color-brand:#d58b19;--color-brand-hover:#b86f0b;--color-brand-soft:#fff6e7;--color-ink:#101828;--color-muted:#667085;--color-surface:#fff;--color-surface-alt:#f7f8fa;--color-line:rgba(16,24,40,.10);--container-width:1280px;--radius-card:24px;--shadow-card:0 18px 50px rgba(16,24,40,.09)}
html{scroll-padding-top:calc(var(--header-height) + 16px)}body{background:var(--color-surface-alt);color:var(--color-ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.site-sticky{position:relative;z-index:var(--z-header)}
.hero{min-height:min(820px,calc(100svh - var(--header-height)));background:#111827}.hero-bg img{transform:none;animation:none}.hero-overlay{background:linear-gradient(90deg,rgba(6,12,24,.82) 0%,rgba(6,12,24,.55) 42%,rgba(6,12,24,.10) 76%),linear-gradient(0deg,rgba(6,12,24,.55),transparent 48%)}.hero-content{max-width:var(--container-width);padding:clamp(120px,18vh,190px) 24px 80px}.hero-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:18px;color:rgba(255,255,255,.82);font-size:14px;font-weight:650}.hero-eyebrow::before{content:"";width:28px;height:1px;background:var(--color-brand)}.hero-badge{height:32px;margin-bottom:16px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.10)}.hero-title{max-width:780px;font-size:clamp(38px,5.2vw,72px);line-height:1.08;letter-spacing:-.055em;text-wrap:balance}.hero-address{max-width:720px;margin-top:20px;color:rgba(255,255,255,.78);font-size:clamp(15px,1.4vw,19px);line-height:1.65}.hero-actions{max-width:430px;margin-top:34px}.hero-btn{height:56px;border:1px solid rgba(255,255,255,.20);border-radius:16px}.hero-btn-primary{background:var(--color-brand)}.hero-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:610px;margin-top:38px}.hero-summary-item{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(10,16,28,.28);backdrop-filter:blur(14px)}.hero-summary-item svg{flex:none;width:21px;height:21px;color:#ffc96f}.hero-summary-item strong{display:block;margin-bottom:3px;font-size:15px;color:#fff}.hero-summary-item span{display:block;color:rgba(255,255,255,.68);font-size:13px;line-height:1.5}
.pageSwiper>.swiper-wrapper>.swiper-slide{background:var(--color-surface-alt)}.pageSwiper>.swiper-wrapper>.swiper-slide>section:not(.hero){content-visibility:auto;contain-intrinsic-size:800px}.container{max-width:var(--container-width);padding-left:24px;padding-right:24px}.gallery,.floor-gallery,.building-info,.map-section,.inquiry{padding:clamp(72px,8vw,112px) 0}.gallery,.building-info,.map-section{background:#fff}.section-title{margin:0 0 34px;color:var(--color-ink);font-size:clamp(28px,3vw,42px);font-weight:800;letter-spacing:-.045em}.section-title::after{content:"";display:block;width:44px;height:3px;margin-top:14px;border-radius:999px;background:var(--color-brand)}
.gallery-list{scroll-snap-type:x mandatory}.gallery-item{scroll-snap-align:start}.gallery-item img{aspect-ratio:16/10}.gallery-caption{padding:14px 16px 16px;margin:0!important;background:#fff;text-align:left!important;color:var(--color-ink);font-weight:750!important}.gallery-wrap::after{content:"좌우로 밀어 더 많은 이미지를 확인하세요";display:block;margin-top:14px;color:var(--color-muted);font-size:13px;text-align:center}
.building-detail-v4{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f7f8fa 100%)}.building-detail-v4::before{content:"";position:absolute;top:-180px;right:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(213,139,25,.10),rgba(213,139,25,0) 70%);pointer-events:none}.building-detail-v4 .container{position:relative}.building-detail-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:38px}.building-detail-heading .section-title{margin-bottom:0}.building-detail-eyebrow{margin:0 0 10px;color:var(--color-brand);font-size:12px;font-weight:850;letter-spacing:.16em}.building-detail-address{max-width:560px;margin:0;padding-left:30px;color:#475467;font-size:15px;line-height:1.75;text-align:right;word-break:keep-all}
.building-story-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:48px;padding:clamp(32px,4.5vw,58px);border:1px solid rgba(16,24,40,.08);border-radius:34px;background:linear-gradient(135deg,#fff 0%,#fbfcfe 55%,#f7f3eb 100%);box-shadow:0 24px 70px rgba(16,24,40,.10)}.building-story-copy{display:flex;flex-direction:column;justify-content:center}.building-story-kicker{color:var(--color-brand);font-size:12px;font-weight:850;letter-spacing:.14em}.building-story-copy h3{margin:14px 0 22px;font-size:clamp(30px,3.4vw,50px);line-height:1.12;letter-spacing:-.05em}.building-story-copy p{margin:0;color:#475467;font-size:16px;line-height:1.95;word-break:keep-all}.building-story-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.building-story-tags span{padding:9px 14px;border:1px solid rgba(213,139,25,.20);border-radius:999px;background:rgba(255,246,231,.9);color:#87560f;font-size:13px;font-weight:760}
.building-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:0}.building-metric-card{position:relative;min-height:126px;padding:24px;border:1px solid rgba(16,24,40,.08);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(16,24,40,.045);overflow:hidden}.building-metric-card::after{content:"";position:absolute;right:-24px;bottom:-30px;width:82px;height:82px;border-radius:50%;background:rgba(213,139,25,.07)}.building-metric-card dt{position:relative;z-index:1;margin-bottom:12px;color:#667085;font-size:12px;font-weight:760;letter-spacing:.02em}.building-metric-card dd{position:relative;z-index:1;margin:0;color:#101828;font-size:clamp(19px,2vw,27px);font-weight:860;line-height:1.35;letter-spacing:-.04em;word-break:keep-all}
.building-spec-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.building-spec-panel{overflow:hidden;border:1px solid rgba(16,24,40,.09);border-radius:26px;background:#fff;box-shadow:0 12px 34px rgba(16,24,40,.05)}.building-spec-panel-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 24px;border-bottom:1px solid rgba(16,24,40,.07);background:#fbfcfd}.building-spec-panel-head span{font-size:17px;font-weight:840;letter-spacing:-.025em}.building-spec-panel-head small{color:#98a2b3;font-size:10px;font-weight:800;letter-spacing:.12em}.building-spec-list{margin:0;padding:5px 24px}.building-spec-row{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);gap:24px;padding:17px 0;border-bottom:1px solid rgba(16,24,40,.07)}.building-spec-row:last-child{border-bottom:0}.building-spec-row dt{color:#667085;font-size:13px;font-weight:650}.building-spec-row dd{margin:0;color:#1d2939;font-size:14px;font-weight:760;line-height:1.65;text-align:right;word-break:keep-all}
.mobile-cta{display:none}.reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal-on-scroll.is-visible{opacity:1;transform:none}.page-building-detail-v4 .drawer-link[href*="#transaction-"]{display:none!important}.v4-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease var(--v4-delay,0ms),transform .7s cubic-bezier(.22,1,.36,1) var(--v4-delay,0ms)}.v4-reveal.is-v4-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-on-scroll,.v4-reveal{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:991px){body{padding-bottom:70px}body.page-home .gallery,body.page-home .floor-gallery,body.page-home .building-info,body.page-home .map,body.page-home .inquiry{padding:48px 0}.hero{min-height:calc(100dvh - var(--building-nav-height))}.hero-overlay{background:linear-gradient(0deg,rgba(6,12,24,.86),rgba(6,12,24,.15) 74%)}.hero-content{align-self:flex-end;padding:130px 20px 56px}.hero-title{font-size:clamp(34px,10vw,52px)}.hero-address{font-size:15px}.hero-actions{max-width:none}.hero-summary{grid-template-columns:1fr;margin-top:24px}.hero-summary-item:first-child{display:none}.hero-scroll{display:none}.container{padding-left:18px;padding-right:18px}.building-detail-heading{display:block;margin-bottom:28px}.building-detail-address{margin-top:14px;padding-left:0;text-align:left}.building-story-card{grid-template-columns:1fr;gap:30px;padding:26px;border-radius:26px}.building-metric-grid{grid-template-columns:1fr 1fr}.building-metric-card{min-height:112px;padding:19px}.building-spec-sections{grid-template-columns:1fr}.building-spec-panel{border-radius:22px}.gallery-item{flex-basis:min(86vw,460px)!important}.mobile-cta{position:fixed;left:14px;right:14px;bottom:max(12px,env(safe-area-inset-bottom));z-index:1800;display:grid;grid-template-columns:minmax(0,28fr) minmax(0,44fr) minmax(0,28fr);gap:7px;padding:6px;border:1px solid rgba(15,23,42,.07);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 12px 34px rgba(15,23,42,.16),0 2px 8px rgba(15,23,42,.06);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(calc(100% + 28px));transition:opacity .34s ease,transform .38s cubic-bezier(.22,1,.36,1),visibility 0s linear .38s;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}body.is-scrolled .mobile-cta{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}.mobile-cta a,.mobile-cta button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;height:46px;padding:0 9px;border-radius:16px;text-decoration:none;font:inherit;font-size:14px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.mobile-cta svg{width:20px;height:20px}.mobile-cta-call{border:1px solid rgba(37,99,235,.14);background:#eff7ff;color:#2563eb}.mobile-cta-top{border:1px solid rgba(79,70,229,.13);background:#f4f3ff;color:#4f46e5}.mobile-cta-inquiry{border:1px solid rgba(184,111,11,.14);background:linear-gradient(135deg,#e7a021,#d88912);color:#fff}.mobile-cta-top{cursor:pointer}}
@media(max-width:560px){.building-story-copy h3{font-size:31px}.building-story-copy p{font-size:15px;line-height:1.85}.building-metric-grid{grid-template-columns:1fr}.building-metric-card{min-height:auto}.building-spec-panel-head{padding:18px 20px}.building-spec-list{padding:4px 20px}.building-spec-row{grid-template-columns:1fr;gap:7px;padding:15px 0}.building-spec-row dd{text-align:left}.building-story-tags span{font-size:12px}}
