@charset 'utf-8';

/* main-hero */
.main-hero { position:relative; }
.main-hero .swiper { width:100%;height:100vh; }
.main-hero .main-hero__slide { position:relative;text-align:center;font-size:18px;background:#000;display:flex;justify-content:center;align-items:center}

.main-hero .main-hero__slide .main-hero__bg { width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-size: cover; background-repeat: no-repeat; background-position: 50%; transition: all 3s ease; }
.main-hero .main-hero__slide.swiper-slide-active .main-hero__bg { transform: scale(1.1); }

.main-hero .main-hero__copy { position:absolute; left:0; right:0; top:0; bottom:20%; z-index:100; display:flex; justify-content:center; align-items:center; flex-direction:column; }
.main-hero .main-hero__copy span { opacity: 0; transform: translateY(30px); display: inline-block; transition: opacity 1.2s ease, transform 1.2s ease; }
.main-hero .main-hero__copy span.is-active { opacity: 1; transform: translateY(0); }

.main-hero .main-hero__copy .main-hero__title { font-size:70px; color:#fff; font-weight:700;line-height:1.1;transform:scale(0.95);transition:all 1s ease-in-out; padding:0 70px; margin-top:5px; overflow:hidden; }
.main-hero .main-hero__copy .main-hero__subtitle { font-size:28px; color:#fff; opacity:1; overflow:hidden; }
.main-hero .main-hero__copy .main-hero__text { font-size:22px; color:#fff;margin-top:25px; opacity:1; overflow:hidden; }
.main-hero .main-hero__copy .main-hero__title { transform:scale(1); }
.main-hero .main-hero__image-title { position:absolute; left:65px; top:50%; transform-origin: left center; transform: rotate(90deg) translateX(-50%); }
.main-hero .main-hero__image-title .text-box { display:flex; gap:40px; align-items:center; }
.main-hero .main-hero__image-title .text-box em { position:relative; font-size:22px; color:#eab334; font-style:normal; font-family: 'Montserrat', sans-serif; font-weight:700;  }
.main-hero .main-hero__image-title .text-box span { position:relative; font-size:18px; color:#fff; }
.main-hero .main-hero__image-title .text-box span:before { content:""; display:block; width:5px; height:5px; border-radius:5px; background-color:#eab334; position:absolute; left:-22px; top:50%; transform:translateY(-50%); }

/* progress-wrap
.main-hero .progress-wrap { position: absolute; bottom: 400px; left:10px; transform:rotate(-90deg); padding: 0 30px; z-index: 2; }
.main-hero .progress-wrap .page-num { font-size: 16px; font-weight: 500; color: #fff; display: block; position: absolute; top: 50%; transform: translateY(-50%); }
.main-hero .progress-wrap .page-num.current-num { right: 0; }
.main-hero .swiper-pagination.swiper-pagination-progressbar { position: relative; opacity:1; width:75px; height:1px; background: rgba(225, 225, 225, 0.3); z-index:10; }
.main-hero .swiper-pagination.swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background-color:#e1e1e1; transition: all ease-in-out 0.5s 0.1s !important; }
 */

/* slide-btn-wrap */
.swiper-button-next:after, .swiper-button-prev:after { display:none !important; }
.main-hero .slide-btn-wrap { display:flex; align-items:center; gap:0; position: absolute; left: 50%; bottom: 320px; transform: translateX(-50%); z-index: 2; }
.main-hero .slide-btn-wrap .swiper-button-next,
.main-hero .slide-btn-wrap .swiper-button-prev { position: static; background-repeat:no-repeat; background-position:center; background-size:100% auto; display: flex; align-items:center; width: 36px; height: 36px; margin:0; }
.main-hero .slide-btn-wrap .swiper-button-prev { background-image:url('../img/icons/ic-swiper-arrow-prev.png'); }
.main-hero .slide-btn-wrap .swiper-button-next { background-image:url('../img/icons/ic-swiper-arrow-next.png'); }
.main-hero .slide-btn-wrap .swiper-pagination { position: static; display: flex; align-items:center; justify-content:center; gap:8px;  font-size:18px; color:#fff; width:80px;  }
.main-hero .slide-btn-wrap .swiper-pagination span { font-family: 'Montserrat', sans-serif; font-weight:700; }
.main-hero .slide-btn-wrap .swiper-pagination-current { color:#eab334; }

/* main-hero__scroll */
.main-hero .main-hero__scroll { padding-bottom:145px;position:absolute; bottom:0; left:50%; transform:translateX(-50%); z-index:1; }
.main-hero .main-hero__scroll span.text { display:block; transform:rotate(90deg); font-size:14px; font-weight:400; color:#fffefe; font-family: 'Montserrat', sans-serif; }
.main-hero .main-hero__scroll span.bar { position:relative; display:block; width:1px; height:125px; position:absolute; bottom:0; left:50%; background-color:rgba(255,255,255,0.5); overflow:hidden; }
.main-hero .main-hero__scroll span.bar:before { content:""; display:block; width:1px; height:1px; position:absolute; top:0; left:0; background-color:#eab334; animation:swing 3s ease-in-out infinite; }

/* @keyframes */
@keyframes swing {
	0% { height:12px; }
	100% { height:125px; }
}

.progress { position: absolute; left: 50%; bottom:0; width:165px; height:165px; display:grid; grid-template-columns:50px 1fr; gap:0; align-items:center; transform:translateX(-50%) rotate(90deg); z-index:11111111111111; }
.progress .progress__title { font-size: 14px; font-weight: 400; color: #fffefe; }
.progress .progress-box { position:relative; width:100%; height:1px; background-color:rgba(255,255,255,0.9); }
.progress .progress-bar { position: absolute; left: 0; bottom: 0; width: 0%; height: 100%; background: #eab334; z-index: 10; transition: width 0.1s linear; }


/* main-hero__sky */
.main-hero__sky { position: absolute; position: fixed; left:20px; bottom:30px; display:block; width:125px; height: 126px; background-repeat:no-repeat; background-image: url('../img/main/ic_skybn_horse.png'); background-position:center; background-size:100% auto; z-index:101; }
.main-hero__sky .text { 
	position: absolute; left:0; bottom:0; display:block; width:100%; height: 100%; background-repeat:no-repeat; background-image: url('../img/main/ic_skybn-text.png'); background-position:center; background-size:100% auto; 
	/* --- 애니메이션 추가 영역 --- */
    animation: rotate_text 10s linear infinite; 
    transform-origin: center; /* 중심점을 기준으로 회전 */
}
/* 회전 동작 정의 */
@keyframes rotate_text {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/* main */
main.main { }
main.main img { display:inline-block; max-width:100%; height:auto; }

.mobile-only { display:none !important; }

section.section { overflow:hidden; }
.section__inner { padding:100px 20px 140px 20px; }
.section__header { margin-bottom:70px; }
.section__title { font-size:48px; color:#473b2f; text-align:center; font-family: 'Montserrat', sans-serif; font-weight:700; line-height:1.1; letter-spacing:-1px;  }
.section__title em { color:#eab334; font-style:normal; }

.section__desc { font-size:24px; color:#473b2f; text-align:center; font-weight:700; line-height:1.35; margin-top:10px; letter-spacing:-1px;  word-break:keep-all; }
.section__desc span { font-weight:700; font-family: 'Montserrat', sans-serif; }
.section__content { text-align:center; }



/* 1. section--premium
* * * * * * * * * * * * * * * * * * * */
section.section--premium { background-color:#fcf8f4; }

.beradel-premium-slide { position:relative; max-width:1500px; margin:0 auto; }
.prm-banner-area { display: flex; gap: 20px; height: 480px; align-items: center; }
.prm-item {
	position: relative; flex: 1; /* 기본 너비 */ height: 83.5%; border-radius: 25px; background-size: cover; background-position: center; cursor: pointer;
	transition: flex 0.8s cubic-bezier(0.25, 1, 0.5, 1), height 0.6s ease, top 0.6s ease; overflow:hidden; 
}
.prm-item .prm-item-bg-img { position:absolute;  left:-3px; top:-3px; right:-3px; bottom:-3px;display:block; background-size: cover; background-position: center; transition: filter 0.5s ease; filter: brightness(0.6) blur(5px); }
.prm-item:hover .prm-item-bg-img { filter: brightness(0.7) blur(3px); }

.prm-item:nth-child(2) { top:30px; }
.prm-item:nth-child(3) { top:-20px; }
.prm-item:nth-child(5) { top:30px; }

/* 활성화 상태: 너비가 확 넓어짐 */
.prm-item.active { flex: 4; height: 100%; top:0; }
.prm-item.active .prm-item-bg-img,
.prm-item.active:hover .prm-item-bg-img { left:0; top:0; right:0; bottom:0; filter: brightness(1) blur(0px); }

.prm-item.prm-item01 .prm-item-bg-img { background-image: url('../img/main/bnr-beradel-premium01.jpg'); }
.prm-item.prm-item02 .prm-item-bg-img { background-image: url('../img/main/bnr-beradel-premium02.jpg'); }
.prm-item.prm-item03 .prm-item-bg-img { background-image: url('../img/main/bnr-beradel-premium03.jpg'); }
.prm-item.prm-item04 .prm-item-bg-img { background-image: url('../img/main/bnr-beradel-premium04.jpg'); }
.prm-item.prm-item05 .prm-item-bg-img { background-image: url('../img/main/bnr-beradel-premium05.jpg'); }
.prm-item.prm-item06 .prm-item-bg-img { background-image: url('../img/main/bnr-beradel-premium06.jpg'); }

/* 이미지 위 텍스트 서서히 나타나기 */
.prm-text-inner { position: absolute; left: 0px; top:0; right:0; bottom:0; color: #fff; opacity: 1; transition: opacity 0.3s ease; display:flex; align-items:center; justify-content:center; flex-flow: column; gap:50px; padding:10px; }
.prm-item.active .prm-text-inner { opacity: 0; transition-delay: 0.2s; }

.prm-text-inner .prm-sub-title { font-size:22px; }
.prm-text-inner .prm-desc { position:relative; font-size:16px; font-weight:300; word-break:keep-all; }
.prm-text-inner .prm-desc:before { content:""; position:absolute; left:50%; top:-40px; display:block; width:24px; height:24px; background-repeat:no-repeat; background-image: url('../img/icons/ic-oblique-line.png'); background-position:center; transform:translateX(-50%); }

.prm-footer { position:relative; max-width:980px; margin:0 auto; margin-top:75px; }
.prm-contents-group { position:relative; z-index:1; padding:0 100px; }

/* 하단 컨텐츠 페이드 전환 */
.prm-content { display: none; text-align: center; align-items:center; animation: fadeIn 0.6s ease forwards; }
.prm-content.active { display: flex; }
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.prm-content__inner { display:inline-flex; gap:50px; margin:0 auto; }
.prm-content__inner .prm-main-title { font-size:30px; display:flex; align-items:center; font-weight:500; }
.prm-content__inner .prm-main-desc { position:relative; }
.prm-content__inner .prm-main-desc:before { content:""; position:absolute; left:-25px; top:5px; bottom:5px; display:block; width:1px; background-color:#111; }
.prm-content__inner .prm-main-desc p { font-size:20px; text-align:left; word-break:keep-all; }
.prm-content__inner .prm-main-desc p:first-child { font-size:22px; margin-bottom:5px; font-weight:500; }

.prm-controls { }
.prm-controls .btn-prm-prev,
.prm-controls .btn-prm-next { position:absolute; top:50%; transform:translateY(-50%); background-repeat:no-repeat; background-position:center; width:72px; height:56px; font-size:0; z-index:10;  }
.prm-controls .btn-prm-prev { left:0; background-image: url('../img/icons/ic-slide-arrow-line-prev.png'); }
.prm-controls .btn-prm-next { right:0; background-image: url('../img/icons/ic-slide-arrow-line-next.png'); }

section.section--premium-mobile { display:none; background-color:#fcf8f4; }
.prm-swiper { position:relative; }
.prm-swiper .swiper-slide { }
.prm-swiper .swiper-slide img { width:100%; }
.prm-swiper .prm-img { border-radius:25px; overflow:hidden; }
.prm-swiper .prm-content__inner { display:flex; gap:2.0rem; margin:0 auto; margin-top:1.5rem; padding:0 3.0rem; }
.prm-swiper .prm-content__inner .prm-main-title { font-size:min(1.475rem, 30px); display:flex; align-items:center; font-weight:500; }
.prm-swiper .prm-content__inner .prm-main-desc { position:relative; }
.prm-swiper .prm-content__inner .prm-main-desc:before { content:""; position:absolute; left:-25px; top:5px; bottom:5px; display:block; width:1px; background-color:#111; }
.prm-swiper .prm-content__inner .prm-main-desc p { font-size:min(0.901rem, 20px); text-align:left;  }
.prm-swiper .prm-content__inner .prm-main-desc p:first-child { font-size:min(1.065rem, 22px); margin-bottom:0.5rem; font-weight:500; }

.prm-swiper .swiper-button-next, 
.prm-swiper .swiper-button-prev { z-index:100; top:auto; bottom:3.2rem; background-repeat:no-repeat; background-position:center; background-size:1.8rem auto; width:2.0rem; height:2.0rem; }
.prm-swiper .swiper-button-next { right:0; background-image: url('../img/icons/ic-slider-next.png'); }
.prm-swiper .swiper-button-prev { left:0; background-image: url('../img/icons/ic-slider-prev.png'); }


/* 2. section--skyview
* * * * * * * * * * * * * * * * * * * */
section.section--skyview { }



/* 3. section--program
* * * * * * * * * * * * * * * * * * * */
section.section--program { background-color:#f8f8f8; }
.section__content.program { display:grid; grid-template-columns:810px 1fr; gap:80px; max-width:1500px; margin:0 auto; }
.program__main { display:grid; grid-template-columns:repeat(2, 1fr); gap:30px; }
.program__main .section__header .section__title { text-align:left; }
.program__main .section__header .section__desc { text-align:left; }

.program__main .program__items { cursor:pointer; }
.program__main .program__thumb { border-radius:25px; overflow:hidden; }
.program__main .program__thumb img { transition: transform 0.5s ease; }
.program__main .program__items:hover .program__thumb img { transform: scale(1.15); }

.program__main .program__body { text-align:left; margin-top:15px; }
.program__main .program__title { font-size:30px; color:#eab334; font-weight:500; }
.program__main .program__subtitle { font-size:22px; font-weight:500; letter-spacing:-1px; }
.program__main .program__text { font-size:16px; margin-top:5px; word-break:keep-all; }

.program__membership .program__membership-inner { position:relative; display:flex; align-items:center; justify-content:center; height:645px; border-radius:25px; overflow:hidden; }
.program__membership .program__membership-inner img { width:100%; height:100%; object-fit:cover; transition: transform 0.5s ease; }
.program__membership .program__membership-inner:hover img {  transform: scale(1.15); } 
.program__membership .program__membership-body { position:absolute; left:20px; top:20px; right:20px; bottom:20px; z-index:10; display:flex; align-items:center; flex-direction: column; justify-content:center; }
.program__membership .program__membership-title { position:relative; font-size:36px; font-weight:500; color:#fff; padding-top:60px; }
.program__membership .program__membership-title:before { content:""; position:absolute; left:50%; top:0; display:block; width:49px; height:32px; background-repeat:no-repeat; background-position:center; background-image:url('../img/icons/ic_crown.png'); background-size:100% auto; transform:translateX(-50%); }
.program__membership .program__membership-title small { display:block; font-size:16px;  font-weight:400;  opacity:0.5; }
.program__membership .program__membership-desc { font-size:20px; color:#fff; margin-top:20px;  font-weight:300;  }
.program__membership .program__membership-brand { text-align:center; font-size:24px; margin-top:15px; font-family: 'Montserrat', sans-serif; font-weight:700; }




/* 4. section--stay */
section.section--stay { }
section.section--stay .section__content { max-width:1500px; margin:0 auto; display:grid; grid-template-columns:repeat(2, 1fr); text-align:left; }
.stay__item { position:relative; }
.stay__item:after { content:""; display:block; width:100%; height:0; clear:both; }
.stay__img { position:absolute; display:block; width:960px; height:604px; background-repeat:no-repeat; background-position:center; background-size:100% auto; }
.stay__body { padding:35px 40px; width:100%; max-width:630px; }
.stay__title { font-size:30px; font-weight:600; letter-spacing:-1px; }
.stay__title em { font-style:normal; color:#eab334; }
.stay__text { font-size:16px; margin-top:10px; }
.stay__text em { font-size:16px; font-style:normal; font-weight:700; color:#ea5614; font-family: 'Montserrat', sans-serif; }
.stay__actions { margin-top:25px; }
.stay__actions .btn-view { position:relative; font-family: 'Montserrat', sans-serif; font-size:20px; font-weight:700; color:#473b2f; display:flex; align-items:center; justify-content:flex-end; max-width:463px; }
.stay__actions .btn-view:after { content:""; position:absolute; left:0; top:50%; right:0; display:block; height:1px; background-color:#c7c4c0; }
.stay__actions .btn-view span { position:relative; display:inline-block; padding:0 18px; background-color:#fff; z-index:1; }
.stay__actions .btn-view span:after { content:""; position:absolute; top:0; right:0; display:block; height:100%; width:8px; background-repeat:no-repeat; background-position:center; background-image:url('../img/icons/ic-view-arrow.png'); background-size:100% auto; }

.stay__item.pension { padding-top:604px; } 
.stay__item.pension .stay__img { right:0; top:0; background-image:url('../img/main/img-pension.jpg'); transition: background-size 0.5s cubic-bezier(0.25, 0.1, 0.25, 1); }
.stay__item.pension .stay__img:hover { background-size: 110%;  }
.stay__item.pension .stay__body { float:right; }
.stay__item.camping { padding-bottom:604px; }
.stay__item.camping .stay__img { left:0; bottom:0; background-image:url('../img/main/img-camping.jpg'); transition: background-size 0.5s cubic-bezier(0.25, 0.1, 0.25, 1); }
.stay__item.camping .stay__img:hover { background-size: 110%;  }


/* 5. section--event
* * * * * * * * * * * * * * * * * * * */
section.section--event { background-color:#f8f8f8; overflow:visible; }
section.section--event .section__inner { padding: 100px 20px 105px 20px; }
section.section--event .section__header { margin-bottom:50px; }
.event-swiper { position:relative; max-width:1500px; margin:0 auto; }
.event-swiper .swiper { background-color:#eab334; border-radius:25px; overflow:hidden; }
.event-swiper .swiper-slide img { width:100%; height:auto; }
.event-swiper .swiper-pagination { position:static; margin-top:20px; display:flex; gap:10px; align-items:center; justify-content:center; }
.event-swiper .swiper-pagination .swiper-pagination-bullet { background-color:#d7d7d7; width:12px; height:12px; opacity:1; margin:0; }
.event-swiper .swiper-pagination .swiper-pagination-bullet-active { background-color:#eab334; }
.event-swiper .horse { position:absolute; left:-690px; bottom:-105px; display:block; width:1070px; height:725px; background-repeat:no-repeat; background-image:url('../img/main/img-horse-full.png'); background-position:center; background-size:100% auto; z-index:100; }
.event-swiper .empty-event-cover { position:absolute; left:0; top:0; right:0; bottom:0; background-color:rgba(0,0,0,0.8); display:flex; align-items:center; color:#fff; justify-content:center; font-size:1.2rem; z-index:10; padding:1.0rem; box-sizing:border-box; }


/* 6. section--clubhouse
* * * * * * * * * * * * * * * * * * * */
section.section--clubhouse { background-color:#443d36; background-repeat:no-repeat; background-image:url('../img/main/section-clubhouse-bg.jpg'); background-position:center; background-size:cover; }
section.section--clubhouse .section__header { margin-bottom:10px; }
section.section--clubhouse .section__title,
section.section--clubhouse .section__desc { color:#fff; }
section.section--clubhouse .section__desc span { font-weight:200; }

section.section--clubhouse .section__content { position:relative; max-width:1500px; margin:0 auto; }
section.section--clubhouse .section__content .clubhouse-text { position: absolute; right: -430px; top: 50%; transform-origin: left center; transform: rotate(90deg) translateX(-50%); display: flex; gap: 40px; align-items: center; }
section.section--clubhouse .section__content .clubhouse-text span { position:relative; font-size:18px; color:#eab334; }
section.section--clubhouse .section__content .clubhouse-text span:before { content: ""; display: block; width: 5px; height: 5px; border-radius: 5px; background-color: #eab334; position: absolute; left: -22px; top: 50%; transform: translateY(-50%); }
section.section--clubhouse .section__content .clubhouse-text span:first-child:before { display:none; }

.clubhouse__list { /* display:grid; grid-template-columns:repeat(4, 1fr); gap:40px; */ }
.clubhouse__list .swiper { padding-top:40px; }
.clubhouse__list .clubhouse__item { }
.clubhouse__list .clubhouse__item:nth-child(1) { padding-top:10px; }
.clubhouse__list .clubhouse__item:nth-child(2) { padding-top:90px; }
.clubhouse__list .clubhouse__item:nth-child(3) { }
.clubhouse__list .clubhouse__item:nth-child(4) { padding-top:40px; }

.clubhouse__list .clubhouse__item:hover .clubhouse__card { transform: translateY(-40px); }

.clubhouse__list .clubhouse__card { border-radius:25px; overflow:hidden; background-color:#fff; transition: transform 0.5s; }
.clubhouse__list .clubhouse__thumb { overflow:hidden; }
.clubhouse__list .clubhouse__thumb img { width:100%; height:auto; }
.clubhouse__list .clubhouse__body { padding:30px 20px 20px 40px; min-height:290px; }
.clubhouse__list .clubhouse__title { text-align:left; font-size:30px; color:#473b2f; font-weight:600; margin-bottom:10px; }
.clubhouse__list .clubhouse__title span {  font-weight:400; }
.clubhouse__list .clubhouse__subtitle { text-align:left; font-size:20px; font-weight:500; letter-spacing:-1px; }
.clubhouse__list .clubhouse__text { text-align:left; font-size:16px; line-height:1.45; word-break:keep-all; }
.clubhouse__list .clubhouse__actions { margin-top:20px; }
.clubhouse__list .clubhouse__actions .btn-more { display:flex; align-items:center; justify-content:center; width:150px; height:50px; border:1px solid #eab334; color:#eab334; font-size:16px; font-weight:600; font-family: 'Montserrat', sans-serif; border-radius:50px; background-color:#fff; transition: background-color 0.5s ease; }
.clubhouse__list .clubhouse__actions .btn-more span { position:relative; padding-right:50px; }
.clubhouse__list .clubhouse__actions .btn-more span:after { content:""; position:absolute; right:0; top:5px; display:block; width:18px; height:15px; background-repeat:no-repeat; background-position:center; background-image:url('../img/icons/ic-btn-arrow.png'); background-size:100% auto; }
.clubhouse__list .clubhouse__actions .btn-more:hover { background-color:#ea5614; }
.clubhouse__list .clubhouse__actions .btn-more:hover { background-color:#eab334; color:#fff; }
.clubhouse__list .clubhouse__actions .btn-more:hover span:after { background-image:url('../img/icons/ic-btn-arrow-w.png'); }

.clubhouse__list .swiper-pagination { position:static; margin-top:2.5rem; display:flex; gap:10px; align-items:center; justify-content:center; }
.clubhouse__list .swiper-pagination .swiper-pagination-bullet { background-color:#d7d7d7; width:12px; height:12px; opacity:1; margin:0; }
.clubhouse__list .swiper-pagination .swiper-pagination-bullet-active { background-color:#eab334; }



/* 7. section--gallery
* * * * * * * * * * * * * * * * * * * */
section.section--gallery { }

.gallery__grid { position:relative; display:grid; /* grid-template-columns: 33fr 33fr 152fr 33fr 33fr; */ grid-template-columns: 165px 165px 1fr 165px 165px;  max-width: 1500px; margin: 0 auto; gap:20px; }
.gallery__grid .gallery__item { position:relative; display:flex; flex-direction:column; gap:20px; justify-content:flex-start; } 
.gallery__grid .gallery__item.grid01 { padding-top:68px; }
.gallery__grid .gallery__item.grid02 { padding-top:35px; }
.gallery__grid .gallery__item.grid03 { padding-top:35px; }
.gallery__grid .gallery__item.grid04 { padding-top:68px; }
.gallery__grid .gallery__item .img-box { border-radius:25px; overflow:hidden; }
.gallery__grid .gallery__item .img-box img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; transform: scale(1); }
/* hover 효과 */
.gallery__grid .gallery__item .img-box:hover img { transform: scale(1.1); }



.gallery__grid .gallery__video { display:flex; align-items:center; }
.gallery__grid .gallery__video .gallery__video-inner { width:100%; border-radius:25px; overflow:hidden; }
.gallery__grid .gallery__video .gallery__video-inner img { width:100%; height:auto; }

.gallery__grid .btn-view {  display:flex; align-items:center; justify-content:center; width:100%; height:50px; border:1px solid #eab334; color:#eab334; font-size:16px; font-weight:600; font-family: 'Montserrat', sans-serif; border-radius:50px; background-color:#fff; transition: background-color 0.5s ease; }
.gallery__grid .btn-view span { position:relative; padding-right:50px; }
.gallery__grid .btn-view span:after { content:""; position:absolute; right:0; top:5px; display:block; width:18px; height:15px; background-repeat:no-repeat; background-position:center; background-image:url('../img/icons/ic-btn-arrow.png'); background-size:100% auto; }
.gallery__grid .btn-view:hover { background-color:#eab334; color:#fff; }
.gallery__grid .btn-view:hover span:after { background-image:url('../img/icons/ic-btn-arrow-w.png'); }


/* 8. section--grid
* * * * * * * * * * * * * * * * * * * */
section.section--grid { background-repeat:repeat-y; background-image: url('../img/contents/section-grid-bg.jpg'); background-size:100% auto; padding:0; }
section.section--grid .section__inner { padding:0; }
section.section--grid .grid { display:grid; grid-template-columns:repeat(2, 1fr); max-width:1920px; margin:0 auto; }
section.section--grid .card { padding:100px 20px 80px 20px; display:block; }
section.section--grid .card__header { margin-bottom:50px; }
section.section--grid .card__title { font-size:48px; font-weight:700; text-align:center; line-height:1.1; padding-top:0; }
section.section--grid .card__title:before { display:none; }
section.section--grid .card__desc { font-size:24px; font-weight:700; text-align:center; line-height:1.35; margin-top:10px; }
section.section--grid .card.card--hours { background-color:#f0f0f0; }
section.section--grid .card.card--location { background-color:#f8f8f8; }
section.section--grid .card__content { max-width:710px; margin:0 auto; }

.card__content--hours { display:grid; grid-template-columns:repeat(1, 1fr); gap:10px; }
.card__content--hours .hours-item__section { background-color:#ffffff; border-radius:25px; }
.card__content--hours .hours__table { }
.hours__table { }
.hours__table-inner { padding:40px 42px; }
.hours__section { display:grid; grid-template-columns:160px 1fr; max-width:540px; }
.hours__section .hours__title { display:flex; align-items:center; justify-content:center; border-bottom:1px solid #e7e7e7; font-size:24px; font-weight:500; line-height:1.1; }
.hours__section .hours__items { display:grid; grid-template-columns:repeat(1, 1fr); gap:10px; padding:15px 30px; border-left:1px solid #e7e7e7; border-bottom:1px solid #e7e7e7; }
.hours__section:last-of-type .hours__title,
.hours__section:last-of-type .hours__items { border-bottom:0; }

.hours__section .hours__item { }
.hours__section .hours__item .hours__label { display:flex; align-items:center; gap:10px; }
.hours__section .hours__item .hours__label strong { display:flex; align-items:center; background-color:#a2a2a2; font-size:16px; padding:0 10px; border-radius:25px; height:30px; color:#fff; font-weight:400; }
.hours__section .hours__item .hours__label .hours__note { position:relative; font-size:16px; color:#ea5614; padding-left:15px; font-weight:700; letter-spacing:-1px; }
.hours__section .hours__item .hours__label .hours__note:before { content:"★"; position:absolute; left:0; top:4px; font-size:10px; vertical-align:middle; }

.hours__section .hours__item .hours__time { margin-top:5px; }
.hours__section .hours__item .hours__time p { display:flex; align-items:center; gap:10px; }
.hours__section .hours__item .hours__time span { display:flex; align-items:center; gap:10px; font-family: 'Montserrat', sans-serif; }
.hours__section .hours__item .hours__time small { font-size:24px; line-height:1.0; letter-spacing:-1px; }
.hours__section .hours__item .hours__time b { font-size:36px; line-height:1.0; font-weight:300; }
.hours__section .hours__item .hours__time span.hours__divider { font-size:30px; }

.hours__item--check { display:flex; align-items:flex-end;  gap:10px; }
.hours__item--check dl { }
.hours__item--check dt { font-size:16px; }
.hours__item--check dd { display:flex; align-items:center; gap:10px; font-family: 'Montserrat', sans-serif; }
.hours__item--check dd small { font-size:24px; line-height:1.0; letter-spacing:-1px; }
.hours__item--check dd b { font-size:36px; line-height:1.0; font-weight:300; }
.hours__item--check .hours__divider { font-size: 30px; }

.hours__contact { padding:40px 63px; }
.hours__contact .inner { position:relative; display:grid; grid-template-columns:repeat(1, 1fr); gap:15px; padding-left:60px; }
.hours__contact .inner:before { content:""; position:absolute; left:0; top:0; display:block; width:40px; height:40px; background-repeat:no-repeat; background-image: url('../img/icons/ic_tel.png'); background-size:100% auto; background-position:center; }
.hours__contact dl { display:flex; align-items:center; gap:5px; font-family: 'Montserrat', sans-serif; color:#ea5614; }
.hours__contact dt { font-size:20px; line-height:1.0; letter-spacing:-1px; }
.hours__contact dd { display:flex; align-items:center; gap:10px; font-size:36px; line-height:1.0; font-weight:300;  }
.hours__contact dd span { display:flex; align-items:center; gap:10px; }
.hours__contact dd small { font-size:24px; }
.hours__contact dd strong { font-weight:700; }

.hours__holiday { padding:40px 63px; }
.hours__holiday p { position:relative; padding-left:60px; font-size:20px; }
.hours__holiday p:before { content:""; position:absolute; left:0; top:-9px; display:block; width:37px; height:40px; background-repeat:no-repeat; background-image: url('../img/icons/ic_calendar.png'); background-size:100% auto; background-position:center; }

.card__map { height:460px; border-radius:25px; overflow:hidden; }
.card__map .root_daum_roughmap { width:calc(100% + 2px) !important; height:calc(100% + 2px) !important; margin:-1px;  }
.card__map .root_daum_roughmap .wrap_map { height:100% !important; }
.card__info { margin-top:40px; display:flex; justify-content:space-between; }
.card__info .card__address { text-align:left; position:relative; padding-left:10px; }
.card__info .card__address:before { content:""; position:absolute; left:0; top:3px; display:block; width:1px; height:42px; background-color:#111111; }
.card__info .card__address p.card__address-text { font-size:20px; color:#111; line-height:1.2; }
.card__info .card__address p.card__address-text b { font-weight:700; font-family: 'Montserrat', sans-serif; } 

.card__info .card__actions { display:flex; gap:10px; }
.card__info .card__actions .card__link { display:flex; align-items:center; justify-content:center; font-size:16px; width:150px; height:50px; border-radius:50px; color:#fff; }
.card__info .card__actions .card__link span { position:relative; display:inline-block; padding-right:45px; }
.card__info .card__actions .card__link span:after { content:""; position:absolute; right:0; top:2px; display:block; width:15px; height:19px; background-repeat:no-repeat; background-position:center; background-image:url('../img/icons/ic_place.png'); background-size:100% auto; } 
.card__info .card__actions .card__link.card__link--naver { background-color:#15c85f; }
.card__info .card__actions .card__link.card__link--kakao { background-color:#258fff; }


/* 9. partners 
* * * * * * * * * * * * * * * * * * * */
section.section--partners { padding:70px 20px; }
.partners__list { /* display:flex; align-items:center; justify-content:center; height:180px; gap:100px; */ display:block; max-width:1400px; margin:0 auto; }
.partners__list .partners__item { border:0; }
.partners__list .partners__link { }
.partners__list .swiper-slide { width:fit-content; }





/* popup */
.layer-popup { position: absolute; z-index: 1000; display: none; width: 380px;  }
.layer-popup .popup-content  { border-radius:25px; overflow:hidden; box-shadow: 0 4px 15px rgba(0,0,0,0.15); }
.layer-popup .popup-content img { width: 100%; height: auto; display: block; }
.layer-popup .popup-footer { display: flex; justify-content: space-between; align-items: center; color: #fff; font-size: 14px; margin-top:10px; }
.layer-popup .popup-footer label { cursor:pointer; }
.layer-popup .popup-footer input { -webkit-appearance: auto; appearance: auto; margin:0; margin-right:2px; vertical-align:middle; }


/* quick-mobile */
.quick-mobile { display:none; }
.quick-mobile__menu { display:grid; grid-template-columns:repeat(4, 1fr); border-bottom:1px solid #dddbda; }
.quick-mobile__item { border-right:1px solid #dddbda; font-size:1.229rem; text-align:center; }
.quick-mobile__link { display:flex; align-items:center; justify-content:center; height:7.8rem; cursor:pointer; background-repeat:no-repeat; background-position:center; background-size:100% auto; font-size:0; }
.quick-mobile .quick-mobile__link.quick__link--video { background-image:url('../img/common/beradel_video_m.png'); }
.quick-mobile .quick-mobile__link.quick__link--riding { background-image:url('../img/common/bnr_riding_reservation_m.png'); }
.quick-mobile .quick-mobile__link.quick__link--pension { background-image:url('../img/common/bnr_pension_reservation_m.png'); }
.quick-mobile .quick-mobile__link.quick__link--camping { background-image:url('../img/common/bnr_camping_reservation_m.png'); }



/* @media */
@media (max-width: 1550px) {
	.layer-popup { left: 50% !important; transform: translateX(-50%); }
}

@media (max-width: 1300px) {
	.section__content.program { grid-template-columns: repeat(1, 1fr); }
	.program__main .program__thumb { height:200px; }
	.program__main .program__thumb img { width:100%; height:100%; object-fit: cover; object-position: center; }
	.program__membership .program__membership-inner { background-size:cover; height: 500px; }

	.event-swiper .horse { left: -870px; height: 520px; background-size: auto 100%; background-position: center right; }

	.gallery__grid { grid-template-columns: 130px 130px 1fr 130px 130px; gap: 15px; }

	section.section--grid { background:none; background-color: #f0f0f0; }
	section.section--grid .grid { grid-template-columns: repeat(1, 1fr);  }
	
}

@media (max-width: 1000px) {
	.gallery__grid { grid-template-columns: 100px 100px 1fr 100px 100px; }
	.gallery__grid .gallery__item .img-box { border-radius:20px; }
	.gallery__grid .btn-view span { padding-right:25px; }
}

@media (max-width: 768px) {
	.site-header__user-btn { background-image: url('../img/icons/ic_user@2x.png'); }
	body.scroll .site-header .site-header__user-btn,
	.site-header:hover .site-header__user-btn { background-image: url('../img/icons/ic_user_bk@2x.png'); }

	.main-hero .main-hero__copy { }
	.main-hero .main-hero__copy .main-hero__subtitle { font-size:min(1.25rem, 28px); }
	.main-hero .main-hero__copy .main-hero__title { font-size:min(3.278rem, 70px); }
	.main-hero .main-hero__copy .main-hero__text { font-size:min(1.147rem, 22px); }
	.main-hero .main-hero__image-title { left:1rem; }
	.main-hero .main-hero__image-title .text-box em { font-size:min(0.9rem, 22px);  }
	.main-hero .main-hero__image-title .text-box span { font-size:min(0.75rem, 18px); }
	.main-hero__sky { width:min(5.2rem, 125px); height:min(5.2rem, 125px); }
	
	.progress { width: min(10.0rem, 165px); height:min(10.0rem, 165px); grid-template-columns: min(3.0rem, 50px) 1fr; }
	.progress .progress__title { font-size:min(0.75rem, 14px); }

	.main-hero .main-hero__scroll { padding-bottom: min(5.8rem, 145px); }
	.main-hero .main-hero__scroll span.text { font-size:min(0.75rem, 14px); }
	.main-hero .main-hero__scroll span.bar { height: min(5.0rem, 125px); }
	.main-hero .main-hero__scroll span.bar:before { max-height: 5.0rem; }

	.main-hero .slide-btn-wrap { bottom:min(13.0rem, 320px); }
	.main-hero .slide-btn-wrap .swiper-pagination { font-size:min(0.95rem, 18px); gap: min(0.7rem, 8px); width:auto; }
	
	.quick-mobile { display:block; }
	
	.mobile-only { display:block !important; }
	.mobile-only.title-hyphen { display:inline-block !important; }
	.web-only { display:none !important; }

	.section__inner { padding: min(4rem, 100px) min(1.2rem, 20px) min(5.5rem, 140px) min(1.2rem, 20px); }
	.section__header { margin-bottom:min(2.0rem, 70px); }
	.section__title { font-size: min(2.295rem, 48px); }
	
	.section__desc { font-size:min(1.147rem, 24px); margin-top:min(0.5rem, 10px); }

	section.section--premium { display:none; }
	section.section--premium-mobile { display:block; }
	
	.program__main { gap:1.0rem 1.5rem; }
	.program__main .program__thumb { height:7.0rem; border-radius: 25px; }
	.program__main .program__title { font-size: min(1.393rem, 30px); }
	.program__main .program__subtitle { font-size: min(1.065rem, 22px); }
	.program__main .program__text { font-size: min(0.901rem, 16px); }
	.program__main .program__text br { display:none; }

	.section__content.program { gap:min(3.0rem, 80px); }
	.program__membership .program__membership-inner { height:min(26.5rem, 500px); }
	.program__membership .program__membership-title { font-size: min(1.639rem, 36px); padding-top: min(2.5rem, 60px); }
	.program__membership .program__membership-title:before { width: min(2.2rem, 49px); height: min(1.6rem, 32px); background-image: url('../img/icons/ic_crown@2x.png'); }
	.program__membership .program__membership-title small { font-size: min(0.819rem, 16px); }
	.program__membership .program__membership-desc { font-size: min(0.983rem, 20px); }
	.program__membership .program__membership-brand { font-size: min(1.147rem, 24px); }

	section.section--stay .section__content { grid-template-columns: repeat(1, 1fr); gap:4.5rem; }
	.stay__item { padding:0 !important; }
	.stay__img { position:static; width:auto; height:18.5rem; margin:0 min(-1.2rem, -20px); }
	.stay__body { float:none !important; padding:0 !important; margin-top:1.5rem; }
	.stay__title { font-size: min(1.393rem, 30px); }
	.stay__text { font-size: min(0.901rem, 16px); margin-top: min(1.0rem, 10px); }
	.stay__actions { margin-top: min(1.0rem, 25px); }
	.stay__actions .btn-view { font-size: min(0.983rem, 20px); max-width: min(21.5rem, 463px); }

	section.section--event { overflow:hidden; }
	section.section--event .section__inner { padding: min(4rem, 100px) min(1.2rem, 20px) min(5.5rem, 140px) min(1.2rem, 20px); }
	.event-swiper .horse { background-image: url('../img/main/img-horse-full-m.png'); left:auto; right:min(-1.2rem, -20px); bottom:calc(2.4rem + 12px); height:auto; width:10.2rem; height:26.0rem; } 
	.event-swiper .swiper-pagination { margin-top:2.4rem; }
	.clubhouse__list .clubhouse__body { padding:1.5rem 1.0rem; }
	.clubhouse__list .clubhouse__title { font-size:min(1.475rem, 30px); margin-bottom:min(0.5rem, 10px); }
	.clubhouse__list .clubhouse__text { font-size:min(0.901rem, 16px); }
	.clubhouse__list .clubhouse__text br { display:none; }
	.clubhouse__list .clubhouse__actions { margin-top:3.7rem; }
	.clubhouse__list .clubhouse__actions .btn-more { width:min(8.4rem, 150px); height:min(3.0rem, 50px); font-size:min(0.983rem, 16px); }
	.clubhouse__list .clubhouse__actions .btn-more span { padding-right:min(2.8rem, 50px); }
	.clubhouse__list .clubhouse__actions .btn-more span:after { width:min(0.8rem, 18px); }
	.clubhouse__list .clubhouse__item { }
	.clubhouse__list .clubhouse__item:nth-child(1) { padding-top:0; }
	.clubhouse__list .clubhouse__item:nth-child(2) { padding-top:min(2.7rem, 90px); }
	.clubhouse__list .clubhouse__item:nth-child(3) { }
	.clubhouse__list .clubhouse__item:nth-child(4) { padding-top:min(2.7rem, 90px); }
	
	.gallery__actions { }
	.gallery__actions .btn-view { display:flex; align-items:center; justify-content:center; width:8.0rem; height:2.8rem; border:1px solid #eab334; color:#eab334; font-size:min(0.983rem, 16px); font-weight:600; font-family: 'Montserrat', sans-serif; border-radius:50px; background-color:#fff; transition: background-color 0.5s ease; margin:0 auto; margin-bottom:1.5rem; }
	.section--gallery .btn-view span { position:relative; padding-right:min(2.8rem, 50px); }
	.section--gallery .btn-view span:after { content:""; position:absolute; right:0; top:min(0.1rem, 5px); display:block; width:min(0.8rem, 18px); height:min(0.8rem, 15px); background-repeat:no-repeat; background-position:center; background-image:url('../img/icons/ic-btn-arrow.png'); background-size:100% auto; }
	.section--gallery .btn-view:hover { background-color:#eab334; color:#fff; }
	.section--gallery .btn-view:hover span:after { background-image:url('../img/icons/ic-btn-arrow-w.png'); }

	.gallery__grid { grid-template-columns:repeat(1, 1fr);  gap:0.8rem; }
	.gallery__grid .gallery__item { height:6.6rem; padding-top:0 !important; }
	.gallery__grid .gallery__item .img-box { }
	.gallery__grid .gallery__item.grid01 .img-box { width:15.0rem; margin:0 auto; }
	.gallery__grid .gallery__item.grid02 { display:grid; grid-template-columns:1.333fr 1fr; padding:0 1.0rem; gap:0.8rem; }
	.gallery__grid .gallery__item.grid03 { display:grid; grid-template-columns:1fr 1.333fr; padding:0 1.0rem;  gap:0.8rem; }
	.gallery__grid .gallery__item.grid04 .img-box { width:15.0rem; margin:0 auto; }
	.gallery__grid .gallery__video { }

	section.section--grid .grid { gap:0; }
	section.section--grid .card { padding: min(4rem, 100px) min(1.2rem, 20px) min(5.5rem, 140px) min(1.2rem, 20px); }
	section.section--grid .card__title { font-size: min(2.295rem, 48px); }
    section.section--grid .card__desc { font-size: min(1.147rem, 24px); margin-top: min(0.5rem, 10px); }

	.card__info { flex-direction: column; gap:1.0rem; margin-top: min(1.0rem, 40px); }
	.card__info .card__address:before { height:min(2.1rem, 50px); }
	.card__info .card__address p.card__address-text { font-size: min(0.983rem, 20px); }
	
	.hours__table-inner { padding:min(1.6rem, 40px) min(1.6rem, 42px); }
	.hours__section { grid-template-columns: min(6.0rem, 160px) 1fr; }
	.hours__section .hours__title { font-size : min(0.983rem, 24px); }
	.hours__section .hours__items { padding: min(0.4rem, 15px) min(0.5rem, 30px)  min(0.4rem, 15px) min(1.2rem, 30px); }
	.hours__section .hours__item .hours__label strong { font-size: min(0.819rem, 16px); height: min(2.0rem, 30px); }
	.hours__section .hours__item .hours__time small { font-size:  min(0.983rem, 24px); }
	.hours__section .hours__item .hours__time b { font-size: min(1.475rem, 36px); }
	.hours__section .hours__item .hours__time span.hours__divider { font-size: min(1.2rem, 30px); }
	.hours__section .hours__item .hours__label .hours__note { font-size: min(0.759rem, 16px); padding-left: min(0.75rem, 15px); }
	.hours__section .hours__item .hours__label .hours__note:before { top:0; }
	
	.hours__item--check {justify-content:flex-start; }
	.hours__item--check dt { font-size: min(0.819rem, 16px); justify-content: flex-start; }
	.hours__item--check dd { margin-top:0; }
	.hours__item--check dd small { font-size:  min(0.983rem, 24px); }
	.hours__item--check dd b { font-size: min(1.475rem, 36px);  }
	.hours__item--check .hours__divider { font-size: min(1.2rem, 30px); }
	
	.card__content--hours .hours-item__section { border-radius: 15px; }

	.hours__contact { padding: min(1.5rem, 40px) min(2.5rem, 63px); }
	.hours__contact .inner { padding-left:min(2.8rem, 60px); gap:0.1rem; }
	.hours__contact .inner:before { width:min(2.0rem, 40px); height:min(2.0rem, 40px); }
	.hours__contact dt { font-size: min(0.901rem, 20px); }
	.hours__contact dd { font-size: min(1.475rem, 36px); }
	.hours__contact dd small { font-size:  min(0.983rem, 24px); }

	.hours__holiday { padding: min(1.0rem, 40px) min(2.5rem, 63px); }
	.hours__holiday p { padding-left:min(2.8rem, 60px); font-size: min(0.983rem, 20px); }
	.hours__holiday p:before { width:min(1.80rem, 37px); height:min(2.0rem, 40px); top:max(-0.3rem, -9px); }

	.card__map { height: min(19.0rem, 460px); border-radius: 20px; }

	.card__info .card__actions .card__link { font-size:  min(0.983rem, 16px);  width: min(8.5rem, 150px); height: min(3.0rem, 50px); }
	.card__info .card__actions .card__link span { padding-right: min(2.0rem, 45px); }
	.card__info .card__actions .card__link span:after { top: min(0.0rem, 2px); width: min(1.1rem, 15px); height: min(1.6rem, 19px); }

	section.section--partners { padding: min(4.0rem, 70px) min(1.0rem, 20px); }
	.partners__list .swiper-slide img { height:1.7rem; width:auto; }
}
