*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Noto Sans KR',Arial,sans-serif;color:#111;background:#fff;font-weight:400}a{text-decoration:none;color:inherit}button{font-family:inherit;cursor:pointer}.site-header{position:fixed;top:0;left:0;right:0;z-index:90;height:112px;background:rgba(255,255,255,.96);box-shadow:none}.header-inner{height:112px;max-width:1620px;margin:0 auto;display:grid;grid-template-columns:190px 1fr 330px;align-items:center;padding:0 22px}.logo{display:block;width:82px;margin-left:14px}.logo img{display:block;width:100%;height:auto}.top-menu{height:112px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center;text-align:center;max-width:940px;margin:0 auto;width:100%;font-size:20px;font-weight:500;color:#171717}.top-menu a{height:112px;display:flex;align-items:center;justify-content:center}.header-call{display:flex;align-items:center;justify-content:flex-end;gap:20px;white-space:nowrap}.quick-reserve{font-size:19px;font-weight:700;color:#6b5118}.phone{font-size:26px;line-height:1;font-weight:900;color:#041153;letter-spacing:-1.6px}.mega-menu{position:absolute;top:112px;left:0;right:0;z-index:89;background:rgba(255,255,255,.92);height:235px;display:none;border-top:1px solid rgba(0,0,0,.02)}.site-header:hover .mega-menu{display:block}.mega-inner{height:100%;max-width:940px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.mega-col{padding-top:24px}.mega-col a{display:block;font-size:16px;line-height:1.15;padding:0 0 18px;color:#333;font-weight:400}.mega-col a:hover{color:#07135a;font-weight:600}.home-main{padding-top:112px}.hero{height:calc(100vh - 112px);min-height:760px;position:relative;overflow:hidden;background:#111}.hero-bg{position:absolute;inset:0;background-image:url('../img/01.png');background-size:cover;background-position:center top;opacity:0;transform:scale(1.02);transition:opacity 900ms ease;animation:none}.hero-bg.active{opacity:1;animation:slowZoom 7s linear forwards}.slide02{background-image:url('../img/sec2.png');background-position:center center}@keyframes slowZoom{from{transform:scale(1.02)}to{transform:scale(1.09)}}.hero:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.05);pointer-events:none}.arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:76px;height:76px;border:1px solid rgba(255,255,255,.36);border-radius:50%;background:rgba(255,255,255,.05);color:rgba(255,255,255,.55);font-size:78px;line-height:62px;font-weight:200}.arrow-left{left:30px}.arrow-right{right:30px}.hero-copy{position:absolute;z-index:4;top:39%;left:50%;transform:translate(-50%,-50%);width:min(1150px,92vw);text-align:center;color:#fff;letter-spacing:-3px}.copy-line{opacity:0;transform:translateY(22px);animation:lineUp .72s ease forwards;text-shadow:none!important}.copy-sub{font-size:32px;font-weight:400;line-height:1.25;letter-spacing:-1.5px;margin:0 0 6px}.copy-main{font-size:66px;font-weight:900;line-height:1.12;letter-spacing:-4.5px}.line2{animation-delay:.25s}.line3{animation-delay:.85s}@keyframes lineUp{to{opacity:1;transform:translateY(0)}}.hero-pager{position:absolute;left:50%;bottom:33px;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:17px;color:#fff;font-size:20px;font-weight:500}.hero-pager button{border:0;background:transparent;color:#fff;font-size:20px;font-weight:500;padding:0;opacity:.98}.pager-line{display:block;width:120px;height:2px;background:rgba(255,255,255,.35);position:relative;overflow:hidden}.pager-line i{display:block;height:100%;width:50%;background:#fff;transition:width 900ms ease}.hero[data-current="1"] .pager-line i{width:100%}.reserve-section{display:grid;grid-template-columns:47.5% 52.5%;min-height:575px}.reserve-img{background:url('../img/sec2.png') center center/cover no-repeat}.reserve-panel{position:relative;background:#f7f7f7;padding:66px 7.4% 52px;text-align:center}.reserve-panel h2{font-size:40px;margin:0 0 8px;font-weight:800;color:#444;letter-spacing:-2px}.reserve-panel p{margin:0 0 18px;color:#777;font-size:17px}.reserve-panel>span{display:block;text-align:right;color:#c00000;font-weight:700;font-size:17px;margin-bottom:18px}.main-form{max-width:880px;margin:0 auto}.form-row{height:62px;border:1px solid #a7a7a7;border-radius:3px;display:flex;align-items:center;background:#fff;margin-bottom:12px;text-align:left;overflow:hidden}.form-row span{width:195px;padding-left:24px;font-size:17px;font-weight:600;color:#111}.form-row span b{color:#c00000;margin-right:2px}.form-row input{flex:1;height:100%;border:0;background:transparent;font-size:17px;color:#111;outline:0}.form-row input::placeholder{color:#aeb8bd;font-weight:500}.agree{display:flex;justify-content:center;align-items:center;gap:14px;font-size:17px;margin:16px 0 28px}.agree strong{font-weight:800}.agree input{vertical-align:-1px}.main-form button{width:100%;height:88px;border:0;border-radius:3px;background:#020b50;color:#fff;font-size:24px;font-weight:700}.site-footer{position:relative;background:#3f3f3f;color:#aaa;padding:96px 0 112px}.footer-content{width:calc(100% - 160px);max-width:1520px;margin:0 auto;font-size:15px;line-height:1.55}.footer-content img{width:86px;opacity:.72;display:block;margin-bottom:28px}.footer-place{margin:0 0 24px;line-height:1.75}.notice{margin:0 0 14px;line-height:1.48;color:#969696}.footer-links{font-size:17px;margin:16px 0 5px;color:#d0d0d0;font-weight:600}.footer-links a{margin-right:12px}.copy{margin:0;color:#858585}.top-btn{position:absolute;right:90px;top:105px;border:0;background:transparent;color:#d7d7d7;font-size:72px;line-height:1;font-weight:300}.bottom-bar{position:fixed;left:4.2%;right:4.2%;bottom:14px;z-index:120;height:70px;display:grid;grid-template-columns:39.5% 9.5% 51%;gap:10px;font-size:25px;font-weight:700;color:#fff}.bottom-bar button,.bottom-bar a{border:0;border-radius:8px;height:70px;display:flex;align-items:center;justify-content:center;color:#fff}.bottom-reserve,.bottom-popup{background:#6b5517}.bottom-popup{font-size:22px}.bottom-inquiry{background:#5f5f5f;justify-content:space-between!important;padding:0 35px 0 28px}.bottom-inquiry span{font-weight:700}.bottom-inquiry strong{font-size:29px;font-weight:800;letter-spacing:-1.5px}.modal{position:fixed;inset:0;display:none;z-index:300}.modal.open{display:block}.dim{position:absolute;inset:0;background:rgba(0,0,0,.76)}.reserve-box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:462px;background:#f4f4f4;border:1px solid #020b50;border-radius:24px;padding:27px 30px 30px;color:#111}.reserve-box h3{margin:0;color:#06145d;font-size:29px;line-height:1;font-weight:900;letter-spacing:-1.5px}.reserve-icon{font-size:25px;margin-right:6px}.reserve-box p{margin:8px 0 11px;font-size:14px;line-height:1;color:#111}.reserve-box em{position:absolute;top:48px;right:31px;font-style:normal;color:#c00000;font-size:14px;font-weight:800}.modal-form-row{height:42px;border:1px solid #888;border-radius:5px;background:#fff;display:flex;align-items:center;margin-bottom:10px;overflow:hidden}.modal-form-row span{width:92px;padding-left:12px;font-size:14px;color:#111;font-weight:500}.modal-form-row span b{color:#d10000;margin-right:1px}.modal-form-row input{flex:1;height:100%;border:0;outline:0;background:transparent;font-size:14px;color:#111}.modal-form-row input::placeholder{color:#9fa7a9;font-weight:500}.check{display:block;text-align:center;margin:12px 0 17px;font-size:16px;font-weight:700;color:#111}.check input{width:17px;height:17px;vertical-align:-3px;accent-color:#166ac2}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-actions button{height:58px;border:0;border-radius:6px;font-size:18px;font-weight:800;color:#fff}.modal-actions button:first-child{background:#020b50}.modal-actions button:last-child{background:#999}.popup-modal .dim{background:rgba(0,0,0,.45)}.promo-card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(820px,86vw);background:#222}.promo-img-wrap img{display:block;width:100%}.promo-foot{height:46px;background:#333;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 14px;font-size:14px}.promo-foot button{border:0;background:transparent;color:#aaa;font-size:32px;line-height:1}.policy-box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(760px,86vw);height:520px;background:#fff;border:1px solid #06145d}.policy-title{height:38px;background:#06145d;color:#fff;font-weight:800;padding:8px 12px}.policy-title button{float:right;border:0;background:#9da3b1;border-radius:50%;width:22px;height:22px}.policy-content{height:480px;overflow:auto;padding:18px 12px;font-size:15px;line-height:1.65;font-weight:500}.sub main{padding-top:112px}.sub-visual{height:180px;background:url('../img/01.png') center 44%/cover no-repeat;position:relative;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden}.sub-visual:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.42)}.sub-visual h1{position:relative;z-index:1;margin:0;font-size:34px;font-weight:700;letter-spacing:-1px}.sub-tabs{height:70px;border-bottom:1px solid #ddd;border-top:1px solid #eee;display:grid;grid-template-columns:repeat(var(--tab-count,5),minmax(0,1fr));max-width:1300px;margin:0 auto;background:#fff}.sub-tabs a{display:flex;align-items:center;justify-content:center;border-left:1px solid #e3e3e3;font-size:20px;color:#222}.sub-tabs a:last-child{border-right:1px solid #e3e3e3}.sub-tabs a.active{background:#06145d;color:#fff}.sub-content{padding:130px 20px 150px;min-height:520px;text-align:center}.sub-content h2{font-size:36px;font-weight:800;margin:0 0 22px}.sub-content .sub-desc{font-size:17px;color:#666;margin:0 0 65px}.sub-img-card{max-width:1300px;margin:0 auto}.sub-img-card img{display:block;width:100%;height:auto}.sub-placeholder{max-width:920px;margin:0 auto;border:1px solid #ddd;padding:60px 25px}.sub-placeholder h3{font-size:28px;margin:0 0 20px}.sub-placeholder p{font-size:17px;line-height:1.8}@media (max-width:900px){.site-header{height:74px}.header-inner{height:74px;display:flex;padding:0 14px}.logo{width:66px;margin-left:0}.top-menu{display:none}.header-call{margin-left:auto;gap:8px}.quick-reserve{font-size:14px}.phone{font-size:20px}.mega-menu{display:none!important}.home-main,.sub main{padding-top:74px}.hero{height:calc(100vh - 74px);min-height:620px}.hero-copy{top:37%;width:94vw}.copy-sub{font-size:19px;letter-spacing:-.8px}.copy-main{font-size:36px;letter-spacing:-2.5px;line-height:1.16}.arrow{width:48px;height:48px;font-size:48px;line-height:38px}.arrow-left{left:12px}.arrow-right{right:12px}.hero-pager{bottom:92px;font-size:16px}.hero-pager button{font-size:16px}.pager-line{width:78px}.reserve-section{grid-template-columns:1fr}.reserve-img{height:260px}.reserve-panel{padding:42px 18px 110px}.reserve-panel h2{font-size:30px}.reserve-panel p{font-size:14px}.reserve-panel>span{font-size:13px}.form-row{height:48px}.form-row span{width:100px;font-size:14px;padding-left:12px}.form-row input{font-size:14px}.agree{font-size:13px;gap:8px;flex-wrap:wrap}.main-form button{height:58px;font-size:18px}.reserve-box{width:330px;border-radius:19px;padding:22px 20px 24px}.reserve-box h3{font-size:25px}.reserve-box p{font-size:13px}.reserve-box em{top:42px;right:22px;font-size:13px}.modal-form-row{height:40px}.modal-form-row span{width:80px;font-size:13px}.modal-form-row input{font-size:13px}.check{font-size:13px;line-height:1.35}.modal-actions button{height:50px;font-size:16px}.bottom-bar{left:10px;right:10px;bottom:8px;height:54px;grid-template-columns:39% 18% 43%;gap:6px;font-size:16px}.bottom-bar button,.bottom-bar a{height:54px;border-radius:5px}.bottom-popup{font-size:15px}.bottom-inquiry{padding:0 12px}.bottom-inquiry strong{font-size:17px}.bottom-inquiry span{font-size:16px}.site-footer{padding:64px 0 88px}.footer-content{width:calc(100% - 40px);font-size:12px;line-height:1.45}.footer-content img{width:70px;margin-bottom:22px}.footer-links{font-size:13px}.top-btn{right:26px;top:75px;font-size:46px}.sub-visual{height:130px}.sub-visual h1{font-size:25px}.sub-tabs{height:auto;grid-template-columns:repeat(2,1fr)!important}.sub-tabs a{height:50px;font-size:15px}.sub-content{padding:70px 15px 120px}.sub-content h2{font-size:28px}.sub-content .sub-desc{font-size:14px;margin-bottom:35px}.promo-card{width:90vw}}
.calendar-pop{position:absolute;z-index:450;width:188px;background:#fff;border:1px solid #ddd;box-shadow:0 2px 5px rgba(0,0,0,.12);font-size:12px;padding:9px}.cal-head{font-weight:800;margin-bottom:8px}.cal-head span{float:right;font-size:18px;font-weight:400} .calendar-pop table{width:100%;border-collapse:collapse;text-align:center}.calendar-pop th{font-weight:700;padding:4px}.calendar-pop td{padding:5px;cursor:pointer}.calendar-pop td.sel{background:#555;color:#fff;border:1px solid #111}.calendar-pop .muted{color:#aaa}.cal-foot{display:flex;justify-content:space-between;margin-top:8px}.cal-foot button{border:0;background:transparent;color:#0873c4;font-size:12px}.sub-reserve{max-width:1600px;margin:0 auto;text-align:left}.sub-reserve .reserve-panel{text-align:center}


/* ===== final correction overrides ===== */
.header-inner{grid-template-columns:190px minmax(740px,940px) 330px;justify-content:center;max-width:1620px}.top-menu{max-width:none}.mega-menu{height:235px}.mega-inner{max-width:1620px;height:100%;display:grid;grid-template-columns:190px minmax(740px,940px) 330px;justify-content:center}.mega-inner:before,.mega-inner:after{content:''}.mega-col{grid-row:1}.mega-col:nth-child(1){grid-column:2;justify-self:stretch;width:25%;margin-left:0}.mega-col:nth-child(2){grid-column:2;justify-self:stretch;width:25%;margin-left:25%}.mega-col:nth-child(3){grid-column:2;justify-self:stretch;width:25%;margin-left:50%}.mega-col:nth-child(4){grid-column:2;justify-self:stretch;width:25%;margin-left:75%}
.copy-main{font-weight:800;font-size:64px;letter-spacing:-4px;text-shadow:none!important}.copy-sub{font-weight:400;text-shadow:none!important}.line2{animation-delay:.22s}.line3{animation-delay:.78s}.hero-pager{bottom:28px;gap:14px;font-weight:400}.hero-pager button{font-size:19px;font-weight:400}.pager-line{width:108px;height:1px}.pager-line i{width:50%;transition:width 900ms ease}.bottom-bar{height:66px;grid-template-columns:39.6% 9.6% 50.8%;gap:8px;font-size:23px;font-weight:600}.bottom-bar button,.bottom-bar a{height:66px;border-radius:7px;font-weight:600}.bottom-popup{font-size:21px;font-weight:600}.bottom-inquiry{padding:0 30px 0 28px}.bottom-inquiry span{font-size:23px;font-weight:600}.bottom-inquiry strong{font-size:28px;font-weight:700}.reserve-box{width:500px;border-radius:28px;padding:27px 34px 30px;background:#f4f4f4}.reserve-box h3{font-size:30px;font-weight:800;letter-spacing:-1.2px}.reserve-icon{font-size:24px}.reserve-box p{font-size:14px;margin:8px 0 14px}.reserve-box em{top:51px;right:34px}.modal-form-row{height:43px;margin-bottom:9px;border-color:#969696;border-radius:6px}.modal-form-row span{width:105px;font-size:14px;font-weight:400;color:#222}.modal-form-row input{font-size:14px}.modal-form-row input::placeholder{font-size:14px;color:#a5adaf;font-weight:500}.check{font-size:17px;font-weight:600;margin:13px 0 17px;color:#222}.modal-actions{gap:10px}.modal-actions button{height:57px;border-radius:7px;font-size:18px;font-weight:700}.popup-modal .dim{background:rgba(0,0,0,.64)}.promo-card{width:760px;max-width:86vw;background:transparent}.promo-img-wrap{display:grid;grid-template-columns:1fr 1fr;background:#eee}.promo-img-wrap img{width:100%;height:auto;display:block}.promo-foot{height:48px;background:#333;color:#ddd;font-size:14px}.promo-foot button{font-size:31px}.site-footer{padding:92px 0 108px}.footer-content{font-size:14px;line-height:1.4;color:#9b9b9b}.footer-place{line-height:1.55;margin-bottom:20px}.notice{line-height:1.35;margin-bottom:12px}.footer-links{font-size:16px;margin:12px 0 4px;color:#c6c6c6}.sub-visual{height:180px;align-items:stretch}.sub-visual h1{display:none}.sub-visual:after{background:rgba(0,0,0,.18)}.sub-tabs{max-width:1300px;height:70px}.sub-content{padding:92px 20px 150px;min-height:520px}.sub-content h2{font-size:34px;margin:0 0 60px;font-weight:800}.sub-content .sub-desc{display:none}.sub-img-card{max-width:1300px;min-height:180px;margin:0 auto}.sub-img-card img{display:block;width:100%;height:auto}.sub-img-card.empty{border:0;background:transparent;min-height:260px}.sub main{padding-top:112px}
@media (max-width:900px){.header-inner{grid-template-columns:none;display:flex}.mega-inner{display:none}.copy-main{font-size:34px;font-weight:800;letter-spacing:-2px}.hero-pager{bottom:78px}.bottom-bar{height:50px;grid-template-columns:39% 18% 43%;gap:5px;font-size:15px}.bottom-bar button,.bottom-bar a{height:50px}.bottom-popup{font-size:14px}.bottom-inquiry span{font-size:15px}.bottom-inquiry strong{font-size:16px}.reserve-box{width:316px;border-radius:20px;padding:20px 19px 22px}.reserve-box h3{font-size:24px}.reserve-box p{font-size:12px}.reserve-box em{top:39px;right:20px;font-size:12px}.modal-form-row{height:38px;margin-bottom:8px}.modal-form-row span{width:82px;font-size:12px}.modal-form-row input,.modal-form-row input::placeholder{font-size:12px}.check{font-size:12px;margin:10px 0 13px}.modal-actions button{height:48px;font-size:15px}.promo-card{width:330px}.promo-img-wrap{grid-template-columns:1fr}.promo-img-wrap img:nth-child(2){display:none}.promo-foot{height:40px}.sub-visual{height:120px}.sub-content{padding:56px 15px 120px}.sub-content h2{font-size:25px;margin-bottom:38px}.sub-tabs{grid-template-columns:repeat(2,1fr)!important}.sub-tabs a{font-size:15px;height:48px}.site-footer{padding:58px 0 86px}.footer-content{font-size:11px;line-height:1.28}.footer-place{line-height:1.45;margin-bottom:14px}.notice{line-height:1.25}.footer-links{font-size:12px}}


/* === final mobile/desktop correction overrides === */
.site-header{height:112px}.header-inner{position:relative}.mobile-menu-btn,.mobile-head-icons,.mobile-drawer{display:none}
.logo{cursor:pointer}.logo img{max-width:82px}.top-menu{max-width:980px;grid-template-columns:repeat(4,1fr);font-size:20px;font-weight:500}.mega-inner{max-width:980px;grid-template-columns:repeat(4,1fr)}.mega-col{padding-top:25px}.mega-col a{font-size:16px;font-weight:400;line-height:1.05;padding-bottom:19px}.header-call{gap:18px}.quick-reserve{font-weight:700}.phone{font-weight:900}
.hero-copy{text-shadow:none!important}.copy-line{text-shadow:none!important}.copy-sub{font-weight:400}.copy-main{font-weight:800}.line2{font-weight:800}.line3{font-weight:700}.hero-pager{bottom:36px;gap:14px}.pager-line{width:126px;height:1px;background:rgba(255,255,255,.38)}.pager-line i{width:50%;transition:width 6.8s linear}.hero[data-current="1"] .pager-line i{width:100%}
.bottom-bar{grid-template-columns:39% 9% 52%;gap:9px;left:4.2%;right:4.2%;bottom:14px;font-weight:500;font-size:24px}.bottom-bar button,.bottom-bar a{border-radius:7px;font-weight:500}.bottom-inquiry{justify-content:space-between!important;padding-left:30px;padding-right:35px}.bottom-inquiry span{font-size:23px;font-weight:500}.bottom-inquiry strong{font-size:28px;font-weight:700}
.reserve-box{width:500px;border-radius:28px;padding:27px 34px 30px;border:1px solid #07145a;background:#f4f4f4}.reserve-box h3{font-size:30px;font-weight:800;letter-spacing:-1.3px}.reserve-icon{font-size:24px}.reserve-box p{font-size:14px;margin:8px 0 14px}.reserve-box em{top:50px;right:34px;font-size:14px}.modal-form-row{height:43px;margin-bottom:9px;border:1px solid #969696;border-radius:6px}.modal-form-row span{width:105px;font-size:14px;font-weight:400;color:#222}.modal-form-row input,.modal-form-row input::placeholder{font-size:14px;color:#a5adaf}.check{font-size:17px;font-weight:600;margin:13px 0 17px;color:#222}.check a{font-weight:700}.modal-actions{gap:10px}.modal-actions button{height:57px;border-radius:7px;font-size:18px;font-weight:700}.reserve-modal .dim{background:rgba(0,0,0,.50)}
.popup-modal{pointer-events:none}.popup-modal.open{display:block;pointer-events:auto}.popup-modal .promo-card{top:50%;left:50%;width:760px;max-width:86vw;background:transparent;transform:translate(120vw,-50%);transition:transform .55s ease}.popup-modal.open .promo-card{transform:translate(-50%,-50%)}.popup-modal.closing .promo-card{transform:translate(120vw,-50%)}.promo-img-wrap{display:grid;grid-template-columns:1fr 1fr;background:#eee}.promo-foot{height:48px;background:#333;color:#ddd;padding:0 14px}.promo-foot button{font-size:32px;color:#bbb;margin-left:10px}.promo-prev,.promo-next{font-size:38px!important;line-height:1}.popup-modal .dim{display:none!important}
.sub-visual h1{display:none!important}.sub-content h2{font-size:34px;margin-bottom:60px}.sub-content .sub-desc{display:none!important}.sub-img-card.empty{min-height:300px;border:0;background:transparent}.site-footer{padding:88px 0 108px}.footer-content{font-size:14px;line-height:1.35;color:#999}.notice{line-height:1.35;margin-bottom:10px}.footer-place{line-height:1.5;margin-bottom:18px}.footer-links{font-size:16px;margin:10px 0 4px;color:#c7c7c7}

@media(max-width:900px){
  body{min-width:0}.site-header{height:84px;position:fixed;background:#fff}.header-inner{height:84px;display:flex;justify-content:center;align-items:center;padding:0 16px}.logo{width:70px;margin:0;position:absolute;left:50%;transform:translateX(-50%)}.logo img{width:70px}.top-menu,.header-call,.mega-menu{display:none!important}.mobile-menu-btn{display:block;position:absolute;left:18px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:30px;line-height:1;color:#111;font-weight:700}.mobile-head-icons{display:flex;position:absolute;right:18px;top:50%;transform:translateY(-50%);gap:15px;align-items:center}.mobile-head-icons a{font-size:28px;line-height:1;color:#06145d;font-weight:900}.mobile-head-icons a:last-child{color:#6b5517}
  .mobile-drawer{display:block;position:fixed;top:0;right:0;width:82%;max-width:390px;height:100vh;background:#020b50;color:#fff;z-index:500;transform:translateY(-105%);transition:transform .45s ease;padding:24px 32px 30px;box-shadow:-260px 0 0 rgba(0,0,0,.70)}.mobile-drawer.open{transform:translateY(0)}.drawer-close{display:block;margin:0 auto 30px;border:0;background:transparent;color:#e6d4ba;font-size:42px;line-height:1}.drawer-menu{border-top:1px solid rgba(255,255,255,.22)}.drawer-group{border-bottom:1px solid rgba(255,255,255,.22)}.drawer-group>button{width:100%;height:54px;text-align:left;border:0;background:transparent;color:#fff;font-size:15px;font-weight:400;padding-left:10px}.drawer-group>div{display:none;padding:0 0 10px 24px}.drawer-group.open>div{display:block}.drawer-group a{display:block;color:#fff;border-top:1px dotted rgba(255,255,255,.16);font-size:14px;padding:11px 0}.drawer-call{position:absolute;right:30px;bottom:36px;text-align:right}.drawer-call span{display:block;font-size:14px;font-weight:700;margin-bottom:6px}.drawer-call strong{display:block;font-size:32px;letter-spacing:-1px}
  .home-main{padding-top:84px}.hero{height:430px;min-height:430px}.hero-bg{background-size:cover;background-position:center top}.hero-copy{top:47%;width:94vw;letter-spacing:-1.5px}.copy-sub{font-size:22px;margin-bottom:4px}.copy-main{font-size:36px!important;line-height:1.17;letter-spacing:-2.5px;font-weight:800}.line3{font-weight:700}.arrow{width:48px;height:48px;font-size:52px;line-height:38px}.arrow-left{left:16px}.arrow-right{right:16px}.hero-pager{bottom:18px;font-size:15px;gap:10px}.hero-pager button{font-size:15px}.pager-line{width:78px}
  .reserve-section{display:block}.reserve-img{height:260px}.reserve-panel{padding:40px 18px 50px}.reserve-panel h2{font-size:28px}.reserve-panel p{font-size:14px}.form-row{height:50px}.form-row span{width:112px;font-size:14px;padding-left:13px}.main-form button{height:62px;font-size:18px}
  .bottom-bar{left:14px;right:14px;bottom:14px;height:108px;display:grid;grid-template-columns:1fr 112px;grid-template-rows:50px 50px;gap:6px;font-size:18px;font-weight:700}.bottom-bar button,.bottom-bar a{height:50px;border-radius:7px}.bottom-reserve{grid-column:1/2;grid-row:1}.bottom-popup{grid-column:2/3;grid-row:1;font-size:18px}.bottom-inquiry{grid-column:1/3;grid-row:2;justify-content:space-between!important;padding:0 18px;background:#5f5f5f}.bottom-inquiry span{font-size:17px;font-weight:600}.bottom-inquiry strong{font-size:25px;font-weight:700;letter-spacing:-1px}
  .reserve-box{width:334px;max-width:88vw;border-radius:20px;padding:20px 20px 23px}.reserve-box h3{font-size:24px;letter-spacing:-1px}.reserve-icon{font-size:20px}.reserve-box p{font-size:12px;margin:7px 0 12px}.reserve-box em{top:39px;right:22px;font-size:12px}.modal-form-row{height:40px;margin-bottom:9px}.modal-form-row span{width:88px;font-size:13px;padding-left:10px}.modal-form-row input,.modal-form-row input::placeholder{font-size:13px}.check{font-size:12px;margin:12px 0 14px}.check input{width:14px;height:14px}.modal-actions button{height:50px;font-size:15px}.reserve-modal .dim{background:rgba(0,0,0,.62)}
  .popup-modal .promo-card{width:310px;max-width:76vw;top:45%;}.promo-img-wrap{display:block}.promo-img-wrap img{width:100%;display:block}.promo-img-wrap img:nth-child(2){display:none}.promo-foot{height:42px;font-size:12px}.promo-foot button{font-size:27px!important;margin-left:8px}
  .site-footer{padding:58px 0 130px}.footer-content{width:calc(100% - 52px);font-size:11px;line-height:1.25;color:#969696}.footer-content img{width:70px;margin-bottom:18px}.footer-place{line-height:1.35;margin-bottom:12px}.notice{line-height:1.25;margin-bottom:8px}.footer-links{font-size:12px;margin:8px 0 3px}.top-btn{right:18px;top:92px;font-size:54px}
  .sub main{padding-top:84px}.sub-visual{height:128px;background-size:cover;background-position:center center}.sub-tabs{height:auto;grid-template-columns:repeat(2,1fr)!important}.sub-tabs a{height:48px;font-size:15px}.sub-content{padding:50px 15px 140px}.sub-content h2{font-size:24px;margin-bottom:36px}.sub-img-card.empty{min-height:220px}
}

/* === requested precise corrections 2026-07-06 === */
@media (min-width:901px){
  .header-inner{max-width:1620px;display:flex;justify-content:space-between;align-items:center;height:112px;position:relative;padding:0 70px;}
  .logo{position:static!important;transform:none!important;margin:0;width:82px;flex:0 0 190px;}
  .top-menu{position:absolute;left:50%;top:0;transform:translateX(-50%);width:980px;max-width:980px;height:112px;display:grid!important;grid-template-columns:repeat(4,1fr);margin:0;text-align:center;}
  .top-menu a{height:112px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:500;}
  .header-call{margin-left:auto;flex:0 0 330px;}
  .mega-menu{top:112px;height:235px;}
  .mega-inner{width:980px;max-width:980px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);}
  .mega-col{text-align:center;padding-top:25px;}
  .mega-col a{font-size:16px;line-height:1.05;padding-bottom:19px;font-weight:400;}

  .bottom-bar{grid-template-columns:39% 9% 52%;font-size:24px;font-weight:500;align-items:center;}
  .bottom-bar button,.bottom-bar a{font-size:24px;font-weight:600;}
  .bottom-reserve{font-size:25px!important;font-weight:700!important;letter-spacing:-.6px;}
  .bottom-popup{font-size:23px!important;font-weight:600!important;}
  .bottom-inquiry span{font-size:24px!important;font-weight:600!important;}
  .bottom-inquiry strong{font-size:29px!important;font-weight:700!important;}

  .reserve-box{width:470px;min-height:405px;border-radius:28px;padding:29px 30px 30px;background:#f4f4f4;}
  .reserve-box h3{font-size:29px;line-height:1;font-weight:800;}
  .reserve-box p{font-size:14px;margin:8px 0 13px;}
  .reserve-box em{top:50px;right:30px;font-size:14px;}
  .modal-form-row{height:47px;margin-bottom:10px;border-radius:6px;}
  .modal-form-row span{width:98px;font-size:15px;font-weight:400;}
  .modal-form-row input,.modal-form-row input::placeholder{font-size:15px;}
  .check{font-size:16px;margin:13px 0 17px;font-weight:600;}
  .modal-actions button{height:60px;font-size:18px;border-radius:7px;}
}

@media (max-width:900px){
  .hero-copy{top:48%;width:92vw;}
  .copy-sub{font-size:16px!important;letter-spacing:-.6px;margin-bottom:3px;font-weight:400;}
  .copy-main{font-size:25px!important;line-height:1.18!important;letter-spacing:-1.7px!important;font-weight:700!important;}
  .line3{font-weight:600!important;}
}


/* === final requested corrections: pc bar weight, centered dropdown, dropdown slide, calendar disabled === */
@media (min-width:901px){
  .bottom-bar,
  .bottom-bar button,
  .bottom-bar a,
  .bottom-reserve,
  .bottom-popup,
  .bottom-inquiry span,
  .bottom-inquiry strong{
    font-weight:500!important;
  }
  .bottom-reserve,.bottom-popup,.bottom-inquiry span{font-size:24px!important;letter-spacing:-.7px;}
  .bottom-inquiry strong{font-size:29px!important;font-weight:600!important;letter-spacing:-1.3px;}

  .site-header .mega-menu{
    display:block!important;
    overflow:hidden;
    height:0!important;
    opacity:0;
    visibility:hidden;
    transform:translateY(-18px);
    transition:height .55s ease, opacity .45s ease, transform .55s ease, visibility 0s linear .55s;
    pointer-events:none;
  }
  .site-header:hover .mega-menu{
    height:235px!important;
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    transition:height .55s ease, opacity .45s ease, transform .55s ease, visibility 0s;
    pointer-events:auto;
  }
  .top-menu,.mega-inner{
    width:980px!important;
    max-width:980px!important;
    left:50%;
    transform:translateX(-50%);
  }
  .mega-inner{
    position:relative;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
  }
  .mega-col{display:flex;flex-direction:column;align-items:center;text-align:center;}
  .mega-col a{width:100%;text-align:center;}
}

.calendar-pop{width:214px!important;padding:10px 10px 8px!important;border:1px solid #d7d7d7!important;box-shadow:0 4px 12px rgba(0,0,0,.15)!important;z-index:1000!important;}
.cal-head{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:800;margin-bottom:7px;}
.cal-nav{display:flex;gap:6px;align-items:center;}
.cal-nav button{border:0;background:transparent;font-size:18px;line-height:1;padding:0 2px;color:#222;cursor:pointer;}
.calendar-pop th{font-size:12px;padding:4px 0!important;color:#111;}
.calendar-pop td{position:relative;font-size:12px;padding:5px 0!important;text-align:center;border:0;}
.calendar-pop td.past{color:#b9b9b9!important;cursor:not-allowed!important;}
.calendar-pop td.past:after{content:'';position:absolute;left:25%;right:25%;top:50%;height:1px;background:#9f9f9f;transform:translateY(-50%);}
.calendar-pop td.muted{color:#b9b9b9!important;}
.calendar-pop td.sel{background:#555!important;color:#fff!important;border:1px solid #111!important;}
.calendar-pop td:not(.past):hover{background:#e9eef5;}
.cal-foot button{font-size:12px!important;color:#0873c4!important;}

/* === dropdown alignment hotfix: each submenu column centered under its parent menu === */
@media (min-width:901px){
  .site-header{height:112px!important;}
  .header-inner{
    height:112px!important;
    max-width:1620px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:190px 980px 330px!important;
    justify-content:center!important;
    align-items:center!important;
    padding:0 70px!important;
  }
  .logo{grid-column:1!important;justify-self:start!important;position:static!important;transform:none!important;margin-left:0!important;width:82px!important;}
  .top-menu{
    grid-column:2!important;
    position:static!important;
    left:auto!important;
    transform:none!important;
    width:980px!important;
    max-width:980px!important;
    height:112px!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    align-items:center!important;
    justify-self:center!important;
    text-align:center!important;
  }
  .top-menu a{height:112px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
  .header-call{grid-column:3!important;justify-self:end!important;margin-left:0!important;flex:0 0 auto!important;}

  .site-header .mega-menu{top:112px!important;left:0!important;right:0!important;width:100%!important;}
  .mega-inner{
    width:980px!important;
    max-width:980px!important;
    margin:0 auto!important;
    height:100%!important;
    position:relative!important;
    left:auto!important;
    transform:none!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    text-align:center!important;
  }
  .mega-inner:before,.mega-inner:after{display:none!important;content:none!important;}
  .mega-col,
  .mega-col:nth-child(1),
  .mega-col:nth-child(2),
  .mega-col:nth-child(3),
  .mega-col:nth-child(4){
    grid-column:auto!important;
    grid-row:auto!important;
    width:auto!important;
    margin-left:0!important;
    justify-self:stretch!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    padding-top:25px!important;
  }
  .mega-col a{display:block!important;width:100%!important;text-align:center!important;white-space:normal!important;}
}


/* === final mobile/detail fixes === */
@media (max-width:900px){
  /* 서브페이지 버튼: 모바일에서도 한 줄 유지 */
  .sub-tabs{
    display:grid!important;
    grid-template-columns:repeat(var(--tab-count,5), minmax(0,1fr))!important;
    width:100%!important;
    max-width:none!important;
    height:48px!important;
    overflow:hidden!important;
  }
  .sub-tabs a{
    height:48px!important;
    min-width:0!important;
    padding:0 2px!important;
    font-size:clamp(11px,2.9vw,14px)!important;
    letter-spacing:-.7px!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
  }

  /* 모바일 하단 고정바 방문예약 글씨 크기 보정 */
  .bottom-reserve{
    font-size:20px!important;
    font-weight:700!important;
    letter-spacing:-.8px!important;
  }
  .bottom-popup{font-size:18px!important;}
  .bottom-inquiry span{font-size:17px!important;}
  .bottom-inquiry strong{font-size:25px!important;}

  /* 모바일 상단 전화 아이콘을 수화기 SVG로 교체 */
  .mobile-head-icons .mobile-phone-icon{
    width:28px!important;
    height:28px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#06145d!important;
  }
  .mobile-head-icons .mobile-phone-icon svg{
    width:26px!important;
    height:26px!important;
    display:block!important;
    fill:currentColor!important;
  }
}


/* === 2026-07-06 final user fixes: exact dropdown columns, slide modals, auto image area === */
@media (min-width:901px){
  .site-header .mega-menu{
    display:block!important;
    position:absolute!important;
    top:112px!important;
    left:0!important;right:0!important;
    height:0!important;
    overflow:hidden!important;
    opacity:0!important;
    visibility:hidden!important;
    background:rgba(255,255,255,.92)!important;
    transform:translateY(-18px)!important;
    transition:height .58s ease, opacity .42s ease, transform .58s ease, visibility 0s linear .58s!important;
    pointer-events:none!important;
  }
  .site-header:hover .mega-menu{
    height:235px!important;
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0)!important;
    transition:height .58s ease, opacity .42s ease, transform .58s ease, visibility 0s!important;
    pointer-events:auto!important;
  }
  .mega-inner{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    height:235px!important;
    margin:0!important;
    display:block!important;
    left:auto!important;transform:none!important;
  }
  .mega-col{
    position:absolute!important;
    top:0!important;
    width:210px!important;
    margin:0!important;
    padding-top:25px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    text-align:center!important;
    transform:translateX(-50%)!important;
  }
  .mega-col[data-parent="business"]{left:var(--mega-business,50%)!important;}
  .mega-col[data-parent="complex"]{left:var(--mega-complex,50%)!important;}
  .mega-col[data-parent="unit"]{left:var(--mega-unit,50%)!important;}
  .mega-col[data-parent="reserve"]{left:var(--mega-reserve,50%)!important;}
  .mega-col a{width:100%!important;display:block!important;text-align:center!important;font-size:16px!important;line-height:1.05!important;padding:0 0 19px!important;font-weight:400!important;color:#333!important;white-space:nowrap!important;}

  .reserve-modal{pointer-events:none;}
  .reserve-modal.open{display:block;pointer-events:auto;}
  .reserve-modal .reserve-box{
    left:50%!important;top:50%!important;
    transform:translate(120vw,-50%)!important;
    transition:transform .55s ease!important;
  }
  .reserve-modal.open .reserve-box{transform:translate(-50%,-50%)!important;}
  .reserve-modal.closing .reserve-box{transform:translate(120vw,-50%)!important;}

  .popup-modal .promo-card{
    left:50%!important;top:50%!important;
    transform:translate(120vw,-50%)!important;
    transition:transform .55s ease!important;
  }
  .popup-modal.open .promo-card{transform:translate(-50%,-50%)!important;}
  .popup-modal.closing .promo-card{transform:translate(120vw,-50%)!important;}
}

.auto-image-section{width:100%;background:#fff;line-height:0;}
.auto-image-section:empty{display:none;}
.auto-image-section img{display:block;width:100%;max-width:1300px;height:auto;margin:0 auto;}
@media (max-width:900px){
  .auto-image-section img{max-width:100%;}
}


/* === image folder management + modal slide motion fix ===
   메인 아래 이미지: assets/img/main/01.png, 02.png ...
   서브페이지 이미지: assets/img/pages/페이지명/01.png, 02.png ...
   예) assets/img/pages/brand/01.png
*/
.page-image-section{width:100%;max-width:1300px;margin:0 auto;line-height:0;background:#fff;}
.page-image-section.empty{display:none;}
.page-image-section img{display:block;width:100%;height:auto;margin:0 auto;}
@media(max-width:900px){.page-image-section{max-width:100%;}.page-image-section img{width:100%;}}

/* 방문예약 / 팝업보기: 열릴 때 오른쪽→왼쪽, 닫힐 때 오른쪽으로 사라짐 */
.reserve-modal,.popup-modal{pointer-events:none;}
.reserve-modal.open,.popup-modal.open{display:block;pointer-events:auto;}
.reserve-modal .reserve-box,
.popup-modal .promo-card{transform:translate(120vw,-50%)!important;transition:transform .55s cubic-bezier(.22,.61,.36,1)!important;will-change:transform;}
.reserve-modal.open .reserve-box,
.popup-modal.open .promo-card{transform:translate(-50%,-50%)!important;}
.reserve-modal.closing .reserve-box,
.popup-modal.closing .promo-card{transform:translate(120vw,-50%)!important;}

/* === modal open/close slide motion final fix ===
   열릴 때: 오른쪽 밖 -> 중앙
   닫힐 때: 중앙 -> 오른쪽 밖
   display:none 상태에서 바로 중앙으로 튀는 문제 방지용으로 .show 클래스를 별도 사용
*/
.reserve-modal .reserve-box,
.popup-modal .promo-card{
  transform:translate(120vw,-50%)!important;
  transition:transform .58s cubic-bezier(.22,.61,.36,1)!important;
  will-change:transform;
}
.reserve-modal.open.show .reserve-box,
.popup-modal.open.show .promo-card{
  transform:translate(-50%,-50%)!important;
}
.reserve-modal.open.closing .reserve-box,
.popup-modal.open.closing .promo-card{
  transform:translate(120vw,-50%)!important;
}
.image-empty-guide{padding:80px 20px;text-align:center;color:#999;font-size:14px;border:1px dashed #ddd;background:#fafafa;}


/* === FINAL FIX 2026-07-06: modal enter motion override ===
   기존 .open 규칙이 바로 중앙으로 보내던 문제를 강제로 막고,
   JS가 .show를 붙인 다음에만 중앙으로 들어오게 처리합니다.
*/
.reserve-modal.open:not(.show) .reserve-box,
.popup-modal.open:not(.show) .promo-card{
  transform:translate(120vw,-50%)!important;
}
.reserve-modal.open.show:not(.closing) .reserve-box,
.popup-modal.open.show:not(.closing) .promo-card{
  transform:translate(-50%,-50%)!important;
}
.reserve-modal.open.closing .reserve-box,
.popup-modal.open.closing .promo-card{
  transform:translate(120vw,-50%)!important;
}

/* page image visibility final */
.page-image-section.empty{display:block;}
.page-image-section img{display:block;width:100%;height:auto;}


/* 서브페이지 이미지 자동 출력 영역 */
.page-image-section{width:100%;max-width:1300px;margin:0 auto;line-height:0;background:#fff;}
.page-image-section img{display:block;width:100%;height:auto;margin:0 auto;}
.page-image-section.empty{display:block;line-height:1.5;}
.image-empty-guide{padding:60px 20px;text-align:center;color:#999;font-size:14px;border:1px dashed #ddd;background:#fafafa;line-height:1.6;}
@media(max-width:900px){.page-image-section{max-width:100%;}.page-image-section img{width:100%;}}

/* FINAL: 서브페이지 이미지 출력 영역 */
.page-image-section{width:100%;max-width:1300px;margin:0 auto;line-height:0;background:#fff;}
.page-image-section img{display:block;width:100%;height:auto;margin:0 auto;border:0;}
@media(max-width:900px){.page-image-section{max-width:100%;}.page-image-section img{width:100%;}}

.lead-result{margin:10px 0 0;text-align:center;font-size:14px;font-weight:600}.lead-result.ok{color:#06145d}.lead-result.error{color:#c00000}

/* 방문예약 달력 + 시간 선택 */
.calendar-pop{position:absolute;z-index:1000;width:360px;background:#fff;border:1px solid #ddd;box-shadow:0 6px 20px rgba(0,0,0,.18);font-family:'Noto Sans KR',Arial,sans-serif;color:#111;overflow:hidden}.calendar-pop .cal-head{height:64px;display:flex;align-items:center;justify-content:center;position:relative;font-size:20px;font-weight:800}.calendar-pop .cal-nav{position:absolute;right:18px;top:50%;transform:translateY(-50%);display:flex;gap:14px}.calendar-pop .cal-nav button{border:0;background:transparent;font-size:28px;line-height:1;color:#111;font-weight:300}.calendar-pop table{width:100%;border-collapse:collapse;margin:0 auto 12px}.calendar-pop th{height:32px;font-size:15px;font-weight:700}.calendar-pop td{height:31px;text-align:center;font-size:15px;cursor:pointer;position:relative}.calendar-pop td.muted{color:#aaa;cursor:default}.calendar-pop td.past{color:#999;text-decoration:line-through;cursor:not-allowed}.calendar-pop td.sel{color:#fff}.calendar-pop td.sel:before{content:'';position:absolute;left:50%;top:50%;width:29px;height:29px;background:#2b86c5;border-radius:4px;transform:translate(-50%,-50%);z-index:-1}.cal-time-wrap{border-top:1px solid #eee;min-height:84px;padding:23px 16px 16px;display:flex;align-items:flex-start;justify-content:center;gap:7px;flex-wrap:wrap}.cal-time{height:36px;min-width:58px;border:1px solid #e2eaf3;background:#f8fbff;color:#444;font-size:15px}.cal-time.active{border-color:#2b86c5;background:#2b86c5;color:#fff}.cal-time-empty{font-size:14px;color:#777;padding-top:8px}.cal-actions{height:52px;border-top:1px solid #eee;display:flex;justify-content:flex-end;align-items:center;gap:6px;padding:0 8px}.cal-actions button{height:32px;border:0;border-radius:4px;background:#2b86c5;color:#fff;font-weight:700;font-size:14px;padding:0 12px}.cal-actions .cal-cancel{background:#2b86c5}@media (max-width:900px){.calendar-pop{width:318px}.calendar-pop .cal-head{height:58px;font-size:18px}.calendar-pop td{height:29px;font-size:14px}.calendar-pop th{font-size:14px}.cal-time-wrap{min-height:78px;padding:18px 12px 14px}.cal-time{height:33px;min-width:54px;font-size:14px}.cal-actions{height:48px}}

/* === FINAL FIX: centered date/time picker and reserve subpage form === */
.calendar-pop{
  position:fixed!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:99999!important;
  width:360px!important;
  max-width:calc(100vw - 28px)!important;
  max-height:calc(100vh - 36px)!important;
  overflow-y:auto!important;
  background:#fff!important;
  border:1px solid #ddd!important;
  box-shadow:0 12px 35px rgba(0,0,0,.28)!important;
  font-family:'Noto Sans KR',Arial,sans-serif!important;
  color:#111!important;
  padding:0!important;
}
.calendar-pop .cal-head{height:64px!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;font-size:20px!important;font-weight:800!important;margin:0!important;}
.calendar-pop .cal-head span{float:none!important;font-size:20px!important;font-weight:800!important;}
.calendar-pop .cal-nav{position:absolute!important;right:18px!important;top:50%!important;transform:translateY(-50%)!important;display:flex!important;gap:14px!important;}
.calendar-pop .cal-nav button{border:0!important;background:transparent!important;font-size:28px!important;line-height:1!important;color:#111!important;font-weight:300!important;cursor:pointer!important;}
.calendar-pop table{width:calc(100% - 36px)!important;border-collapse:collapse!important;margin:0 auto 12px!important;text-align:center!important;}
.calendar-pop th{height:32px!important;font-size:15px!important;font-weight:700!important;padding:0!important;color:#111!important;}
.calendar-pop td{height:31px!important;text-align:center!important;font-size:15px!important;cursor:pointer!important;position:relative!important;padding:0!important;border:0!important;}
.calendar-pop td.muted{color:#aaa!important;cursor:default!important;}
.calendar-pop td.past{color:#999!important;text-decoration:line-through!important;cursor:not-allowed!important;}
.calendar-pop td.past:after{display:none!important;}
.calendar-pop td.sel{color:#fff!important;background:transparent!important;border:0!important;z-index:1;}
.calendar-pop td.sel:before{content:''!important;position:absolute!important;left:50%!important;top:50%!important;width:29px!important;height:29px!important;background:#2b86c5!important;border-radius:4px!important;transform:translate(-50%,-50%)!important;z-index:-1!important;display:block!important;}
.cal-time-wrap{border-top:1px solid #eee!important;min-height:84px!important;padding:23px 16px 16px!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;gap:7px!important;flex-wrap:wrap!important;}
.cal-time{height:36px!important;min-width:58px!important;border:1px solid #e2eaf3!important;background:#f8fbff!important;color:#444!important;font-size:15px!important;border-radius:0!important;cursor:pointer!important;}
.cal-time.active{border-color:#2b86c5!important;background:#2b86c5!important;color:#fff!important;}
.cal-time-empty{font-size:14px!important;color:#777!important;padding-top:8px!important;}
.cal-actions{height:52px!important;border-top:1px solid #eee!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:6px!important;padding:0 8px!important;}
.cal-actions button{height:32px!important;border:0!important;border-radius:4px!important;background:#2b86c5!important;color:#fff!important;font-weight:700!important;font-size:14px!important;padding:0 12px!important;}
@media(max-width:900px){
  .calendar-pop{width:330px!important;max-width:calc(100vw - 24px)!important;}
  .calendar-pop .cal-head{height:58px!important;font-size:18px!important;}
  .calendar-pop .cal-head span{font-size:18px!important;}
  .calendar-pop td{height:29px!important;font-size:14px!important;}
  .calendar-pop th{font-size:14px!important;}
  .cal-time-wrap{min-height:78px!important;padding:18px 12px 14px!important;}
  .cal-time{height:33px!important;min-width:54px!important;font-size:14px!important;}
  .cal-actions{height:48px!important;}
}

.reserve-page-form{max-width:1000px;margin:0 auto 120px;padding:0 15px;text-align:left;color:#111;}
.reserve-page-form .reserve-page-title{text-align:center;font-size:32px;font-weight:500;letter-spacing:-1px;margin:0 0 8px;color:#555;}
.reserve-page-form .reserve-page-desc{text-align:center;color:#888;font-size:15px;margin:0 0 55px;}
.reserve-policy-title{font-size:18px;font-weight:700;color:#00155a;margin-bottom:16px;}
.reserve-policy-box{height:205px;border:1px solid #bbb;overflow-y:auto;padding:15px 16px;font-size:13px;line-height:1.75;color:#333;background:#fff;margin-bottom:32px;}
.reserve-policy-box strong{display:block;margin-bottom:14px;color:#333;}
.reserve-agree-row{display:flex;align-items:center;justify-content:center;gap:80px;margin:0 0 48px;font-size:15px;}
.reserve-agree-row .agree-title{font-weight:700;}
.reserve-agree-row label{margin:0 9px;font-weight:500;}
.reserve-page-required{text-align:right;color:#c40000;font-weight:700;font-size:14px;margin-bottom:14px;}
.reserve-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 14px;margin-bottom:14px;}
.reserve-page-form .form-row{height:50px;border:1px solid #999;background:#fff;display:flex;align-items:center;margin:0;}
.reserve-page-form .form-row.full{grid-column:1 / -1;}
.reserve-page-form .form-row span{width:110px;font-size:15px;font-weight:600;color:#111;padding-left:18px;flex:0 0 auto;}
.reserve-page-form .form-row b{color:#c40000;margin-right:1px;}
.reserve-page-form .form-row input{border:0;outline:0;background:transparent;height:100%;flex:1;font-size:15px;color:#111;}
.reserve-page-form .form-row input::placeholder{color:#a8b2b7;}
.reserve-page-notes{font-size:13px;line-height:1.9;color:#111;margin:38px 0 45px;}
.reserve-page-submit{display:block;width:220px;height:64px;border:0;border-radius:3px;background:#05135f;color:#fff;font-size:20px;font-weight:700;margin:0 auto;cursor:pointer;}
.reserve-page-form .lead-result{text-align:center;margin-top:12px;font-size:14px;}
.reserve-page-form .lead-result.ok{color:#0058bd}.reserve-page-form .lead-result.error{color:#c40000}
@media(max-width:900px){
  .reserve-page-form{padding:0 18px;margin-bottom:120px;}
  .reserve-page-form .reserve-page-title{font-size:28px;}
  .reserve-page-form .reserve-page-desc{font-size:13px;margin-bottom:35px;}
  .reserve-policy-title{font-size:15px;margin-bottom:12px;}
  .reserve-policy-box{height:180px;font-size:12px;padding:12px;}
  .reserve-agree-row{display:block;text-align:center;gap:0;margin-bottom:30px;font-size:13px;}
  .reserve-agree-row .agree-title{display:block;margin-bottom:12px;}
  .reserve-page-grid{grid-template-columns:1fr;}
  .reserve-page-form .form-row{height:48px;}
  .reserve-page-form .form-row span{width:95px;font-size:13px;padding-left:12px;}
  .reserve-page-form .form-row input{font-size:13px;}
  .reserve-page-notes{font-size:12px;margin:28px 0 32px;}
  .reserve-page-submit{width:190px;height:58px;font-size:18px;}
}


/* ===== FINAL REQUEST OVERRIDES 2026-07-06 ===== */
.sub-content h2,
.sub-content .page-title,
.sub-content .sub-title{font-weight:500!important;}

@media (min-width:901px){
  .popup-modal .promo-card{
    width:min(920px,88vw)!important;
    max-width:920px!important;
    background:transparent!important;
  }
  .popup-modal .promo-img-wrap{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    overflow:visible!important;
    background:transparent!important;
  }
  .popup-modal .promo-img-wrap img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:72vh!important;
    object-fit:contain!important;
  }
}

@media (max-width:900px){
  .sub-content h2,
  .sub-content .page-title,
  .sub-content .sub-title{font-weight:500!important;}
  .popup-modal .promo-card{width:min(330px,86vw)!important;}
  .popup-modal .promo-img-wrap{
    display:block!important;
    overflow:hidden!important;
    background:transparent!important;
  }
  .popup-modal .promo-img-wrap img{
    display:none!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }
  .popup-modal .promo-img-wrap img.active{display:block!important;}
  body.sub .bottom-bar{
    grid-template-columns:42% 58%!important;
    grid-template-rows:50px!important;
    height:50px!important;
  }
  body.sub .bottom-popup{display:none!important;}
  body.sub .bottom-reserve{grid-column:1/2!important;grid-row:1!important;}
  body.sub .bottom-inquiry{grid-column:2/3!important;grid-row:1!important;}
}


/* FINAL MOBILE SUB BOTTOM BAR PHONE SIZE FIX */
@media (max-width:768px){
  body.sub .bottom-bar{
    grid-template-columns: 42% 58% !important;
    grid-template-rows: 50px !important;
    height:50px !important;
    gap:6px !important;
    left:14px !important;
    right:14px !important;
    bottom:14px !important;
  }
  body.sub .bottom-popup{display:none!important;}
  body.sub .bottom-reserve{
    grid-column:1/2!important;
    grid-row:1!important;
    height:50px!important;
    font-size:16px!important;
    font-weight:600!important;
    letter-spacing:-.5px!important;
    white-space:nowrap!important;
  }
  body.sub .bottom-inquiry{
    grid-column:2/3!important;
    grid-row:1!important;
    height:50px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:4px!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }
  body.sub .bottom-inquiry span{
    font-size:14px!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:-.6px!important;
    white-space:nowrap!important;
  }
  body.sub .bottom-inquiry strong{
    font-size:18px!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:-1px!important;
    white-space:nowrap!important;
    display:block!important;
  }
}
@media (max-width:420px){
  body.sub .bottom-bar{grid-template-columns: 39% 61% !important;left:8px!important;right:8px!important;gap:5px!important;}
  body.sub .bottom-reserve{font-size:15px!important;}
  body.sub .bottom-inquiry{padding:0 8px!important;}
  body.sub .bottom-inquiry span{font-size:13px!important;}
  body.sub .bottom-inquiry strong{font-size:17px!important;letter-spacing:-1.2px!important;}
}
@media (max-width:360px){
  body.sub .bottom-reserve{font-size:14px!important;}
  body.sub .bottom-inquiry span{font-size:12px!important;}
  body.sub .bottom-inquiry strong{font-size:16px!important;}
}

/* ===== FINAL UI FIX: reserve page form + sub bottom bar ===== */
/* 서브페이지 제목 두께 PC/모바일 공통 완화 */
.sub-content h2,
.sub-visual h1,
.reserve-page-form .reserve-page-title{
  font-weight:500 !important;
}

/* 방문예약 서브페이지 상단 탭 숨김 */
body.sub[data-page="reserve"] .sub-tabs{
  display:none !important;
}
body.sub[data-page="reserve"] .sub-content{
  padding-top:90px !important;
}

/* PC 방문예약 서브페이지 폼 확대 */
@media (min-width:769px){
  .reserve-page-content{
    padding-left:48px !important;
    padding-right:48px !important;
  }
  .reserve-page-form{
    max-width:1320px !important;
    width:100% !important;
    padding:0 !important;
    margin:0 auto 130px !important;
  }
  .reserve-page-form .reserve-page-title{
    font-size:34px !important;
    margin-bottom:10px !important;
  }
  .reserve-page-form .reserve-page-desc{
    font-size:16px !important;
    margin-bottom:62px !important;
  }
  .reserve-policy-title{
    font-size:20px !important;
    margin-bottom:18px !important;
  }
  .reserve-policy-box{
    height:260px !important;
    padding:26px 30px !important;
    font-size:14px !important;
    line-height:1.85 !important;
    border:1px solid #9f9f9f !important;
  }
  .reserve-agree-row{
    padding:22px 0 !important;
    font-size:16px !important;
  }
  .reserve-page-grid{
    gap:20px !important;
    margin-bottom:22px !important;
  }
  .reserve-page-form .form-row{
    height:76px !important;
    border:1px solid #8d8d8d !important;
    border-radius:4px !important;
  }
  .reserve-page-form .form-row span{
    width:150px !important;
    font-size:16px !important;
    padding-left:28px !important;
  }
  .reserve-page-form .form-row input{
    font-size:16px !important;
  }
  .reserve-page-notes{
    font-size:14px !important;
    line-height:2 !important;
    margin:48px 0 54px !important;
  }
  .reserve-page-submit{
    width:100% !important;
    height:86px !important;
    max-width:none !important;
    font-size:22px !important;
    border-radius:5px !important;
  }

  /* PC 서브페이지 하단바: 팝업보기 제거, 절반/절반 */
  body.sub .bottom-bar{
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    height:72px !important;
    left:4.2% !important;
    right:4.2% !important;
  }
  body.sub .bottom-popup{
    display:none !important;
  }
  body.sub .bottom-reserve,
  body.sub .bottom-inquiry{
    height:72px !important;
    border-radius:8px !important;
  }
  body.sub .bottom-reserve{
    font-size:23px !important;
    font-weight:600 !important;
  }
  body.sub .bottom-inquiry{
    justify-content:center !important;
    gap:22px !important;
    padding:0 24px !important;
  }
  body.sub .bottom-inquiry span{
    font-size:22px !important;
    font-weight:600 !important;
  }
  body.sub .bottom-inquiry strong{
    font-size:27px !important;
    font-weight:700 !important;
    letter-spacing:-1.2px !important;
  }
}

/* 모바일 하단바 비율 재정리 */
@media (max-width:768px){
  /* 메인페이지: 글씨는 작게, 터치 영역은 크게 */
  body.home .bottom-bar{
    left:7px !important;
    right:7px !important;
    bottom:8px !important;
    height:82px !important;
    grid-template-columns:38% 12% 50% !important;
    gap:6px !important;
  }
  body.home .bottom-bar button,
  body.home .bottom-bar a{
    height:82px !important;
    border-radius:10px !important;
  }
  body.home .bottom-reserve{
    font-size:15px !important;
    font-weight:600 !important;
    letter-spacing:-.7px !important;
  }
  body.home .bottom-popup{
    font-size:12px !important;
    font-weight:500 !important;
    letter-spacing:-.6px !important;
    line-height:1.15 !important;
    padding:0 2px !important;
  }
  body.home .bottom-inquiry{
    padding:0 8px !important;
    gap:5px !important;
  }
  body.home .bottom-inquiry span{
    font-size:12px !important;
    font-weight:500 !important;
    letter-spacing:-.6px !important;
  }
  body.home .bottom-inquiry strong{
    font-size:16px !important;
    font-weight:600 !important;
    letter-spacing:-1px !important;
    white-space:nowrap !important;
  }

  /* 서브페이지: 1줄 방문예약 + 1줄 분양문의 */
  body.sub .bottom-bar{
    left:8px !important;
    right:8px !important;
    bottom:8px !important;
    height:112px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:54px 54px !important;
    gap:5px !important;
  }
  body.sub .bottom-popup{
    display:none !important;
  }
  body.sub .bottom-reserve,
  body.sub .bottom-inquiry{
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    border-radius:10px !important;
  }
  body.sub .bottom-reserve{
    grid-column:1 !important;
    grid-row:1 !important;
    font-size:16px !important;
    font-weight:600 !important;
    letter-spacing:-.8px !important;
  }
  body.sub .bottom-inquiry{
    grid-column:1 !important;
    grid-row:2 !important;
    justify-content:center !important;
    gap:8px !important;
    padding:0 10px !important;
  }
  body.sub .bottom-inquiry span{
    font-size:14px !important;
    font-weight:500 !important;
    letter-spacing:-.7px !important;
  }
  body.sub .bottom-inquiry strong{
    font-size:18px !important;
    font-weight:600 !important;
    letter-spacing:-1.1px !important;
    white-space:nowrap !important;
  }

  body.sub[data-page="reserve"] .sub-content{
    padding-top:48px !important;
    padding-bottom:150px !important;
  }
  .reserve-page-form{
    width:100% !important;
    padding:0 12px !important;
  }
  .reserve-policy-box{
    height:230px !important;
    padding:17px 15px !important;
  }
  .reserve-page-form .form-row{
    height:62px !important;
    border-radius:4px !important;
  }
  .reserve-page-submit{
    width:100% !important;
    height:72px !important;
    font-size:19px !important;
    border-radius:5px !important;
  }
}

@media (max-width:390px){
  body.home .bottom-inquiry strong{font-size:15px!important;}
  body.home .bottom-reserve{font-size:14px!important;}
  body.sub .bottom-inquiry strong{font-size:17px!important;}
}

/* ===== FINAL DETAIL FIX 2026-07-06 ===== */
/* PC 방문예약 서브페이지: 버튼/하단바 제외하고 폼 내부 글씨만 조금 확대 */
@media (min-width:769px){
  body.sub[data-page="reserve"] .reserve-page-form .reserve-page-title{
    font-size:42px !important;
    font-weight:600 !important;
    letter-spacing:-1.5px !important;
  }
  body.sub[data-page="reserve"] .reserve-page-form .reserve-page-desc{
    font-size:18px !important;
    line-height:1.55 !important;
  }
  body.sub[data-page="reserve"] .reserve-policy-title{
    font-size:23px !important;
    font-weight:700 !important;
  }
  body.sub[data-page="reserve"] .reserve-policy-box{
    font-size:16px !important;
    line-height:1.9 !important;
  }
  body.sub[data-page="reserve"] .reserve-agree-row{
    font-size:18px !important;
  }
  body.sub[data-page="reserve"] .reserve-page-required{
    font-size:16px !important;
  }
  body.sub[data-page="reserve"] .reserve-page-form .form-row span{
    font-size:18px !important;
    width:168px !important;
  }
  body.sub[data-page="reserve"] .reserve-page-form .form-row input{
    font-size:18px !important;
  }
  body.sub[data-page="reserve"] .reserve-page-form .form-row input::placeholder{
    font-size:17px !important;
  }
  body.sub[data-page="reserve"] .reserve-page-notes{
    font-size:16px !important;
    line-height:2.05 !important;
  }

  /* PC 서브페이지 하단고정바: 분양문의는 왼쪽, 전화 아이콘+번호는 오른쪽 */
  body.sub .bottom-inquiry{
    justify-content:space-between !important;
    padding-left:34px !important;
    padding-right:42px !important;
    gap:0 !important;
  }
  body.sub .bottom-inquiry span{
    text-align:left !important;
  }
  body.sub .bottom-inquiry strong{
    margin-left:auto !important;
    text-align:right !important;
    white-space:nowrap !important;
  }
}

/* 모바일 서브페이지: 콘텐츠 끝 여백 축소 */
@media (max-width:768px){
  body.sub .sub-content{
    padding-bottom:36px !important;
  }
  body.sub[data-page="reserve"] .sub-content{
    padding-bottom:58px !important;
  }
  body.sub .page-image-section{
    margin-bottom:0 !important;
  }
  body.sub .page-image-section img:last-child{
    margin-bottom:0 !important;
  }
}


/* === HOTFIX: mobile header hamburger exact vertical alignment === */
@media (max-width:900px){
  .site-header .header-inner{
    position:relative !important;
    align-items:center !important;
  }
  .site-header .mobile-menu-btn{
    display:flex !important;
    position:absolute !important;
    left:18px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:25px !important;
    height:20px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    align-items:stretch !important;
    font-size:0 !important;
    line-height:0 !important;
    color:#111 !important;
  }
  .site-header .mobile-menu-btn span{
    display:block !important;
    width:100% !important;
    height:2.4px !important;
    margin:0 !important;
    padding:0 !important;
    background:#111 !important;
    border-radius:2px !important;
  }
}

/* === FINAL HOTFIX: mobile main hero text smaller only === */
@media (max-width:768px){
  body.home .hero-copy{
    top:47% !important;
    width:92vw !important;
  }
  body.home .copy-sub{
    font-size:14px !important;
    line-height:1.2 !important;
    letter-spacing:-0.4px !important;
    margin-bottom:3px !important;
    font-weight:400 !important;
  }
  body.home .copy-main,
  body.home .line2,
  body.home .line3{
    font-size:23px !important;
    line-height:1.18 !important;
    letter-spacing:-1.25px !important;
    font-weight:700 !important;
  }
}
@media (max-width:390px){
  body.home .copy-sub{font-size:13px !important;}
  body.home .copy-main,
  body.home .line2,
  body.home .line3{
    font-size:21px !important;
    letter-spacing:-1.1px !important;
  }
}


/* PC/MOBILE image output separation */
.pc-detail-img{display:block !important;}
.mobile-detail-img{display:none !important;}
@media (max-width:768px){
  .pc-detail-img{display:none !important;}
  .mobile-detail-img{display:block !important;}
}


/* hero text visibility shadow - added */
.hero-copy .copy-line,
.hero-copy .copy-sub,
.hero-copy .copy-main{
  text-shadow:0 2px 8px rgba(0,0,0,.42), 0 1px 2px rgba(0,0,0,.38) !important;
}

/* === Hero separate text per slide + subtle shadow === */
.hero-text{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .55s ease, visibility .55s ease;
}
.hero-text.active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.hero-copy .copy-line,
.hero-copy .copy-sub,
.hero-copy .copy-main{
  text-shadow:
    0 2px 4px rgba(0,0,0,.95),
    0 5px 12px rgba(0,0,0,.85),
    0 10px 28px rgba(0,0,0,.75) !important;
}
