/* Shared typography rhythm from the existing representative website. */
body,button,input,select,textarea{font-family:'NanumSquare','Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-synthesis:none}
body{font-size:17px;line-height:1.95;color:#24364b}
button,input,select,textarea{font-size:16px}
header nav{font-size:14px;line-height:1.6;font-weight:700}
.eyebrow{font-size:12px;font-weight:400;line-height:1.7;letter-spacing:1.3px}
.editorial-main .section>h2,.editorial-main .section-heading h2,.faq h2{font-size:32px;line-height:1.55;letter-spacing:-1px;font-weight:800;margin:0 0 23px;color:#061e40}
.editorial-main .story-copy{font-size:16px;line-height:1.95;font-weight:400;margin:0 0 20px;color:#24364b}
.editorial-main .section-heading>p{font-size:14px;line-height:1.9;font-weight:400;color:#4b5d70;margin:0 0 23px}
.editorial-main .overview-table h3{font-size:23px;font-weight:700;line-height:1.6;margin:25px 0 12px}
.editorial-main .specs>div{font-size:14px;line-height:1.8;padding:14px 0}
.editorial-main .specs dt{font-weight:700;color:#061e40}
.editorial-main .specs dd{font-weight:400;color:#24364b}
.editorial-main .facts small{font-size:12px;font-weight:400;line-height:1.7;color:#4b5d70}
.editorial-main .facts strong{font-size:38px;line-height:1.4;font-weight:800}
.editorial-main .facts strong span{font-size:15px;font-weight:400}
.editorial-main .location-list h3,.editorial-main .paper-head h3{font-size:21px;line-height:1.6;font-weight:700;letter-spacing:-.5px}
.editorial-main .location-list p,.editorial-main .paper-head p{font-size:14px;line-height:1.9;font-weight:400;color:#34465b}
.editorial-main .location-list b{font-size:12px;line-height:1.7;font-weight:700}
.editorial-main .unit-tabs button{font-size:16px;font-weight:700;line-height:1.6}
.editorial-main .unit-info h3{font-family:inherit;font-weight:800}
.editorial-main .unit-info dl{font-size:14px;line-height:1.8}
.editorial-main .unit-sub{font-size:14px;font-weight:400;line-height:1.8}
.image-button>span{font-size:11px;line-height:1.7;font-weight:400}
.faq summary{font-size:16px;font-weight:700;line-height:1.8;padding-top:18px;padding-bottom:18px}
.faq details p{font-size:14px;font-weight:400;line-height:1.95;color:#34465b}
.booking-panel .booking-heading h2{font-size:28px;font-weight:700;line-height:1.5;letter-spacing:-.7px}
.booking-panel .booking-heading .eyebrow{font-size:12px;font-weight:400;line-height:1.7;letter-spacing:1.3px}
.booking-panel .booking-heading>div>p:last-child{font-size:14px;font-weight:400;line-height:1.9;color:#4b5d70}
.booking-panel .booking-fields label{font-size:14px;font-weight:700;line-height:1.7}
.booking-panel .booking-fields small{font-size:11px;font-weight:400;line-height:1.7}
.booking-panel .booking-fields input{font-family:inherit;font-size:16px;font-weight:400;line-height:1.5;height:48px;padding:10px 12px}
.booking-panel .consent-row{font-size:12px;font-weight:400;line-height:1.8}
.booking-panel .consent-row details p{font-size:12px;font-weight:400;line-height:1.9}
.booking-panel .btn,.browse-sidebar .btn{font-size:12px;font-weight:700;line-height:1.6}
.browse-sidebar h2{font-size:23px;font-weight:700;line-height:1.6;letter-spacing:-.5px}
.browse-sidebar nav>a{font-size:13px;line-height:1.8}
.site-footer .footer-contact,.site-footer .footer-copyright{font-size:12px;font-weight:400;line-height:1.9}
.site-footer .footer-disclaimer{font-size:11px;font-weight:400;line-height:1.9}
.sales-hero h1{font-family:inherit;font-weight:800}
.sales-hero .opportunity{font-family:OfferKoreanPen,cursive;font-weight:400}
.sales-call>span{font-size:16px;font-weight:400;line-height:1.7}
.sales-call strong{font-weight:700;line-height:1.35}
@media(max-width:800px){
 body{font-size:16px;line-height:1.9}
 .editorial-main .section>h2,.editorial-main .section-heading h2,.faq h2{font-size:26px;line-height:1.5;letter-spacing:-.8px;margin-bottom:20px}
 .editorial-main .story-copy{font-size:14px;line-height:1.95;margin-bottom:18px}
 .editorial-main .section-heading>p{font-size:12px;line-height:1.85}
 .editorial-main .overview-table h3{font-size:20px;line-height:1.6}
 .editorial-main .specs>div{font-size:13px;line-height:1.8;padding:12px 0}
 .editorial-main .facts small{font-size:10px}
 .editorial-main .facts strong{font-size:29px}
 .editorial-main .facts strong span{font-size:12px}
 .editorial-main .location-list h3,.editorial-main .paper-head h3{font-size:17px;line-height:1.6}
 .editorial-main .location-list p,.editorial-main .paper-head p{font-size:12px;line-height:1.85}
 .editorial-main .unit-tabs button{font-size:14px}
 .editorial-main .unit-info dl{font-size:8px;line-height:1.6}
 .editorial-main .unit-sub{font-size:8px;line-height:1.7}
 .faq summary{font-size:14px;line-height:1.8}
 .faq details p{font-size:13px;line-height:1.9}
 .booking-panel .booking-heading h2{font-size:26px;line-height:1.5}
 .booking-panel .booking-heading>div>p:last-child{font-size:14px;line-height:1.9}
 .booking-panel .booking-fields input{font-size:16px}
 .booking-panel .consent-row{font-size:11px}
 .booking-panel .booking-bottom .btn{font-size:13px}
 .sales-call>span{font-size:13px}
 .site-footer .footer-contact,.site-footer .footer-copyright{font-size:11px}
}
/* Exact header reference: 168 x 72, light caption and balanced phone. */
body header a.headcall{display:flex;flex-direction:column;align-items:center;justify-content:center;width:168px;height:72px;flex:none;padding:7px 9px;background:#061e40;border-left:3px solid #ff5a0a;box-sizing:border-box}
body header a.headcall>span{font-family:NanumSquare,sans-serif;font-size:10px;font-weight:400;letter-spacing:0;line-height:1.5;margin:0 0 4px;color:#fff;white-space:nowrap}
body header a.headcall>strong{font-family:NanumSquare,sans-serif;font-size:25px;font-weight:400;letter-spacing:.2px;line-height:1.2;margin:0;color:#fff;text-shadow:none;white-space:nowrap}
@media(max-width:380px){body header a.headcall{width:150px;height:66px}body header a.headcall>span{font-size:9px}body header a.headcall>strong{font-size:23px}}
/* Small section labels follow the reference's orange, size and spacing. */
.editorial-main .section>.eyebrow,.editorial-main .section-heading .eyebrow,.faq .eyebrow,.booking-panel .booking-heading .eyebrow{color:#ff5a0a;font-size:13px;font-weight:400;line-height:1.7;letter-spacing:1.3px}
.browse-sidebar>.eyebrow{color:#ff5a0a;font-size:10px;font-weight:400;line-height:1.7;letter-spacing:1.8px;white-space:nowrap}

/* Full-width, orderly FAQ list matching the supplied reference. */
.editorial-main .faq{display:block}
.editorial-main .faq>div:first-child{margin-bottom:28px}
.editorial-main .faq h2{font-size:32px;margin:0;line-height:1.5}
.editorial-main .faq .eyebrow{margin:0 0 20px}
.editorial-main .faq details{border:0;border-bottom:1px solid #ffd0b5}
.editorial-main .faq summary{font-size:16px;font-weight:400;line-height:1.7;padding:22px 32px 22px 0;color:#061e40}
.editorial-main .faq details p{margin:0;padding:0 25px 22px 0}
@media(max-width:800px){.editorial-main .faq h2{font-size:26px}.editorial-main .faq summary{font-size:14px;padding-top:19px;padding-bottom:19px}.editorial-main .faq>div:first-child{margin-bottom:20px}}
/* Align booking contact caption to the phone number's left edge. */
.booking-panel .booking-heading>a{text-align:left}
.booking-panel .booking-heading>a small,.booking-panel .booking-heading>a strong{display:block;text-align:left;margin-left:0;padding-left:0}
/* Only the small section headings use the sampled burnt-orange color. */
.editorial-main .section>.eyebrow,.editorial-main .section-heading .eyebrow,.faq .eyebrow,.booking-panel .booking-heading .eyebrow{color:#bb4300}
/* Requested hero refinements without changing the mobile headline. */
.sales-hero .sales-kicker{color:#bb4300}
@media(min-width:801px){.sales-hero .opportunity{font-size:35px;margin:14px 0 15px}}
/* Compact FAQ rhythm with no final divider. */
.editorial-main .faq{padding-top:30px;padding-bottom:24px}
.editorial-main .faq>div:first-child{margin-bottom:14px}
.editorial-main .faq .eyebrow{margin-bottom:10px}
.editorial-main .faq summary{padding-top:13px;padding-bottom:13px}
.editorial-main .faq details:last-child{border-bottom:0}
.editorial-main .faq details p{padding-bottom:14px}
@media(max-width:800px){.editorial-main .faq{padding-top:25px;padding-bottom:20px}.editorial-main .faq>div:first-child{margin-bottom:12px}.editorial-main .faq summary{padding-top:12px;padding-bottom:12px}}
/* Warm caption in the top navy contact box, preserving the white phone. */
body header a.headcall>span{color:#ffcfaa}
/* Only the final navigation item receives the requested accent. */
header nav[aria-label="메인 메뉴"]>a[href="#visit"]{color:#bb4300}
/* Hero rules and color sampled from the supplied reference. */
.sales-hero .sales-kicker{color:#c44408}
.sales-hero .sales-kicker span{width:100px;height:1px;background:linear-gradient(90deg,#ff5a0a,#ffc39b)}
.sales-hero .offer-rule{height:3px;width:100%;max-width:none;margin:0 auto 18px;background:linear-gradient(90deg,#ffc6a4 0%,#ff5a0a 20%,#ffc6a4 50%,#ff5a0a 80%,#ffc6a4 100%)}
@media(min-width:801px){.sales-hero .opportunity{font-size:40px;margin:15px 0 19px}}
@media(max-width:800px){.sales-hero .sales-kicker span{width:40px}.sales-hero .opportunity{font-size:24px;margin:12px 0 15px}.sales-hero .offer-rule{height:2px;margin-bottom:16px}}
/* Restore legibility to the descriptive copy shown in the user's captures. */
.editorial-main .story-copy,.editorial-main .section-heading>p,.editorial-main .location-list p,.editorial-main .paper-head p,.editorial-main .unit-sub{color:#24364b;font-weight:700;opacity:1;text-shadow:none}
.editorial-main .location-list h3{color:#061e40;font-weight:700;opacity:1}

/* Raster headings replaced with sharp, high-contrast live text. */
.readable-art{position:relative;container-type:inline-size;margin:0 auto;background:#fff;width:100%;display:block}
.editorial-main .image-button .readable-art>img,#lightbox .readable-art>img{display:block;width:100%;height:auto;max-height:none;padding:0;filter:none}
.readable-art-heading{position:absolute;top:0;left:0;width:100%;background:#fff;color:#061e40;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.35;letter-spacing:-.04em;opacity:1;padding:1cqw}
.readable-art-heading strong{font-size:3.5cqw;font-weight:800;color:#061e40;line-height:1.35}
.readable-art-heading small{font-size:2.3cqw;font-weight:700;color:#24364b;line-height:1.4;margin-bottom:1cqw}
.readable-art-map{max-width:579px}.readable-art-map .readable-art-heading{height:11.2%}
.readable-art-plan .readable-art-heading{height:10.8%}.readable-art-plan .readable-art-heading strong{font-size:5cqw}
.readable-art-systems .readable-art-heading{height:13.5%}
@media(min-width:801px){.readable-art-plan{max-width:268px}.readable-art-systems{max-width:441px}}
#lightbox .readable-art{max-width:1100px;width:min(1100px,80vw)}

#lightbox #zoom-img[hidden]{display:none}

/* Match the reference: restrained size, light introductory text and dark emphasis. */
.readable-art-heading{letter-spacing:-.035em;color:#171717}
.readable-art-heading strong{font-size:3.2cqw;font-weight:700;color:#171717;line-height:1.5}
.readable-art-heading small{font-size:2.8cqw;font-weight:400;color:#69737c;line-height:1.5;margin-bottom:.4cqw}
.readable-art-plan .readable-art-heading strong{font-size:4.8cqw;font-weight:700}
.readable-art-plan .readable-art-heading em{font-style:normal;font-weight:400;color:#69737c}
.readable-art-systems .readable-art-heading small{font-size:3.2cqw}
.readable-art-systems .readable-art-heading strong{font-size:3.5cqw}

/* Give the location map the full content width. */
.editorial-main .location-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:25px}
.editorial-main .location-grid>.location-map-large{width:100%;padding:0;background:#fff}
.editorial-main .location-grid>.location-map-large img{width:100%;height:auto;max-height:none;padding:0;filter:none;object-fit:contain}
.editorial-main .location-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media(max-width:800px){.editorial-main .location-list{grid-template-columns:minmax(0,1fr)}.editorial-main .location-grid{gap:18px}}

.editorial-main .location-grid>figure.location-map-large{margin:0;width:100%;padding:0;background:#fff}
@media(min-width:801px){.editorial-main .location-list article{display:block}.editorial-main .location-list .life-photo{width:100%;aspect-ratio:1.8;margin:0 0 12px}}

/* Read the complex graphics directly, without an enlargement control. */
.editorial-main .complex-art{width:100%;padding:0 8px 12px}
.editorial-main .complex-art .readable-art{width:100%;max-width:none}
.editorial-main .complex-art .readable-art>img{display:block;width:100%;height:auto;max-height:none;padding:0;filter:none;object-fit:contain}
@media(min-width:801px){.editorial-main .complex-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:20px}}

/* Systems on the left, site plan on the right; matched heading sizes. */
.editorial-main .complex-grid{align-items:start}
.editorial-main .complex-art{padding-top:0}
.editorial-main .readable-art-systems .readable-art-heading small,.editorial-main .readable-art-systems .readable-art-heading strong{font-size:5.4cqw}
@media(min-width:801px){.editorial-main .complex-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr)}}
@media(max-width:800px){.editorial-main .readable-art-systems .readable-art-heading small,.editorial-main .readable-art-systems .readable-art-heading strong{font-size:4.8cqw}}

/* Use the open space beside the section title and keep both graphics balanced. */
.editorial-main #complex .wrap{container-type:inline-size}
.editorial-main .readable-art-systems{border-top:20px solid #fff}
.editorial-main .readable-art-systems .readable-art-heading{top:-20px;height:calc(13.5% + 20px);padding-top:8px;padding-bottom:8px}
@media(min-width:801px){
.editorial-main #complex .section-heading{width:47%;min-height:120px;margin-bottom:22px}
.editorial-main #complex .complex-grid>.paper:last-child{margin-top:calc(20px - 17.2cqw)}
.editorial-main #complex .readable-art-plan{max-width:75%;margin-left:auto;margin-right:auto}
}
@media(max-width:800px){.editorial-main #complex .complex-grid>.paper:last-child{margin-top:0}}

/* Softer guidance inside the reservation fields; entered values stay dark. */
.booking-fields input::placeholder{color:#84909b;font-weight:400;opacity:1}
.booking-fields input[type="date"]:invalid,.booking-fields input[type="time"]:invalid{color:#84909b;font-weight:400}
.booking-fields input[type="date"]:invalid::-webkit-datetime-edit,.booking-fields input[type="time"]:invalid::-webkit-datetime-edit{color:#84909b}

.sales-hero .perk-childcare{display:block;margin-top:5px;font-size:1em;font-weight:inherit;color:inherit;line-height:inherit}

/* Quiet orange foliage, kept in the margins away from the sales copy. */
.sales-frame{position:relative;isolation:isolate}
.sales-frame>.season-leaf{position:absolute;pointer-events:none;user-select:none;width:86px;height:auto;z-index:-1;opacity:.58}
.sales-frame>.season-leaf-left{top:55px;left:12px;transform:rotate(-25deg)}
.sales-frame>.season-leaf-right{top:245px;right:10px;transform:rotate(175deg);width:65px;opacity:.45}
#visit.booking-panel{position:relative;isolation:isolate}
#visit.booking-panel:after{content:"";position:absolute;right:12px;top:12px;width:50px;height:64px;background:url("assets/orange-leaf-sprig.svg") center/contain no-repeat;opacity:.38;pointer-events:none;z-index:-1;transform:rotate(15deg)}
@media(max-width:800px){.sales-frame>.season-leaf-left{width:34px;left:3px;top:22px;opacity:.42}.sales-frame>.season-leaf-right{width:29px;right:3px;top:155px;opacity:.32}#visit.booking-panel:after{width:30px;height:40px;right:6px;top:6px;opacity:.28}}

/* A single white composition, with the full-width plan spanning the title and systems. */
.editorial-main #complex,.editorial-main #complex .wrap,.editorial-main #complex .paper{background:#fff}
.editorial-main #complex .complex-art{padding:0}
.editorial-main #complex .readable-art-plan{max-width:none;width:100%;margin:0}
.editorial-main #complex .complex-grid{gap:0}
@media(min-width:801px){
.editorial-main #complex>.wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:0;row-gap:0;align-items:stretch}
.editorial-main #complex .section-heading{grid-column:1;grid-row:1;width:100%;min-height:0;margin:0;padding:0 22px 18px 0;align-self:start}
.editorial-main #complex .complex-grid{display:contents}
.editorial-main #complex .complex-grid>.paper:first-child{grid-column:1;grid-row:2;display:flex;align-items:flex-end;margin:0;border:0;padding:0}
.editorial-main #complex .complex-grid>.paper:last-child{grid-column:2;grid-row:1/3;align-self:end;margin:0;border:0;padding:0}
.editorial-main #complex .readable-art-systems .readable-art-heading small,.editorial-main #complex .readable-art-systems .readable-art-heading strong{font-size:3.5cqw}
}
@media(max-width:800px){.editorial-main #complex .complex-grid{gap:0}.editorial-main #complex .paper{margin:0;border:0}.editorial-main #complex .readable-art-plan{max-width:none}}

/* Slightly lighter weight for the three benefit cards and road caption. */
.sales-hero .core-cards p,.sales-hero .core-cards p strong,.sales-hero .core-cards small,.sales-hero .core-road{font-weight:700}

/* Four questions within the previous three-question footprint when closed. */
.editorial-main .faq details{padding:12px 0}
.editorial-main .faq summary{padding-top:10px;padding-bottom:10px}
@media(max-width:800px){.editorial-main .faq details{padding:11px 0}.editorial-main .faq summary{padding-top:10px;padding-bottom:10px}}

/* Interior photo mosaic: one broad room image and an orderly rhythm of details. */
.editorial-main .interior-gallery{background:#fff;padding-top:36px;padding-bottom:38px}
.interior-gallery .section-heading{margin-bottom:22px}
.interior-mosaic{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:150px;gap:14px 12px}
.interior-mosaic .interior-tile{grid-column:span 2;min-width:0;min-height:0;margin:0;display:flex;flex-direction:column;background:#fff}
.interior-mosaic .interior-tile-1{grid-column:span 4;grid-row:span 2}
.interior-tile>button{display:block;flex:1;min-height:0;width:100%;border:0;padding:0;background:#f5f3f0;overflow:hidden;border-radius:3px}
.interior-tile>button>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.interior-tile>button:hover>img{transform:scale(1.025)}
.interior-tile>button:focus-visible{outline:2px solid #bb4300;outline-offset:3px}
.interior-tile figcaption{flex:none;padding:7px 0 0;font-size:12px;font-weight:400;line-height:1.4;color:#435267}
@media(max-width:800px){.editorial-main .interior-gallery{padding-top:28px;padding-bottom:28px}.interior-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:135px;gap:12px 9px}.interior-mosaic .interior-tile{grid-column:span 1}.interior-mosaic .interior-tile-1{grid-column:1/-1;grid-row:span 2}.interior-mosaic .interior-tile-12{grid-column:1/-1}.interior-tile figcaption{font-size:11px;padding-top:6px}}
@media(prefers-reduced-motion:reduce){.interior-tile>button>img{transition:none}}

/* Updated payment benefits from the supplied leaflet. */
.sales-hero .prepay-intro{margin:0 0 3px;font-size:22px;font-weight:700;color:#06172f;line-height:1.4}
.sales-hero .prepay-size>strong{font-size:27px;letter-spacing:-1px}
.payment-options{display:flex;justify-content:center;align-items:center;gap:12px;margin:16px auto 20px;max-width:600px}
.payment-options>p{flex:1;margin:0;padding:12px 16px;background:#061e40;color:#fff;border-radius:7px;font-size:21px;font-weight:700;line-height:1.35}
.payment-options>p:first-child{background:#c44408}
.payment-options>span{font-size:14px;color:#435267;flex:none}
.payment-options strong{font:inherit}
@media(max-width:800px){.sales-hero .prepay-intro{font-size:16px}.sales-hero .prepay-size>strong{font-size:19px}.payment-options{gap:8px;margin:13px auto 16px;max-width:94%}.payment-options>p{font-size:16px;padding:11px 8px}.payment-options>span{font-size:12px}}

/* Main offer alignment and choice emphasis */
.sales-hero .prepay-size>strong{font-size:34px}
.sales-hero .core-cards .school-emphasis,.sales-hero .core-cards .park-emphasis{font-size:1.13em;font-weight:700}
.payment-options{align-items:stretch}
.payment-options>p{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:82px;box-sizing:border-box}
.payment-options>p:first-child{background:#c44408}
.payment-options>span{align-self:center;font-size:21px;font-weight:800;color:#c44408;white-space:nowrap}
@media(max-width:800px){.sales-hero .prepay-size>strong{font-size:25px}.payment-options>p{min-height:66px}.payment-options>span{font-size:17px}}

/* Unified bright orange offer badges */
.sales-hero .prepay-size>strong{font-size:clamp(40px,5vw,60px);color:#06172f;letter-spacing:-2px}
.payment-options>p,.payment-options>p:first-child{background:#ff5a0a;border-radius:999px;padding:15px 24px}
.payment-options>span{color:#06172f}
@media(max-width:800px){.sales-hero .prepay-size>strong{font-size:clamp(28px,7.2vw,42px);letter-spacing:-1.2px}.payment-options>p,.payment-options>p:first-child{padding:12px 14px}}

/* A quiet park-green wash behind the handwritten line only. */
.sales-hero .opportunity{position:relative;isolation:isolate;color:#06172f}
.sales-hero .opportunity::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-7px 0;max-width:600px;margin-inline:auto;background:radial-gradient(ellipse at center,rgba(181,214,146,.82) 0%,rgba(205,228,181,.65) 45%,rgba(233,243,220,.28) 64%,rgba(255,255,255,0) 82%);border-radius:50%}
@media(max-width:800px){.sales-hero .opportunity::before{inset:-6px -5px;max-width:380px}}

.sales-hero .move-in-row .move-in-badge{background:#06172f;color:#fff;box-shadow:none}

/* Contract and reservation gift popup */
#gift-popup{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);border:0;border-radius:18px;padding:0;background:#fff;color:#06172f;overflow:auto;box-shadow:0 22px 80px #0005}
#gift-popup::backdrop{background:rgba(6,23,47,.55)}
.gift-content{position:relative;text-align:center;padding:34px 28px 26px;background:radial-gradient(ellipse at 50% 28%,#fff3d9,transparent 64%),#fff}
.gift-close{position:absolute;right:12px;top:6px;border:0;background:none;font-size:28px;line-height:1.3;padding:5px;color:#06172f}
.gift-brand{font-size:13px;font-weight:700;margin:0 0 22px;letter-spacing:-.5px}
.gift-eyebrow{font-size:14px;font-weight:700;letter-spacing:2px;color:#96691c;margin:0}
.gift-key{display:block;width:140px;height:62px;margin:14px auto 10px;color:#c59838}
#gift-popup h2{font-size:34px;font-weight:800;line-height:1.4;letter-spacing:-1.3px;margin:0}
#gift-popup h2>span{display:block;font-size:19px;font-weight:700;letter-spacing:0}
#gift-popup h2>strong{color:#b17e20}
.gift-limit{display:table;margin:12px auto 22px;padding:4px 18px;border:1px solid #c9a55b;border-radius:30px;color:#805b19;font-size:15px;font-weight:700}
.gift-visit{padding:17px 10px;border-top:1px solid #e5ded0;border-bottom:1px solid #e5ded0;margin-bottom:23px;line-height:1.5}
.gift-visit>span{display:block;font-size:16px;font-weight:700}
.gift-visit>strong{display:block;font-size:27px;color:#ff5a0a;font-weight:800}
.gift-book{display:flex;align-items:center;justify-content:center;gap:25px;background:#06172f;color:#fff;border-radius:50px;padding:13px 12px;font-size:17px;font-weight:800;min-height:50px}
.gift-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f4f4f4;padding:11px 17px;font-size:12px;color:#39485b}
.gift-controls label{display:flex;align-items:center;gap:5px;cursor:pointer}.gift-controls input{accent-color:#06172f}
.gift-dismiss{border:0;background:none;padding:4px;color:#06172f;font-size:12px}
@media(max-width:480px){.gift-content{padding:29px 22px 22px}.gift-brand{font-size:12px;margin-bottom:16px}#gift-popup h2{font-size:30px}.gift-key{height:52px;margin:10px auto}.gift-limit{margin-bottom:17px}.gift-visit{padding:12px 8px;margin-bottom:18px}.gift-visit>strong{font-size:25px}}
@media(max-height:620px){.gift-content{padding-top:22px;padding-bottom:17px}.gift-brand{margin-bottom:12px}.gift-key{height:42px;margin:6px auto}.gift-limit{margin:8px auto 12px}.gift-visit{padding:9px;margin-bottom:13px}}

/* Generous ribbon-wrapped gift presentation */
.gift-content{background:radial-gradient(ellipse at 50% 25%,#fff0ca 0%,#fff8eb 45%,#fff 85%)}
.gift-eyebrow{font-size:14px;letter-spacing:0;font-weight:800;color:#9a6a20}
.gift-key.gift-presents{width:300px;height:auto;margin:12px auto 2px;max-width:100%}
.gift-visit{border:1px solid #ebd5a9;border-radius:12px;background:#fffaf0;box-shadow:0 4px 14px #cfa44a0c}
.gift-book{background:#ff6d24;box-shadow:0 5px 0 #db4f12;color:#fff;margin-bottom:5px}
@media(max-width:480px){.gift-key.gift-presents{width:255px;margin:8px auto 0}.gift-eyebrow{font-size:13px}}
@media(max-height:670px){.gift-key.gift-presents{width:210px}.gift-content{padding-top:25px}.gift-brand{margin-bottom:12px}.gift-limit{margin:8px auto 12px}.gift-visit{padding:10px;margin-bottom:14px}}

/* Fine gold framing and restrained ornamental corners. */
#gift-popup{border:2px solid #c49b4e;box-shadow:0 0 0 1px #f9e6b8,0 22px 80px #0005}
#gift-popup .gift-content{isolation:isolate;padding-left:32px;padding-right:32px}
.gift-content::before{content:"";position:absolute;inset:9px;z-index:-1;pointer-events:none;border:1px solid #d7b979;border-radius:9px;box-shadow:inset 0 0 0 3px #fff7e7}
.gift-content::after{content:"";position:absolute;inset:16px;z-index:-1;pointer-events:none;background:linear-gradient(#b88a39,#b88a39) left top/28px 2px no-repeat,linear-gradient(#b88a39,#b88a39) left top/2px 28px no-repeat,linear-gradient(#b88a39,#b88a39) right top/28px 2px no-repeat,linear-gradient(#b88a39,#b88a39) right top/2px 28px no-repeat,linear-gradient(#b88a39,#b88a39) left bottom/28px 2px no-repeat,linear-gradient(#b88a39,#b88a39) left bottom/2px 28px no-repeat,linear-gradient(#b88a39,#b88a39) right bottom/28px 2px no-repeat,linear-gradient(#b88a39,#b88a39) right bottom/2px 28px no-repeat}
.gift-extra{margin:3px 0 0;font-size:19px;line-height:1.5;font-weight:700;color:#8c641f;letter-spacing:-.5px}
#gift-popup .gift-close{top:15px;right:17px;width:28px;height:28px;padding:0;background:#fff8e9;border-radius:50%;font-size:23px;z-index:1}
.gift-controls{border-top:1px solid #dec99d;background:#faf6ed}
@media(max-width:480px){#gift-popup .gift-content{padding-left:28px;padding-right:28px}.gift-extra{font-size:17px}}

@media(min-width:801px){.browse-sidebar .sms-contact{display:none}}

/* Mobile hierarchy: discount first, compact park line and two-line shopping card. */
@media(max-width:800px){
.sales-hero .opportunity{font-size:20px;line-height:1.35;margin:10px 0 14px;letter-spacing:-.6px}
.sales-hero .discount{font-size:clamp(62px,17vw,90px);gap:8px;line-height:1.08;letter-spacing:-3px;flex-wrap:nowrap}
.sales-hero .discount>span{font-size:.43em;letter-spacing:-1px;white-space:nowrap}
.sales-hero .discount strong{font-size:1em;white-space:nowrap;font-weight:800}
.sales-hero .discount-block{margin-bottom:20px}
.sales-hero .core-cards>div:nth-child(3) p{font-size:clamp(12px,3.4vw,16px);letter-spacing:-.7px;white-space:nowrap}
.sales-hero .core-cards>div:nth-child(3) small{display:inline;font-size:clamp(8px,2.35vw,12px);letter-spacing:-.6px;white-space:nowrap}
.sales-hero .core-road{font-size:16px;letter-spacing:-.7px;gap:7px;line-height:1.4}
.sales-hero .core-road span{width:12px;flex:0 0 12px}
}

@font-face{font-family:OfferKoreanPenComplete;src:url('assets/fonts/OfferKoreanPen-v2.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
.sales-hero .opportunity{font-family:OfferKoreanPenComplete,cursive;font-weight:400;font-synthesis:none}
@media(max-width:800px){.sales-hero .opportunity{font-size:25px}.sales-hero .core-cards>div:nth-child(3) p{font-size:16px;letter-spacing:-1px}.sales-hero .core-cards>div:nth-child(3) small{font-size:clamp(8px,2.35vw,12px)}}

/* Restore the clean original lettering consistently across devices. */
.sales-hero .opportunity{font-family:'NanumSquare','Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-weight:400;font-synthesis:none}
@media(min-width:801px){.sales-hero .opportunity{font-size:40px}}
@media(max-width:800px){.sales-hero .opportunity{font-size:24px;line-height:1.4;letter-spacing:-1px;margin:12px 0 15px}}

@media(max-width:800px){.sales-hero .core-cards>div:nth-child(3) small{font-size:clamp(9px,2.6vw,13px);letter-spacing:-.7px}}

/* Preserve the exact approved lettering from the supplied reference. */
.sales-hero .opportunity-reference{position:relative;width:min(480px,100%);aspect-ratio:48/5;height:auto;overflow:hidden;margin:15px auto 19px;padding:0;line-height:0}
.sales-hero .opportunity-reference::before{display:none}
.sales-hero .opportunity-reference img{position:absolute;width:216.666667%;max-width:none;height:auto;left:-58.333333%;top:-374%;pointer-events:none}
@media(max-width:800px){.sales-hero .opportunity-reference{width:min(100%,360px);margin:12px auto 15px}}

/* Approved desktop lettering size; slightly narrower on phones. */
@media(min-width:801px){.sales-hero .opportunity-reference{width:480px;max-width:100%}}
@media(max-width:800px){.sales-hero .opportunity-reference{width:88%;max-width:316px}}

.combined-block-plan{margin:0;width:100%;background:#fff}
.combined-block-plan figcaption{text-align:center;padding:15px 8px 18px;line-height:1.5;color:#06172f}
.combined-block-plan figcaption strong{display:block;font-size:23px;font-weight:800}
.combined-block-plan figcaption span{display:block;font-size:17px;font-weight:700;color:#c44408;margin-top:4px}
.editorial-main #complex .combined-block-plan>img{display:block;width:100%;height:auto;max-height:none;padding:0;object-fit:contain}
@media(min-width:801px){.editorial-main #complex .complex-grid>.paper:last-child{align-self:start}}
@media(max-width:800px){.combined-block-plan figcaption strong{font-size:21px}.combined-block-plan figcaption span{font-size:16px}}

/* Layout first, systems below: a single clear reading order. */
.editorial-main #complex.complex-stacked>.wrap{display:block;background:#fff}
.editorial-main #complex.complex-stacked .section-heading{width:100%;padding:0;margin:0 0 20px;min-height:0}
.editorial-main #complex.complex-stacked .section-heading h2{margin:0;font-size:28px;line-height:1.5}
#complex.complex-stacked .combined-block-plan{max-width:780px;margin:0 auto}
#complex.complex-stacked .combined-block-plan figcaption{padding:0 8px 16px}
#complex.complex-stacked .systems-section{margin:32px auto 0;max-width:900px}
#complex.complex-stacked .systems-section h3{font-size:28px;font-weight:800;line-height:1.5;color:#061e40;margin:0 0 20px;letter-spacing:-1px}
#complex.complex-stacked .systems-image-crop{overflow:hidden;background:#fff}
#complex.complex-stacked .systems-image-crop img{display:block;width:100%;height:auto;max-height:none;padding:0;margin-top:-13%;object-fit:contain}
@media(max-width:800px){.editorial-main #complex.complex-stacked .section-heading h2,#complex.complex-stacked .systems-section h3{font-size:23px}#complex.complex-stacked .systems-section{margin-top:25px}}

/* Use the larger supplied capture at its natural content width. */
#complex.complex-stacked .combined-block-plan{max-width:654px}
.larger-layout-window{position:relative;width:100%;aspect-ratio:654/1490;overflow:hidden;background:white}
.editorial-main #complex .larger-layout-window>img{position:absolute;width:127.675841%;max-width:none;height:auto;max-height:none;padding:0;left:-13.149847%;top:-26.308725%;object-fit:initial}

/* Larger faithful floor plans, without the extra view-original label. */
.editorial-main .unit-panel{grid-template-columns:170px minmax(0,1fr);gap:20px;align-items:start;padding-top:25px}
.editorial-main .plan img{width:100%;height:auto;max-height:none;object-fit:contain}
.editorial-main #plan-zoom{padding:0;background:#fff}
@media(max-width:800px){.editorial-main .unit-panel{grid-template-columns:minmax(0,1fr);gap:12px}.editorial-main .unit-info{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;padding-top:0}.editorial-main .unit-info .eyebrow{grid-column:1/-1;margin-bottom:6px}.editorial-main .unit-info h3{font-size:42px;margin:0}.editorial-main .unit-info dl{grid-column:auto;font-size:11px;margin:0}.editorial-main .unit-info dl>div{padding:4px 0}.editorial-main .unit-info .unit-sub{font-size:11px}.editorial-main .plan{width:100%}}

/* Remove repeated type information and give the supplied plan the full row. */
.editorial-main #units .unit-panel{display:block;padding:18px 0 0}
.editorial-main #units .plan{display:block;width:100%;margin:0;background:white}
.editorial-main #units .plan img{display:block;width:100%;height:auto;max-width:1080px;max-height:none;margin:0 auto;padding:0;object-fit:contain;image-rendering:auto}
@media(max-width:800px){.editorial-main #units .unit-panel{padding-top:12px}.editorial-main #units .plan{width:calc(100% + 24px);margin-left:-12px}}

.local-amenity-icon{height:112px;display:flex;align-items:center;justify-content:center;margin-bottom:15px;border-bottom:1px solid #e1e7eb;color:#06172f;background:#fff}
.local-amenity-icon svg{width:55px;height:55px}
.local-amenity-photo{margin:0 0 15px}.local-amenity-photo img{width:100%;height:112px;object-fit:cover;object-position:center 45%;border-radius:6px}
.local-amenity-photo figcaption{font-size:10px;line-height:1.4;margin-top:5px;color:#526173}
.gallery-reference-note{max-width:650px;font-size:13px;line-height:1.7;color:#526173;margin:12px 0 0}
@media(max-width:800px){.local-amenity-icon,.local-amenity-photo img{height:85px}.local-amenity-icon svg{width:42px;height:42px}.local-amenity-photo figcaption{font-size:8px}.gallery-reference-note{font-size:12px}}

/* Compact reservation panels after removing helper copy. */
.booking-panel{padding-top:20px;padding-bottom:20px}
.booking-panel .booking-heading{margin-bottom:16px}
#bottom-booking-form{padding-top:17px;padding-bottom:17px}
.booking-panel .consent-row{padding-top:12px;padding-bottom:12px}
@media(max-width:800px){.booking-panel{padding-top:18px;padding-bottom:18px}.booking-panel .booking-heading{gap:14px;margin-bottom:16px}.booking-panel form,#bottom-booking-form{padding-top:14px;padding-bottom:14px}.booking-panel .booking-fields{gap:15px}}

@media(max-width:800px){
 .booking-panel .consent-row details{width:100%;margin-left:auto}
 .booking-panel .consent-row summary{width:max-content;margin-left:auto;text-align:right}
 .booking-panel .consent-row details p{text-align:left}
}

@media(max-width:800px){#top-visit.booking-panel .booking-heading>a{display:none}}

@media(max-width:800px){.sales-hero .discount{font-size:clamp(44px,12vw,70px);gap:6px}.sales-hero .discount>.discount-prefix{font-size:.50em;letter-spacing:-1px}}

@media(max-width:800px){
 .booking-panel .schedule-field .mobile-date-quick{display:flex;gap:7px;margin:8px 0 4px}
 .mobile-date-quick button{flex:1;min-height:38px;border:1px solid #dcbda8;border-radius:4px;background:#fff;color:#06172f;font-size:13px;font-weight:700}
 .mobile-date-quick button:active{background:#fff1e7}
 .booking-panel .schedule-field>div:not(.mobile-date-quick){display:flex;flex-wrap:wrap;gap:8px}
 .booking-panel .schedule-field input[type=date]{flex:1 1 100%;width:100%;min-width:0}
 .booking-panel .mobile-time-selects{display:flex;gap:8px;width:100%}
 .booking-panel .mobile-time-selects select{flex:1;min-width:0;height:48px;padding:0 10px;border:1px solid #dcbda8;border-radius:3px;background:#fff;color:#24364b;font:inherit;font-size:16px}
}

@media(max-width:800px){.booking-panel .mobile-date-selects{display:flex;gap:6px;width:100%}.booking-panel .mobile-date-selects select{flex:1;min-width:0;height:48px;padding:0 6px;border:1px solid #dcbda8;border-radius:3px;background:#fff;color:#24364b;font:inherit;font-size:14px}}

@media(max-width:800px){
 .booking-panel .schedule-field input[readonly]{cursor:pointer;flex:1 1 100%;width:100%;background:#fff;color:#24364b}
 .booking-panel .schedule-field input[readonly]::placeholder{color:#84909b;opacity:1}
 .booking-panel .schedule-field .mobile-calendar[hidden]{display:none}
 .booking-panel .schedule-field .mobile-calendar{display:block;flex:1 1 100%;width:100%;padding:12px;border:1px solid #dcbda8;border-radius:5px;background:#fff}
 .mobile-calendar .calendar-head{display:flex;align-items:center;justify-content:space-between;color:#06172f}
 .mobile-calendar .calendar-head button{border:0;background:#fff;color:#06172f;font-size:25px;width:40px;height:38px}
 .mobile-calendar .calendar-head button:disabled{color:#b7c1c9}
 .mobile-calendar .calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}
 .mobile-calendar .calendar-grid span,.mobile-calendar .calendar-grid button{display:flex;justify-content:center;align-items:center;min-height:38px;font-size:13px}
 .mobile-calendar .calendar-grid span{color:#556476}
 .mobile-calendar .calendar-grid button{border:0;border-radius:4px;background:#fff;color:#06172f}
 .mobile-calendar .calendar-grid button:disabled{color:#c0c6cb}
 .mobile-calendar .calendar-grid button.selected{background:#06172f;color:#fff}
}
