
/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 웹폰트  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

/* @font-face {
	font-family: 'Pretendard Variable';
	font-weight: 45 920;
	font-style: normal;
	font-display: swap;
	src: local('Pretendard Variable'), url('font/PretendardVariable.woff2') format('woff2-variations');
} */

@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Thin.woff') format('woff');
    font-weight: 100;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Light.woff') format('woff');
    font-weight: 300;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Regular.woff') format('woff');
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Medium.woff') format('woff');
    font-weight: 500;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-SemiBold.woff') format('woff');
    font-weight: 600;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Bold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-display: swap;
}
@font-face {
    font-family: 'Pretendard';
    src: url('font/Pretendard-Black.woff') format('woff');
    font-weight: 900;
    font-display: swap;
}

/* -----------------------------------------------------------------------------------------------
/////////////////////////////////////////////	RESET & BASE  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { font-size:10px; font-family:'Pretendard Variable', 'Pretendard', sans-serif; color:var(--color-text); font-weight:300; }
body { min-width:320px; word-break: keep-all; overflow-x:hidden; letter-spacing:-0.1px; margin:0 auto; font-size:var(--fs-base); line-height:var(--lh-base); }
body,input,textarea,select,button,table,label
{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;-ms-text-size-adjust:none; text-size-adjust:none; font-weight:300; font-family:'Pretendard Variable', 'Pretendard', sans-serif; }
a { text-decoration:none; color:inherit; }
span, a, em, button {display:inline-block; }
img,fieldset,iframe{border:0;}
img {max-width:100%;}
ul, ol, li { list-style:none; }
em,address{font-style:normal;}
caption,legend,.blind{overflow:hidden;position:absolute;top:0;left:-9999px;width:0;height:0;font-size:0;line-height:0;text-align:left;}
button { background:none; border:none; cursor:pointer; padding:0; font:inherit; }



/* -----------------------------------------------------------------------------------------------
/////////////////////////////////////////////	common  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
:root{
   --color-gold:#C7B58D;
   --color-dk-gold:#937a42;

   /* 텍스트 색상 */
   --color-text:       #1d1d1d;
   --color-text-dk:    #333;
   --color-text-md:    #555;
   --color-text-lt:    #666;
   --color-text-muted: #999;
   --color-text-dim:   #aaa;
   --color-text-faint: #ccc;

   /* 폰트 사이즈 */
   --fs-xs:       1.2rem;
   --fs-sm:       1.4rem;
   --fs-base:     1.6rem;
   --fs-content:  1.8rem;
   --fs-lg:       2.0rem;
   --fs-card-tit: 2.4rem;
   --fs-hero-sub: 2.6rem;
   --fs-sec-tit:  3.0rem;
   --fs-page-tit: 4.0rem;
   --fs-hero-tit: 5.0rem;

   /* 줄간격 */
   --lh-tight:   1.2;
   --lh-snug:    1.4;
   --lh-base:    1.5;
   --lh-normal:  1.6;
   --lh-relaxed: 1.8;
}

.inner { max-width:1440px; margin:0 auto; padding:0 20px; }

.hidden { position:absolute; font-size:0; line-height:0; left:-10000px; padding:0 !important; margin:0; height:0;}
.f-left {float:left !important;}
.f-right {float:right !important;}
.dis-block {display:block !important;}
.dis-none {display:none !important;}
.text-c {text-align:center !important;}
.text-l {text-align:left !important;}
.text-r {text-align:right !important;}
.vt-t {vertical-align:top !important;}
.vt-m {vertical-align:middle !important;}
.vt-b {vertical-align:bottom !important;}
.bg-none {background:none !important;}
.border-none {border:none !important;}
.clearfix:after {content:"";display:block;clear:both;}

/* 폰트 */
.enText { font-family:'Marcellus', serif !important; }

/* ios */
a[x-apple-data-detectors] {
  color:inherit !important;
  text-decoration:none !important;
  font-size:inherit !important;
  font-family:inherit !important;
  font-weight:inherit !important;
  line-height:inherit !important;
  white-space:nowrap;
}

/* 버튼 */

/* 말줄임 */
.line1-text-eps { white-space:nowrap; overflow:hidden; text-overflow: ellipsis; -o-text-overflow: ellipsis; display:block; }
.line2-text-eps { display:block; line-height:1.5em; max-height:3em; display:-webkit-box; -webkit-line-clamp:2; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis;-webkit-box-orient:vertical; word-wrap:break-word; }
.line3-text-eps { display:block; line-height:1.5em; max-height:4.5em; display:-webkit-box; -webkit-line-clamp:3; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis;-webkit-box-orient:vertical; word-wrap:break-word; }
.line4-text-eps { display:block; line-height:1.5em; max-height:6em; display:-webkit-box; -webkit-line-clamp:4; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis;-webkit-box-orient:vertical; word-wrap:break-word; }

/* 리스트 */
ul.list_dot > li { padding-left:12px; line-height:1.5; position:relative; }
ul.list_dot > li:before { content:''; width:3px; height:3px; border-radius:50%; background:#555; display:block; position:absolute; left:0; top:1.2rem; }
ul.list_dot > li + li { margin-top:0.5rem; }


/* 테이블 */
table { border-collapse:collapse; }
.table { width:100%; border-collapse:collapse; min-width:600px; }
.table th,
.table td { border:1px solid #e0ddd7; padding:14px 16px; font-size:var(--fs-base); color:var(--color-text-md); line-height:var(--lh-relaxed); vertical-align:middle; }
.table thead th { background:#f5f2ec; font-size:var(--fs-content); font-weight:600; color:var(--color-text-dk); text-align:center; }
.table tbody th { text-align:center; font-weight:500; color:var(--color-text-dk); background:#faf9f6;  }


/* Display 설정 */
.w_only{display:block;}
.m_only{display:none;}


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
   :root {
      --fs-hero-tit: 4.0rem;
      --fs-hero-sub: 2.2rem;
      --fs-page-tit: 3.6rem;
      --fs-card-tit: 2.2rem;
      --fs-lg:       1.9rem;
      --fs-content:  1.7rem;
      --fs-sm:       1.5rem;
   }
   *:focus {border:none;}
   /* html { font-size:9.5px; } */
}

@media (max-width: 1024px) {
   :root {
      --fs-hero-tit: 3.4rem;
      --fs-hero-sub: 1.8rem;
      --fs-sec-tit:  2.6rem;
      --fs-page-tit: 3.0rem;
      --fs-card-tit: 2.0rem;
      --fs-lg:       1.8rem;
      --fs-content:  1.6rem;
   }
}

@media (max-width: 767px) {
   :root {
      --fs-hero-tit: 2.6rem;
      --fs-hero-sub: 1.6rem;
      --fs-page-tit: 2.4rem;
      --fs-sec-tit:  2.2rem;
      --fs-card-tit: 1.8rem;
      --fs-lg:       1.6rem;
      --fs-content:  1.5rem;
      --fs-sm:       1.4rem;
   }
   /* html { font-size:9px; } */

   /* 테이블 */
  .table th,
  .table td { padding:10px 12px; }

  
}

@media (max-width: 480px) {
   :root {
      --fs-hero-tit: 2.2rem;
      --fs-hero-sub: 1.4rem;
      --fs-page-tit: 2.0rem;
   }
   /* 리스트 */
   ul.list_dot > li { padding-left:10px; }
   ul.list_dot > li:before { top:1.0rem; }

   /* 테이블 */
  .table th,
  .table td { padding:8px 10px; }

  /* Display 설정 */
  .w_only{display:none;}
  .m_only{display:block;}
}


/* -----------------------------------------------------------------------------------------------
/////////////////////////////////////////////	FULL MENU //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
#fullMenu { position:fixed; top:0; left:0; width:100%; height:100%; z-index:900; background:rgba(255,255,255,0.95); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); padding-top:120px; opacity:0; visibility:hidden; transition:opacity 0.45s ease, visibility 0.45s ease; overflow-y:auto; }
#fullMenu.isOpen { opacity:1; visibility:visible; }

#fullMenu .menuBody { padding:50px 0 80px; }
#fullMenu .menuBody .inner { max-width:1400px; }
#fullMenu .menuBody .gnb { display:flex; flex-direction:column; gap:52px; }
#fullMenu .menuBody .gnb .menuLine { display:flex; align-items:flex-start; opacity:0; transform:translateY(18px); transition:opacity 0.4s ease, transform 0.4s ease; }
#fullMenu .menuBody .gnb .menuLine .depth1 { font-family:'Marcellus', serif; font-size:2.8rem; color:#111; line-height:1.4; min-width:280px; flex-shrink:0; font-weight:normal; padding-top:2px; }
#fullMenu .menuBody .gnb .menuLine .depth2.row { display:flex; gap:10px 40px; align-items:center; flex-wrap:wrap; padding-top:2px; }
#fullMenu .menuBody .gnb .menuLine .depth2.row li a { font-family:'Pretendard Variable', 'Pretendard', sans-serif; font-size:1.8rem; color:#333; line-height:1.4; white-space:nowrap; transition:color 0.2s; }
#fullMenu .menuBody .gnb .menuLine .depth2.row li a:hover { color:#0e0e0e; }
#fullMenu .menuBody .gnb .menuLine .depth2.cols { display:flex; gap:60px; align-items:flex-start; }
#fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth h3 { font-family:'Pretendard Variable', 'Pretendard', sans-serif; font-size:1.8rem; color:#333; font-weight:normal; margin-bottom:12px; }
#fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth li a { font-family:'Pretendard Variable', 'Pretendard', sans-serif; font-size:1.6rem; color:#787878; line-height:1.8; white-space:nowrap; transition:color 0.2s; }
#fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth li a:hover { color:#333; }

#fullMenu.isOpen .menuBody .gnb .menuLine { opacity:1; transform:translateY(0); }
#fullMenu.isOpen .menuBody .gnb .menuLine:nth-child(1) { transition-delay:0.08s; }
#fullMenu.isOpen .menuBody .gnb .menuLine:nth-child(2) { transition-delay:0.16s; }
#fullMenu.isOpen .menuBody .gnb .menuLine:nth-child(3) { transition-delay:0.24s; }
#fullMenu.isOpen .menuBody .gnb .menuLine:nth-child(4) { transition-delay:0.32s; }
#fullMenu.isOpen .menuBody .gnb .menuLine:nth-child(5) { transition-delay:0.40s; }
#fullMenu.isOpen .menuBody .gnb .menuLine:nth-child(6) { transition-delay:0.48s; }

/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  #fullMenu .menuBody .gnb .menuLine { flex-wrap:wrap; gap:32px; }
  #fullMenu .menuBody .gnb .menuLine .depth1 { font-size:26px; width:100%;  min-width:100%;  }
}

@media (max-width: 1024px) {
  #fullMenu .menuBody { padding:30px 0 60px; }
  #fullMenu .menuBody .gnb { gap:0; }
  #fullMenu .menuBody .gnb .menuLine { flex-direction:column; gap:0; border-bottom:1px solid #e8e8e8; }
  #fullMenu .menuBody .gnb .menuLine .depth1 {width:100%; padding:18px 10px; font-size:2.2rem; display:flex; align-items:center; justify-content:space-between; }
  #fullMenu .menuBody .gnb .menuLine .depth1 a { flex:1; }
  #fullMenu .menuBody .gnb .menuLine.hasDepth2 .depth1 .toggleArrow { background:none; border:none; padding:8px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
  #fullMenu .menuBody .gnb .menuLine.hasDepth2 .depth1 .toggleArrow::after { content:''; display:inline-block; width:10px; height:10px; border-right:2px solid #aaa; border-bottom:2px solid #aaa; transform:rotate(45deg); transition:transform 0.3s ease, border-color 0.3s ease; margin-bottom:4px; }
  #fullMenu .menuBody .gnb .menuLine.hasDepth2.isExpanded .depth1 { color:var(--color-dk-gold); background:rgba(199,181,141,0.1); }
  #fullMenu .menuBody .gnb .menuLine.hasDepth2.isExpanded .depth1 .toggleArrow::after { border-color:var(--color-dk-gold); transform:rotate(-135deg); margin-bottom:-4px; }
  /* depth2 기본 숨김 */
  #fullMenu .menuBody .gnb .menuLine .depth2.row,
  #fullMenu .menuBody .gnb .menuLine .depth2.cols { display:none; width:100%; padding:0 10px 10px; }

  /* depth2 row 항목 스타일 (BRAND·EXPERIENCE·SPECIAL OFFERS) */
  #fullMenu .menuBody .gnb .menuLine .depth2.row li {  width:100%}
  #fullMenu .menuBody .gnb .menuLine .depth2.row li:last-child { border-bottom:none; }
  #fullMenu .menuBody .gnb .menuLine .depth2.row li a { display:block; padding:14px 0; font-size:1.6rem; white-space:normal; }

  /* depth2 cols 항목 스타일 (ROOMS) */
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth {  }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth:last-child { border-bottom:none; }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth h3 {
    padding:14px 0; margin-bottom:0; font-size:1.5rem; font-weight:600; color:#333; display:flex; align-items:center; justify-content:space-between;
  }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth h3 a { flex:1; }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth.hasChildren h3 .toggleArrow { background:none; border:none; padding:8px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth.hasChildren h3 .toggleArrow::after { content:''; display:inline-block; width:8px; height:8px; border-right:2px solid #aaa; border-bottom:2px solid #aaa; transform:rotate(45deg); transition:transform 0.3s ease, border-color 0.3s ease; margin-bottom:3px; }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth.hasChildren.isExpanded h3 .toggleArrow::after { transform:rotate(-135deg); margin-bottom:-3px; }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth > ul { display:none; padding:4px 0 8px; }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth > ul li a { display:block; padding:10px 0 10px 12px; font-size:1.4rem; white-space:normal; border-bottom:1px solid #f8f8f8;  }
  #fullMenu .menuBody .gnb .menuLine .depth2.cols .subDepth > ul li:last-child a { border-bottom:none; }

}

@media (max-width: 767px) {	
   #fullMenu .menuBody .gnb .menuLine .depth1 { font-size:2rem;}
}
   

/* -----------------------------------------------------------------------------------------------
/////////////////////////////////////////////	HEADER  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
#header { position:fixed; top:0; left:0; width:100%; height:120px; z-index:1000; transition:background 0.4s ease, backdrop-filter 0.4s ease, box-shadow 0.4s ease; }
#header .inner { display:flex; align-items:center; justify-content:space-between; height:100%; max-width:1400px; }
#header .menuBtn { width:30px; display:flex; align-items:center; outline:none; border:none; }
#header .menuBtn .hamIco { display:flex; flex-direction:column; gap:6px; }
#header .menuBtn .hamIco span { display:block; width:25px; height:2px; background:#fff; border-radius:1px; transition:background 0.3s; }
#header.scrolled .menuBtn .hamIco span { background:#1d1d1d; }
#header .menuBtn .closeIco { display:none; position:relative; width:24px; height:24px; flex-shrink:0; }
#header .menuBtn .closeIco::before,
#header .menuBtn .closeIco::after { content:''; position:absolute; top:50%; left:0; width:100%; height:2px; background:#1d1d1d; border-radius:1px; transform-origin:center; }
#header .menuBtn .closeIco::before { transform:translateY(-50%) rotate(45deg); }
#header .menuBtn .closeIco::after { transform:translateY(-50%) rotate(-45deg); }
#header .logo { position:absolute; left:50%; transform:translateX(-50%); }
#header .logo a { display:block; line-height:0; }
#header .logo img { height:80px; width:auto; transition:opacity 0.3s; }
#header .logo .logoDark { display:none; }
#header .utilNav { display:flex; align-items:center; justify-content:flex-end; gap:40px; }
#header .utilNav a { font-family:'Marcellus', serif; font-size:1.6rem; color:#fff; white-space:nowrap; transition:opacity 0.2s; }
#header .utilNav .bookBtn { font-family:'Marcellus', serif; font-size:1.6rem; color:#fff; background:var(--color-gold); padding:15px 50px; display:inline-block; position:relative; overflow:hidden; transition:transform 0.3s ease; text-align:center; }
#header .utilNav .bookBtn::before { content:''; position:absolute; top:0; left:-110%; width:80%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,0.28), transparent); transform:skewX(-15deg); transition:left 0.55s ease; }
#header .utilNav .bookBtn:hover::before { left:130%; }

/* scrolled */
#header.scrolled { background:rgba(255,255,255,0.82); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:0 1px 0 rgba(0,0,0,0.08); }
#header.scrolled .logo .logoWhite { display:none; }
#header.scrolled .logo .logoDark { display:block; }
#header.scrolled .utilNav a { color:#999; }
#header.scrolled .utilNav .bookBtn { color:#fff; }

/* menuOpen : #fullMenu 열릴 때 #header 상태 */
#header.menuOpen {  }
#header.menuOpen .menuBtn .hamIco { display:none; }
#header.menuOpen .menuBtn .closeIco { display:block; }
#header.menuOpen .logo .logoWhite { display:none; }
#header.menuOpen .logo .logoDark { display:block; }
#header.menuOpen .utilNav a { color:#999; }
#header.menuOpen .utilNav .bookBtn { color:#fff; }

/* ================================== 반응형 ================================== */
@media (max-width: 1024px) {
  #header { height:80px; }
  #fullMenu { padding-top:80px; }
  #header .menuBtn { width:auto; min-width:44px; }
  #header .logo img { height:60px; }
  #header .utilNav a:not(.bookBtn) { display:none; }
  #header .utilNav { gap:0; }
  #header .utilNav .bookBtn { padding:12px 28px; font-size:1.4rem; }
}

@media (max-width: 767px) {
  #header { height:60px; }
  #fullMenu { padding-top:60px; }
  #header .logo img { height:36px; }
  /* #header .utilNav { display:none; } */
  /* #header.menuOpen .utilNav { display:none; } */
  #header .utilNav .bookBtn { padding:10px; font-size:1.2rem; margin-right:-10px;}
}

@media (max-width: 480px) {
   #header .utilNav .bookBtn span { display:none; }
}


/* -----------------------------------------------------------------------------------------------
/////////////////////////////////////////////	FOOTER  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.footer { background: #1a1a1a; padding: 60px 0; }
.footer .inner .footerWrap { display: flex; justify-content: space-between; align-items: flex-start; gap: 60px; }
.footer .inner .footerInfo { flex: 1; display: flex; flex-direction: column; gap:30px;}
.footer .inner .footerInfo .footerMenu { display: flex; flex-wrap: wrap; gap:12px 20px;  }
.footer .inner .footerInfo .footerMenu li a { font-size: 1.4rem; color: #fff; }
.footer .inner .footerInfo .infoTxtWrap .infoTxt { font-size: 1.4rem; color: #ccc; line-height: 1.6; margin-top:10px; display:flex; gap:5px 12px; flex-wrap:wrap; max-width:700px; }
.footer .inner .footerInfo .infoTxtWrap .copy { font-size: 1.2rem; color: #999; margin-top:10px;}
.footer .inner .footerInfo .snsIcons { display: flex; gap: 16px; }
.footer .inner .footerInfo .snsIcons a { display: flex; align-items: center; justify-content: center; width: 35px; height: 35px; opacity: 0.75; transition: opacity 0.3s; }
.footer .inner .footerInfo .snsIcons a:hover { opacity: 1; }
.footer .inner .footerInfo .snsIcons a img { width: 100%; height: 100%; }
.footer .inner .footerLogo { flex-shrink:0; width:186px;}
.footer .inner .footerLogo img {  width:100%;height: auto; }

/* ================================== 반응형 ================================== */
@media (max-width: 1024px) {
    .footer .inner .footerWrap { gap: 40px; }
    .footer .inner .footerLogo { width: 150px; }
}
@media (max-width: 767px) {
    .footer { padding: 40px 0; }
    .footer .inner .footerWrap { flex-direction: column; gap: 30px; }
    .footer .inner .footerLogo { order: -1; width: 120px; }
    .footer .inner .footerInfo .footerMenu { gap: 3px 16px; }
    .footer .inner .footerInfo .footerMenu li a { font-size: 1.3rem; }
    .footer .inner .footerInfo .infoTxtWrap .infoTxt { font-size: 1.3rem; gap: 4px 10px; }
    .footer .inner .footerInfo .infoTxtWrap .copy { font-size: 1.1rem; }
    .footer .inner .footerInfo .snsIcons a { width: 30px; height: 30px; }
}




/* ============================================================
   SCROLL TOP
============================================================ */
.scroll-top { position:fixed; right:30px; bottom:40px; width:48px; height:48px; background:transparent; border:1px solid #c9a84c; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; opacity:0; visibility:hidden; transform:translateY(20px); transition:opacity 0.35s ease, visibility 0.35s ease, transform 0.35s ease, background 0.25s ease; z-index:999; }
.scroll-top.is-visible { opacity:1; visibility:visible; transform:translateY(0); }
.scroll-top:hover { background:#c9a84c; }
.scroll-top > span { display:block; width:11px; height:11px; border-top:2px solid #c9a84c; border-right:2px solid #c9a84c; transform:rotate(-45deg); margin-top:3px; transition:border-color 0.25s ease; font-size:0; line-height:0; color:transparent; }
.scroll-top:hover > span { border-color:#fff; }

@media (max-width: 767px) {
  .scroll-top { right:16px; bottom:24px; width:42px; height:42px; }
}


/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 공통  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.section .sec_tit { font-family:'Gowun Dodum', sans-serif; font-size:5rem; line-height:1.4; font-weight:400; color:#1d1d1d; margin-bottom:40px; word-break:keep-all;}
 
/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .section .sec_tit { font-size:4.2rem; }
}

@media (max-width: 1023px) { 
  .section .sec_tit { font-size:3.6rem; }
}

@media (max-width: 767px) {	
  .section .sec_tit { font-size:2.2rem; margin-bottom:26px; }
}
   

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// VISUAL  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.mainVisualWrap { width:100%; position:relative; z-index:1; }
.mainVisualWrap .mainVisual { width:100%; text-align:center; position:relative; overflow:hidden;  height:100vh; }	
.mainVisualWrap .mainVisual .visualItem { position:relative; width:100%; height:100vh; overflow:hidden; }
.mainVisualWrap .mainVisual .visualBg {width:100%; position:relative; height:100vh; transform:scale(1.1); }

.mainVisualWrap .mainVisual .visualText {  position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:100%; padding:0 20px 20px 0; z-index:10; }
.mainVisualWrap .mainVisual .visualText .text_1 { font-family:'Gowun Dodum', sans-serif; font-size:6rem; line-height:1.4; margin-bottom:2rem; opacity:0; color:#fff;}
.mainVisualWrap .mainVisual .visualText .text_2 { font-family:'Pretendard Variable', 'Pretendard', sans-serif; font-size:2rem; line-height:1.8; opacity:0; color:#fff; }

.mainVisualWrap .mainVisual .visualBg .visualImg { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:100%; height:100%; 
	background-size:cover !important; background-position:center !important;  }
.visualItem.slick-slide.slick-current.slick-active .visualBg{  /*animation:visualBg 2.0s forwards; animation-delay:0.4s; */ }
.visualItem.slick-slide.slick-current.slick-active .text_1 {  animation:enterText 0.8s forwards; animation-delay:0.8s; }
.visualItem.slick-slide.slick-current.slick-active .text_2 { animation:enterText 1.0s forwards; animation-delay:1.0s; }

.mainVisualWrap .arrowSlider { position:absolute; top:50%; left:0; right:0; transform:translateY(-50%); z-index:5; display:flex; justify-content:space-between; pointer-events:none; }
.mainVisualWrap .arrowSlider .arrows.prev, 
.mainVisualWrap .arrowSlider .arrows.next  { pointer-events:all; font-family:'Marcellus', serif; font-size:1.6rem; color:rgba(255,255,255,0.75); width:150px; padding:5px 10px;
    border-top:1px solid rgba(255,255,255,0.45); transition:color 0.3s; line-height:1; }
.mainVisualWrap .arrowSlider .arrows.prev { text-align:right; }
.mainVisualWrap .arrowSlider .arrows.next { text-align:left; }
.mainVisualWrap .arrowSlider .arrows.prev:hover, .mainVisualWrap .arrowSlider .arrows.next:hover { color:#fff; }

.mainVisualWrap .slideDots { position:absolute; bottom:224px; left:50%; transform:translateX(-50%); z-index:5; }
.mainVisualWrap .slideDots .slick-dots { display:flex; gap:20px; align-items:center; list-style:none; margin:0; padding:0; }
.mainVisualWrap .slideDots .slick-dots li button { display:block; width:8px; height:8px; background:rgba(255,255,255,0.4); border-radius:0; font-size:0; padding:0; transition:background 0.35s; cursor:pointer; }
.mainVisualWrap .slideDots .slick-dots li.slick-active button { background:#fff; }

.mainVisualWrap .scrollBtn { position:absolute; bottom:83px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:6px; z-index:5; color:#fff; cursor:pointer; }
.mainVisualWrap .scrollBtn span { font-family:'Marcellus', serif; font-size:1.6rem; line-height:1.4; }
.mainVisualWrap .scrollBtn .arrows { display:flex; flex-direction:column; align-items:center; gap:4px; }
.mainVisualWrap .scrollBtn .arrows .arrow { display:block; width:12px; height:8px; position:relative; }
.mainVisualWrap .scrollBtn .arrows .arrow:first-child { animation:scrollBounce 1.5s ease-in-out infinite; }
.mainVisualWrap .scrollBtn .arrows .arrow:last-child  { animation:scrollBounce 1.5s ease-in-out 0.2s infinite; } 


@keyframes visualBg {
	0%{
  	opacity:1;
	transform:scale(1.1);
    }
    100%{
  	  opacity:1;
      transform:scale(1.0);
    }
}

@keyframes enterText {
	0%{
  	opacity:0;
	transform: translateY(80px);
    }
    100%{
  	  opacity:1;
      transform: translateY(0);
    }
}

@keyframes scrollBounce {
  0%, 100% { opacity:0.4; transform:translateY(-2px); }
  50%       { opacity:1;   transform:translateY(2px); }
}

/* ========================================== 반응형 ========================================== */
@media (max-width: 1279px) {
  .mainVisualWrap .mainVisual .visualText .text_1 { font-size:4.8rem; }
  .mainVisualWrap .mainVisual .visualText .text_2 { font-size:1.8rem; }
}

@media (max-width: 1024px) {
  .mainVisualWrap .mainVisual .visualText .text_1 { font-size:3.6rem; }
  .mainVisualWrap .mainVisual .visualText .text_2 { font-size:1.6rem; }
  .mainVisualWrap .arrowSlider .arrows.prev,
  .mainVisualWrap .arrowSlider .arrows.next { width:100px; }
  .mainVisualWrap .slideDots { bottom:150px; }
  .mainVisualWrap .scrollBtn { bottom:56px; }
}
@media (max-width: 767px) {
  .mainVisualWrap .mainVisual,
  .mainVisualWrap .mainVisual .visualItem,
  .mainVisualWrap .mainVisual .visualBg {height:80vh; min-height:600px; }

  .mainVisualWrap .mainVisual .visualText { padding:0 24px; top:45%;}
  .mainVisualWrap .mainVisual .visualText .text_1 { font-size:2.6rem; margin-bottom:1.6rem; }
  .mainVisualWrap .mainVisual .visualText .text_2 { font-size:1.4rem; line-height:1.7; }
  .mainVisualWrap .arrowSlider { display:none; }
  .mainVisualWrap .slideDots { bottom:108px; }
  .mainVisualWrap .scrollBtn { bottom:32px; }
  .mainVisualWrap .scrollBtn span { font-size:1.3rem; }
}

@media (max-width: 480px) {
  .mainVisualWrap .mainVisual,
  .mainVisualWrap .mainVisual .visualItem,
  .mainVisualWrap .mainVisual .visualBg { height:clamp(400px, 80vh, 600px);  min-height:initial; }
  .mainVisualWrap .mainVisual .visualText .text_1 ,
  .mainVisualWrap .mainVisual .visualText .text_2  { word-break:keep-all; }
  .mainVisualWrap .slideDots { bottom:110px; }
  .mainVisualWrap .scrollBtn { bottom:25px; }
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// sec02  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.sec02 { position:relative; overflow:hidden; background:url('../images/main/section2_bg.jpg') no-repeat top center; background-size:100% 70%; padding-top:150px; }
.sec02 .titleArea { position:relative; z-index:1; width:100%; display:flex; justify-content:space-between; margin-bottom:100px; gap:30px; }
.sec02 .sec_tit {  color:#fff;  }
.sec02 .sec_desc { font-family:'Pretendard Variable', 'Pretendard', sans-serif; font-size:1.8rem; font-weight:300; line-height:1.8; color:#fff; word-break:keep-all; }
.sec02 .viewMoreCircle { width:20rem; height:20rem; border-radius:50%; border:1px solid rgba(255,255,255,0.4); display:flex; flex-direction:column; align-items:center; 
  justify-content:center; gap:1rem; color:#fff; overflow:hidden; flex-shrink:0; transition:all 0.4s ease; }
.sec02 .viewMoreCircle span { font-family:'Marcellus', serif; font-size:1.8rem; position:relative; z-index:1; transition:letter-spacing 0.4s ease; }
.sec02 .viewMoreCircle img { width:3.4rem; height:auto; position:relative; z-index:1; transition:transform 0.4s ease; }
.sec02 .viewMoreCircle:hover { border:1px solid rgba(255,255,255,1); }
.sec02 .viewMoreCircle:hover img { transform:translateX(0.7rem); } 

.sec02 .imgArea { margin-left:13.54%; height:844px; overflow:hidden; z-index:10; }
.sec02 .imgArea img { width:100%; height:100%; object-fit:cover; }

/* ========================================== 반응형 ========================================== */
@media (max-width: 1279px) {
  .sec02 { padding-top:120px; }
  .sec02 .imgArea { height:auto; aspect-ratio:16/9; margin-left:0; padding:0 20px; }
  .sec02 .titleArea { margin-bottom:80px; }
}

@media (max-width: 1024px) {
  .sec02 { padding:100px 0; background-size:cover;}
  .sec02 .titleArea { margin-bottom:60px; gap:30px; width:100%; flex-direction:column; align-items:flex-start; }
  .sec02 .sec_desc { font-size:1.6rem; }
  .sec02 .viewMoreCircle { width:auto; height:auto; padding:0; border:0; flex-direction:row; display: inline-flex; align-items: center; gap: 10px;  border-radius:0;}
  .sec02 .viewMoreCircle:hover { border:0; }
  .sec02 .viewMoreCircle span {font-size: 1.6rem; }
}

@media (max-width: 767px) {
  .sec02 { padding:80px 0; padding-bottom:80px;  }
  .sec02 .titleArea { margin-bottom:40px; gap:20px; align-items:flex-start; }
  .sec02 .sec_desc { font-size:1.5rem; }
}

@media (max-width: 480px) {
  .sec02 { padding:60px 0;}
  .sec02 .titleArea { margin-bottom:30px; flex-direction:column;  }
  .sec02 .sec_desc { font-size:1.4rem; }
  .sec02 .imgArea { aspect-ratio:1/1; }  
}



/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// sec03  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.sec03 { position:relative; display:flex; align-items:center; padding:280px 0 280px 100px; background:url('../images/main/sec3_bg.png') no-repeat right bottom; background-size:contain; overflow:hidden;  }
.sec03 .photoArea { width:50%; min-width:0; height:700px; overflow:hidden; position:relative; z-index:1; }
.sec03 .photoArea img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 0.8s ease; }
.sec03 .photoArea:hover img { transform:scale(1.03); }
.sec03 .textArea {width:50%; min-width:0; padding:0 min(8%, 150px); position:relative; z-index:1; display:flex; flex-direction:column; gap:37px; }
.sec03 .sec_tit {  margin-bottom:0; }
.sec03 .sec_desc { font-family:'Pretendard Variable', 'Pretendard', sans-serif; font-size:1.6rem; font-weight:300; line-height:1.8; color:#555;  }
.sec03 .textArea .viewMoreLink { display:inline-flex; align-items:center; gap:10px; font-family:'Marcellus', serif; font-size:1.6rem; color:var(--color-gold); position:relative; padding-bottom:3px; }
.sec03 .textArea .viewMoreLink img { width:34px; height:auto; transition:transform 0.35s ease; }
.sec03 .textArea .viewMoreLink:hover img { transform:translateX(7px); }

/* ========================================== 반응형 ========================================== */
@media (max-width: 1279px) {
  .sec03 { padding:100px 20px; overflow:hidden; min-height:initial; }
  .sec03 .photoArea { height:auto; aspect-ratio:16/9; }
}

@media (max-width: 1024px) {
  .sec03 { flex-direction:column; padding:80px 20px; min-height:auto; align-items:stretch; gap:60px;}
  .sec03 .photoArea { width:100%; order:2;}
  .sec03 .textArea { width:100%; padding:0; order:1;}
}

@media (max-width: 767px) {
  .sec03 { padding:60px 20px; }
  .sec03 .textArea { padding:36px 0; gap:24px; }
  .sec03 .sec_desc { font-size:1.5rem; }
}

@media (max-width: 480px) {
  .sec03 { padding: 60px  20px; gap:30px; }
  .sec03 .textArea { padding:0; }
  .sec03 .photoArea { height:auto; aspect-ratio:1/1; }
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// sec04  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.sec04 { position:relative; padding:150px 0; background:linear-gradient(90deg, rgba(199,181,141,0.2), rgba(199,181,141,0.2)), #fff; }
.sec04 .sec_tit { font-family:'Marcellus'; }
.sec04 .careSliderWrap { position:relative;  }
.sec04 .cardSlider { margin:0 -20px; }
.sec04 .cardSlider .slick-track { display:flex; }
.sec04 .cardSlider .slick-slide { padding:0 20px; height:auto; }
.sec04 .cardSlider .card a { display:flex !important; flex-direction:column; gap:40px; cursor:pointer; height:100%; }
.sec04 .cardSlider .card .cardThumb { overflow:hidden; background:#f5f5f5; flex-shrink:0; aspect-ratio:440/400; position: relative; }
.sec04 .cardSlider .card .cardThumb img { width:100%; height:100%; object-fit:cover; object-position: center center; transition:transform 0.6s ease; }
.sec04 .cardSlider .card:hover .cardThumb img { transform:scale(1.04); }
.sec04 .cardSlider .card .cardInfo { display:flex; flex-direction:column; gap:15px; }
.sec04 .cardSlider .card .cardInfo .cardTitle { font-size:2.4rem; font-weight:500; color:#333; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.sec04 .cardSlider .card .cardInfo .cardDesc { font-size:1.6rem; color:#555; line-height:1.6; display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 2;  height: calc(16px * 1.6 * 2);  overflow: hidden !important;}
.sec04 .cardSlider .card .cardInfo .cardDate { font-size:1.6rem; color:#aaa; }

.sec04 .slidePrev,
.sec04 .slideNext { position:absolute; top:200px; transform:translateY(-50%); width:70px; height:70px; z-index:10; transition:opacity 0.3s;
  background:var(--color-gold); display:flex; align-items:center; justify-content:center; border-radius:50%; }
.sec04 .slidePrev { left:-130px; }
.sec04 .slideNext { right:-130px; }
.sec04 .slidePrev img, .sec04 .slideNext img { width:min(40%, 26px); }
.sec04 .slidePrev.slick-disabled, .sec04 .slideNext.slick-disabled { opacity:0.3; cursor:default; }

@media (max-width:1660px) {
  .sec04 .slidePrev { left:-20px; }
  .sec04 .slideNext { right:-20px; }
}

/* ========================================== 반응형 ========================================== */
@media (max-width:1279px) {
  .sec04 { padding:100px 0; }
  .sec04 .cardSlider { margin:0 -10px; }
  .sec04 .cardSlider .slick-slide { padding:0 10px; }
  .sec04 .slidePrev { top:30%; }
  .sec04 .slideNext { top:30%; }
}

@media (max-width:1023px) {
  .sec04 { padding:80px 0; }
  .sec04 .cardSlider { margin:0 -10px; }
  .sec04 .cardSlider .slick-slide { padding:0 10px; }
}

@media (max-width:767px) {
  .sec04 { padding:60px 0; }
  .sec04 .cardSlider .card { gap:30px;}
  .sec04 .cardSlider .card .cardInfo .cardTitle { font-size:1.8rem; }
  .sec04 .cardSlider .card .cardInfo .cardDesc { font-size:1.4rem; line-height:1.4; height: calc(14px * 1.4 * 2);}
  .sec04 .cardSlider .card .cardInfo .cardDate { font-size:1.4rem; }
  .sec04 .slidePrev, .sec04 .slideNext { width:40px; height:40px; }
}

@media (max-width:480px) {
  .sec04 { padding:60px 0; }
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// sec05  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.sec05 { position:relative;display:flex; align-items:center; justify-content:center; overflow:hidden; padding:100px 0; 
  background:url('../images/main/cta_bg.jpg') no-repeat center center/cover; }
.sec05 .inner { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:37px; padding:25px 20px; }
.sec05 .sec_tit { font-size:4.8rem; color:#fff; line-height:1.8; text-align:center; margin-bottom:0; }

/* CTA 버튼 hover 애니메이션: shine sweep + lift */
.sec05 .inner .ctaBtn { font-family:'Marcellus', serif; font-size:1.6rem; color:#fff; background:var(--color-gold); padding:15px 50px; display:inline-block; position:relative; overflow:hidden; transition:transform 0.3s ease; }
.sec05 .inner .ctaBtn::before { content:''; position:absolute; top:0; left:-110%; width:80%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,0.28), transparent); transform:skewX(-15deg); transition:left 0.55s ease; }
.sec05 .inner .ctaBtn:hover::before { left:130%; }

/* ========================================== 반응형 ========================================== */
@media (max-width: 1279px) {
  .sec05 { padding:80px 0; }
  .sec05 .sec_tit { font-size:4rem; }
}

@media (max-width: 1024px) {
  .sec05 { padding:70px 0; }
  .sec05 .inner { gap:28px; }
  .sec05 .sec_tit { font-size:3.4rem; }
}

/* ========================================== 반응형 ========================================== */
@media (max-width: 767px) {
  .sec05 { padding:60px 0; }
  .sec05 .inner { gap:24px; }
  .sec05 .sec_tit { font-size:2.2rem; line-height:1.6; word-break:keep-all; }
  .sec05 .inner .ctaBtn { padding:12px 36px; }
}

/* ========================================== 반응형 ========================================== */
@media (max-width: 480px) {
  .sec05 { padding:60px 0; }
  .sec05 .sec_tit { font-size:2rem; }
}


@charset "utf-8";

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 서브페이지 비주얼  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.sub_visual { position:relative; width:100%; height:570px; overflow:hidden; background-repeat:no-repeat; background-position:center center; background-size:cover; }
.sub_visual::before { content:''; position:absolute; inset:0; background-image:linear-gradient(180deg, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0) 39.904%), linear-gradient(90deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.3) 100%); z-index:1; }
.sub_visual .inner { height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2rem; text-align:center; position:relative; z-index:2; }
.sub_visual .inner h2 { font-family:'Marcellus', serif; font-size:var(--fs-hero-tit); font-weight:400; color:#fff; line-height:var(--lh-snug); }
.sub_visual .inner p { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-hero-sub); color:#fff; line-height:var(--lh-snug); }

/* ---- 서브비주얼이미지 ---- */
.sub_visual.sub01 { background-image:url('../images/sub/sub_visual_01.jpg'); }
.sub_visual.sub02 { background-image:url('../images/sub/sub_visual_02.jpg'); }
.sub_visual.sub03 { background-image:url('../images/sub/sub_visual_03.jpg'); }
.sub_visual.sub04 { background-image:url('../images/sub/sub_visual_04.jpg'); }
.sub_visual.sub05 { background-image:url('../images/sub/sub_visual_05.jpg'); }
.sub_visual.sub06 { background-image:url('../images/sub/sub_visual_06.jpg'); }
.sub_visual.sub07 { background-image:url('../images/sub/sub_visual_07.jpg'); }
.sub_visual.sub08 { background-image:url('../images/sub/sub_visual_08.jpg'); }
.sub_visual.sub09 { background-image:url('../images/sub/sub_visual_09.jpg'); }

/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .sub_visual { height:420px; }
}

@media (max-width: 1024px) {
  .sub_visual { height:360px; }
}

@media (max-width: 767px) {
  .sub_visual { height:280px; }
}

@media (max-width: 480px) {
  .sub_visual { height:240px; }
  .sub_visual .inner { gap:10px; }
  .sub_visual .inner h2 { margin-top:60px; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 게시판 2차 메뉴 탭 /////////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.tab_2depth_wrap { width:100%; margin-bottom:100px; }
.tab_2depth_wrap  ul { display:flex; gap:10px; }
.tab_2depth_wrap .tab_2depth a { display:block;  }
.tab_2depth_wrap .tab_2depth { flex:1 0 0; height:60px; display:flex; align-items:center; justify-content:center; font-family:'Pretendard', sans-serif; font-weight:500; font-size:20px; line-height:1.4; text-align:center; white-space:nowrap; text-decoration:none; color:#555; background-color:#fff; border:1px solid #222; transition:background-color 0.2s, color 0.2s, border-color 0.2s; }
.tab_2depth_wrap .tab_2depth.active,
.tab_2depth_wrap .tab_2depth:hover { background-color:#555; color:#fff; border-color:#555; }

/* ================================== 반응형 ================================== */
@media (max-width: 767px) {
  .tab_2depth_wrap {  margin-bottom:8cqh; }
  .tab_2depth_wrap .tab_2depth { font-size:16px; height:50px; white-space:normal; padding:0 10px;  }
}

@media (max-width: 480px) {
  .tab_2depth_wrap {  margin-bottom:50px; }
  .tab_2depth_wrap .inner ul{ gap:6px; }
  .tab_2depth_wrap .tab_2depth { font-size:13px; height:44px; }
}









@charset "utf-8";

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 컨텐츠 공통  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
.subcontent { padding:150px 0; }
.board_wrap { padding:150px 20px; }
.subcontent .section:not(:first-child) { margin-top:100px; }


/* ================================== 반응형 ================================== */
@media (max-width: 1024px) {
  .subcontent { padding:100px 0; }
  .board_wrap { padding:100px 20px; }
  .subcontent .section:not(:first-child) { margin-top:80px; }
}

@media (max-width: 480px) {
  .subcontent { padding:60px 0; }
  .board_wrap { padding:60px 20px; }
  .subcontent .section:not(:first-child) { margin-top:50px; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 객실  ////////////////////////////////////// 
--------------------------------------------------------------------------------------------------*/

/* ---- 섹션 타이틀 바 ---- */
.roomPage .secTit { font-size:var(--fs-sec-tit); color:#222; line-height:var(--lh-relaxed); font-weight:400; }
.roomPage .secTitBar { border-bottom:1px solid #555; padding-bottom:20px; margin-bottom:40px; }

/* ---- roomSummary ---- */
.roomPage .roomSummary .roomIntro { margin-bottom:60px; }
.roomPage .roomSummary .roomIntroTit { display:block; font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:var(--lh-snug); font-weight:400; margin-bottom:40px; }
.roomPage .roomSummary .roomIntroDesc { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }

.roomPage .roomSummary .roomSumList { display:flex; align-items:flex-start; justify-content:center; background:#fbf9f3; padding:40px 0; list-style:none; }
.roomPage .roomSummary .roomSumItem { flex:1; display:flex; flex-direction:column; align-items:center; gap:10px; justify-content:flex-start; }
.roomPage .roomSummary .sumIcon { height:34px; display:flex; align-items:flex-start; justify-content:center; }
.roomPage .roomSummary .sumIcon img { height:100%; width:auto; display:block; }
.roomPage .roomSummary .sumLabel { font-size:var(--fs-base); color:var(--color-text-md); line-height:var(--lh-snug); text-align:center; }
.roomPage .roomSummary .sumValue { font-size:var(--fs-content); font-weight:500; color:var(--color-text-dk); line-height:var(--lh-tight); text-align:center; }

/* ---- ROOM PREVIEW 슬라이드 ---- */
.roomPage .roomPreviewSec .roomSlideWrap { position:relative; }
.roomPage .roomPreviewSec .roomImgSlides .slideItem{height:780px;overflow:hidden;}
.roomPage .roomPreviewSec .roomImgSlides .slideItem img { width:100%;height:100%;object-fit:cover; display:block; }
.roomPage .roomPreviewSec .roomImgSlides .slideItem .colImg{display:flex;width:100%;height:100%;align-items:center;justify-content:center;}
.roomPage .roomPreviewSec .roomImgSlides .slideItem .colImg img{width:auto;height:100%;object-fit:contain;}

.roomPage .roomPreviewSec .roomSlidePrev,
.roomPage .roomPreviewSec .roomSlideNext { position:absolute; top:50%; transform:translateY(-50%); width:70px; height:70px; z-index:10; transition:opacity 0.3s;
  background:var(--color-gold); display:flex; align-items:center; justify-content:center; border-radius:50%; }
.roomPage .roomPreviewSec .roomSlidePrev { left:-120px; }
.roomPage .roomPreviewSec .roomSlideNext { right:-120px; }
.roomPage .roomPreviewSec .roomSlidePrev img, 
.roomPage .roomPreviewSec .roomSlideNext img { width:min(40%, 26px); }
.roomPage .roomPreviewSec .roomSlidePrev.slick-disabled, 
.roomPage .roomPreviewSec .roomSlideNext.slick-disabled { opacity:0.3; cursor:default; }

.roomPage .roomPreviewSec .roomSlideDots { position:absolute; bottom:40px; left:50%; transform:translateX(-50%); z-index:5; }
.roomPage .roomPreviewSec .roomSlideDots .slick-dots { display:flex !important; gap:20px; list-style:none; padding:0; margin:0; }
.roomPage .roomPreviewSec .roomSlideDots .slick-dots li { width:auto; height:auto; margin:0; }
.roomPage .roomPreviewSec .roomSlideDots .slick-dots li button { display:block; width:8px; height:8px; background:rgba(255,255,255,0.4); border:none; font-size:0; line-height:0; padding:0; cursor:pointer; transition:background 0.2s; }
.roomPage .roomPreviewSec .roomSlideDots .slick-dots li button:before { display:none; }
.roomPage .roomPreviewSec .roomSlideDots .slick-dots li.slick-active button { background:#fff; }

/* ---- AMENITIES ---- */
.roomPage .amenitiesSec .amenitiesList { display:flex; flex-wrap:wrap; list-style:none; gap:40px 0; }
.roomPage .amenitiesSec .amenItem { width:20%; display:flex; flex-direction:column; align-items:center; gap:10px; }
.roomPage .amenitiesSec .amenIcon { height:40px; display:flex; align-items:flex-end; justify-content:center; }
.roomPage .amenitiesSec .amenIcon svg { height:100%; width:auto; display:block; }
.roomPage .amenitiesSec .amenItem span { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-tight); text-align:center; }

/* ---- INFORMATION ---- */
.roomPage .infoSec .roomInfoWrap .roomInfo { display:flex; gap:10px; border-bottom:1px solid #ddd; padding:40px 0; }
.roomPage .infoSec .roomInfoWrap .roomInfo:first-child { padding-top:0; }
.roomPage .infoSec .roomInfo dt { font-size:var(--fs-content); font-weight:600; color:var(--color-text-dk); line-height:var(--lh-relaxed); min-width:200px; flex-shrink:0; }
.roomPage .infoSec .roomInfo dd { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); flex:1; }
.roomPage .infoSec .roomInfo dd .list_disc { list-style:disc; padding-left:27px; margin-bottom:0; }
.roomPage .infoSec .roomInfo dd .list_disc li { line-height:1.8; }
.roomPage .infoSec .roomInfo dd .infoSub { padding-left:27px; line-height:1.8; }

/* ---- BOOK NOW  ---- */
.roomPage .bookNowWrap { margin-top:100px; display:flex; justify-content:center; }
.roomPage .bookNowBtn { display:inline-flex; align-items:center; justify-content:center; font-family:'Marcellus', serif; font-size:var(--fs-lg); color:#fff; background:var(--color-gold); padding:15px 50px; min-width:250px; text-align:center; transition:background 0.3s; }
.roomPage .bookNowBtn:hover { background:var(--color-dk-gold); }

@media (max-width:1660px) {
  .roomPage .roomPreviewSec .roomSlidePrev { left:-20px; }
  .roomPage .roomPreviewSec .roomSlideNext { right:-20px; }
}


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .roomPage .roomPreviewSec .roomImgSlides .slideItem{ height:650px; }
  .roomPage .infoSec .roomInfo dt { min-width:180px; }
}

@media (max-width: 1024px) {
  .roomPage .roomSummary .roomSumList { padding:30px 20px; }
  .roomPage .roomSummary .sumLabel { font-size:1.5rem; }

  .roomPage .roomPreviewSec .roomImgSlides .slideItem{ height:550px; }
  .roomPage .roomPreviewSec .roomSlidePrev,
  .roomPage .roomPreviewSec .roomSlideNext { width:55px; height:55px; }

  .roomPage .amenitiesSec .amenitiesList { gap:30px 0; }

  .roomPage .infoSec .roomInfo dt { min-width:160px; }
}

@media (max-width: 767px) {
  .roomPage .secTitBar { margin-bottom:25px; padding-bottom:10px; }

  .roomPage .roomSummary .roomIntro { margin-bottom:40px; }
  .roomPage .roomSummary .roomIntroTit { margin-bottom:25px; }
  .roomPage .roomSummary .roomSumList { flex-wrap:wrap; padding:30px 20px; gap:25px 0; }
  .roomPage .roomSummary .roomSumItem { width:33.333%; flex:none; gap:5px; }
  .roomPage .roomSummary .sumLabel { font-size:1.4rem; }

  .roomPage .roomPreviewSec .roomImgSlides .slideItem{ height:400px; }
  .roomPage .roomPreviewSec .roomSlidePrev,
  .roomPage .roomPreviewSec .roomSlideNext { width:45px; height:45px; }
  .roomPage .roomPreviewSec .roomSlidePrev { left:15px; }
  .roomPage .roomPreviewSec .roomSlideNext { right:15px; }

  .roomPage .amenitiesSec .amenItem { width:33.333%; }
  .roomPage .amenitiesSec .amenIcon { height:34px; }
  .roomPage .amenitiesSec .amenItem span { font-size:1.4rem; }

  .roomPage .infoSec .roomInfoWrap .roomInfo { flex-direction:column; gap:8px; padding:25px 0; }
  .roomPage .infoSec .roomInfo dt { min-width:auto; }

  .roomPage .bookNowBtn { font-size:1.8rem; padding:15px 30px; min-width:200px; }
}

@media (max-width: 480px) {
  .roomPage .roomPreviewSec .roomImgSlides .slideItem{ height:280px; }
  .roomPage .roomPreviewSec .roomSlidePrev,
  .roomPage .roomPreviewSec .roomSlideNext { display:none; }
  .roomPage .roomPreviewSec .roomSlideDots { bottom:20px; }

  .roomPage .amenitiesSec .amenItem { gap:2px; }

  .roomPage .bookNowWrap { margin-top:60px; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// VILLA 탭   //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

/* ---- 탭 네비게이션 ---- */
.roomPage .villaTabNav { background: #fff; margin-bottom: 100px; }
.roomPage .villaTabNav .inner { border-bottom: 1px solid #ddd; }
.roomPage .villaTabList { display: flex; align-items: stretch; justify-content: center; gap: 80px; padding-top: 20px; }
.roomPage .villaTabBtn { font-family: 'Marcellus', serif; font-size: 2.2rem; color: #999; background: none; border: none; cursor: pointer; padding: 0 0 20px; position: relative; line-height: 1; transition: color 0.3s; }
.roomPage .villaTabBtn.is-active { color: #222; }
.roomPage .villaTabBtn.is-active::after { content: ''; display: block; position: absolute; bottom: -1px; left: 0; width: 100%; height: 5px; background: var(--color-gold); }
.roomPage .villaTabPanel { display: none; }
.roomPage .villaTabPanel.is-active { display: block; }
.roomPage .villaTabPanel .roomSummary { margin-top: 0; }

/* ================================== 반응형 ================================== */
@media (max-width: 767px) {
  .roomPage .villaTabList { gap: 30px; }
  .roomPage .villaTabBtn { font-size: 1.8rem; }
  .roomPage .villaTabNav { margin-bottom: 60px; }
}

@media (max-width: 480px) {
  .roomPage .villaTabList { gap: 15px; }
  .roomPage .villaTabBtn { font-size: 1.5rem; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 편의시설 목록, experience 목록  ////////////////////////////////////// 
--------------------------------------------------------------------------------------------------*/
/* ---- Summary ---- */
.facilityPage .summary .intro { margin-bottom:60px; }
.facilityPage .summary .introTit { display:block; font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:var(--lh-snug); font-weight:400; margin-bottom:40px; }
.facilityPage .summary .introDesc { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }

/* ---- 편의시설 목록 ---- */
.facListSec .secTitBar { border-bottom:1px solid #555; padding-bottom:20px; margin-bottom:60px; }
.facListSec .facList { display:grid; grid-template-columns:repeat(2, 1fr); gap:80px 40px; list-style:none; }
.facListSec .facItem a { display:flex; gap:40px; flex-direction:column; justify-content:flex-start; }
.facListSec .facThumb { width:100%; aspect-ratio:680/370; overflow:hidden;position:relative;}
.facListSec .facThumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.4s ease; }
.facListSec .facThumb .prep{position:absolute;left:0;top:0;z-index:1;width:100%;height:100%;background:rgba(0,0,0,0.4);display:flex;justify-content:center;align-items:center;backdrop-filter: blur(2px);}
.facListSec .facThumb .prep p{font-size:var(--fs-card-tit);color:#fff;}
.facListSec .facItem a:hover .facThumb img { transform:scale(1.05); }
.facListSec .facDesc { display:flex; flex-direction:column; gap:15px; }
.facListSec .facName { font-size:var(--fs-card-tit); color:var(--color-text-dk); font-weight:500; line-height:var(--lh-normal); }
.facListSec .facText01 { display:flex; align-items:center; gap:20px; font-size:1.6rem; color:#aaa; line-height:normal;  }
.facListSec .facText02 { font-size:1.6rem; color:#666; line-height:1.6; }

/* ---- Experience 목록 ---- */
.expListSec .expList { display:flex; flex-direction:column; gap:60px; list-style:none; }
.expListSec .expItem { position:relative; overflow:hidden; }
.expListSec .expThumb { aspect-ratio:1400/600;position:relative;}
.expListSec .expThumb img { width:100%; height:100%; object-fit:cover; display:block; }
.expListSec .expThumb .prep{position:absolute;left:0;top:0;z-index:1;width:100%;height:100%;background:rgba(0,0,0,0.4);display:flex;justify-content:center;align-items:center;backdrop-filter: blur(2px);}
.expListSec .expThumb .prep p{font-size:var(--fs-card-tit);color:#fff;}
.expListSec .expDesc { position:absolute; bottom:0; right:0; width:31.67%; background:#fff; padding:40px; display:flex; flex-direction:column; align-items:flex-start; gap:40px; }
.expListSec .expItem:nth-child(even) .expDesc { right:auto; left:0; align-items:flex-end; text-align:right; }
.expListSec .expName { font-size:var(--fs-card-tit); font-weight:500; color:var(--color-text-dk); line-height:var(--lh-snug); }
.expListSec .expText01 { font-size:1.6rem; color:#666; line-height:1.6; }
.expListSec .link_btn { display:inline-flex; align-items:center; justify-content:center; font-size:1.4rem; color:#c7b58d; border:1px solid #c7b58d; padding:0 30px; height:35px; transition:background 0.3s, color 0.3s; }
.expListSec .link_btn:hover { background:#c7b58d; color:#fff; }

/* ---- 시설 슬라이드 ----*/
.facSlide .slick-dots {position: absolute;bottom: 40px;left: 50%;transform: translateX(-50%);z-index: 5; display:flex !important; gap:20px; list-style:none; padding:0; margin:0; }
.facSlide .slick-dots li { width:auto; height:auto; margin:0; }
.facSlide .slick-dots li button { display:block; width:8px; height:8px; background:rgba(255,255,255,0.4); border:none; font-size:0; line-height:0; padding:0; cursor:pointer; transition:background 0.2s; }
.facSlide .slick-dots li button:before { display:none; }
.facSlide .slick-dots li.slick-active button { background:#fff; }


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .facListSec .facText01,
  .facListSec .facText02 { font-size:1.5rem; }

  .expListSec .expDesc { width:36%; padding:30px; gap:30px; }
}

@media (max-width: 1024px) {
  .facListSec .facList { gap:60px 30px; }

  .expListSec .expDesc { width:44%; padding:25px; gap:25px; }
  .expListSec .expText01 { font-size:1.5rem; }
}

@media (max-width: 767px) {
  .facilityPage .summary .intro { margin-bottom:40px; }
  .facilityPage .summary .introTit { margin-bottom:25px; }

  .facListSec .facItem a { gap:20px; }
  .facListSec .facDesc { gap:10px; }
  .facListSec .facText01,
  .facListSec .facText02 { font-size:1.4rem; }

  .expListSec .expList { gap:40px; }
  .expListSec .expItem { aspect-ratio:unset; display:flex; flex-direction:column; }
  .expListSec .expItem .expDesc { position:relative; bottom:auto; right:auto; left:auto; width:100%; text-align:left; align-items:flex-start; padding:20px 0; gap:15px; }
  .expListSec .expItem:nth-child(even) .expDesc { align-items:flex-start; text-align:left; }
  .expListSec .expText01 { font-size:1.4rem; }
}

@media (max-width: 480px) {
  .facListSec .facDesc { gap:5px; }
  .facListSec .facList { grid-template-columns:1fr; gap:50px; }
  .facListSec .facText01 { gap:15px; flex-wrap:wrap; }

  .expListSec .expList { gap:30px; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 편의시설 상세, experience 상세  ////////////////////////////////////// 
--------------------------------------------------------------------------------------------------*/
.facDetailPage .facTitSec .facTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:var(--lh-snug); font-weight:400; text-align:center; }
.facDetailPage .facTitSec .facTit_text { margin-top:60px; text-align:center; }
.facDetailPage .facTitSec .facTit_text strong { display:block; font-size:var(--fs-card-tit); font-weight:700; color:var(--color-text-md); line-height:var(--lh-relaxed); }
.facDetailPage .facTitSec .facTit_text p { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); margin-top:30px; }

.facDetailPage .facDetailSec .facDetailImg { /*aspect-ratio:1400/788;*/ overflow:hidden;position:relative;} 
.facDetailPage .facDetailSec .facDetailImg img { width:100%; height:100%; object-fit:cover; display:block; }
.facDetailPage .facDetailSec .facDetailImg .prep{position:absolute;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,0.4);display:flex;justify-content:center;align-items:center;backdrop-filter: blur(5px);z-index:1;}
.facDetailPage .facDetailSec .facDetailImg .prep p{font-size:var(--fs-card-tit);color:#fff;}
.facDetailPage .facDetailSec .facSummary { display:flex; align-items:flex-start; justify-content:center; gap:60px; background:#fbf9f3; padding:40px 0; }
.facDetailPage .facDetailSec .facSumItem { flex:1; display:flex; flex-direction:column; align-items:center; gap:10px; }
.facDetailPage .facDetailSec .facSumIcon { height:28px; display:flex; align-items:center; justify-content:center; }
.facDetailPage .facDetailSec .facSumIcon img { height:100%; width:auto; display:block; }
.facDetailPage .facDetailSec .facSumLabel { font-size:var(--fs-base); color:var(--color-text-md); line-height:var(--lh-snug); text-align:center; }
.facDetailPage .facDetailSec .facSumValue { font-size:var(--fs-content); font-weight:500; color:var(--color-text-dk); line-height:var(--lh-relaxed); text-align:center; }
.facDetailPage .facBackWrap { margin-top:100px; display:flex; justify-content:center; }
.facDetailPage .facBackBtn { display:inline-flex; align-items:center; justify-content:center; font-size:var(--fs-lg); font-weight:500; color:var(--color-text-md); border:1px solid #555; padding:15px 50px; min-width:250px; height:55px; text-align:center; transition:background 0.3s, color 0.3s; }
.facDetailPage .facBackBtn:hover { background:#555; color:#fff; }

/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .facDetailPage .facDetailSec .facSumLabel { font-size:1.5rem; }
}

@media (max-width: 1024px) {
  .facDetailPage .facDetailSec .facSummary { gap:30px; padding:30px 0; }
  .facDetailPage .facDetailSec .facSumLabel { font-size:1.5rem; }
}

@media (max-width: 767px) {
  .facDetailPage .facTitSec .facTit_text { margin-top:30px; }
  .facDetailPage .facTitSec .facTit_text strong { font-size:2rem; }
  .facDetailPage .facTitSec .facTit_text p { margin-top:15px; }
  .facDetailPage .facDetailSec .facSummary { gap:15px; padding:25px 10px; }
  .facDetailPage .facDetailSec .facSumIcon { height:24px; }
  .facDetailPage .facDetailSec .facSumLabel { font-size:1.4rem; }
  .facDetailPage .facBackWrap { margin-top:60px; }
  .facDetailPage .facBackBtn { font-size:1.8rem; padding:15px 30px; min-width:200px; }
}

@media (max-width: 480px) {
  .facDetailPage .facTitSec .facTit_text strong { font-size:1.8rem; }
  .facDetailPage .facDetailSec .facSummary { gap:5px; padding:20px 5px; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 오시는길  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/
/* ---- 지도 ---- */
.locationPage .mapWrap { width:100%; aspect-ratio:1400/600; overflow:hidden; }
.locationPage .mapWrap .root_daum_roughmap,
.locationPage .mapWrap iframe { width:100% !important; height:100% !important; }

/* ---- 리조트 정보 ---- */
.locationPage .locInfoRow { padding:60px 0 40px; }
.locationPage .locInfoInner { display:flex; align-items:flex-start; }
.locationPage .locName { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:var(--lh-snug); font-weight:400; width:50%; flex-shrink:0; }
.locationPage .locContactWrap { flex:1; min-width:0; }
.locationPage .contactInfo dl { display:flex; gap:20px; align-items:flex-start; }
.locationPage .contactInfo dl dt { font-size:var(--fs-content); color:var(--color-text-muted); line-height:var(--lh-relaxed); flex-shrink:0; width:50px; }
.locationPage .contactInfo dl dd { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }

/* ---- 교통 정보 ---- */
.locationPage .locWayArea { padding-left:50%; }
.locationPage .locWay { list-style:none; border-top:1px solid #ddd; }
.locationPage .wayItem { display:flex; flex-direction:column; gap:11px; border-bottom:1px solid #ddd; padding:40px 0; }
.locationPage .wayItem dt { font-size:var(--fs-lg); font-weight:700; color:var(--color-text-dk); line-height:var(--lh-relaxed); }
.locationPage .wayItem dd { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }
.locationPage .wayItem dd strong { display:block; font-size:var(--fs-content); font-weight:600; color:var(--color-text-md); line-height:var(--lh-relaxed); }
.locationPage .tourLink { display:inline-flex; align-items:center; gap:10px; font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }
.locationPage .linkIco { width:24px; height:24px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:rgba(199, 181, 141, 0.2);  }


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .locationPage .wayItem dt { font-size:1.9rem; }
}

@media (max-width: 1024px) {
  .locationPage .locInfoRow { padding:50px 0 35px; }
  .locationPage .wayItem { padding:35px 0; }
}

@media (max-width: 767px) {
  .locationPage .locInfoInner { flex-direction:column; gap:30px; }
  .locationPage .locName { width:100%; }
  .locationPage .locContactWrap { width:100%; }
  .locationPage .locInfoRow { padding:40px 0 30px; }
  .locationPage .locWayArea { padding-left:0; }
  .locationPage .wayItem { padding:25px 0; gap:8px; }
  .locationPage .wayItem dt { font-size:1.8rem; }
}

@media (max-width: 480px) {
  .locationPage .locInfoRow { padding:30px 0 25px; }
  .locationPage .wayItem { padding:20px 0; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 개인정보처리방침  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

.policyPage .policyHead { border-bottom:1px solid #ddd; padding-bottom:50px; margin-bottom:60px; }
.policyPage .policyHead.none_border { border-bottom:none; padding-bottom:0; margin-bottom:0; }
.policyPage .policyHead .policyTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:var(--lh-snug); font-weight:400; margin-bottom:30px; }
.policyPage .policyHead .policyIntro { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }
.policyPage .policyHead .policyIntro + .policyIntro { margin-top:15px; }

.policyPage .policyContents .policyItem { border-bottom:1px solid #eee; padding:50px 0; }
.policyPage .policyContents .policyItem:last-child { border-bottom:none; padding-bottom:0; }
.policyPage .policyContents .policyItemTit { font-size:var(--fs-lg); font-weight:700; color:var(--color-text-dk); line-height:var(--lh-relaxed); margin-bottom:25px; }
.policyPage .policyContents .policyBody { display:flex; flex-direction:column; gap:20px; }

.policyPage .policyContents .policySubTit { font-size:var(--fs-content); font-weight:600; color:var(--color-text-dk); line-height:var(--lh-relaxed); }
.policyPage .policyContents .policyText { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); }

.policyPage .policyBulletList { list-style:none; display:flex; flex-direction:column; gap:3px; }
.policyPage .policyBulletList li { font-size:var(--fs-content); color:var(--color-text-md); line-height:var(--lh-relaxed); padding-left:15px; position:relative; }
.policyPage .policyBulletList li::before { content:'•'; position:absolute; left:0; top:0; color:var(--color-text-muted); line-height:var(--lh-relaxed); }
.policyPage .policyBulletList.policyDateList li::before { display:none; }
.policyPage .policyBulletList.policyDateList li { padding-left:0; color:var(--color-text-muted); font-size:var(--fs-base); }

.policyPage .policyContents .policyNotice { font-size:var(--fs-sm); color:var(--color-text-muted); line-height:var(--lh-relaxed); background:#f8f7f4; padding:15px 20px; border-left:3px solid var(--color-gold); }

.policyPage .policyTableWrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.policyPage .policyTableWrap .table { width:100%; min-width:600px; }

.policyPage .policyChapterTit { font-size:16px; font-weight:700; padding:10px 0 8px; margin:36px 0 0;  border-bottom: 2px solid #333;  color:var(--color-text-dk)}
.policyChapter { margin-bottom: 4px; }



/* ---- 예약취소위약규정 추가 스타일 ---- */

/* 헤더 날짜 */
.policyPage .policyHead .policyDate { font-size:var(--fs-sm); color:var(--color-text-muted); margin-bottom:20px; }

/* 섹션 제목 내 서브 레이블 */
.policyPage .policyContents .policyItemTit .policyItemSub { font-size:var(--fs-base); font-weight:400; color:var(--color-text-muted); }

/* ※ 기호 안내 목록 */
.policyPage .policyBulletList.policyNoticeList li { padding-left:22px; }
.policyPage .policyBulletList.policyNoticeList li::before { content:'※'; font-size:inherit; }

/* 중첩 서브 리스트 */
.policyPage .policyBulletList .policySubList { margin-top:6px; }
.policyPage .policyBulletList .policySubList li::before { content:'-'; }

/* 취소 위약금 테이블 */
.policyPage .policyTableWrap .cancelTable { min-width:700px; }

/* 위약 예외 규정 테이블 */
.policyPage .policyTableWrap .cancelExcTable { min-width:800px; }

/* 예약 문의 연락처 */
.policyPage .policyContactBox { font-size:22px; font-weight:700; color:var(--color-text-dk); letter-spacing:0.04em; }


/* ================================== 반응형 ================================== */
@media (max-width: 1024px) {
  .policyPage .policyHead .policyHead { padding-bottom:40px; margin-bottom:50px; }

  .policyPage .policyContents .policyItem { padding:40px 0; }
}

@media (max-width: 767px) {
  .policyPage .policyHead .policyHead { padding-bottom:30px; margin-bottom:35px; }

  .policyPage .policyContents .policyItem { padding:30px 0; }
  .policyPage .policyContents .policyItemTit { font-size:var(--fs-content); margin-bottom:18px; }
  .policyPage .policyContents .policyBody { gap:15px; }

  .policyPage .policyContactBox { font-size:18px; }
}

@media (max-width: 480px) {
  .policyPage .policyHead { padding-bottom:25px; margin-bottom:25px; }

  .policyPage .policyContents .policyItem { padding:25px 0; }
  .policyPage .policyContents .policyBody { gap:12px; }

  .policyPage .policyContactBox { font-size:16px; }
}


/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 브랜드소개  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

/* ---- brandIntroSec ---- */
.brandPage .brandIntroSec { display:flex; align-items:center; justify-content:space-between; gap:60px; }
.brandPage .brandText { display:flex; flex-direction:column; gap:40px; flex:1; }
.brandPage .brandTit { display:block; font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:1.4; font-weight:400; }
.brandPage .brandDesc { font-size:var(--fs-content); color:var(--color-text-md); line-height:1.8; }
.brandPage .brandImg { width:610px; height:740px; overflow:hidden; flex-shrink:0; }
.brandPage .brandImg img { width:100%; height:100%; object-fit:cover; display:block; }


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .brandPage .brandImg { width:500px; height:610px; }
}

@media (max-width: 1024px) {
  .brandPage .brandIntroSec { flex-direction:column; gap:50px; }
  .brandPage .brandImg { width:100%; height:550px; }
}

@media (max-width: 767px) {
  .brandPage .brandText { gap:25px; }
  .brandPage .brandImg { height:420px; }
}

@media (max-width: 480px) {
  .brandPage .brandImg { height:300px; }
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 브랜드철학  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

/* ---- philoSec ---- */
.philoPage .philoSec { display:flex; flex-direction:column; }
.philoPage .philoTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:1.4; font-weight:400; }
.philoPage .philoDesc { font-size:var(--fs-content); color:var(--color-text-md); line-height:1.8; margin-top:60px; }
.philoPage .philoImgList { display:flex; align-items:flex-start; gap:20px; list-style:none; margin-top:60px; justify-content:space-between; }
.philoPage .philoImgList .philoImgItem { flex:1; }
.philoPage .philoImgList .philoImgItem--offset { padding-top:40px; }
.philoPage .philoImgList .philoImgThumb { overflow:hidden; aspect-ratio:454/520; }
.philoPage .philoImgList .philoImgThumb img { width:100%; height:100%; object-fit:cover; display:block; }


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
}

@media (max-width: 1024px) {
  .philoPage .philoDesc { margin-top:50px; }
  .philoPage .philoImgList { gap:15px; margin-top:50px; }
  .philoPage .philoImgList .philoImgItem--offset { padding-top:20px; }
}

@media (max-width: 767px) {
  .philoPage .philoDesc { margin-top:30px; }
  .philoPage .philoImgList { gap:10px; margin-top:30px; }
}

@media (max-width: 480px) {
  .philoPage .philoImgList { flex-wrap:wrap; gap:8px;  }
  .philoPage .philoImgList .philoImgItem { flex:none; width:calc(50% - 4px); flex-grow:1;}
  .philoPage .philoImgList .philoImgItem--offset { padding-top:0; }
  .philoPage .philoImgList .philoImgThumb { aspect-ratio:initial; height:20rem; }
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// 인사말  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

/* ---- greetSec ---- */
.greetPage .greetSec { display:flex; flex-direction:column; }
.greetPage .greetSec .greetTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:1.4; font-weight:400; }
.greetPage .greetSec .greetImg { height:450px; overflow:hidden; margin-top:60px; }
.greetPage .greetSec .greetImg img { width:100%; height:100%; object-fit:cover; display:block; }
.greetPage .greetSec .greetDesc { display:flex; gap:60px; align-items:flex-start; margin-top:60px; }
.greetPage .greetSec .greetDesc .greetDescCol { flex:1; font-size:var(--fs-content); color:var(--color-text-md); line-height:1.8; }
.greetPage .greetSec .greetDesc .greetDescCol p + p { margin-top:1.8em; }


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .greetPage .greetSec .greetImg { height:380px; }
}

@media (max-width: 1024px) {
  .greetPage .greetSec .greetImg { height:320px; margin-top:50px; }
  .greetPage .greetSec .greetDesc { gap:40px; margin-top:50px; }
}

@media (max-width: 767px) {
  .greetPage .greetSec .greetImg { height:250px; margin-top:30px; }
  .greetPage .greetSec .greetDesc { flex-direction:column; gap:25px; margin-top:30px; }
}

@media (max-width: 480px) {
  .greetPage .greetSec .greetImg { height:200px; }
}

/* -----------------------------------------------------------------------------------------------
///////////////////////////////////////////// ci소개  //////////////////////////////////////
--------------------------------------------------------------------------------------------------*/

/* ---- ciLogoSec ---- */
.ciPage .ciLogoSec { padding:150px 0; }
.ciPage .ciLogoSec .ciLogoCont .ciLogo { padding:80px; background: linear-gradient(0deg, #FBF8F3 0%, #FBF8F3 100%), #FFF; text-align:center; }
.ciPage .ciLogoSec .ciLogoCont .ciLogo img { width:268px; }
.ciPage .ciLogoSec .ciLogoCont .ciLogoDesc { display:flex; align-items:flex-start; margin-top:60px; gap:60px; }
.ciPage .ciLogoSec .ciLogoCont .ciLogoDesc .ciLogoTit { width:50%; flex-shrink:0; font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:1.4; font-weight:400; }
.ciPage .ciLogoSec .ciLogoCont .ciLogoDesc .ciLogoText { flex:1; font-size:var(--fs-content); color:var(--color-text-md); line-height:1.8; }

/* ---- ciSymbolSec ---- */
.ciPage .ciSymbolSec { padding:150px 0; background:#3a3028 url('../images/sub/sub01/sub01_04_img01.jpg') bottom center / cover no-repeat; position:relative; }
.ciPage .ciSymbolSec .inner { position:relative; z-index:1; }
.ciPage .ciSymbolSec .inner .ciSymbolCont { position:relative; }
.ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolText { max-width:760px; display:flex; flex-direction:column; gap:40px; }
.ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolText .ciSymbolTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:#fff; line-height:1.4; font-weight:400; }
.ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolText .ciSymbolDesc { font-size:var(--fs-content); color:#fdfbf6; line-height:1.8; }
.ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolText .ciSymbolDesc p + p { margin-top:1.8em; }
.ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark { position:absolute; width:309px; right:0; top:50%; transform:translateY(-50%); pointer-events:none; }
.ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark img { width:100%; display:block; }

/* ---- ciAttitudeSec ---- */
.ciPage .ciAttitudeSec { padding:150px 0; background:#f5eedf url('../images/sub/sub01/sub01_04_sec03_bg.jpg') center / cover no-repeat; position:relative; }
.ciPage .ciAttitudeSec .inner { position:relative; z-index:1; }
.ciPage .ciAttitudeSec .inner .ciAttitudeTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:var(--color-text); line-height:1.4; font-weight:400; text-align:center; }
.ciPage .ciAttitudeSec .inner .ciAttitudeList { display:flex; align-items:flex-start; justify-content:center; list-style:none; margin-top:80px; }
.ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem { flex:1; display:flex; flex-direction:column; align-items:center; gap:20px; }
.ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem .ciAttitudeIcon { height:40px; display:flex; align-items:center; justify-content:center; }
.ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem .ciAttitudeIcon img { height:100%; width:auto; display:block; }
.ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem .ciAttitudeText { font-size:var(--fs-lg); font-weight:500; color:var(--color-text-md); line-height:1.6; text-align:center; }

/* ---- ciSloganSec ---- */
.ciPage .ciSloganSec { padding:150px 0; background:#1a1a1a url('../images/sub/sub01/sub01_04_img02.jpg') bottom center / cover no-repeat; position:relative; }
.ciPage .ciSloganSec .inner { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; }
.ciPage .ciSloganSec .inner .ciSloganTit { font-family:'Gowun Dodum', sans-serif; font-size:var(--fs-page-tit); color:#fff; line-height:1.4; font-weight:400; text-align:center; }
.ciPage .ciSloganSec .inner .ciSloganDesc { font-size:var(--fs-content); color:#fdfbf6; line-height:1.8; text-align:center; margin-top:40px; }


/* ================================== 반응형 ================================== */
@media (max-width: 1279px) {
  .ciPage .ciLogoSec .ciLogoCont .ciLogoDesc .ciLogoTit br,
  .ciPage .ciLogoSec .ciLogoCont .ciLogoDesc .ciLogoText br { display:none; }
  .ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark { width:240px; }
}

@media (max-width: 1024px) {  
  .ciPage .ciLogoSec,
  .ciPage .ciSymbolSec,
  .ciPage .ciSloganSec,
  .ciPage .ciAttitudeSec { padding:100px 0; }
  .ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolText { max-width:100%; }
  .ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark { width:200px;}
  .ciPage .ciAttitudeSec .inner .ciAttitudeList { flex-wrap:wrap; gap:50px 0; }
  .ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem { flex:none; width:33.333%; }
}

@media (max-width: 767px) {    
  .ciPage .ciLogoSec .ciLogoCont .ciLogo { padding:60px; }
  .ciPage .ciLogoSec .ciLogoCont .ciLogo img { width:200px; }
  .ciPage .ciLogoSec .ciLogoCont .ciLogoDesc { flex-direction:column; gap:25px; margin-top:30px; }
  .ciPage .ciLogoSec .ciLogoCont .ciLogoDesc .ciLogoTit { width:100%; }
  .ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark {position:relative; top:auto; bottom:0; right:auto; left:auto; transform:none;text-align:right; width:100%; }
  .ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark img { width:100%; max-width:160px; display:inline-block; }
  .ciPage .ciAttitudeSec .inner .ciAttitudeList { gap:40px 0; }
}

@media (max-width: 480px) {
  .ciPage .ciLogoSec,
  .ciPage .ciSymbolSec,
  .ciPage .ciSloganSec,
  .ciPage .ciAttitudeSec { padding:60px 0; }
  .ciPage .ciLogoSec .ciLogoCont .ciLogo { padding:40px; }
  .ciPage .ciLogoSec .ciLogoCont .ciLogo img { width:160px; } 
  .ciPage .ciSymbolSec .inner .ciSymbolCont .ciSymbolMark img { max-width:120px; opacity:0.8; }
  .ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem { width:50%; gap:10px; }  
  .ciPage .ciAttitudeSec .inner .ciAttitudeList .ciAttitudeItem .ciAttitudeIcon { height:30px; } 
}