
.product-wrap .sec {padding:80px 0;}
.product-wrap .sec-head {margin-bottom:22px;}
.product-wrap .sec-head .sec-title {display:inline-flex;font-size:24px;font-weight:600;align-items:center;}
.product-wrap .sec-head .sec-title i {margin-right:10px;}
.product-wrap .sec-head .sec-title img {margin-right:10px;}

.product-wrap .product-banner {width:100%;}
.product-wrap .product-banner .swiper-pagination {left:50%;transform:translateX(-50%);bottom:20px;width:auto;background-color:#242424;border-radius:100px;padding:10px 16px;display:inline-flex;align-items:center;gap:7px;}
.product-wrap .product-banner .swiper-pagination-bullet {margin:0;background-color:#fff;opacity:1;width:5px;height:5px;border-radius:100px;transition:all .3s ease;}
.product-wrap .product-banner .swiper-pagination-bullet-active {width:48px;background-color:#5CC89C;}
.product-wrap .product-banner .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.product-wrap .product-banner .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {margin:0;}
.product-wrap .product-banner .swiper-button-next,
.product-wrap .product-banner .swiper-button-prev {color:#fff;}
.product-wrap .product-banner .swiper-button-prev {left:40px;}
.product-wrap .product-banner .swiper-button-next {right:40px;}
.product-wrap .product-banner .swiper-button-next:after,
.product-wrap .product-banner .swiper-button-prev:after {font-size:28px;}
.product-wrap .product-banner .swiper-slide img {width:100%;height:100%;object-fit:cover;}
.product-wrap .detail-header { margin-bottom: 40px; }
.product-wrap .detail-header .product-title {display:flex;align-items:center;margin-bottom:10px;}
.product-wrap .detail-header .product-title h2 {flex:1;font-size:24px;font-weight:600;}
.product-wrap .detail-header .product-btns {display:inline-flex;align-items:center;gap:10px;}
.product-wrap .detail-header .product-infomation {display:flex;align-items:start;gap:20px;}
.product-wrap .detail-header .product-description {color:#7F8894;line-height:1.4;flex:1;}
.product-wrap .detail-wrap {display:flex;gap:40px;align-items:start;}
.product-wrap .detail-wrap .detail-infomation {flex:1;min-width:0;}
.product-wrap .detail-wrap .btn-share {width:24px;height:24px;font-size:22px;color: #7F8894;}
.product-wrap .detail-wrap .btn-heart {width:24px;height:24px;font-size:22px;color:#7F8894;}
.product-wrap .detail-wrap .star {color:#7F8894;}
.product-wrap .detail-wrap .star i {color:#FACC15;}
.product-wrap .detail-wrap .detail-section {margin-bottom:40px;}
.product-wrap .detail-wrap .detail-section h3 {font-size:18px;font-weight:600;margin-bottom:16px;}
.product-wrap .detail-wrap .detail-section h3:before {content:'';display:inline-block;width:3px;height:18px;margin-right:10px;background:#5CC89C;vertical-align:-2px;}
.product-wrap .detail-wrap .includes {border-radius: 12px;border: 1px solid #F0F0F0;padding:20px;display:grid;grid-template-columns:repeat(2, 1fr);gap:15px;}
.product-wrap .detail-wrap .includes-item {display:inline-flex;align-items:center;}
.product-wrap .detail-wrap .includes-item i {color:#5CC89C;margin-right:10px;}
.product-wrap .detail-wrap .flight {display:flex;border-radius: 12px;border: 1px solid #F0F0F0;align-items:center;padding:15px 20px 15px 15px;margin-bottom:10px;}
.product-wrap .detail-wrap .flight:last-child {margin-bottom:0;}
.product-wrap .detail-wrap .flight .flight-name {flex:1;font-size:16px;font-weight:600;}
.product-wrap .detail-wrap .flight .flight-state {border-radius: 6px;background: #5CC89C;display:inline-block;color:#fff;padding:6px 9px;margin-right:12px;}
.product-wrap .detail-wrap .flight .flight-state.red {background-color:#FF6D6D;}
.product-wrap .detail-wrap .flight .flight-price .unit {color:#7F8894;font-weight:600;margin-right:4px;font-size:12px;vertical-align:baseline;}
.product-wrap .detail-wrap .flight .flight-price .price {font-size:16px;font-weight:600;color:#5CC89C;}
.product-wrap .detail-wrap .flight.disabled {background-color:#F9FAFB;}
.product-wrap .detail-wrap .flight.disabled .flight-name {color:#D2D2D2;}
.product-wrap .detail-wrap .flight.disabled .flight-price .unit {color: #d2d2d2;}
.product-wrap .detail-wrap .flight.disabled .flight-price .price {color:#D2D2D2;}
.product-wrap .detail-wrap .schedule {border-radius:12px;border: 1px solid #F0F0F0;width:100%;overflow: auto;}
.product-wrap .detail-wrap .schedule table {width:100%;border-collapse:collapse;border-spacing:0;}
.product-wrap .detail-wrap .schedule th,
.product-wrap .detail-wrap .schedule td {border: 1px solid #F0F0F0;text-align:center;padding:13px 14px;white-space: nowrap;font-size:13px;}
.product-wrap .detail-wrap .schedule thead th {background: #F9FAFB;font-weight:500;font-size:15px;border-top:0;}
.product-wrap .detail-wrap .schedule .column-gap {display:flex;flex-direction:column;align-items:center;gap:5px;}
.product-wrap .detail-wrap .schedule .ta-left {text-align:left;}
.product-wrap .detail-wrap .schedule .ta-left .column-gap {align-items:start;}
.product-wrap .detail-wrap .schedule .point {color:#5CC89C;}
.product-wrap .detail-wrap .schedule .fa-caret-down {color:#5CC89C;}
.product-wrap .detail-wrap .gallery {position: relative;}
.product-wrap .detail-wrap .gallery .swiper-slide {height:200px;border-radius: 12px;overflow:hidden;cursor:pointer;}
.product-wrap .detail-wrap .gallery .swiper-slide img {width:100%;height:100%;object-fit:cover;}
.product-wrap .detail-wrap .gallery .swiper-button-disabled {opacity:0;}
.product-wrap .detail-wrap .gallery .swiper-button-next {right:-17px;}
.product-wrap .detail-wrap .gallery .swiper-button-prev {left:-17px;}
.product-wrap .detail-wrap .gallery .swiper-button-next,
.product-wrap .detail-wrap .gallery .swiper-button-prev {display:inline-flex;width:34px;height:34px;border-radius:100px;overflow: hidden;background-color:#fff;box-shadow: 0.654px 0.654px 3.858px 0px rgba(0, 0, 0, 0.06);align-items:center;justify-content:center;top:50%;transform:translateY(-50%);margin-top:0;}
.product-wrap .detail-wrap .gallery .swiper-button-next:after,
.product-wrap .detail-wrap .gallery .swiper-button-prev:after {font-size:14px;color:#333D4B;}
.product-wrap .detail-wrap .detail-booking {width:450px;border-radius: 12px;border: 1px solid #F0F0F0;background: #FFF;box-shadow: 1px 1px 6.1px 0px rgba(139, 157, 181, 0.06);}
.product-wrap .detail-wrap .booking-form {padding:20px;}
.product-wrap .detail-wrap .booking-title {font-size:24px;font-weight:600;display:block;margin-bottom:16px;}
.product-wrap .detail-wrap .booking-admin {padding:20px;border-top:1px solid #F0F0F0;}
.product-wrap .detail-wrap .booking-admin .booking-title {font-size:18px;margin-bottom:12px;}
.product-wrap .detail-wrap .booking-calendar-top {display:flex;justify-content:space-between;align-items:center;padding:16px 20px;}
.product-wrap .detail-wrap .booking-calendar-top .month {font-size:18px;font-weight:600;}
.product-wrap .detail-wrap .booking-calendar-top .month-prev,
.product-wrap .detail-wrap .booking-calendar-top .month-next {color:#222;font-weight:600;}
.product-wrap .detail-wrap .booking-calendar {border-radius: 6px;border: 1px solid #F0F0F0;background: #FFF;margin-bottom:30px;}
.product-wrap .detail-wrap .booking-calendar table {width:100%;table-layout:fixed;border-collapse:collapse;}
.product-wrap .detail-wrap .booking-calendar thead th {font-size:15px;font-weight:500;color:#333D4B;padding:6px 0;}
.product-wrap .detail-wrap .booking-calendar thead th:nth-child(1) {color:#FF6D6D;}
.product-wrap .detail-wrap .booking-calendar thead th:nth-child(7) {color:#5CA2FF;}
.product-wrap .detail-wrap .booking-calendar table td {width:calc(100%/7);height:56px;}
.product-wrap .detail-wrap .booking-calendar table td .day-box {text-align:center;width:100%;height:100%;}
.product-wrap .detail-wrap .booking-calendar table td .day-box .day {display:inline-block;width:100%;color:#7F8894;}
.product-wrap .detail-wrap .booking-calendar table td .day-box .price {display:inline-block;width:100%;font-size:8px;color:#5CC89C;}
.product-wrap .detail-wrap .booking-calendar table td .day-box.active {border-radius: 6px;background: #5CC89C;}
.product-wrap .detail-wrap .booking-calendar table td .day-box.active .day {color:#fff;font-weight:600;}
.product-wrap .detail-wrap .booking-calendar table td .day-box.active .price {color:#fff;}
.product-wrap .detail-wrap .booking-calendar table td .day-box:disabled {background-color:#F9FAFB;}
.product-wrap .detail-wrap .booking-calendar table td .day-box:disabled .day,
.product-wrap .detail-wrap .booking-calendar table td .day-box:disabled .price {color:#D2D2D2 !important;}
.product-wrap .detail-wrap .booking-calendar table td:nth-child(7) .day-box .day {color:#5CA2FF;}
.product-wrap .detail-wrap .booking-calendar table td:nth-child(1) .day-box .day {color:#FF6D6D;}
.product-wrap .detail-wrap .form-row + .form-row {margin-top:26px;}
.product-wrap .detail-wrap .form-row .form-label {font-size:18px;font-weight:600;margin-bottom:10px;}
.product-wrap .detail-wrap .form-row .text-input {width:100%;border-radius: 6px;border: 1px solid #F0F0F0;height:44px;padding:0 14px;color:#333D4B;}
.product-wrap .detail-wrap .form-row .email {display:flex;gap:10px;align-items:center;}
.product-wrap .detail-wrap .form-row textarea {width:100%;border-radius: 6px;border: 1px solid #F0F0F0;padding:12px 14px;line-height:1.4;resize:none;overflow:auto;}
.product-wrap .detail-wrap .form-row textarea::placeholder {color: rgba(210, 210, 210, 0.82);}
.product-wrap .detail-wrap .agree li {margin-bottom:14px;}
.product-wrap .detail-wrap .agree li:last-child {margin-bottom:0;}
.product-wrap .detail-wrap .agree .checkbox .checkbox-inner {font-size:14px;}
.product-wrap .detail-wrap .agree .agree-title {display:flex;}
.product-wrap .detail-wrap .agree .agree-term {margin-top:10px;border-radius: 6px;border: 1px solid #F0F0F0;background: #F9FAFB;height:92px;overflow:auto;display:none;}
.product-wrap .detail-wrap .agree .agree-term p {font-size:12px;padding:12px;}
.product-wrap .detail-wrap .agree .agree-term.active {display:block;}
.product-wrap .detail-wrap .agree .agree-detail-toggle {color:#5CC89C;font-size: 15px;margin-left:8px;}
.product-wrap .detail-wrap .agree .agree-detail-toggle.active {transform:rotate(180deg);}
.product-wrap .detail-wrap .btn-apply {display:block;margin:20px 0 0;border-radius: 6px;background:#5CC89C;color:#fff;text-align:center;width:100%;height:46px;font-size:16px;font-weight:600;}
.product-wrap .detail-wrap .admin-info {color:#7F8894;font-size:16px;}
.product-wrap .detail-wrap .admin-info li {margin-bottom:10px;}
.product-wrap .detail-wrap .admin-info li:last-child {margin-bottom:0;}
.product-wrap .detail-wrap .admin-info li i {margin-right:6px;}

.product-wrap .sec.similar {background-color:#F9FAFB;}
.product-wrap .sec.similar .sec-head {text-align:center;}
.product-wrap .sec.similar .similar-list {position:relative;}
.product-wrap .sec.similar .similar-item {border-radius:6px;overflow:hidden;background-color:#fff;}
.product-wrap .sec.similar .similar-item .similar-thumb {height:148px;overflow:hidden;}
.product-wrap .sec.similar .similar-item .similar-thumb img {width:100%;height:100%;object-fit:cover;}
.product-wrap .sec.similar .similar-item .similar-contents {border:1px solid #f0f0f0;border-top:0;padding:14px;border-radius:0 0 6px 6px;}
.product-wrap .sec.similar .similar-item .similar-name {font-size:16px;font-weight:600;display:block;margin-bottom:6px;}
.product-wrap .sec.similar .similar-item .similar-date {color:#7F8894;display:block;margin-bottom:16px;}
.product-wrap .sec.similar .similar-item .similar-price {display:flex;justify-content:space-between;align-items:center;color:#5CC89C;font-weight:600;}
.product-wrap .sec.similar .similar-item .similar-detail-btn {display:block;margin-top:16px;width:100%;background-color:#2c2c2c;border-radius:6px;text-align:center;color:#fff;font-weight:500;padding:13px 0;}
.product-wrap .sec.similar .swiper-button-disabled {opacity:0;}
.product-wrap .sec.similar .swiper-button-next {right:-17px;}
.product-wrap .sec.similar .swiper-button-prev {left:-17px;}
.product-wrap .sec.similar .swiper-button-next,
.product-wrap .sec.similar .swiper-button-prev {display:inline-flex;width:34px;height:34px;border-radius:100px;overflow: hidden;background-color:#fff;box-shadow: 0.654px 0.654px 3.858px 0px rgba(0, 0, 0, 0.06);align-items:center;justify-content:center;top:50%;transform:translateY(-50%);margin-top:0;}
.product-wrap .sec.similar .swiper-button-next:after,
.product-wrap .sec.similar .swiper-button-prev:after {font-size:14px;color:#333D4B;}

@media screen and (max-width: 1461px) {
    .detail-wrap {padding:0 20px;}
}

/* 모바일 사이즈 (가로 767px 이하) */
@media screen and (max-width: 767px) {
    .product-wrap .sec {padding:40px 0;}
    .product-wrap .sec-head .sec-title {font-size:20px;}
    .product-wrap .sec-head .sec-title i {width:22px;}

    .product-wrap .product-banner .swiper-slide {height:200px;}
    .product-wrap .product-banner .swiper-pagination {bottom:12px;padding:7px 12px;gap:5px;}
    .product-wrap .product-banner .swiper-pagination-bullet {width:4px;height:4px;}
    .product-wrap .product-banner .swiper-pagination-bullet-active {width:34px;}
    .product-wrap .product-banner .swiper-button-next {right:15px;}
    .product-wrap .product-banner .swiper-button-prev {left:15px;}
    .product-wrap .product-banner .swiper-button-next:after,
    .product-wrap .product-banner .swiper-button-prev:after {font-size:20px;}
    .product-wrap .sec.detail {padding:0;}
    .product-wrap .detail-header {border-bottom:12px solid #F0F4FA;padding:20px;margin-bottom:0;}
    .product-wrap .detail-header .product-title h2 {font-size:18px;line-height:1.4;}
    .product-wrap .detail-header .product-description {font-size:12px;}
    .product-wrap .detail-header .product-infomation {flex-direction:column-reverse;gap:10px;}
    .product-wrap .detail-wrap {padding:0;display:flex;flex-direction:column;}
    .product-wrap .detail-wrap .detail-infomation {width: 100%;order:2;}
    .product-wrap .detail-wrap .detail-container {display:flex;flex-direction: column;padding:20px;}
    .product-wrap .detail-wrap .detail-booking {width:100%;border-radius:0;border:0;order:1;}
    .product-wrap .detail-wrap .includes {padding:15px;gap:16px;}
    .product-wrap .detail-wrap .includes-item {font-size:12px;}
    .product-wrap .detail-wrap .flight {padding:10px;flex-wrap:wrap;}
    .product-wrap .detail-wrap .flight .flight-state {font-size:12px;margin-right:6px;}
    .product-wrap .detail-wrap .flight .flight-name {font-size:14px;line-height:1.4;}
    .product-wrap .detail-wrap .flight .flight-price {width:100%;text-align:right;margin-top:14px;}
    .product-wrap .detail-wrap .flight .flight-price .price {font-size:13px;}
    .product-wrap .detail-wrap .schedule thead th {font-size:14px;}
    .product-wrap .detail-wrap .form-row + .form-row {margin-top:15px;}
    .product-wrap .detail-wrap .form-row .form-label {font-size:16px;margin-bottom:5px;}
    .product-wrap .detail-wrap .form-row .text-input {height:40px;}
    .product-wrap .detail-wrap .booking-title {font-size:18px;font-weight:600;margin-bottom:16px;}
    .product-wrap .detail-wrap .booking-title:before {content:'';display:inline-block;width:3px;height:18px;margin-right:10px;background:#5CC89C;vertical-align:-2px;}
    .product-wrap .detail-wrap .booking-admin .booking-title {font-size:16px;}
    .product-wrap .detail-wrap .booking-admin .booking-title:before {content:none;}
    .product-wrap .detail-wrap .btn-apply {margin:10px 0 0;}
    .product-wrap .detail-wrap .btn-apply.btnRequestShow {
        position: fixed;
        left: 0;
        margin: 20px;
        bottom: 58px;
        z-index: 12;
        width: calc(100% - 96px) !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    }
    .product-wrap .detail-wrap .admin-info {font-size:14px;}
    .product-wrap .detail-wrap .booking-calendar table td {height:48px;}

    .product-wrap .sec.similar {margin-top:40px;}

}

@media screen and (max-width: 560px) {
}