/* ============================================
   TOUR DETAILS - MODERN REDESIGN OVERRIDE
   Version: 1.0
   ============================================ */

/* === GLOBAL OVERRIDES === */
.tours-detail {
    font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.tours-detail * {
    transition: none;
}

/* === SECTION 1: HEADER & IMAGE GALLERY === */
/* .tours-detail .section1 .title-container {
    padding: 24px 0 8px;
} */

.tours-detail .section1 .title-container h1 {
    font-size: 20px;
    font-weight: 500;
    color: #1a1a2e;
    letter-spacing: -0.5px;
    line-height: 1.35;
}

.tours-detail .ttl-name-en {
    font-size: 14px;
    color: #8b8b9e;
    margin-bottom: 12px;
    font-weight: 400;
}

/* Rating */
.tours-detail .rating-container {
    background: #f8f9fb;
    border-radius: 12px;
    padding: 8px 16px !important;
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    margin-bottom: 16px;
    width: 100%;
    max-width: 700px;
}

.tours-detail .rating-container img {
    width: 18px !important;
    height: 18px !important;
}

.tours-detail .rating-container span strong {
    color: #f59e0b;
    font-weight: 700;
}

/* Image Gallery */
.tours-detail .hotel-image-container {
    border-radius: 16px !important;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
    gap: 6px !important;
}

.tours-detail .hotel-image-container div:first-child {
    border-radius: 16px 0 0 16px !important;
    overflow: hidden;
}

.tours-detail .hotel-image-container div:first-child img {
    border-radius: 0 !important;
    transition: none;
    display: block;
}

.tours-detail .hotel-image-container div:first-child img:hover {
    transform: none !important;
}

.tours-detail .grid_2_2 {
    gap: 6px !important;
}

.tours-detail .grid_2_2 img,
.tours-detail .grid_2_2 .grid_2_2_sub img {
    border-radius: 0 !important;
    transition: none;
    display: block;
}

.tours-detail .grid_2_2 img:hover {
    transform: none !important;
}

.tours-detail .grid_2_2 > :nth-child(2) {
    border-radius: 0 16px 0 0 !important;
    overflow: hidden;
}

.tours-detail .grid_2_2 > :last-child,
.tours-detail .grid_2_2 .grid_2_2_sub {
    border-radius: 0 0 16px 0 !important;
    overflow: hidden;
}

/* View All Button */
.tours-detail .button-show-detail-image {
    background: rgba(0, 0, 0, 0.55) !important;
    backdrop-filter: blur(8px);
    border-radius: 0 0 16px 0 !important;
    transition: background 0.3s ease;
}

.tours-detail .button-show-detail-image:hover {
    background: rgba(0, 0, 0, 0.7) !important;
}

.tours-detail .button-show-detail-image span {
    font-weight: 500;
    font-size: 14px;
}

/* Product Card Labels */
.product-card-label-list .product-card-label {
    background-color: #6366f1 !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600;
    padding: 5px 12px !important;
    letter-spacing: 0.3px;
}

/* === SUB HEADER (Tab Navigation) === */
.tours-detail .sub-header-hotel-detail {
    background: #fff;
    border-bottom: 2px solid #f0f0f5;
    margin-top: 20px;
    position: sticky;
    top: 0;
    z-index: 100;
    padding: 0;
}

.tours-detail .sub-header-hotel-detail .main {
    display: flex;
    gap: 0;
    padding: 0;
}

.tours-detail .sub-header-hotel-detail .main a {
    padding: 16px 24px;
    font-size: 15px;
    font-weight: 600;
    color: #8b8b9e;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    transition: all 0.25s ease;
    white-space: nowrap;
}

.tours-detail .sub-header-hotel-detail .main a:hover {
    color: #4f46e5;
    background: #f8f7ff;
}

.tours-detail .sub-header-hotel-detail .main a.active {
    color: #4f46e5;
    border-bottom-color: #4f46e5;
    background: transparent;
}

/* === SECTION 2: BOOK NOW === */
.tours-detail .section2 {
    margin-top: 32px;
    padding: 0;
}

.tours-detail .title-sec2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    padding-bottom: 16px;
    border-bottom: 2px solid #f0f0f5;
    margin-bottom: 20px;
}

/* Date Header */
.sec2-date-main {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    border-radius: 12px !important;
    padding: 14px 20px !important;
    margin-bottom: 8px !important;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.25);
}

.sec2-date-main p {
    font-size: 12px;
    opacity: 0.85;
}

/* Tour Item Cards */
.sec2-item-wrap {
    margin-bottom: 16px;
}

.sec2-item-card .tour_calendar{
    background: #fff;
    border: 1px solid #e8e8f0;
    border-radius: 12px !important;
    padding: 20px 20px 95px 20px !important;
    margin-bottom: 8px;
    transition: all 0.25s ease;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}

.sec2-item-card:hover {
    border-color: #c7c5f0;
    box-shadow: 0 4px 16px rgba(79, 70, 229, 0.1);
}

.sec2-item-card.active {
    border-color: #4f46e5 !important;
    box-shadow: 0 4px 16px rgba(79, 70, 229, 0.15) !important;
    background: #fafaff;
}

/* Price Display */
.tours-detail .section2 .text-content-2 .ps-right {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #1a1a2e;
}

.price-sub .ps-left {
    font-size: 13px;
    color: #8b8b9e !important;
}

.price-sub del {
    font-size: 13px;
    color: #c0c0c0 !important;
}

/* Select Button */
.btn-ct-3 {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 10px 28px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.3);
    transition: all 0.25s ease !important;
}

.btn-ct-3:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(79, 70, 229, 0.4);
}

/* === CALENDAR === */
.tours-detail .container-calendar {
    background: #fff;
    border-radius: 16px !important;
    border: 1px solid #e8e8f0;
    padding: 24px !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
    margin-top: 16px;
}

.tours-detail .calendar-container {
    background: transparent !important;
}

.tours-detail .calendar-header {
    padding: 12px 0 16px !important;
}

.tours-detail .calendar-header span {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1a1a2e;
}

.tours-detail .btn-action-calendar {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fb;
    transition: all 0.2s ease;
}

.tours-detail .btn-action-calendar:hover {
    background: #e8e8f0;
}

.tours-detail .calendar-weekdays div {
    font-size: 13px !important;
    font-weight: 600;
    color: #8b8b9e;
    padding: 8px 0 !important;
}

.tours-detail .calendar-weekdays .text-red-cus {
    color: #ef4444 !important;
}

.tours-detail .calendar-weekdays .text-blue-cus {
    color: #3b82f6 !important;
}

.tours-detail .calendar-days .day {
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1a1a2e;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tours-detail .calendar-days .day:hover:not(.disabled) {
    background: #f0efff;
    color: #4f46e5;
}

.tours-detail .calendar-days .day.active {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    color: #fff !important;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.3);
}

.tours-detail .calendar-days .day.disabled {
    color: #d0d0d8 !important;
    background: transparent !important;
}

/* === QUANTITY SELECTOR === */
.tours-detail .calendar-right h3.title-right {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1a1a2e;
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #f0f0f5;
}

.tours-detail .quantity-container {
    background: #f8f9fb;
    border-radius: 12px !important;
    padding: 16px !important;
    margin-bottom: 10px !important;
}

.tours-detail .quantity-container .des {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #1a1a2e;
}

.tours-detail .quantity-container .price {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a1a2e;
}

.tours-detail .quantity-container .currency {
    font-size: 13px !important;
    color: #8b8b9e !important;
}

.tours-detail .quantity-selector {
    display: flex;
    align-items: center;
    gap: 0;
    background: #fff;
    border-radius: 10px;
    border: 1px solid #e0e0ea;
    overflow: hidden;
}

.tours-detail .quantity-selector button {
    width: 40px !important;
    height: 40px !important;
    border: none !important;
    background: #fff !important;
    font-size: 18px !important;
    font-weight: 600;
    color: #4f46e5;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tours-detail .quantity-selector button:hover:not(:disabled) {
    background: #f0efff !important;
}

.tours-detail .quantity-selector button:disabled {
    color: #d0d0d8 !important;
    cursor: not-allowed;
}

.tours-detail .quantity-selector .quantity {
    min-width: 40px;
    text-align: center;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #1a1a2e;
}

/* === TOTAL PRICE === */
.tours-detail .total-price-container,
.tours-detail .sec2-item-card .total-row {
    background: #f8f9fb;
    border-radius: 12px;
    padding: 16px 20px;
}

/* === CTA BUTTONS (Book Now / Add to Cart / Inquiry) === */
.tours-detail .primary-btn-calendar.tour {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    border: none !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 14px 32px !important;
    box-shadow: 0 4px 16px rgba(79, 70, 229, 0.35);
    transition: all 0.25s ease !important;
    color: #fff !important;
}

.tours-detail .primary-btn-calendar.tour:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(79, 70, 229, 0.45);
}

.tours-detail .primary-btn-calendar.btn-cart,
.tours-detail .primary-btn-calendar.btn-contact {
    background: #fff !important;
    border: 2px solid #e0e0ea !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    padding: 13px 28px !important;
    color: #4a4a5e !important;
    transition: all 0.25s ease !important;
}

.tours-detail .primary-btn-calendar.btn-cart:hover,
.tours-detail .primary-btn-calendar.btn-contact:hover {
    border-color: #4f46e5 !important;
    color: #4f46e5 !important;
    background: #fafaff !important;
}

/* === PRODUCT DESCRIPTION === */
.tours-detail .des-type {
    font-size: 15px;
    line-height: 1.8;
    color: #4a4a5e;
    padding: 16px 0;
}

.tours-detail .des-type img {
    border-radius: 12px;
    margin: 12px 0;
    max-width: 100%;
    height: auto;
    display: block;
}

/* Section Titles */
.tours-detail h2.title-sec2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin-top: 40px;
    padding-bottom: 14px;
    border-bottom: 2px solid #f0f0f5;
    display: flex;
    align-items: center;
}

/* Inclusions/Exclusions */
.tours-detail .tit-blue-type-2 {
    margin-top: 16px;
}

.tours-detail .tit-blue-type-2 .tit-blue {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-weight: 700;
    font-size: 16px;
}

/* Important Notes */
.tours-detail .text-note-red {
    color: #ef4444 !important;
    font-size: 13px !important;
    font-weight: 500;
}

/* === ITINERARY === */
.tours-detail .timetable_wrap {
    margin-top: 24px;
}

.tours-detail .fiex_nav {
    background: #f8f9fb;
    border-radius: 12px;
    padding: 8px;
    margin-bottom: 24px;
}

.tours-detail .fiex_nav ol {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}

.tours-detail .fiex_nav ol li a {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #8b8b9e;
    text-decoration: none;
    transition: all 0.2s ease;
}

.tours-detail .fiex_nav ol li a:hover {
    background: #e8e7f8;
    color: #4f46e5;
}

.tours-detail .fiex_nav ol li a.active {
    background: #4f46e5;
    color: #fff;
    box-shadow: 0 2px 8px rgba(79, 70, 229, 0.3);
}

/* Day Accordion */
.tours-detail .question_box {
    background: #f8f9fb;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    margin-bottom: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.tours-detail .question_box:hover {
    background: #f0efff;
    border-color: #c7c5f0;
}

.tours-detail .question_box.active {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
    color: #fff;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.25);
}

.tours-detail .question_box.active h3,
.tours-detail .question_box.active span,
.tours-detail .question_box.active p {
    color: #fff !important;
}

.tours-detail .question_box h3 {
    font-size: 16px;
    font-weight: 700;
    color: #1a1a2e;
}

/* Answer Box */
.tours-detail .answer_box {
    padding: 20px 0;
}

.tours-detail .view_info h4 {
    font-size: 17px;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 8px;
    line-height: 1.5;
}

.tours-detail .view_info p {
    font-size: 15px;
    color: #4a4a5e;
    line-height: 1.7;
}

/* Itinerary Images */
.tours-detail .view_card {
    margin: 16px 0;
}

.tours-detail .view_card .img_box {
    border-radius: 12px !important;
    overflow: hidden;
    position: relative;
}

.tours-detail .view_card .img_box > img {
    border-radius: 12px !important;
    transition: none !important;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.tours-detail .view_card .img_box:hover > img {
    transform: none !important;
}

.tours-detail .view_card .all_img {
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(6px);
    border-radius: 12px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.tours-detail .view_card .all_img:hover {
    background: rgba(0, 0, 0, 0.7);
}

/* Hotel & Meals Info */
.tours-detail .view_bot {
    background: #f8f9fb;
    border-radius: 12px;
    padding: 16px 20px;
    margin-top: 16px;
}

.tours-detail .view_bot .title_01 {
    font-weight: 700;
    color: #1a1a2e;
    font-size: 15px;
}

.tours-detail .view_bot .title_02 {
    color: #4a4a5e;
    font-size: 14px;
}

/* === PROVIDER INFO POPUP === */
.tours-detail .tour_type_group li a,
.tours-detail .btn_company_channel {
    background: #f8f9fb !important;
    border: 1px solid #e0e0ea !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #4a4a5e !important;
    transition: all 0.2s ease;
}

.tours-detail .tour_type_group li a:hover,
.tours-detail .btn_company_channel:hover {
    border-color: #4f46e5 !important;
    color: #4f46e5 !important;
    background: #fafaff !important;
}

/* === OPTION SELECT === */
.tours-detail .form-group-option select {
    border: 1px solid #e0e0ea !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    color: #1a1a2e;
    background: #fff;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238b8b9e' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    transition: all 0.2s ease;
}

.tours-detail .form-group-option select:focus {
    border-color: #4f46e5 !important;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
    outline: none;
}

/* Option List */
.tours-detail .list_schedule_ .schedule {
    background: #f8f9fb;
    border-radius: 10px;
    padding: 12px 16px;
    margin-top: 8px;
    border: 1px solid #e8e8f0;
}

/* === COUPON POPUP === */
.tours-detail #popup_coupon .popup-content {
    border-radius: 16px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
}

.tours-detail #popup_coupon .title-popup {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a2e;
}

.tours-detail #popup_coupon .item-price-popup {
    border-radius: 12px !important;
    border: 1px solid #e8e8f0;
    padding: 16px !important;
    margin-bottom: 8px;
    transition: all 0.2s ease;
}

.tours-detail #popup_coupon .item-price-popup:hover {
    border-color: #4f46e5;
    background: #fafaff;
}

/* === SCROLLBAR === */
.tours-detail ::-webkit-scrollbar {
    width: 6px;
}

.tours-detail ::-webkit-scrollbar-track {
    background: #f0f0f5;
    border-radius: 3px;
}

.tours-detail ::-webkit-scrollbar-thumb {
    background: #c7c5f0;
    border-radius: 3px;
}

.tours-detail ::-webkit-scrollbar-thumb:hover {
    background: #4f46e5;
}

/* === MOBILE RESPONSIVE === */
@media screen and (max-width: 850px) {
    .tours-detail .section1 .title-container h1 {
        font-size: 4rem;
        line-height: 1.3;
    }

    .tours-detail .hotel-image-container {
        border-radius: 12px !important;
    }

    .tours-detail .hotel-image-container div:first-child {
        border-radius: 12px 12px 0 0 !important;
    }

    .tours-detail .grid_2_2 > :nth-child(2) {
        border-radius: 0 !important;
    }

    .tours-detail .grid_2_2 > :last-child,
    .tours-detail .grid_2_2 .grid_2_2_sub {
        border-radius: 0 0 12px 12px !important;
    }

    .tours-detail .sub-header-hotel-detail {
        position: sticky;
        top: 0;
        z-index: 100;
        background: #fff;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .tours-detail .sub-header-hotel-detail .main {
        white-space: nowrap;
        padding: 0 4rem;
    }

    .tours-detail .sub-header-hotel-detail .main a {
        padding: 3rem 4rem;
        font-size: 3.2rem;
    }

    .sec2-date-main {
        border-radius: 2rem !important;
        padding: 3rem !important;
    }

    .sec2-item-card {
        border-radius: 2.4rem !important;
        padding: 4rem !important;
    }

    .btn-ct-3 {
        border-radius: 2rem !important;
        padding: 2.4rem 5rem !important;
        font-size: 3.4rem !important;
        width: 100%;
    }

    .tours-detail .container-calendar {
        border-radius: 3rem !important;
        padding: 4rem !important;
    }

    .tours-detail .quantity-container {
        border-radius: 2.4rem !important;
        padding: 3rem !important;
    }

    .tours-detail .quantity-selector button {
        width: 8rem !important;
        height: 8rem !important;
        font-size: 4rem !important;
    }

    .tours-detail h2.title-sec2 {
        font-size: 4.4rem !important;
        margin-top: 6rem;
    }

    .tours-detail .fiex_nav {
        border-radius: 2rem;
        padding: 1.5rem;
    }

    .tours-detail .fiex_nav ol li a {
        padding: 2rem 3rem;
        font-size: 3rem;
        border-radius: 1.5rem;
    }

    .tours-detail .question_box {
        border-radius: 2.4rem !important;
        padding: 3rem 4rem !important;
    }

    .tours-detail .view_card .img_box > img {
        border-radius: 2rem !important;
    }

    .tours-detail .view_bot {
        border-radius: 2.4rem;
        padding: 3rem 4rem;
    }

    .tours-detail .rating-container {
        border-radius: 2rem;
        padding: 1.5rem 3rem !important;
    }

    .tours-detail .des-type {
        font-size: 3.2rem;
        line-height: 1.7;
    }

    .tours-detail .calendar-days .day.active {
        border-radius: 1.5rem !important;
    }

    .tours-detail .form-group-option select {
        border-radius: 2rem !important;
        padding: 2.5rem 3rem !important;
        font-size: 3rem !important;
    }
}

/* === ANIMATION === */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(16px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.tours-detail .section2,
.tours-detail .des-type,
.tours-detail .timetable_wrap {
    animation: fadeInUp 0.5s ease forwards;
}

/* === PRINT STYLES === */
@media print {
    .tours-detail .sub-header-hotel-detail {
        position: static;
    }
    .tours-detail .primary-btn-calendar,
    .tours-detail .btn-ct-3 {
        display: none !important;
    }
}

/* === FIX: Nav tab styles for p.nav-item (medical/ticket/dining/k-goods pages) === */
.tours-detail .sub-header-hotel-detail .main p.nav-item {
    padding: 16px 24px;
    font-size: 15px;
    font-weight: 600;
    color: #8b8b9e;
    text-decoration: none;
    border-bottom: 3px solid transparent;
    white-space: nowrap;
    margin: 0;
    cursor: pointer;
}
.tours-detail .sub-header-hotel-detail .main p.nav-item:hover {
    color: #4f46e5;
    background: #f8f7ff;
}
.tours-detail .sub-header-hotel-detail .main p.nav-item.active {
    color: #4f46e5;
    border-bottom-color: #4f46e5;
    background: transparent;
}

/* === FIX: Nav-list display fix === */
.tours-detail .sub-header-hotel-detail .main.nav-list {
    display: flex;
    gap: 0;
    padding: 0;
}

/* === FIX: Calendar styling for spa/ticket/restaurant detail pages === */
.tours-detail.spa-detail .calendar {
    /* border: 1px solid #e8e8f0; */
    /* border-radius: 12px; */
    /* padding: 20px; */
    background: #fff;
    /* box-shadow: 0 1px 4px rgba(0,0,0,0.04); */
}
.tours-detail.spa-detail .calendar .header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 12px 0;
    margin-bottom: 8px;
}
.tours-detail.spa-detail .calendar .header p {
    font-size: 18px;
    font-weight: 700;
    color: #1a1a2e;
}
.tours-detail.spa-detail .calendar .canl_tabel .heading p {
    font-weight: 600;
    color: #8b8b9e;
    font-size: 13px;
}
.tours-detail.spa-detail .calendar .canl_tabel .body .day.active,
.tours-detail.spa-detail .calendar .sel_date.active_ {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    color: #fff !important;
    border-radius: 8px;
}

/* === FIX: Choose Option section styling === */
.tours-detail.spa-detail .section2 {
    margin-top: 24px;
}
.tours-detail.spa-detail .section2 .title-sec2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    padding-bottom: 12px;
    border-bottom: 2px solid #f0f0f5;
    margin-bottom: 16px;
}
.tours-detail.spa-detail .section2 table {
    width: 100%;
    border-collapse: collapse;
    /* border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e8e8f0; */
}
.tours-detail.spa-detail .section2 table th {
    background: transparent;
    color: #1a1a2e;
    font-weight: 600;
    font-size: 14px;
    padding: 14px 16px;
    text-align: center;
}
.tours-detail.spa-detail .section2 table td {
    padding: 14px 16px;
    font-size: 14px;
    border-bottom: 1px solid #f0f0f5;
    text-align: center;
}
.tours-detail.spa-detail .section2 table tr:hover td {
    background: #fafaff;
}

/* === FIX: Overview section styling === */
.tours-detail.spa-detail .section3 {
    margin-top: 32px;
}
.tours-detail.spa-detail .section3 h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    padding-bottom: 12px;
    border-bottom: 2px solid #f0f0f5;
    margin-bottom: 16px;
}
.tours-detail.spa-detail .section3 h3,
.tours-detail.spa-detail .section3 h2.title-sec3 {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #1a1a2e !important;
    margin-top: 24px;
    margin-bottom: 12px;
}

/* === FIX: Right sidebar payment area === */
.tours-detail.spa-detail ._wrap-payment {
    position: sticky;
    top: 80px;
}
.tours-detail.spa-detail ._wrap-payment .select_peo {
    /* background: #fff;
    border: 1px solid #e8e8f0;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04); */
}
.tours-detail.spa-detail ._wrap-payment .money_total {
    background: #fafaff;
    border-radius: 12px;
    padding: 16px 20px;
    margin-top: 12px;
}
.tours-detail.spa-detail ._wrap-payment .buy {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 14px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    width: 100%;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.3);
}
.tours-detail.spa-detail ._wrap-payment .btn-cart {
    background: #fff !important;
    color: #4f46e5 !important;
    border: 2px solid #4f46e5 !important;
    border-radius: 10px !important;
    padding: 14px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    width: 100%;
    cursor: pointer;
}
.tours-detail.spa-detail ._wrap-payment .qna_action_detail {
    background: #f8f7ff !important;
    color: #4f46e5 !important;
    border: 1px solid #e8e8f0 !important;
    border-radius: 10px !important;
    padding: 14px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    width: 100%;
    cursor: pointer;
}

/* === FIX: Comments section === */
.tours-detail.spa-detail .section8 {
    margin-top: 32px;
}
.tours-detail.spa-detail .section8 h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    padding-bottom: 12px;
    border-bottom: 2px solid #f0f0f5;
    margin-bottom: 16px;
}

/* === FIX: Right sidebar buttons (composition_inc.php) - tours-detail style === */
.tours-detail.spa-detail .view_nav .nav_btn_wrap .btn-point {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 12px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 50px !important;
    box-shadow: 0 4px 16px rgba(79, 70, 229, 0.35);
    margin-bottom: 10px;
}
.tours-detail.spa-detail .view_nav .nav_btn_wrap .btn-point:hover {
    box-shadow: 0 8px 24px rgba(79, 70, 229, 0.45);
}
.tours-detail.spa-detail .view_nav .nav_btn_wrap .cart,
.tours-detail.spa-detail .view_nav .nav_btn_wrap .btn-default.cart {
    background: #fff !important;
    color: #4a4a5e !important;
    border: 2px solid #e0e0ea !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 46px !important;
    margin-bottom: 10px;
}
.tours-detail.spa-detail .view_nav .nav_btn_wrap .cart:hover,
.tours-detail.spa-detail .view_nav .nav_btn_wrap .btn-default.cart:hover {
    border-color: #4f46e5 !important;
    color: #4f46e5 !important;
    background: #fafaff !important;
}
.tours-detail.spa-detail .view_nav .nav_btn_wrap .contact-button,
.tours-detail.spa-detail .view_nav .nav_btn_wrap .btn-default.contact-button {
    background: #fff !important;
    color: #4a4a5e !important;
    border: 2px solid #e0e0ea !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 46px !important;
}
.tours-detail.spa-detail .view_nav .nav_btn_wrap .contact-button:hover,
.tours-detail.spa-detail .view_nav .nav_btn_wrap .btn-default.contact-button:hover {
    border-color: #4f46e5 !important;
    color: #4f46e5 !important;
    background: #fafaff !important;
}

/* === FIX: Calendar overflow fix === */
.tours-detail.spa-detail .calendar-con {
    max-width: 100%;
    overflow: hidden;
}
.tours-detail.spa-detail .calendar {
    max-width: 100%;
    overflow: hidden;
}
.tours-detail.spa-detail .calendar .canl_tabel {
    max-width: 100%;
    overflow: hidden;
}
.tours-detail.spa-detail .calendar .canl_tabel .body {
    max-width: 100%;
}
.tours-detail.spa-detail .calendar .canl_tabel .body .day {
    min-width: 0;
    overflow: hidden;
}
