*{box-sizing:border-box}
:root{--red:#d6041a;--text:#111;--muted:#666;--line:#d9dde2;--soft:#f7f8fa;--placeholder:#f0f2f4;--orange:#f5a400}
html,body{margin:0;background:#fff;color:var(--text);font-family:"NanumSquare","Noto Sans KR","Malgun Gothic",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body{min-width:1180px}
button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
svg{display:block}
.page{display:none}.page.active{display:block}
.topbar{height:65px;padding:0 67px 0 48px;display:grid;grid-template-columns:235px minmax(0,1fr) 390px;align-items:center;border-bottom:0 solid #eee;background:#fff}
.brand{display:flex;align-items:center;width:235px;cursor:pointer}
.brand-logo{height:35px;width:auto;display:block}
.nav{display:flex;align-items:center;justify-content:center;gap:49px;font-size:15px;font-weight:700;white-space:nowrap;min-width:0}
.util{display:flex;align-items:center;justify-content:flex-end;gap:24px;font-size:14px;white-space:nowrap;min-width:0}
.util a{display:flex;align-items:center;gap:7px}.uico{width:19px;height:19px;display:inline-flex}.uico svg{width:19px;height:19px;stroke:#111;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.inquiry{width:100px;height:38px;border:0;border-radius:6px;background:var(--red);color:#fff;font-weight:700}
.container{width:calc(100% - 96px);max-width:1576px;margin:0 auto}
.breadcrumbs{height:44px;display:flex;align-items:center;gap:12px;font-size:14px;color:#60656a;padding-top:5px}.sep{font-size:18px;color:#999}
h1,h2,h3,p{margin:0}.red{color:var(--red)}
.footer{height:86px;border-top:1px solid var(--line);margin-top:19px;display:flex;align-items:center;padding:0 4px}
.footer .brand{width:auto;flex:0 0 auto}.footer .brand-logo{height:28px}
.footer-links{display:flex;gap:82px;white-space:nowrap;flex-wrap:nowrap;margin:0 auto;font-size:13px;color:#444}.footer-links a{display:inline-block}.copyright{font-size:13px;white-space:nowrap;color:#555}

/* reusable */
.field-label{font-size:13px;font-weight:700;margin-bottom:8px}.field-box{height:40px;border:1px solid var(--line);border-radius:6px;background:#fff;display:flex;align-items:center;padding:0 14px;color:#555;font-size:14px;gap:10px;overflow:hidden;white-space:nowrap}
.symbol{width:19px;height:19px;flex:none;display:inline-flex}.symbol svg{width:19px;height:19px;stroke:#1e1f20;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.btn-red{border:0;background:var(--red);color:#fff;font-weight:700;border-radius:6px}.btn-line{border:1px solid #999;background:#fff;color:#111;font-weight:700;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:8px}
.placeholder{background:var(--placeholder)}
.heart{position:absolute;width:24px;height:24px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.heart svg{width:23px;height:23px;fill:#fff;stroke:#222;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chev{display:inline-flex;width:16px;height:16px}.chev svg{width:16px;height:16px;stroke:#111;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* home */
.home-hero{width:calc(100% - 96px);max-width:1576px;margin:0 auto;height:345px;position:relative;overflow:visible;border-radius:11px}
.home-hero .inner{width:100%;height:100%;position:relative}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:11px}
.hero-copy{position:absolute;left:205px;top:47px;z-index:2}.hero-copy h1{font-size:44px;line-height:1.35;letter-spacing:-1.5px;font-weight:900}.hero-copy h1 .red{font-size:43px}.hero-copy p{margin-top:5px;font-size:19px}.hero-actions{display:flex;gap:11px;margin-top:18px}.hero-actions button{width:178px;height:44px;font-size:15px}
.home-search{position:absolute;left:146px;right:176px;bottom:-44px;height:100px;background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 4px 10px rgba(0,0,0,.10);display:flex;gap:clamp(14px,3vw,54px);align-items:center;padding:15px 29px 14px 37px;z-index:3}.home-search>*{min-width:0}.home-search>div:nth-child(1){flex:240 1 0}.home-search>div:nth-child(2),.home-search>div:nth-child(3),.home-search>div:nth-child(4){flex:188 1 0}.home-search>.btn-red{flex:160 1 130px;min-width:130px}.home-search .field-label{margin-bottom:6px}.home-search .field-box{height:40px}.home-search .btn-red{height:51px;font-size:17px}
.home-content{padding-top:62px}.section-title{font-size:24px;font-weight:900;margin-bottom:12px}
.cards4{width:calc(100% - 90px);margin-left:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:0}.package-card{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;position:relative}.package-card .ph{height:105px;background:var(--placeholder);position:relative;overflow:hidden}.package-card .ph img{width:100%;height:100%;object-fit:cover;display:block;max-width:100%}.package-card .heart{right:15px;top:13px}.card-body{height:103px;padding:11px 15px 10px}.card-title{font-size:16px;font-weight:800;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-loc{font-size:12px;color:#777;margin-top:7px;display:flex;gap:5px;align-items:center}.loc-ico{width:14px;height:14px;display:inline-flex}.loc-ico svg{width:14px;height:14px;stroke:#777;fill:none;stroke-width:2}.card-row{display:flex;align-items:center;margin-top:8px;font-size:13px;min-width:0}.rating{display:flex;align-items:center;gap:4px;flex:0 0 95px;width:95px;white-space:nowrap}.star{color:var(--orange);font-size:18px;line-height:1}.reviews{color:#777}.price{flex:0 0 105px;width:105px;margin-left:auto;text-align:right;color:var(--red);font-size:14px;font-weight:900;white-space:nowrap}.price small{font-size:10px}.mini-btn{flex:0 0 86px;width:86px;height:31px;border:1px solid #aaa;border-radius:5px;background:#fff;margin-left:10px;padding:0;font-size:12px;font-weight:700}
.benefits{height:95px;border:1px solid var(--line);border-radius:9px;margin:19px 18px 0;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;padding:0 40px}.benefit{display:flex;align-items:center;justify-content:center;gap:20px}.benefit-icon{width:50px;height:50px;flex:none;display:flex;align-items:center;justify-content:center}.benefit-icon svg{width:50px;height:50px;stroke:var(--red);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.benefit strong{font-size:15px}.benefit p{font-size:12px;color:#666;line-height:1.5;margin-top:3px}

/* search */
.search-page h1{font-size:36px;letter-spacing:-1px;font-weight:900;margin-top:5px}.result-count{margin-top:7px;font-size:15px}.result-count b{color:var(--red);font-size:18px}.filter-box{width:100%;height:91px;border:1px solid var(--line);border-radius:9px;margin-top:20px;padding:14px 29px 13px 20px;display:flex;align-items:flex-end;gap:0}.filter-box>div{min-width:0}.filter-box>div:nth-child(1){flex:368 1 0;margin-right:clamp(20px,4.5vw,85px)}.filter-box>div:nth-child(2){flex:140 1 0;margin-right:clamp(16px,3.4vw,64px)}.filter-box>div:nth-child(3){flex:182 1 0;margin-right:clamp(20px,4.3vw,81px)}.filter-box>div:nth-child(4){flex:169 1 0;margin-right:clamp(16px,3.4vw,64px)}.filter-box>div:nth-child(5){flex:172 1 0;margin-right:clamp(14px,3vw,58px)}.filter-box .field-label{margin-bottom:7px}.filter-box .field-box{height:36px}.reset{width:105px;height:36px;flex:0 0 105px;border:1px solid #cfd3d8;border-radius:6px;background:#f8f9fa;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:7px}.reset svg{width:16px;height:16px;stroke:#333;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sorts{height:44px;display:block;white-space:nowrap}.sorts button{display:inline-block;vertical-align:bottom;border:0;background:none;height:44px;font-weight:700;padding:0 8px 8px;font-size:14px;margin-right:16px}.sorts button:nth-child(1){width:64px}.sorts button:nth-child(2){width:104px}.sorts button:nth-child(3){width:72px}.sorts button.active{color:var(--red);border-bottom:2px solid var(--red)}
.search-grid{width:calc(100% - 90px);margin-left:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 18px;padding:7px 0 0}.search-card{min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;position:relative;background:#fff}.search-card.selected{border:1.5px solid var(--red)}.search-card .ph{height:105px;background:var(--placeholder);position:relative;overflow:hidden}.search-card .ph img{width:100%;height:100%;object-fit:cover;display:block;max-width:100%}.search-card .heart{right:15px;top:13px}.search-card .card-body{height:104px;padding:10px 15px}.search-card .meta{display:flex;gap:16px;margin-top:7px;font-size:12px;color:#70757a}.search-card .meta span{display:flex;align-items:center;gap:5px}.search-card .meta svg{width:14px;height:14px;stroke:#6b7075;fill:none;stroke-width:1.8}.search-card .card-row{margin-top:7px}.pagination{height:52px;display:flex;justify-content:center;align-items:center;gap:31px;font-size:14px;margin-top:2px;transform:translateX(-12px)}.pagination b{width:35px;height:35px;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;border-radius:3px}

/* detail */
.detail-wrap{padding:0 44px}.detail-main{width:100%;max-width:1464px;display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:42px;align-items:start}.gallery{min-width:0}.gallery-main{height:340px;border-radius:9px;background:var(--placeholder);overflow:hidden}.gallery-main img{width:100%;height:100%;object-fit:cover;display:block}.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:14px}.thumbs div{height:109px;border-radius:8px;background:var(--placeholder);overflow:hidden}.thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.info-card{min-width:0;width:100%;height:492px;margin-top:3px;border:1px solid var(--line);border-radius:11px;padding:27px 25px;box-sizing:border-box}.product-no{font-size:14px;color:#555}.detail-price{font-size:27px;font-weight:900;color:var(--red);margin-top:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}.detail-price span{font-size:15px;color:#222;font-weight:500}.facts{display:grid;grid-template-columns:150px 1fr;row-gap:23px;padding:23px 0 24px;font-size:15px}.facts dt{margin:0;color:#555;display:flex;align-items:center;gap:10px}.facts dt svg{width:19px;height:19px;flex:none;stroke:#555;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.facts dd{margin:0;font-weight:700}.reserve{height:52px;width:100%;font-size:18px}.wish{height:49px;width:100%;margin-top:10px;font-size:16px}.wish svg{width:20px;height:20px;stroke:#222;fill:none;stroke-width:1.7}
.detail-title{font-size:27px;font-weight:900;margin-top:4px}.detail-meta{display:flex;gap:28px;color:#555;font-size:13px;margin-top:8px}.detail-meta span{display:flex;align-items:center;gap:7px}.detail-meta svg{width:16px;height:16px;stroke:#666;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.detail-tabs{width:530px;height:53px;display:block;white-space:nowrap;border-bottom:1px solid var(--line);margin-top:9px;padding-top:0}.detail-tabs button{display:inline-block;vertical-align:bottom;height:53px;border:0;background:none;font-size:14px;font-weight:700;padding:0 2px 11px;margin-right:34px}.detail-tabs button:nth-child(1){width:73px}.detail-tabs button:nth-child(2){width:60px}.detail-tabs button:nth-child(3){width:73px}.detail-tabs button:nth-child(4){width:73px}.detail-tabs button:nth-child(5){width:50px;margin-right:0}.detail-tabs button.active{color:var(--red);border-bottom:3px solid var(--red)}
.detail-wrap .footer{margin-top:0}.detail-bottom{width:100%;max-width:1464px;height:126px;border:1px solid var(--line);border-radius:8px;margin-top:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.highlights{padding:18px 15px}.highlights h3,.schedule h3{font-size:14px;margin-bottom:14px}.highlight-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.highlight{height:54px;border:1px solid #ddd;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:13px;font-size:13px}.hi-ico{width:34px;height:34px;flex:none;display:inline-flex}.hi-ico svg{width:34px;height:34px;stroke:var(--red);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.schedule{border-left:1px solid var(--line);padding:18px 27px}.days{display:flex;text-align:center;position:relative}.days:before{content:"";position:absolute;left:10%;right:10%;top:12px;border-top:1px dotted #999}.day{position:relative;font-size:12px;width:25%;flex:0 0 25%}.day i{position:relative;z-index:2;width:23px;height:23px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 6px;font-style:normal;font-weight:800}.day b{display:block;font-size:12px;margin-bottom:2px}.day span{color:#555}
@media(max-width:1350px){.nav{gap:28px}.topbar{padding:0 30px;grid-template-columns:205px minmax(0,1fr) 360px}.brand{width:205px}.home-hero{width:calc(100% - 60px)}.hero-copy{left:150px}.home-search{left:90px;right:90px;gap:25px}.filter-box{gap:25px}}
img{max-width:100%}

/* moved from inline style attributes */
.push-right{margin-left:auto}
.orange-star-large{color:var(--orange);font-size:20px}
