/* NOBLUE 모바일 — 원본 PC 레이아웃은 손대지 않고 768px 이하에서만 덮어쓴다 (2026-10-02) */
#nbFab,#nbMenuBtn,#nbMenu{display:none}
@media (max-width:1100px){
  html,body,#hnn-wrap,.section,footer,#header .hnn-inner{min-width:0!important}
  body{overflow-x:hidden}
  img{max-width:100%;height:auto}
  /* 헤더 */
  #header{height:58px;padding:0 16px;position:fixed;top:0;left:0;background:#004f50}
  #hnn-wrap{display:flow-root}
  #header .hnn-inner{text-align:left}
  #hnn-logo{top:8px}
  #hnn-logo a{width:200px;height:40px;background-size:contain}
  #hnn-gnb,.hnn-bg{display:none!important}
  .tnb{top:17px;right:52px;font-size:18px}
  #nbMenuBtn{display:block;position:fixed;top:9px;right:10px;z-index:1001;width:40px;height:40px;border:0;background:none;cursor:pointer}
  #nbMenuBtn span{display:block;width:22px;height:2px;background:#fff;margin:5px auto;transition:.2s}
  #nbMenu{position:fixed;top:58px;left:0;right:0;bottom:0;z-index:1000;background:#fff;overflow-y:auto;padding:8px 0 90px}
  #nbMenu.on{display:block}
  #nbMenu dl{border-bottom:1px solid #eee;margin:0}
  #nbMenu dt{padding:15px 20px;font-size:16px;font-weight:700;color:#004f50}
  #nbMenu dd{margin:0;padding:0 20px 12px;display:flex;flex-wrap:wrap;gap:8px}
  #nbMenu dd a{font-size:14px;color:#444;background:#f3f6f6;padding:8px 12px;border-radius:4px;text-decoration:none}
  #nbMenu .nbmTel{display:block;margin:20px;text-align:center;background:#004f50;color:#fff;font-size:17px;font-weight:700;padding:14px;border-radius:6px;text-decoration:none}
  .aside-quick{display:none!important}
  #fp-nav{display:none!important}
  /* 메인 비주얼 */
  #section0,#hnn-vis{height:100svh!important;min-height:560px}
  #vis .vis .bg2{background-position:50% 50%}
  #vis .vis-txt{left:0!important;right:0;margin-left:0!important;top:20%!important;width:100%;padding:0 16px;box-sizing:border-box;transform:none!important}
  #vis .active .vis5 .vis-txt,#vis .vis5 .vis-txt{opacity:1;top:22%!important}
  #vis .vis4 .vis-txt{text-align:left;padding-left:22px}
  #vis .vis-txt img{max-width:92%}
  #vis .vis2 .vis-txt .vis2-lef,#vis .vis2 .vis-txt .vis2-rig{display:none}
  #vis .vis1 .vis-txt .vis1-tit,#vis .vis2 .vis-txt .vis2-tit,#vis .vis4 .vis-txt .vis4-tit{margin-bottom:24px}
  #hnn-vis .cont{left:16px;right:16px;width:auto;bottom:24px}
  #hnn-vis .cont .bar{display:none}
  /* 섹션 공통: 한 화면 고정 해제 */
  .section{height:auto!important;padding:60px 0}
  .section .fp-tableCell,.fp-tableCell{height:auto!important;display:block}
  .hnn-inner2{padding:0 16px}
  /* PREMIUM 6 */
  .main1-slide1{position:static;width:auto;top:auto;margin-bottom:24px}
  .main1-tit{margin-bottom:20px}.main1-tit img{max-width:70%}
  .main-cont{width:100%;margin-top:24px}
  .main1-slide2{width:100%}
  .main1-slide2 .rotate{display:none}
  /* LIFE & ECO 카드 */
  .main2-tit{margin-bottom:24px;padding:0 16px}
  .main2 ul{padding:0 16px}
  .main2 ul li{width:50%;box-sizing:border-box;padding:4px}
  .main2 ul li a img{opacity:1;transform:none;width:100%}
  /* TERRACE HOUSE */
  #section3::before{display:none}
  .main3-top{margin-bottom:20px}.main3-tit{padding:0 16px}
  .main3-slide{width:100%}
  .main3-slide .swiper-slide a span{padding-left:16px}
  .main3-slide .swiper-slide-active a span{height:56px}
  .main3-slide .swiper-slide a span img{max-width:80%}
  /* LOCATION */
  .main4-tit{margin-bottom:24px}
  .main4 ul li,.main4 ul li:first-child,.main4 ul li:last-child{float:none;width:100%;padding:0!important;border:0!important;text-align:center;margin-bottom:24px}
  /* 푸터 */
  footer{padding:30px 16px 110px}
  .foot-brand{flex-direction:column;gap:16px}
  .foot-brand .ori{padding-left:0}
  .foot-brand .type{position:static;margin-bottom:12px}
  .foot-brand ul li{float:none;margin:0 0 6px!important;line-height:36px;text-align:left}
  footer p{word-break:keep-all}
  /* 서브 */
  .svis{height:180px!important;margin-top:58px}
  .sub-top{height:auto!important;padding-top:70px}
  .hnn-stit{font-size:24px!important}
  #hnn-content{width:auto!important;padding:30px 12px 40px!important}
  #hnn-content .sub-tit{font-size:22px!important;padding-bottom:40px!important;margin-bottom:24px!important}
  .sub_con img{width:100%}
  .with_tab ul{flex-wrap:wrap}
  .with_tab ul li{flex:1 0 30%;font-size:14px;line-height:42px}
  .sub_con iframe{width:100%!important;height:auto!important;aspect-ratio:16/9}
  /* 방문예약 */
  body .nbr{margin-bottom:40px}
  body .nbr .regist_tit{font-size:18px;margin-top:32px}
  body .nbr .terms_agree{display:block}
  body .nbr .agee_wrap{margin-top:8px}.nbr .agee_wrap label{margin:0 16px 0 0}
  body .nbr table{table-layout:fixed}
  body .nbr th{width:86px;padding:12px 8px;font-size:13.5px;word-break:keep-all}
  body .nbr .agreeInfo_tb th{width:110px}
  body .nbr td{padding:10px 8px}
  body .nbr .joinNm,body .nbr select.age{width:100%}
  body .nbr .pcs1{width:72px}.nbr .pcs2,body .nbr .pcs3{width:calc((100% - 86px)/2);margin-left:4px}
  body .nbr .btn_regist,body .nbr .btn_cancel{width:46%;margin:0 1%}
  body .nbr .m-only{display:inline}
  /* 퀵버튼(정본=부천 #nbFab · 색만 라테라스) */
  #nbFab{display:flex}
}
#nbFab{position:fixed;right:14px;bottom:16px;z-index:99998;flex-direction:column;align-items:center;gap:10px;font-family:'Noto Sans KR',sans-serif}
#nbFab .nbFabBtn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;text-decoration:none;color:#fff;cursor:pointer;border:0;box-shadow:0 6px 18px rgba(0,0,0,.22)}
#nbFab .nbFabBtn svg{width:22px;height:22px;fill:#fff}
#nbFab .nbFabBtn .lb{font-size:9.5px;font-weight:700;margin-top:2px;line-height:1}
#nbFab .nbReserve{background:#004f50;width:60px;height:60px;animation:nbFabPulse 2.2s ease-in-out infinite}
#nbFab .nbCall{background:#cf886f}
#nbFab .nbTop{background:#fff;border:1px solid #e4dcd6;box-shadow:0 4px 12px rgba(0,0,0,.14)}
#nbFab .nbTop svg{fill:#8a817a}#nbFab .nbTop .lb{color:#a89f98}
@keyframes nbFabPulse{0%,100%{box-shadow:0 6px 18px rgba(0,79,80,.35)}50%{box-shadow:0 6px 26px rgba(0,79,80,.75)}}
@media (max-width:1100px){
  body .nbr .td_1{display:flex;gap:4px;align-items:center}
  body .nbr .td_1 select,body .nbr .td_1 input{flex:1 1 0;width:auto!important;min-width:0;margin:0!important}
  body .nbr .btn_regist,body .nbr .btn_cancel{box-sizing:border-box;line-height:52px;height:54px;vertical-align:top}
  body p.nbr-tel{margin:0 0 50px!important}
}
@media (max-width:1100px){ .main4 ul li a{position:static;display:block;margin-top:10px;text-align:right} }

/* NOBLUE 2026-10-03 메인 1번 문구: 명조 이미지 → 고딕 실제 텍스트 (원본 vis5-txt.png 윗줄과 같은 자리·크기·색) */
#vis .vis5 .nb-v5-tit{margin:0 0 6px;font-family:'Noto Sans KR',nr,sans-serif;font-size:38px;line-height:1.1;font-weight:400;color:#4c4d4f;letter-spacing:-.04em;white-space:nowrap}
#vis .vis5 .nb-v5-tit em{font-style:normal;font-weight:700;color:#d18a6f}
@media (max-width:1100px){ #vis .vis5 .nb-v5-tit{font-size:min(5.4vw,38px);margin-bottom:4px} }

/* NOBLUE 2026-10-03 메인 2~5번 명조 글자 이미지 → 고딕 실제 텍스트.
   상자 폭(--w)=원본 이미지 폭 · 1em=1px(PC) → 모바일은 원본 이미지가 줄던 비율(92%) 그대로 축소 */
#vis .nbt{font-size:1px;width:calc(var(--w)*1em);margin:0 auto;font-family:'Noto Sans KR',nr,sans-serif;position:relative;white-space:nowrap}
#vis .nbt b{display:block;font-weight:400}
#vis .nbt em{font-style:normal}
#vis .nbt-v1 b{font-size:50em;line-height:1.34;letter-spacing:-.04em;color:#6c9c60;text-align:center}
#vis .nbt-v1 em{font-weight:700;color:#00664f}
#vis .nbt-v2t{text-align:center;color:#d18a6f}
#vis .nbt-v2t .l1{font-size:38em;line-height:1.1;color:#fff;letter-spacing:.02em}
#vis .nbt-v2t .l2{font-size:84em;line-height:1;font-weight:300;letter-spacing:.02em;margin-top:.5em}
#vis .nbt-v2t .l3{font-size:240em;line-height:.8;font-weight:300;letter-spacing:-.05em}
#vis .nbt-v2x b{font-size:21em;line-height:1.62;color:#fff;text-align:center;letter-spacing:-.02em}
#vis .nbt-v2x em{color:#d18a6f}
#vis .nbt-st img{display:block}
#vis .nbt-st b{position:absolute;top:1.3em;font-size:17em;letter-spacing:.55em;color:#d18a6f;line-height:1.3}
#vis .nbt-st b i{font-style:normal;font-size:1.5em;color:#fff;font-weight:300;letter-spacing:.35em;vertical-align:-.1em}
#vis .nbt-st b.r{right:-.45em}
#vis .nbt-st b.l{left:0}
#vis .nbt-v3 b{font-size:24em;line-height:1.72;color:#fff;text-align:center;letter-spacing:-.02em;text-shadow:0 0 2px rgba(0,40,41,.9),0 0 10px rgba(0,40,41,.7)}
#vis .nbt-v4{margin:0}
#vis .nbt-v4 b{color:#fff;text-align:left}
#vis .nbt-v4 em{color:#dac06d}
#vis .nbt-v4 .l1{font-size:28em;line-height:1.1;letter-spacing:.42em}
#vis .nbt-v4 .l2{font-size:88em;line-height:1.36;font-weight:300;letter-spacing:-.04em}
#vis .nbt-v4 .l2+.l2{margin-top:-.08em}
#vis .nbt-v4 .l3{font-size:38em;line-height:1.3;color:#dac06d;letter-spacing:.02em;margin-top:.3em}
@media (max-width:1100px){ #vis .nbt{font-size:min(1px,calc((100vw - 32px)*.92/var(--w)))} }
/* NOBLUE 2026-10-04 도현 지시: 메인 글자 색 강조 없이 전부 검정 통일(한강 푸르지오처럼). 어두운 막 2장(3·5번)은 밝은 막으로 */
#vis .nbt b,#vis .nbt em,#vis .nbt-st b i,#vis .vis5 .nb-v5-tit,#vis .vis5 .nb-v5-tit em{color:#111!important;text-shadow:none!important}
#vis .vis1-txt img,#vis .vis4-txt img,#vis .vis3-tit img,#vis .nbt-st img{filter:brightness(0)!important}
#vis .vis2 .bg2::after{background:radial-gradient(ellipse 46% 50% at 50% 48%,rgba(255,255,255,.86),rgba(255,255,255,.55) 55%,rgba(255,255,255,0) 100%)!important}
#vis .vis4 .bg2::after{background:linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.6) 32%,rgba(255,255,255,0) 58%)!important}
@media (max-width:1100px){
 #vis .vis2 .bg2::after,#vis .vis4 .bg2::after{background:linear-gradient(180deg,rgba(255,255,255,.85) 0%,rgba(255,255,255,.6) 50%,rgba(255,255,255,0) 75%)!important}
}
@media (max-width:1100px){ #vis .vis2 .bg2::after{background:linear-gradient(180deg,rgba(255,255,255,.85) 0%,rgba(255,255,255,.72) 62%,rgba(255,255,255,.35) 85%,rgba(255,255,255,0) 100%)!important} }
/* NOBLUE 2026-10-04 서브 페이지 내용이 짧아도 푸터는 화면 맨 아래에 붙인다(메인 fullpage 는 제외 — #hnn-content 가 있는 페이지만) */
#hnn-wrap:has(#hnn-content){display:flex;flex-direction:column;min-height:100vh}
#hnn-wrap:has(#hnn-content) > #section5{margin-top:auto}
/* NOBLUE 2026-10-04 모바일 메인: 섹션 사이·푸터 아래 흰 틈 제거(섹션 공통 padding 60px 가 원인) */
@media (max-width:1100px){
  #section0{padding:0!important;margin-top:58px}
  #section0,#hnn-vis{height:calc(100svh - 58px)!important}
  #section1{padding:50px 0!important;background:#f4f4f4}
  #section3{padding:50px 0 0!important}
  #section4{padding:50px 0!important}
  #section5{padding:0!important}
  #section5 footer{padding-bottom:110px}
}
/* NOBLUE 2026-10-04 모바일 메인 스크롤 인터랙션: 섹션 요소가 화면에 들어올 때 아래→위로 떠오르며 나타남(PC 는 fullPage 가 담당) */
@media (max-width:1100px){
  .nb-rv{opacity:0;transform:translateY(36px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
  .nb-rv.nb-in{opacity:1;transform:none}
  .nb-rv.d1{transition-delay:.12s}.nb-rv.d2{transition-delay:.24s}.nb-rv.d3{transition-delay:.36s}
}
@media (prefers-reduced-motion:reduce){.nb-rv{opacity:1!important;transform:none!important;transition:none!important}}
/* NOBLUE 2026-10-04 모바일 서브 배너: 가운데만 보이면 테라스 난간 «가로줄»이 제목을 가로질러 → 난간 위(하늘·산)만 쓴 모바일 전용 컷 / 제목 아래 세로줄이 글자에 겹치던 것(줄 50px > 여백 40px) 정리 */
@media (max-width:1100px){
  .svis{background-image:url(../images/sub-top-D-m.jpg?v=1)!important;background-position:center!important}
  #hnn-content .sub-tit{padding-bottom:44px!important}
  #hnn-content .sub-tit::before{height:24px!important}
}
/* NOBLUE 2026-10-04 모바일 헤더 = 푸르지오식: 전화번호 글자 대신 전화 아이콘 + 햄버거, 오른쪽에 나란히 */
@media (max-width:1100px){
  #header .tnb{top:9px!important;right:54px!important;width:40px;height:40px;font-size:0!important;line-height:0}
  #header .tnb a{display:block;width:40px;height:40px;font-size:0!important;color:transparent!important;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.8 19.8 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.12 4.18 2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center/21px no-repeat}
  #nbMenuBtn span{width:20px;height:1.5px}
}
/* NOBLUE 2026-10-04 모바일 전체메뉴 = 푸르지오 방식(청록 원이 위에서 내려와 화면을 덮고, 대메뉴가 차례로 떠오름 · 햄버거 → X) */
@media (max-width:1100px){
  #nbMenu{display:block!important;position:fixed;inset:0;top:0;z-index:999;background:none!important;padding:0!important;overflow:hidden;pointer-events:none}
  #nbMenu::before{content:"";position:absolute;right:0;top:-100%;width:100%;height:100%;border-radius:50%;background:#015152;transition:1s cubic-bezier(.641,.005,.095,1.05)}
  #nbMenu.on{pointer-events:auto}
  #nbMenu.on::before{top:0;border-radius:0;transition:.8s cubic-bezier(.41,.005,.095,.95)}
  #nbMenu .nbm-gnb{position:relative;height:100%;display:flex;align-items:center;padding:90px 40px 60px;box-sizing:border-box;overflow-y:auto}
  #nbMenu .nbm-d0w{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:28px}
  #nbMenu .nbm-d0w>li{opacity:0;visibility:hidden;transform:translateY(-30px);transition:.4s}
  #nbMenu.on .nbm-d0w>li{opacity:1;visibility:visible;transform:none;transition:1s}
  #nbMenu.on .nbm-d0w>li:nth-child(1){transition-delay:.6s}#nbMenu.on .nbm-d0w>li:nth-child(2){transition-delay:.7s}#nbMenu.on .nbm-d0w>li:nth-child(3){transition-delay:.8s}#nbMenu.on .nbm-d0w>li:nth-child(4){transition-delay:.9s}#nbMenu.on .nbm-d0w>li:nth-child(5){transition-delay:1s}#nbMenu.on .nbm-d0w>li:nth-child(6){transition-delay:1.1s}#nbMenu.on .nbm-d0w>li:nth-child(7){transition-delay:1.2s}
  #nbMenu .nbm-d0{font-size:23px;font-weight:400;color:#fff;text-decoration:none;letter-spacing:-.02em;font-family:'Noto Sans KR',sans-serif}
  #nbMenu .nbm-d1{list-style:none;margin:0;padding:16px 0 0 18px;display:none}
  #nbMenu li.open>.nbm-d1{display:block}
  #nbMenu .nbm-d1 li~li{margin-top:10px}
  #nbMenu .nbm-d1 a{font-size:17px;color:rgba(255,255,255,.8);text-decoration:none;font-family:'Noto Sans KR',sans-serif}
  #nbMenu .nbm-d1 a:active{color:#fff}
  /* 메뉴가 열리면 헤더 배경을 걷어 청록 화면과 하나로 보이게 + 햄버거 → X */
  html.nbm-open #header{background:transparent!important}
  html.nbm-open #nbFab{opacity:0;pointer-events:none}
  #nbMenuBtn span{transition:.3s}
  #nbMenuBtn.x span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  #nbMenuBtn.x span:nth-child(2){opacity:0}
  #nbMenuBtn.x span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
  #header{z-index:1001!important}
}
/* NOBLUE 2026-10-04 모바일 사업개요 표 = 푸르지오식: 두 단지를 위아래로 쌓고, 항목명 위 / 내용 아래 한 줄씩, 작은 글씨 */
@media (max-width:1100px){
  #info{display:block!important}
  #info .tbl_1,#info .tbl_2{width:100%!important;margin:0 0 48px!important}
  #info table{width:100%;border-top:2px solid #121212}
  #info table caption{font-size:17px!important;margin-bottom:14px!important;line-height:1.4}
  #info table tr{display:block!important;padding:18px 2px!important;font-size:14px!important}
  #info table tr th,#info table tr td{display:block!important;width:auto!important;text-align:left!important;border:0!important;text-indent:0!important}
  #info table tr th{font-size:14px;font-weight:600;color:#121212;margin-bottom:6px}
  #info table tr td{font-size:14px;line-height:1.6;color:#555}
}
