*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",Arial,sans-serif;background:#080808;color:#171717}.wrap{width:min(1180px,92%);margin:auto}header{position:sticky;top:0;z-index:50;background:#070604f7;border-bottom:1px solid #55401e}.nav{height:70px;display:flex;align-items:center;justify-content:space-between}.logo{color:#fff;font-size:25px;font-weight:900;text-decoration:none;line-height:1}.logo span,.hero h1 span,.gold,.tag{color:#e9b94f}.logo small{display:block;font-size:8px;letter-spacing:2px;color:#c59b4e;margin:5px 0 0 27px}nav{display:flex;gap:22px;align-items:center}nav a{color:#eee;text-decoration:none;font-size:14px;white-space:nowrap}.navbtn{background:#e9bd68;color:#111!important;padding:10px 17px;border-radius:22px;font-weight:800}#menu{display:none;background:none;border:0;color:#fff;font-size:25px}
.hero{color:#fff;background:radial-gradient(circle at 75% 50%,#44250f,#090705 55%)}.heroGrid{min-height:550px;display:grid;grid-template-columns:42% 58%;align-items:center;gap:26px}.heroCopy{padding:55px 0}.hero h1{font-size:clamp(38px,3.8vw,56px);line-height:1.18;margin:7px 0 14px}.lead{font-size:18px;line-height:1.7;color:#eee}.hero ul{padding:0;list-style:none;line-height:2;color:#ddd}.hero li:before{content:"✓";color:#e8b85a;margin-right:9px}.heroVisual{width:100%;border-radius:18px;overflow:hidden;background:#1b1109}.heroVisual img{display:block;width:100%;height:auto;aspect-ratio:1.48/1;object-fit:cover;object-position:center}.actions{display:flex;gap:12px;margin-top:24px}.actions a{min-width:160px;text-align:center;padding:15px 22px;border-radius:30px;color:#fff;text-decoration:none;font-weight:900}.call{background:#20bb4a}.sms{background:#f03543}
.benefits{background:#0c0905;color:#fff;border-top:1px solid #72531e;border-bottom:1px solid #72531e}.benefitGrid{display:grid;grid-template-columns:repeat(5,1fr)}.benefitGrid div{padding:20px 13px;border-right:1px solid #59411d}.benefitGrid div:last-child{border:0}.benefitGrid b,.benefitGrid small{display:block}.benefitGrid b{font-size:14px}.benefitGrid small{color:#aaa;margin-top:5px;font-size:12px}
.section{padding:70px 0}.center{text-align:center}.tag{font-size:12px;font-weight:900;letter-spacing:1.5px;margin:0}.section h2{font-size:36px;margin:7px 0}.sub{color:#aaa}.dark{background:radial-gradient(circle at 50% 0,#3b2815,#090909 58%);color:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;text-align:left}.cards article{background:#111;border:1px solid #a78043;border-radius:14px;overflow:hidden}.cards img{display:block;width:100%;aspect-ratio:2.8/1;object-fit:cover;object-position:center}.body{padding:20px}.body h3{font-size:21px;margin:0 0 8px}.body p{color:#bbb;min-height:42px}.price{display:flex;justify-content:space-between;border-top:1px solid #333;padding-top:11px;margin-top:10px}.price b{color:#efc76f}.note{color:#888;font-size:12px;margin-top:20px}.reviews{background:#101010;color:#fff}.empty{max-width:700px;margin:28px auto 0;border:1px solid #333;border-radius:14px;padding:42px}.empty strong{color:#e8b85a;font-size:22px}.empty p{color:#999}.cream{background:#f7f1e7}.steps,.infos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}.steps div,.infos div{background:#fff;border:1px solid #ded2bd;border-radius:13px;padding:24px 12px}.steps i{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 13px;border:1px solid #c79c50;border-radius:50%;font-style:normal;font-weight:900}.steps b{display:block}.steps p,.infos p{font-size:13px;color:#777}.info{background:#fff}.faq{background:#0d0d0d;color:#fff}.faqWrap{max-width:900px}.faq details{background:#151515;border:1px solid #393939;border-radius:9px;margin:9px 0;padding:0 18px}.faq summary{padding:18px 0;cursor:pointer;font-weight:750}.faq details p{color:#bbb;line-height:1.7;padding:0 0 16px}.contact{padding:65px 0;color:#fff;background:radial-gradient(circle at 20% 50%,#593b20,#090909 50%)}.contactFlex{display:flex;align-items:center;justify-content:space-between;gap:25px}.contact h2{font-size:36px;margin:5px 0}.contact p{color:#bbb}.contact .actions{margin:0}footer{background:#050505;color:#888;padding:28px 0}.foot{display:flex;justify-content:space-between;align-items:center}
@media(max-width:1000px){nav{gap:12px}.heroGrid{grid-template-columns:43% 57%}.hero h1{font-size:42px}.benefitGrid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){#menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#0d0d0d;padding:20px;flex-direction:column;align-items:flex-start}nav.open{display:flex}.heroGrid{display:flex;flex-direction:column-reverse;gap:0}.heroVisual{margin-top:20px}.heroVisual img{aspect-ratio:auto;width:100%;height:auto;object-fit:contain}.heroCopy{padding:32px 0 45px}.hero h1{font-size:38px}.lead{font-size:16px}.actions a{min-width:0;flex:1;padding:14px 8px}.benefitGrid,.cards,.steps,.infos{grid-template-columns:1fr}.benefitGrid div{border-right:0;border-bottom:1px solid #302719}.cards img{aspect-ratio:2.4/1}.section{padding:52px 0}.contactFlex{display:block}.contact .actions{margin-top:22px}.foot{display:block}.foot small{display:block;margin-top:12px}}
/* ===== 확정 운영정보 반영본 ===== */
.program4{grid-template-columns:repeat(4,minmax(0,1fr));}
.program4 .body p{min-height:58px;}
.program4 .cards img,.program4 img{aspect-ratio:2.5/1;}
.programDetail{background:#f7f1e7;color:#171717;}
.programDetail .detailLead{color:#746d63;margin-top:4px;}
.detailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px;}
.detailCard{position:relative;background:#fff;border:1px solid #ded2bd;border-radius:14px;padding:28px;text-align:left;box-shadow:0 8px 25px rgba(0,0,0,.04);}
.detailCard>span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid #c89d51;color:#a77828;font-weight:900;font-size:12px;}
.detailCard h3{margin:16px 0 9px;font-size:21px;}
.detailCard p{margin:0;color:#665f56;line-height:1.75;font-size:14px;}
.detailCard.vip{border-color:#c69a4d;background:linear-gradient(135deg,#fff,#fbf3e4);}
.infos p{line-height:1.55;}
@media(max-width:1100px){
  .program4{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .program4,.detailGrid{grid-template-columns:1fr;}
  .program4 .body p{min-height:0;}
}

/* refined program imagery and descriptions */
.program4 .body h3{margin-bottom:16px}
.program4 .body>p{display:none}
.program4 img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;display:block}
.detailCard p{margin:0 0 12px;color:#665f56;line-height:1.85;font-size:14px;word-break:keep-all}
.detailCard p:last-child{margin-bottom:0}
@media(max-width:760px){.program4 img{aspect-ratio:16/9}}

/* ===== 이용안내 가독성 강화 ===== */
.info{background:#fff;padding-top:78px;padding-bottom:82px}
.info .infoLead{
  max-width:760px;
  margin:12px auto 0;
  font-size:17px;
  line-height:1.75;
  color:#686159;
  word-break:keep-all;
}
.info .infos{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:34px;
  text-align:left;
}
.info .infoCard{
  position:relative;
  min-height:255px;
  padding:30px 30px 28px 82px;
  border:1px solid #d9c9ad;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 30px rgba(62,43,20,.06);
}
.info .infoCard.region{
  border-color:#c99c4e;
  background:linear-gradient(135deg,#fff,#fffaf1);
}
.info .infoIcon{
  position:absolute;
  top:29px;
  left:28px;
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:#f5ead7;
  color:#a97422;
  font-size:19px;
  font-weight:900;
}
.info .infoCard>b{
  display:block;
  margin:0 0 9px;
  color:#28231e;
  font-size:20px;
  line-height:1.3;
}
.info .infoCard>strong{
  display:block;
  margin-bottom:13px;
  color:#a66f1f;
  font-size:24px;
  line-height:1.35;
  letter-spacing:-.3px;
}
.info .infoCard p{
  margin:0;
  color:#5f5951;
  font-size:16px;
  line-height:1.85;
  word-break:keep-all;
}
.info .infoCard p em{
  color:#342d25;
  font-style:normal;
  font-weight:800;
}
.info .inlineBold{
  display:inline;
  margin:0;
  color:#3e352c;
  font-size:16px;
  font-weight:800;
}
@media(max-width:900px){
  .info .infos{grid-template-columns:1fr}
  .info .infoCard{min-height:0}
}
@media(max-width:760px){
  .info{padding-top:58px;padding-bottom:60px}
  .info .infoLead{font-size:16px}
  .info .infoCard{padding:25px 20px 25px 70px}
  .info .infoIcon{left:20px;top:25px;width:36px;height:36px;font-size:17px}
  .info .infoCard>b{font-size:19px}
  .info .infoCard>strong{font-size:21px}
  .info .infoCard p,.info .inlineBold{font-size:15px}
}

/* ===== FAQ 가독성 개선 ===== */
.faq .sub{font-size:16px;line-height:1.7;margin-bottom:28px}
.faq details{margin:12px 0;padding:0 22px;border-radius:12px}
.faq summary{position:relative;padding:21px 38px 21px 0;font-size:18px;line-height:1.45;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"＋";position:absolute;right:2px;top:19px;color:#e8b85a;font-size:22px;font-weight:400}
.faq details[open] summary:after{content:"－"}
.faq details p{margin:0;padding:0 38px 20px 0;color:#c3c3c3;font-size:15.5px;line-height:1.85;word-break:keep-all}
@media(max-width:760px){
 .faq summary{font-size:17px;padding-top:19px;padding-bottom:19px}
 .faq details p{font-size:15px;padding-right:8px}
}

/* ===== 고객 예약 전환/운영정보 보강 ===== */
.arrivalHero{margin:18px 0 8px;padding:15px 18px;border-left:3px solid #e8b85a;background:rgba(255,255,255,.045);max-width:390px}
.arrivalHero b,.arrivalHero strong,.arrivalHero small{display:block}
.arrivalHero b{font-size:15px;color:#e8b85a;margin-bottom:3px}
.arrivalHero strong{font-size:25px;line-height:1.25;color:#fff}
.arrivalHero small{font-size:13px;color:#bbb;margin-top:6px}
.trustChips{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}
.trustChips span{padding:7px 11px;border:1px solid #6e5833;border-radius:20px;color:#e8d3aa;background:#ffffff08;font-size:12px;font-weight:800}
.priceNotice{max-width:760px;margin:28px auto 0;padding:18px 22px;border:1px solid #8f6b35;border-radius:12px;background:#15110c;text-align:center}
.priceNotice strong,.priceNotice span,.priceNotice em{display:block}
.priceNotice strong{color:#efc76f;font-size:18px}
.priceNotice span{color:#ddd;font-size:14px;margin-top:6px}
.priceNotice em{color:#e5b4a7;font-size:13px;font-style:normal;margin-top:5px}
.info .infoLead{max-width:800px;margin:12px auto 0;font-size:17px;line-height:1.75;color:#686159;word-break:keep-all}
.info .infos{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:34px;text-align:left}
.info .infoCard{position:relative;min-height:270px;padding:30px 30px 28px 82px;border:1px solid #d9c9ad;border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(62,43,20,.06)}
.info .infoCard.region{border-color:#c99c4e;background:linear-gradient(135deg,#fff,#fffaf1)}
.info .infoIcon{position:absolute;top:29px;left:28px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#f5ead7;color:#a97422;font-size:19px;font-weight:900}
.info .infoCard>b{display:block;margin:0 0 9px;color:#28231e;font-size:20px;line-height:1.3}
.info .infoCard>strong{display:block;margin-bottom:13px;color:#a66f1f;font-size:23px;line-height:1.35;letter-spacing:-.3px}
.info .infoCard p{margin:0;color:#5f5951;font-size:16px;line-height:1.8;word-break:keep-all}
.info .infoCard p em{font-style:normal;font-weight:900;color:#9b681d}
.regionException{font-weight:900;color:#45392c}
.bookingForm{margin:8px 0 13px;padding:12px 14px;border-radius:9px;background:#f7f1e7;border:1px dashed #c5a66f}
.bookingForm span{display:block;font-size:16px;line-height:1.8;font-weight:800;color:#3d352d}
@media(max-width:900px){.info .infos{grid-template-columns:1fr}.info .infoCard{min-height:0}}
@media(max-width:760px){
 .arrivalHero strong{font-size:22px}
 .priceNotice{padding:16px 13px}
 .priceNotice strong{font-size:16px}
 .info .infoLead{font-size:16px}
 .info .infoCard{padding:25px 20px 25px 70px}
 .info .infoIcon{left:20px;top:25px;width:36px;height:36px}
 .info .infoCard>b{font-size:19px}
 .info .infoCard>strong{font-size:20px}
 .info .infoCard p,.bookingForm span{font-size:15px}
}

.contactNumber{font-size:25px!important;font-weight:900;color:#efc76f!important;letter-spacing:.5px;margin:8px 0!important}

.cleanNotice{margin:18px 0 4px;padding:11px 14px;border-left:3px solid #e8b85a;background:rgba(255,255,255,.05);color:#d8d8d8;font-size:14px;line-height:1.6}
.cleanNotice strong{color:#efc76f;font-size:15px}


/* ===== 2026-10-04 모바일 최종 검수/압축 ===== */
.section h2{word-break:keep-all;overflow-wrap:normal}
.hero h1 span{display:inline-block;white-space:nowrap}
.compactHow{padding:54px 0}
.compactHow .steps{grid-template-columns:repeat(3,1fr);max-width:900px;margin:24px auto 0;gap:14px}
.compactHow .steps div{padding:20px 12px}
.compactHow .steps i{width:48px;height:48px;margin-bottom:10px}
.compactHow .steps p{margin:7px 0 0}
.info{padding-top:58px;padding-bottom:62px}
.info .infoLead{margin-top:8px}
.info .infos{margin-top:24px;gap:14px}
.info .infoCard{min-height:0;padding:22px 22px 22px 70px}
.info .infoIcon{top:22px;left:20px;width:36px;height:36px;font-size:17px}
.info .infoCard>b{font-size:17px;margin-bottom:5px}
.info .infoCard>strong{font-size:20px;margin-bottom:7px}
.info .infoCard p{font-size:14px;line-height:1.6}
@media(max-width:760px){
  .section h2{font-size:30px;line-height:1.22;letter-spacing:-1px}
  .hero h1{font-size:34px;line-height:1.2;word-break:keep-all}
  #program h2{font-size:30px;max-width:100%;margin-left:auto;margin-right:auto}
  .programDetail h2{font-size:30px}
  .programDetail .detailLead br{display:none}
  .compactHow{padding:42px 0}
  .compactHow .steps{grid-template-columns:1fr;gap:9px;margin-top:18px;text-align:left}
  .compactHow .steps div{position:relative;padding:15px 15px 15px 62px;min-height:62px}
  .compactHow .steps i{position:absolute;left:14px;top:13px;width:38px;height:38px;margin:0;font-size:12px}
  .compactHow .steps b{font-size:16px}
  .compactHow .steps p{font-size:13px;margin:3px 0 0}
  .info{padding-top:44px;padding-bottom:46px}
  .info .infoLead{font-size:14px;line-height:1.5}
  .info .infos{gap:10px;margin-top:18px}
  .info .infoCard{padding:17px 14px 17px 58px;border-radius:12px}
  .info .infoIcon{left:14px;top:17px;width:32px;height:32px;font-size:15px}
  .info .infoCard>b{font-size:16px;margin-bottom:4px}
  .info .infoCard>strong{font-size:18px;margin-bottom:5px;line-height:1.3}
  .info .infoCard p{font-size:13px;line-height:1.55}
  .faq .sub{font-size:14px;margin-bottom:20px}
  .faq details{margin:8px 0;padding:0 16px}
  .faq summary{font-size:16px;padding:16px 34px 16px 0}
  .faq summary:after{top:14px}
}
