*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Pretendard","Noto Sans KR","Malgun Gothic",sans-serif;color:#292925;background:#fff}a{text-decoration:none;color:inherit}button{font:inherit}.wrap{width:min(1180px,calc(100% - 46px));margin:auto}.hero{height:100svh;min-height:720px;position:relative;overflow:hidden;color:#fff}.hero-bg{position:absolute;inset:0;background:center/cover no-repeat;transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.04) 48%,rgba(0,0,0,.46))}.topbar{position:absolute;z-index:5;left:0;right:0;top:0;height:108px;padding:0 40px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}.menu-trigger{justify-self:start;display:flex;gap:10px;align-items:center;border:0;background:none;color:white;font-weight:700;cursor:pointer}.hamb{font-size:1.65rem}.booking-actions{justify-self:end;display:flex;gap:12px}.icon-action{width:68px;height:62px;border:1px solid rgba(255,255,255,.45);background:rgba(30,30,25,.22);backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;cursor:pointer}.icon-action .icon{font-size:1.25rem}.icon-action small{font-size:.72rem}.hero-copy{position:absolute;z-index:3;top:41%;left:50%;transform:translate(-50%,-50%);text-align:center;width:min(92%,1000px)}.hero-copy p{font-size:1.08rem;letter-spacing:.23em;font-weight:700;margin:0 0 26px}.hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.7rem,3vw,2.7rem);font-weight:400;letter-spacing:.05em;margin:0;text-shadow:0 1px 18px rgba(0,0,0,.3)}.garden-peek{position:absolute;z-index:4;left:50%;bottom:35px;transform:translateX(-50%);width:min(450px,62vw);height:150px;background:#fff;color:#222;display:grid;grid-template-columns:1.55fr 1fr;box-shadow:0 15px 40px rgba(0,0,0,.23);overflow:hidden}.garden-peek img{width:100%;height:100%;object-fit:cover}.garden-peek span{display:flex;flex-direction:column;justify-content:center;padding:20px}.garden-peek b{letter-spacing:.18em;font-size:.72rem}.garden-peek small{margin-top:8px;font-size:.9rem}.scroll-word{position:absolute;z-index:3;left:48px;bottom:55px;writing-mode:vertical-rl;font-size:.65rem;letter-spacing:.2em}.mega{position:fixed;inset:0;z-index:100;background:rgba(255,255,255,.985);opacity:0;visibility:hidden;transition:.22s;overflow:auto}.mega.open{opacity:1;visibility:visible}.mega-head{height:110px;padding:0 38px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #ece9e2}.mega-head button{justify-self:start;border:0;background:none;font-weight:700;cursor:pointer}.mega-title{font-size:1.45rem;font-weight:800}.mega-actions{justify-self:end;display:flex;gap:10px}.mega-actions a{padding:12px 16px;border:1px solid #c8bbaa;font-size:.86rem}.mega-grid{width:min(1180px,calc(100% - 70px));margin:62px auto 0;display:grid;grid-template-columns:repeat(5,1fr);gap:45px}.mega-grid h2{font-size:2rem;letter-spacing:-.05em;margin:0}.mega-grid em{display:block;font-style:normal;color:#9f988f;margin:3px 0 20px}.mega-grid a{display:block;margin:10px 0;font-size:1.02rem}.section{padding:105px 0}.eyebrow{font-size:.72rem;letter-spacing:.2em;color:#9a7d58;font-weight:800}.section h2{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.08;letter-spacing:-.06em;margin:14px 0 28px}.lead{color:#75746f;font-size:1.05rem;line-height:1.9;max-width:760px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-photo img{width:100%;height:500px;object-fit:cover}.quick-facts{display:flex;gap:10px;margin-top:34px}.quick-facts span{border-top:1px solid #aaa;padding:15px 30px 0 0;min-width:110px;color:#777}.quick-facts b{display:block;color:#28372f;font-size:.75rem;letter-spacing:.15em}.rooms-section{background:#f6f3ee}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-heading>a{border-bottom:1px solid #333;padding-bottom:4px}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.room-card{background:white;cursor:pointer;overflow:hidden}.room-card .image{height:270px;overflow:hidden}.room-card img{width:100%;height:100%;object-fit:cover;transition:.4s}.room-card:hover img{transform:scale(1.035)}.room-card .copy{padding:22px}.room-card small{letter-spacing:.15em;color:#9a7d58}.room-card h3{font-size:1.35rem;margin:8px 0}.room-card p{color:#777;font-size:.92rem;line-height:1.6}.garden-band{height:78vh;min-height:580px;position:relative;color:#fff;overflow:hidden}.garden-band>img{width:100%;height:100%;object-fit:cover}.garden-band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.50),rgba(0,0,0,.05))}.garden-copy{position:absolute;z-index:2;left:max(40px,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%)}.garden-copy p{letter-spacing:.2em;font-size:.7rem}.garden-copy h2{font-size:clamp(3rem,6vw,6rem);line-height:1.05;margin:15px 0}.facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:35px}.facility-card{border:1px solid #ddd;overflow:hidden;background:white;cursor:pointer}.facility-card img{width:100%;height:190px;object-fit:cover}.facility-card div{padding:22px}.facility-card h3{margin:0 0 8px}.facility-card p{color:#777;line-height:1.65;font-size:.9rem}.story{background:#f7f3eb}.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:35px}.story-card{display:grid;grid-template-columns:1.1fr 1fr;background:white;min-height:270px;cursor:pointer}.story-card img{width:100%;height:100%;object-fit:cover}.story-card div{padding:28px;display:flex;flex-direction:column;justify-content:center}.story-card h3{font-size:1.35rem;margin:0 0 12px}.story-card p{color:#777;line-height:1.7}.text-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:35px}.text-grid>div{border-top:1px solid #bbb;padding:25px 10px}.text-grid h3{font-size:1.2rem;margin:0 0 10px}.text-grid p{color:#777;line-height:1.75}.nearby{background:#faf9f6}.tourism{background:#243028;color:white}.tourism .section h2{color:white}.light{color:#ccb795}.tour-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:35px}.tour-card{border:1px solid rgba(255,255,255,.18);min-height:205px;padding:25px;display:flex;flex-direction:column;justify-content:space-between}.tour-card h3{font-size:1.35rem;margin:0}.tour-card p{color:#c4cbc5;line-height:1.6}.notice-box{border:1px solid #ddd;padding:28px;max-width:760px}.notice-box p{color:#777;line-height:1.7}.contact{padding:90px 0;background:#1c211d;color:white}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:center}.contact h2{font-size:3.4rem;margin:8px 0}.contact>div p,.contact-grid>div>p{font-size:.7rem;letter-spacing:.2em}.big-phone{display:block;font-size:2rem;font-weight:800;margin-bottom:6px}.contact-grid span{color:#c1c7c2}.contact-actions{display:flex;gap:10px;margin-top:27px;flex-wrap:wrap}.contact-actions a{padding:14px 20px;border:1px solid rgba(255,255,255,.35)}.contact-mark{height:290px;background:linear-gradient(145deg,#607065,#2d3931);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.contact-mark b{font-size:3.2rem;line-height:.9}.contact-mark small{letter-spacing:.22em;margin-top:18px}footer{background:#151916;color:#c1c5c2;padding:30px 0}footer .wrap{display:flex;justify-content:space-between;align-items:end}footer strong,footer span{display:block}footer strong{color:white}.admin-link{font-size:.75rem;opacity:.55}.mobile-actions{display:none}.lightbox{position:fixed;z-index:200;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center}.lightbox.open{display:flex}.lightbox img{max-width:86vw;max-height:82vh;object-fit:contain}.lightbox>button{position:absolute;border:0;background:rgba(255,255,255,.12);color:white;cursor:pointer}.lightbox>button:first-child{top:24px;right:26px;width:48px;height:48px}.lb-prev,.lb-next{top:50%;transform:translateY(-50%);width:52px;height:72px;font-size:2.5rem}.lb-prev{left:20px}.lb-next{right:20px}#lbCaption{position:absolute;bottom:25px;color:white;font-size:.9rem}
@media(max-width:1000px){.mega-grid{grid-template-columns:repeat(2,1fr)}.room-grid{grid-template-columns:repeat(2,1fr)}.facility-grid{grid-template-columns:repeat(2,1fr)}.tour-grid{grid-template-columns:repeat(3,1fr)}.story-grid{grid-template-columns:1fr}.split{gap:40px}}
@media(max-width:660px){body{padding-bottom:61px}.wrap{width:min(100% - 28px,1180px)}.hero{min-height:720px}.topbar{height:82px;padding:0 18px;grid-template-columns:1fr 1fr}.topbar>div:nth-child(2){display:none}.menu-trigger span:last-child{display:none}.booking-actions{gap:5px}.icon-action{width:48px;height:48px}.icon-action small{display:none}.hero-copy{top:36%}.hero-copy p{font-size:.76rem;line-height:1.7;letter-spacing:.13em}.hero-copy h1{font-size:1.65rem;line-height:1.5}.garden-peek{width:calc(100% - 52px);height:130px;bottom:72px}.scroll-word{display:none}.mega-head{height:82px;padding:0 18px}.mega-title{display:none}.mega-actions a{padding:10px;font-size:.76rem}.mega-grid{width:calc(100% - 36px);margin-top:30px;grid-template-columns:1fr;gap:26px}.mega-grid section{border-bottom:1px solid #ddd;padding-bottom:18px}.mega-grid h2{font-size:1.65rem}.section{padding:76px 0}.split{grid-template-columns:1fr}.about-photo img{height:330px}.room-grid{grid-template-columns:1fr}.room-card .image{height:260px}.section-heading{align-items:start;flex-direction:column}.garden-band{height:62vh;min-height:480px}.facility-grid,.text-grid,.tour-grid{grid-template-columns:1fr}.story-card{grid-template-columns:1fr}.story-card img{height:260px}.contact-grid{grid-template-columns:1fr}.contact-mark{height:220px}.mobile-actions{position:fixed;z-index:90;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr}.mobile-actions a{padding:18px;text-align:center;background:#1f2b24;color:white;font-weight:800}.mobile-actions a:last-child{background:#aa9478}.lightbox img{max-width:94vw;max-height:78vh}.lb-prev{left:4px}.lb-next{right:4px}}

/* ===== Room detail pages ===== */
.room-page{background:#f8f6f1;color:#292925;min-height:100vh}
.room-page-header{position:sticky;top:0;z-index:70;height:76px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid #e7e2d8}
.room-page-header .inner{height:100%;width:min(1280px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}
.room-page-header .back{justify-self:start;font-weight:700;font-size:.9rem}
.room-page-header .room-logo{font-weight:800;font-size:1.2rem;letter-spacing:-.03em}
.room-page-header .room-book{justify-self:end;padding:11px 16px;background:#9d876d;color:#fff;font-weight:700}
.room-subnav{position:sticky;top:76px;z-index:65;background:#fff;border-bottom:1px solid #e7e2d8;overflow-x:auto;white-space:nowrap}
.room-subnav .inner{width:max-content;min-width:100%;display:flex;justify-content:center}
.room-subnav a{padding:16px 18px;font-size:.88rem;color:#6d6962;border-bottom:2px solid transparent}
.room-subnav a.active{color:#222;border-bottom-color:#9d876d;font-weight:800}
.room-hero{height:62vh;min-height:500px;position:relative;background:#222;overflow:hidden}
.room-hero img{width:100%;height:100%;object-fit:cover}
.room-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.02) 65%)}
.room-hero-copy{position:absolute;z-index:2;left:max(28px,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%);color:#fff}
.room-hero-copy small{font-size:.72rem;letter-spacing:.18em}
.room-hero-copy h1{font-size:clamp(2.7rem,6vw,5.7rem);line-height:1.04;margin:12px 0 18px;letter-spacing:-.06em}
.room-hero-copy p{max-width:620px;font-size:1rem;line-height:1.8;color:#eee}
.room-detail{padding:70px 0 100px}
.room-detail .wrap{width:min(1180px,calc(100% - 42px));margin:auto}
.room-info-bar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:36px}
.room-info-bar h2{font-size:2rem;margin:0}
.room-info-actions{display:flex;gap:9px;flex-wrap:wrap}
.room-info-actions a{padding:11px 15px;border:1px solid #bcb5aa;background:#fff}
.room-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.room-gallery button{padding:0;border:0;background:none;cursor:pointer;overflow:hidden}
.room-gallery img{display:block;width:100%;height:440px;object-fit:cover;transition:.35s}
.room-gallery button:hover img{transform:scale(1.02)}
.room-gallery button:first-child:nth-last-child(1){grid-column:1/3}
.room-gallery button:first-child:nth-last-child(1) img{height:600px}
.room-bottom-nav{margin-top:55px;padding-top:26px;border-top:1px solid #d7d1c7;display:flex;justify-content:space-between;gap:14px}
.room-bottom-nav a{padding:15px 18px;background:#fff;border:1px solid #ddd3c6;font-weight:700}
@media(max-width:720px){
 .room-page-header{height:64px}.room-page-header .inner{width:calc(100% - 24px)}.room-page-header .room-logo{font-size:1rem}
 .room-page-header .room-book{padding:9px 11px;font-size:.8rem}.room-subnav{top:64px}.room-subnav .inner{justify-content:flex-start}
 .room-subnav a{padding:13px 14px}.room-hero{height:54vh;min-height:410px}.room-hero-copy{left:22px;right:22px}
 .room-detail{padding:50px 0 80px}.room-info-bar{align-items:flex-start;flex-direction:column}
 .room-gallery{grid-template-columns:1fr}.room-gallery button:first-child:nth-last-child(1){grid-column:auto}
 .room-gallery img,.room-gallery button:first-child:nth-last-child(1) img{height:300px}.room-bottom-nav{flex-direction:column}
}

.map-page{background:#f8f6f1}.map-main{padding:70px 0 100px}.map-main .wrap{width:min(1180px,calc(100% - 42px));margin:auto}.map-main h1{font-size:clamp(2.6rem,5vw,5rem);letter-spacing:-.055em;margin:10px 0}.map-main>div>p{color:#777}.map-frame{margin-top:34px;min-height:560px;background:#eee8de;border:1px solid #ddd3c6;display:flex;align-items:center;justify-content:center;overflow:hidden}.map-frame img{max-width:100%;height:auto;display:none}.map-frame #placeholder{min-height:560px;width:100%;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;color:#777}.map-frame #placeholder strong{font-size:1.5rem;color:#514b44}.simple-tour{grid-template-columns:repeat(2,1fr)}@media(max-width:660px){.map-main{padding:50px 0 80px}.map-frame,.map-frame #placeholder{min-height:360px}.simple-tour{grid-template-columns:1fr}}

/* v11 navigation / room price */
.room-left-actions{justify-self:start;display:flex;align-items:center;gap:12px}
.room-menu-btn{border:0;background:none;font-weight:800;cursor:pointer;padding:8px 0}
.home-btn{padding:7px 10px;border:1px solid #d8d2c8;font-size:.82rem;background:#fff}
.room-use{margin:0 0 42px}
.use-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:42px}
.use-summary>div{background:#fff;border:1px solid #ddd5c9;padding:20px}
.use-summary small,.use-summary b{display:block}.use-summary small{font-size:.72rem;color:#8b8278;margin-bottom:7px}.use-summary b{font-size:.98rem}
.price-area{background:#fff;border:1px solid #ddd5c9;padding:28px}
.price-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.price-head h2{margin:5px 0 0;font-size:2rem}.price-head small{color:#888}
.price-table{margin-top:24px;border-top:2px solid #333}.price-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-bottom:1px solid #ded8cf}.price-row>*{padding:15px 14px;border-right:1px solid #eee7dd}.price-row>*:last-child{border-right:0}.price-row.head{background:#f5f1ea;font-size:.82rem;font-weight:800}
.room-site-menu{position:fixed;z-index:180;inset:0;background:rgba(255,255,255,.99);opacity:0;visibility:hidden;transition:.2s;overflow:auto}
.room-site-menu.open{opacity:1;visibility:visible}.room-site-menu-head{height:84px;border-bottom:1px solid #e3ddd4;display:flex;align-items:center;justify-content:space-between;padding:0 30px}
.room-site-menu-head button{border:0;background:none;font-weight:800;cursor:pointer}.room-site-menu-head a{font-weight:800}
.room-site-menu-grid{width:min(1160px,calc(100% - 50px));margin:55px auto;display:grid;grid-template-columns:repeat(5,1fr);gap:38px}.room-site-menu-grid h2{font-size:1.5rem}.room-site-menu-grid a{display:block;margin:10px 0}
.map-topbar{position:sticky;top:0;z-index:80;height:70px;background:#fff;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:12px;padding:0 24px}.map-menu-btn{border:0;background:none;font-weight:800;cursor:pointer}.map-home,.map-back{padding:8px 11px;border:1px solid #ddd;background:#fff;font-size:.85rem}
@media(max-width:760px){
 .room-page-header .inner{grid-template-columns:1fr auto}.room-page-header .room-logo{display:none}.room-left-actions{gap:6px}.room-left-actions .back{display:none}
 .use-summary{grid-template-columns:1fr 1fr}.price-head{align-items:start;flex-direction:column}.price-row{grid-template-columns:1fr .9fr .9fr}.price-row>*{padding:12px 8px;font-size:.88rem}
 .room-site-menu-grid{grid-template-columns:1fr;margin-top:28px}.room-site-menu-grid section{border-bottom:1px solid #ddd;padding-bottom:16px}
}
.actual-map-wrap{width:min(900px,calc(100% - 30px));margin:35px auto 90px}.actual-map-wrap img{width:100%;height:auto;display:block;box-shadow:0 12px 35px rgba(0,0,0,.12)}.rate-board-reference{margin:0 0 35px;background:#fff;border:1px solid #ddd5c9;padding:16px}.rate-board-reference summary{cursor:pointer;font-weight:800}.rate-board-reference img{display:block;width:min(100%,900px);height:auto;margin:18px auto 0}
.tour-ai-map img{max-width:760px;margin-left:auto;margin-right:auto}
.slowcity-archive{background:#f3f0e8}.slowcity-image{margin-top:28px;background:#fff;padding:20px;border:1px solid #ddd6c9}.slowcity-image img{display:block;width:100%;height:auto}

.leaflet-data{background:#f3efe5}
.leaflet-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:35px 0}
.leaflet-summary-grid article{background:#fff;border:1px solid #ddd5c8;padding:26px}
.leaflet-summary-grid h3{font-size:1.25rem;margin:0 0 12px}
.leaflet-summary-grid p{color:#777;line-height:1.8;font-size:.93rem}
.leaflet-viewer{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
.leaflet-shot{padding:0;border:0;background:#fff;cursor:pointer;text-align:left;box-shadow:0 10px 30px rgba(0,0,0,.08)}
.leaflet-shot img{width:100%;height:360px;object-fit:cover;display:block;object-position:top}
.leaflet-shot span{display:block;padding:16px 18px;font-weight:800}
.leaflet-tour-archive{background:#faf8f3}
.leaflet-tour-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.leaflet-tour-actions a{padding:13px 18px;border:1px solid #bfb5a7;background:#fff}
.room-archive-note{margin:0 0 30px;padding:20px 22px;background:#f4efe4;border-left:4px solid #9c805d}
.room-archive-note b{display:block;margin-bottom:8px}.room-archive-note p{margin:0;color:#6f6a63;line-height:1.8}
@media(max-width:760px){
 .leaflet-summary-grid{grid-template-columns:1fr}
 .leaflet-viewer{grid-template-columns:1fr}
 .leaflet-shot img{height:260px}
}

.main-desktop-topbar{grid-template-columns:1fr auto}.desktop-main-nav{justify-self:center;display:grid;grid-template-columns:repeat(5,1fr);width:min(900px,68vw);background:rgba(255,255,255,.92);color:#292925}.desktop-main-nav a{padding:7px 22px 6px;display:flex;flex-direction:column}.desktop-main-nav b{font-size:1.45rem}.desktop-main-nav small{color:#9b948b}.mobile-main-menu{display:none}.section-subnav{display:flex;border-top:1px solid #ddd;border-bottom:1px solid #ddd;margin-bottom:42px;overflow-x:auto}.section-subnav a{padding:14px 20px;white-space:nowrap}.nearby-menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.nearby-menu-grid a{background:#fff;border-top:2px solid #9e876b;padding:25px;min-height:190px;display:flex;flex-direction:column}.nearby-menu-grid b{font-size:1.25rem}.nearby-menu-grid small{color:#9d8b75;margin:5px 0 20px}.nearby-menu-grid span{color:#777;line-height:1.7}.guide-header{height:72px;position:sticky;top:0;z-index:90;background:#fff;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:10px;padding:0 24px}.guide-header button{border:0;background:none;font-weight:800}.guide-header>a{border:1px solid #ddd;padding:8px 11px}.guide-header strong{margin-left:auto}.nearby-detail-wrap{width:min(1120px,calc(100% - 36px));margin:65px auto 100px}.nearby-detail-head h1{font-size:clamp(2.8rem,5vw,5rem);margin:8px 0}.nearby-detail-nav{display:flex;border-top:1px solid #bbb;border-bottom:1px solid #bbb;margin:35px 0 50px;overflow-x:auto}.nearby-detail-nav a{padding:15px 20px;white-space:nowrap}.nearby-category{padding:20px 0 55px;scroll-margin-top:90px}.nearby-category h2{font-size:2rem}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.place-grid article{background:#fff;border:1px solid #ddd;padding:22px}.place-grid h3{margin:0 0 8px}.place-grid b{color:#8b6d4f}.place-grid p{color:#777;line-height:1.6}.guide-image-section button{border:0;padding:0;background:none;cursor:pointer}.guide-image-section img{width:min(100%,760px)}
@media(max-width:850px){.desktop-main-nav{display:none}.mobile-main-menu{display:block;justify-self:start;border:0;background:none;color:white;font-weight:800}.main-desktop-topbar{grid-template-columns:1fr 1fr}.nearby-menu-grid,.place-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.nearby-menu-grid,.place-grid{grid-template-columns:1fr}.desktop-main-nav{display:none}}

/* v16 top navigation: transparent + click dropdown */
.desktop-main-nav{
  justify-self:center;
  display:grid;
  grid-template-columns:repeat(5, minmax(130px,1fr));
  width:min(900px,68vw);
  background:transparent !important;
  color:#fff !important;
  overflow:visible;
}
.top-menu-item{
  position:relative;
  min-width:0;
}
.top-menu-link{
  position:relative;
  z-index:2;
  padding:9px 20px 8px !important;
  display:flex !important;
  flex-direction:column;
  align-items:flex-start;
  color:#fff !important;
  background:transparent !important;
  text-shadow:0 1px 8px rgba(0,0,0,.55);
}
.top-menu-link b{
  font-size:1.42rem !important;
  line-height:1.15;
  color:#fff !important;
}
.top-menu-link small{
  margin-top:3px;
  color:rgba(255,255,255,.82) !important;
  text-shadow:0 1px 6px rgba(0,0,0,.55);
}
.top-menu-link:after{
  content:"";
  position:absolute;
  left:20px;
  right:20px;
  bottom:2px;
  height:2px;
  background:#fff;
  transform:scaleX(0);
  transform-origin:left;
  transition:.2s;
}
.top-menu-item:hover .top-menu-link:after,
.top-menu-item.open .top-menu-link:after,
.top-menu-item:focus-within .top-menu-link:after{
  transform:scaleX(1);
}
.top-submenu{
  position:absolute;
  top:100%;
  left:50%;
  transform:translate(-50%,10px);
  min-width:210px;
  padding:12px 0;
  background:rgba(255,255,255,.97);
  color:#292925;
  box-shadow:0 18px 40px rgba(0,0,0,.18);
  border:1px solid rgba(0,0,0,.06);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:.18s;
}
.top-menu-item.open .top-submenu,
.top-menu-item:hover .top-submenu,
.top-menu-item:focus-within .top-submenu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.top-submenu a{
  display:block !important;
  padding:10px 18px !important;
  color:#333 !important;
  background:transparent !important;
  white-space:nowrap;
  font-size:.94rem;
  text-shadow:none !important;
}
.top-submenu a:hover{
  background:#f1ede6 !important;
  color:#8a6e51 !important;
}
.main-desktop-topbar{
  overflow:visible;
}
@media(max-width:850px){
  .desktop-main-nav{display:none !important}
}

/* ===== v17: always-visible previous / home / menu ===== */
.fixed-utility-nav{
  position:fixed;
  z-index:120;
  top:14px;
  left:18px;
  display:flex;
  gap:6px;
  align-items:center;
}
.fixed-utility-nav button,
.fixed-utility-nav a{
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.45);
  background:rgba(24,29,25,.42);
  color:#fff;
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
  font-size:.82rem;
  font-weight:800;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 16px rgba(0,0,0,.10);
}
.fixed-utility-nav button:hover,
.fixed-utility-nav a:hover{
  background:rgba(255,255,255,.96);
  color:#222;
  border-color:#d7d1c8;
}

/* content sections sit on light backgrounds, so keep utility readable at all scroll positions */
body:not(.room-page):not(.guide-page) .fixed-utility-nav{
  mix-blend-mode:normal;
}

/* map page bars must remain visible while scrolling */
.map-topbar,
.guide-header{
  position:sticky !important;
  top:0 !important;
  z-index:130 !important;
}

/* room detail header was already sticky; strengthen stacking */
.room-page-header{
  z-index:130 !important;
}

/* desktop main top menu can remain visual navigation, fixed utility supplies return/home/menu */
@media(min-width:851px){
  .fixed-utility-nav{top:16px;left:18px}
}
@media(max-width:850px){
  .fixed-utility-nav{
    top:10px;
    left:10px;
    gap:4px;
  }
  .fixed-utility-nav button,
  .fixed-utility-nav a{
    min-height:36px;
    padding:0 9px;
    font-size:.75rem;
  }
}
/* prevent fixed controls from covering the main mobile header buttons too much */
@media(max-width:600px){
  .fixed-utility-nav #fixedMenuBtn{display:none}
}

/* ===== v18 unified section pages ===== */
.section-page{background:#f8f6f1;color:#292925}
.section-page-header{position:sticky;top:0;z-index:150;height:76px;background:rgba(255,255,255,.98);border-bottom:1px solid #e4ded5}
.section-page-header .inner{height:100%;width:min(1280px,calc(100% - 36px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px}
.section-left-actions{justify-self:start;display:flex;gap:8px;align-items:center}.section-left-actions button,.section-left-actions a{border:1px solid #ddd4c8;background:#fff;padding:9px 11px;font-weight:700;font-size:.82rem;cursor:pointer}
.section-logo{font-weight:800;font-size:1.18rem}.section-right-actions{justify-self:end;display:flex;gap:8px}.section-right-actions a{padding:10px 13px;background:#9c856b;color:#fff;font-size:.82rem;font-weight:800}
.section-page-subnav{position:sticky;top:76px;z-index:145;background:#fff;border-bottom:1px solid #e4ded5;overflow-x:auto;white-space:nowrap}
.section-page-subnav .inner{display:flex;width:max-content;min-width:100%;justify-content:center}.section-page-subnav a{padding:15px 18px;color:#6f6961}.section-page-subnav a:hover{color:#8e6f4f;border-bottom:2px solid #9c856b}
.section-page-title{padding:72px 0 30px}.section-page-title h1{font-size:clamp(3rem,6vw,5.5rem);letter-spacing:-.07em;margin:8px 0}
.section-page-content{padding:20px 0 100px}.section-detail-list{display:flex;flex-direction:column;gap:34px}.section-detail-card{display:grid;grid-template-columns:1.1fr 1fr;min-height:390px;background:#fff;border:1px solid #ddd6cc;scroll-margin-top:155px}.section-detail-card img{width:100%;height:100%;object-fit:cover}.section-detail-card>div{padding:44px;display:flex;flex-direction:column;justify-content:center}.section-detail-card h2{font-size:2.3rem;margin:8px 0 18px}.section-detail-card p{color:#74716d;line-height:1.8}
.section-detail-leaflet{margin-top:55px;scroll-margin-top:155px}.section-detail-leaflet h2{font-size:2.4rem}.leaflet-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.leaflet-pair img{width:100%;height:auto;border:1px solid #ddd}
.tourism-simple-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tourism-simple-grid a{background:#fff;border-top:2px solid #9b856a;padding:30px;min-height:180px;display:flex;flex-direction:column;justify-content:space-between}.tourism-simple-grid b{font-size:1.5rem}.tourism-simple-grid span{color:#777}
.info-block{padding:38px 0;border-bottom:1px solid #ddd;scroll-margin-top:155px}.info-block h2{font-size:2.2rem}.info-block p{color:#777;line-height:1.8}
@media(max-width:760px){.section-page-header{height:66px}.section-page-header .inner{grid-template-columns:1fr auto}.section-logo{display:none}.section-page-subnav{top:66px}.section-page-subnav .inner{justify-content:flex-start}.section-left-actions{gap:4px}.section-left-actions a,.section-left-actions button{padding:7px 8px;font-size:.75rem}.section-right-actions a{padding:8px 9px}.section-detail-card{grid-template-columns:1fr}.section-detail-card img{height:280px}.section-detail-card>div{padding:26px}.leaflet-pair,.tourism-simple-grid{grid-template-columns:1fr}}


/* v19 mobile-first app */
.app-home{margin:0;background:#17251f;font-family:"Noto Sans KR","Malgun Gothic",sans-serif}.app-shell{min-height:100svh;position:relative;background:var(--hero) center/cover no-repeat;color:#fff}.shade{position:absolute;inset:0;background:linear-gradient(rgba(5,15,10,.28),rgba(5,15,10,.72))}.home-inner{position:relative;z-index:2;width:min(calc(100% - 28px),650px);min-height:100svh;margin:auto;padding:calc(18px + env(safe-area-inset-top)) 0 calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.six{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.six a{height:86px;border:1px solid rgba(255,255,255,.62);background:rgba(18,30,24,.28);backdrop-filter:blur(7px);color:#fff;text-decoration:none;display:flex;align-items:center;justify-content:center;font-size:1.08rem;font-weight:800}.six .book{background:rgba(156,127,91,.72)}.slogan{margin:auto 0;text-align:center}.slogan p{font-size:.69rem;letter-spacing:.11em;font-weight:800}.slogan h1{font-family:Georgia,serif;font-size:clamp(1.8rem,7vw,2.8rem);font-weight:400;line-height:1.45}.contact{border-top:1px solid rgba(255,255,255,.4);padding-top:15px;display:grid;gap:10px}.contact span{font-size:.84rem}.contact div{display:flex;gap:7px}.contact a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.5);padding:10px 12px;font-weight:800}.app-page-body{margin:0;background:#f6f3ed;font-family:"Noto Sans KR","Malgun Gothic",sans-serif;color:#292925}.app-bar{position:sticky;top:0;z-index:150;height:58px;background:rgba(255,255,255,.98);border-bottom:1px solid #ddd;display:grid;grid-template-columns:auto auto auto 1fr;gap:5px;align-items:center;padding:0 9px}.app-bar button,.app-bar a{font:inherit;font-size:.74rem;font-weight:800;text-decoration:none;color:#292925;background:#fff;border:1px solid #ddd;padding:8px}.app-bar .reserve{justify-self:end;background:#9c856b;color:#fff}.app-drawer{position:fixed;z-index:250;inset:0;background:#f6f3ed;opacity:0;visibility:hidden;transition:.18s}.app-drawer.open{opacity:1;visibility:visible}.drawer-head{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid #ddd}.drawer-head button{border:0;background:none;font-weight:800}.drawer-grid{padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.drawer-grid a{height:100px;background:#fff;border:1px solid #ddd;color:#292925;text-decoration:none;display:flex;align-items:center;justify-content:center;font-weight:800}.page{width:min(calc(100% - 28px),720px);margin:auto;padding:38px 0 75px}.eye{font-size:.68rem;letter-spacing:.18em;color:#9a7d58;font-weight:800}.page>h1{font-size:2.6rem;letter-spacing:-.07em;margin:7px 0 26px}.sublist{display:grid;gap:9px}.sublist a{background:#fff;border:1px solid #ddd;border-left:4px solid #9c856b;padding:17px;text-decoration:none;color:#292925;display:flex;flex-direction:column}.sublist b{font-size:1.12rem}.sublist span{color:#777;font-size:.84rem;margin-top:5px}.chips{position:sticky;top:58px;z-index:130;background:#fff;display:flex;overflow-x:auto;border:1px solid #ddd;margin-bottom:20px}.chips a{padding:11px 13px;white-space:nowrap;text-decoration:none;color:#333}.details{display:grid;gap:10px}.details article{scroll-margin-top:120px;background:#fff;border:1px solid #ddd;padding:22px}.details p,.article{line-height:1.8}.wide{width:100%;height:auto}.action{display:block;background:#fff;border:1px solid #ddd;padding:13px;margin:8px 0;text-decoration:none;color:#222;font-weight:800}
@media(min-width:760px){.six a{height:105px;font-size:1.3rem}.sublist{grid-template-columns:1fr 1fr}}

/* ===== v20 app-style room pages ===== */
.app-room-body{background:#f4f1eb}
.app-room-tabs{position:sticky;top:58px;z-index:140;display:flex;overflow-x:auto;white-space:nowrap;background:#fff;border-bottom:1px solid #ded8cf;padding:0 6px}
.app-room-tabs a{padding:13px 12px;text-decoration:none;color:#746d65;font-size:.78rem;border-bottom:2px solid transparent}
.app-room-tabs a.active{color:#222;font-weight:800;border-bottom-color:#9c856b}
.app-room{width:min(100%,820px);margin:auto}
.app-room-hero{position:relative;height:48svh;min-height:360px;background:#222;overflow:hidden}
.app-room-hero>img{width:100%;height:100%;object-fit:cover}
.app-room-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.66))}
.app-room-hero>div{position:absolute;z-index:2;left:22px;right:22px;bottom:25px;color:#fff}
.app-room-hero small{font-size:.67rem;letter-spacing:.15em}
.app-room-hero h1{font-size:2.45rem;letter-spacing:-.06em;margin:7px 0 9px}
.app-room-hero p{font-size:.88rem;line-height:1.65;margin:0;color:#eee}
.app-room-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px}
.app-room-summary>div{background:#fff;border:1px solid #ddd5ca;padding:15px;min-height:86px}
.app-room-summary small,.app-room-summary b{display:block}.app-room-summary small{font-size:.68rem;color:#94887b;margin-bottom:6px}.app-room-summary b{font-size:.86rem;line-height:1.45}
.app-rate-card{margin:0 14px 16px;background:#fff;border:1px solid #ddd5ca;padding:18px}
.rate-title p{font-size:.65rem;letter-spacing:.16em;color:#9a7d58;font-weight:800;margin:0}.rate-title h2{font-size:1.6rem;margin:5px 0 16px}
.rate-table{border-top:2px solid #333}.rate-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-bottom:1px solid #ddd}.rate-row>*{padding:11px 7px;font-size:.8rem;border-right:1px solid #eee;text-align:center}.rate-row>*:last-child{border-right:0}.rate-row.head{background:#f5f1ea;font-weight:800}
.app-room-gallery{padding:18px 14px 75px}.gallery-head p{font-size:.65rem;letter-spacing:.16em;color:#9a7d58;font-weight:800}.gallery-head h2{font-size:1.9rem;margin:5px 0}.gallery-head span{font-size:.8rem;color:#777}
.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:16px}.room-photo{border:0;padding:0;background:none;cursor:pointer}.room-photo img{display:block;width:100%;height:165px;object-fit:cover}
.app-lightbox{position:fixed;z-index:400;inset:0;background:rgba(0,0,0,.95);display:none;align-items:center;justify-content:center}.app-lightbox.open{display:flex}.app-lightbox img{max-width:93vw;max-height:80vh;object-fit:contain}.app-lightbox button{position:absolute;border:0;background:rgba(255,255,255,.13);color:#fff}.app-lightbox .close{top:18px;right:18px;width:44px;height:44px}.app-lightbox .prev,.app-lightbox .next{top:50%;transform:translateY(-50%);width:44px;height:70px;font-size:2.2rem}.app-lightbox .prev{left:5px}.app-lightbox .next{right:5px}.app-lightbox #photoCount{position:absolute;bottom:20px;color:#fff;font-size:.84rem}
@media(min-width:760px){
 .app-room-hero{height:520px}.app-room-summary{grid-template-columns:repeat(4,1fr)}.gallery-grid{grid-template-columns:1fr 1fr}.room-photo img{height:320px}
}


/* ===== v21 polished mobile app design ===== */
:root{
  --v21-purple:#684d86;
  --v21-purple2:#8f63b6;
  --v21-green:#31473d;
  --v21-bg:#f6f4f7;
  --v21-card:#ffffff;
  --v21-text:#27232b;
  --v21-muted:#81798a;
  --v21-line:#ebe7ef;
  --v21-shadow:0 10px 30px rgba(46,34,58,.09);
}
.v21-body{margin:0;background:var(--v21-bg);color:var(--v21-text);font-family:"Pretendard","Noto Sans KR","Malgun Gothic",sans-serif}
.v21-app{width:min(100%,760px);margin:auto;min-height:100svh;background:var(--v21-bg)}
.v21-brand{padding:18px 18px 14px;background:linear-gradient(135deg,var(--v21-purple),var(--v21-purple2));color:#fff}
.v21-brand-row{display:flex;justify-content:space-between;align-items:center}.v21-brand small{font-size:.62rem;letter-spacing:.14em;opacity:.85}.v21-brand h1{font-size:1.55rem;margin:5px 0 2px}.v21-brand p{margin:0;font-size:.8rem;opacity:.9}.v21-call-mini{width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;font-size:1.1rem}
.v21-hero{height:310px;position:relative;background:var(--hero) center/cover no-repeat;overflow:hidden}.v21-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.68))}.v21-hero-copy{position:absolute;left:20px;right:20px;bottom:22px;color:#fff}.v21-hero-copy>span{font-size:.62rem;letter-spacing:.14em;font-weight:800}.v21-hero-copy h2{font-size:1.75rem;line-height:1.3;margin:8px 0 15px}.v21-hero-actions{display:flex;gap:8px}.v21-hero-actions a{padding:10px 15px;border-radius:12px;background:#fff;color:#34283f;text-decoration:none;font-weight:800;font-size:.84rem}.v21-hero-actions a.ghost{background:rgba(255,255,255,.17);color:#fff;border:1px solid rgba(255,255,255,.55)}
.v21-quick-wrap,.v21-section{padding:22px 16px}.v21-quick-wrap{margin-top:-1px;background:#fff;border-radius:0 0 24px 24px;box-shadow:var(--v21-shadow)}
.v21-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}.v21-section-head small{font-size:.61rem;letter-spacing:.16em;color:var(--v21-purple);font-weight:900}.v21-section-head h3{font-size:1.28rem;margin:4px 0 0}.v21-section-head>a,.v21-section-head>span{font-size:.75rem;color:var(--v21-muted);text-decoration:none}
.v21-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.v21-quick-grid a{height:90px;border:1px solid var(--v21-line);border-radius:18px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--v21-text);box-shadow:0 3px 12px rgba(40,30,48,.04)}.v21-quick-grid .ico{font-size:1.35rem;margin-bottom:7px;color:var(--v21-purple)}.v21-quick-grid b{font-size:.82rem}.v21-quick-grid a.accent{background:linear-gradient(145deg,var(--v21-purple),var(--v21-purple2));color:#fff;border:0}.v21-quick-grid a.accent .ico{color:#fff}
.v21-room-strip{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory}.v21-room-card{min-width:78%;background:#fff;border-radius:18px;overflow:hidden;text-decoration:none;color:var(--v21-text);box-shadow:var(--v21-shadow);scroll-snap-align:start}.v21-room-card img{width:100%;height:190px;object-fit:cover;display:block}.v21-room-copy{padding:14px}.v21-room-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.v21-room-top b{font-size:1rem}.v21-room-top span{font-size:.66rem;color:var(--v21-purple);background:#f0e9f5;padding:5px 7px;border-radius:999px}.v21-room-copy p{font-size:.76rem;color:var(--v21-muted);line-height:1.5;height:2.3em;overflow:hidden}.v21-room-price strong{font-size:1.05rem}.v21-room-price small{margin-left:4px;color:var(--v21-muted)}
.v21-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v21-info-grid article{background:#fff;border-radius:16px;padding:15px;box-shadow:0 3px 14px rgba(44,34,52,.05)}.v21-info-grid article>span{font-size:1.2rem}.v21-info-grid b{display:block;margin:8px 0 4px;font-size:.86rem}.v21-info-grid p{margin:0;color:var(--v21-muted);font-size:.72rem;line-height:1.5}
.v21-link-list{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--v21-shadow)}.v21-link-list a{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border-bottom:1px solid var(--v21-line);text-decoration:none;color:var(--v21-text)}.v21-link-list a:last-child{border-bottom:0}.v21-link-list b{font-size:.86rem}.v21-link-list span{font-size:.72rem;color:var(--v21-muted)}
.v21-tour-card{margin:0 16px 20px;padding:20px;border-radius:20px;background:linear-gradient(135deg,#e8f0ec,#f8f5ef)}.v21-tour-card small{font-size:.61rem;letter-spacing:.14em;color:#527262;font-weight:900}.v21-tour-card h3{font-size:1.35rem;margin:4px 0}.v21-tour-card p{font-size:.78rem;color:#6e766f}.v21-tour-actions{display:flex;gap:8px;margin-top:13px}.v21-tour-actions a{background:#fff;padding:10px 12px;border-radius:12px;text-decoration:none;color:#34463d;font-weight:800;font-size:.78rem}
.v21-contact-card{margin:0 16px 18px;background:#29232f;color:#fff;border-radius:20px}.v21-contact-card small{font-size:.61rem;letter-spacing:.14em;color:#d8c9e7}.v21-contact-card h3{margin:5px 0}.v21-contact-card p{font-size:.78rem;opacity:.82}.v21-contact-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.v21-contact-actions a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.25);padding:9px 11px;border-radius:10px;font-size:.76rem;font-weight:800}
.v21-bottom-space{height:84px}
.v21-bottom-nav{position:fixed;z-index:300;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,760px);height:68px;padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.97);border-top:1px solid var(--v21-line);display:grid;grid-template-columns:repeat(5,1fr);box-shadow:0 -6px 25px rgba(35,28,42,.08)}.v21-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#82798b;font-size:.65rem;gap:3px}.v21-bottom-nav span{font-size:1.05rem}.v21-bottom-nav b{font-size:.64rem}.v21-bottom-nav a.active{color:var(--v21-purple)}.v21-bottom-nav a.book{width:54px;height:54px;margin:-14px auto 0;border-radius:19px;background:linear-gradient(145deg,var(--v21-purple),var(--v21-purple2));color:#fff;box-shadow:0 7px 18px rgba(104,77,134,.28)}
.v21-topbar{position:sticky;top:0;z-index:220;height:58px;padding:0 14px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--v21-line);display:grid;grid-template-columns:44px 1fr auto;align-items:center}.v21-topbar button{border:0;background:none;font-size:1.2rem}.v21-topbar .home{text-align:center;text-decoration:none;color:var(--v21-text);font-weight:900}.v21-topbar .reserve{background:var(--v21-purple);color:#fff;text-decoration:none;padding:9px 12px;border-radius:11px;font-size:.75rem;font-weight:800}
.v21-drawer{position:fixed;z-index:500;inset:0;background:#f7f4fa;transform:translateX(-100%);transition:.2s}.v21-drawer.open{transform:translateX(0)}.v21-drawer-head{height:64px;padding:0 18px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,var(--v21-purple),var(--v21-purple2));color:#fff}.v21-drawer-head button{border:0;background:none;color:#fff;font-size:1.2rem}.v21-drawer-menu{padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.v21-drawer-menu a{height:94px;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--v21-text);font-weight:800;box-shadow:0 4px 16px rgba(44,32,54,.05)}
.v21-page{width:min(calc(100% - 30px),720px);margin:auto;padding:28px 0 40px}.v21-page-title small{font-size:.61rem;letter-spacing:.15em;color:var(--v21-purple);font-weight:900}.v21-page-title h1{font-size:2.15rem;margin:6px 0 22px}.v21-menu-stack{display:grid;gap:10px}.v21-menu-card{background:#fff;border-radius:16px;padding:16px;display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:var(--v21-text);box-shadow:0 4px 16px rgba(43,32,53,.05)}.v21-menu-card b{display:block;font-size:.95rem}.v21-menu-card span{display:block;font-size:.73rem;color:var(--v21-muted);margin-top:4px}.v21-menu-card em{font-size:1.5rem;color:#b8afc0;font-style:normal}
.v21-room-tabs{position:sticky;top:58px;z-index:200;display:flex;overflow-x:auto;background:#fff;border-bottom:1px solid var(--v21-line)}.v21-room-tabs a{white-space:nowrap;padding:12px 13px;text-decoration:none;color:#786f82;font-size:.74rem}.v21-room-page{width:min(100%,760px);margin:auto}.v21-room-hero{height:360px;position:relative;overflow:hidden}.v21-room-hero img{width:100%;height:100%;object-fit:cover}.v21-room-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.7))}.v21-room-hero>div{position:absolute;z-index:2;left:20px;right:20px;bottom:22px;color:#fff}.v21-room-hero small{font-size:.61rem;letter-spacing:.14em}.v21-room-hero h1{font-size:2.2rem;margin:7px 0}.v21-room-hero p{font-size:.78rem;line-height:1.55;margin:0;color:#eee}
.v21-room-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:14px}.v21-room-facts>div{background:#fff;border-radius:14px;padding:13px}.v21-room-facts small{display:block;font-size:.65rem;color:var(--v21-muted);margin-bottom:5px}.v21-room-facts b{font-size:.78rem;line-height:1.45}
.v21-rate,.v21-gallery{padding:8px 14px 18px}.v21-rate-table{background:#fff;border-radius:16px;overflow:hidden}.v21-rate-table .r{display:grid;grid-template-columns:1.15fr 1fr 1fr;border-bottom:1px solid var(--v21-line)}.v21-rate-table .r:last-child{border-bottom:0}.v21-rate-table .r>*{padding:11px 7px;text-align:center;font-size:.75rem}.v21-rate-table .head{background:#f1ebf5;font-weight:800}
.v21-gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.v21-gallery-grid button{border:0;padding:0;background:none}.v21-gallery-grid img{width:100%;height:155px;object-fit:cover;border-radius:13px;display:block}
.v21-lightbox{position:fixed;z-index:700;inset:0;background:rgba(0,0,0,.95);display:none;align-items:center;justify-content:center}.v21-lightbox.open{display:flex}.v21-lightbox img{max-width:93vw;max-height:80vh}.v21-lightbox button{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff}.v21-lightbox .x{top:18px;right:18px;width:44px;height:44px}.v21-lightbox .p,.v21-lightbox .n{top:50%;width:44px;height:70px;font-size:2rem}.v21-lightbox .p{left:6px}.v21-lightbox .n{right:6px}.v21-lightbox #cnt{position:absolute;bottom:22px;color:#fff}
@media(min-width:720px){.v21-room-card{min-width:48%}.v21-gallery-grid img{height:260px}.v21-quick-grid{grid-template-columns:repeat(6,1fr)}}

.admin-fab{position:fixed;right:14px;bottom:86px;z-index:880;border:0;border-radius:18px;padding:12px 14px;background:#2d2633;color:#fff;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.22)}.admin-panel{position:fixed;z-index:900;inset:0;background:#f7f4fa;display:none;overflow:auto}.admin-panel.open{display:block}.admin-head{position:sticky;top:0;height:62px;background:#684d86;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.admin-head button{border:0;background:#ffffff22;color:#fff;padding:9px}.admin-body{width:min(calc(100% - 28px),720px);margin:auto;padding:20px 0 80px}.admin-note,.admin-group{background:#fff;border:1px solid #e4dfea;border-radius:16px;padding:15px;margin-bottom:12px}.admin-note{background:#fff7d8}.admin-field{display:grid;gap:5px;margin:10px 0}.admin-field input,.admin-field textarea{box-sizing:border-box;width:100%;border:1px solid #dcd5e2;border-radius:10px;padding:11px;font:inherit}.admin-field textarea{min-height:82px}.admin-save{width:100%;border:0;border-radius:12px;padding:12px;background:#684d86;color:#fff;font-weight:900}.admin-editing [data-admin-text]{outline:2px dashed #9b6dc0;outline-offset:3px}.admin-toast{position:fixed;z-index:950;left:50%;bottom:95px;transform:translateX(-50%);background:#252029;color:#fff;padding:10px 14px;border-radius:999px;display:none}.admin-toast.show{display:block}

/* ===== v23 full admin center ===== */
.v23-admin-body{margin:0;background:#f5f3f7;color:#28242d;font-family:"Pretendard","Noto Sans KR","Malgun Gothic",sans-serif}
.v23-admin-top{position:sticky;top:0;z-index:20;height:62px;background:#684d86;color:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:0 14px}.v23-admin-top a,.v23-admin-top button{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.1);padding:8px 10px;border-radius:10px}.v23-admin-top b{text-align:center}
.v23-admin-layout{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:210px 1fr;min-height:calc(100svh - 62px)}
.v23-admin-nav{padding:18px 10px;border-right:1px solid #e1dce5;background:#fff}.v23-admin-nav button{width:100%;text-align:left;border:0;background:none;padding:12px;border-radius:10px;font-weight:800;color:#5d5662}.v23-admin-nav button.active{background:#eee7f4;color:#684d86}
.v23-admin-main{padding:22px}.v23-admin-help{background:#fff5d6;border:1px solid #eadca4;border-radius:13px;padding:13px;font-size:.8rem;line-height:1.6;margin-bottom:16px}.admin-tab{display:none}.admin-tab.active{display:block}.admin-tab h1{font-size:2rem}
.admin-form{display:grid;gap:10px}.admin-form label,.admin-card label{display:grid;gap:6px;font-size:.76rem;font-weight:800;color:#665e6b}.admin-form input,.admin-form textarea,.admin-card input,.admin-card textarea{width:100%;box-sizing:border-box;border:1px solid #dcd6e0;border-radius:10px;padding:10px;font:inherit;background:#fff}.admin-form textarea,.admin-card textarea{min-height:80px}
.admin-card{background:#fff;border:1px solid #e3dee6;border-radius:14px;padding:14px;margin-bottom:10px}.admin-card h3{margin:0 0 12px}.admin-card .check{display:flex;align-items:center;gap:8px}.admin-card .check input{width:auto}
.admin-split{display:grid;grid-template-columns:190px 1fr;gap:12px}.admin-side-list{display:grid;align-content:start;gap:6px}.admin-side-list button{border:1px solid #e1dbe5;background:#fff;border-radius:10px;padding:10px;text-align:left}.admin-side-list button.active{background:#684d86;color:#fff}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.image-row{display:grid;grid-template-columns:1fr auto auto auto;gap:5px;margin:6px 0}.image-row button{border:1px solid #ddd;background:#fff;border-radius:8px}
.primary,.secondary,.danger{border:0;border-radius:10px;padding:10px 13px;font-weight:900;margin:5px 4px 5px 0}.primary{background:#684d86;color:#fff}.secondary{background:#ece8ef;color:#423a48}.danger{background:#f8e4e4;color:#9b3d3d}
.admin-muted{color:#777;font-size:.82rem}.photo-preview{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center}.photo-preview img{width:120px;height:85px;object-fit:cover;border-radius:9px}.photo-preview code{font-size:.65rem;word-break:break-all;color:#777}
.v23-toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);background:#27222d;color:#fff;padding:10px 14px;border-radius:999px;display:none;z-index:100}.v23-toast.show{display:block}
.admin-live-list{display:grid;gap:12px}.admin-live-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.05)}.admin-live-card img{width:100%;height:220px;object-fit:cover}.admin-live-card div{padding:16px}.admin-live-card h2{margin:0 0 8px}.admin-live-card p{color:#777;line-height:1.7}
.nearby-live-section{margin-bottom:30px}.nearby-live-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.nearby-live-grid article{background:#fff;border-radius:14px;padding:14px}.nearby-live-grid h3{margin:0 0 6px}.nearby-live-grid p{color:#777;font-size:.8rem;line-height:1.55}
@media(max-width:760px){.v23-admin-layout{grid-template-columns:1fr}.v23-admin-nav{position:sticky;top:62px;z-index:15;display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid #ddd;padding:7px;background:#fff}.v23-admin-nav button{width:auto;white-space:nowrap}.v23-admin-main{padding:14px}.admin-split{grid-template-columns:1fr}.admin-side-list{display:flex;overflow-x:auto}.admin-side-list button{white-space:nowrap}.price-grid{grid-template-columns:1fr}.nearby-live-grid{grid-template-columns:1fr}}
