:root {
  
        --primary-color: #19a2a1;
        --font-family:"Open Sans", sans-serif;
        --secondary-color:#363739;
        --border_radius:5px;
    --text-primary-gray-300: #8B898C;
    --text-primary-gray-400: #5A5A5A;
    --text-primary-gray-500: #504F50;
    --text-primary-gray-600: #525252;
    --text-primary-gray-700: #1A191A;

    --success-green-500: #1BA452;
    --success-green-700: #1F8749;
    --success-green-600: #1CA973;
    --lavender-50: #F2ECF5;
    --room-badge-red: #E84316;
    --old-price-red: #C82325;
    --flashsale-yellow: #FFCB2F;
    --star-rating: #F3AB0F;
    --yellow-amber-400: #FFAE00;
    --caption-black: #1A1A1A;
    --deep-purple-700: #440059;
    /* new */
    --silver-badge: #D4DBE2;
    --gold-badge: #E0BD86;
    --platinum-badge: #626160;
    --diamond-badge: #617484;
    --orange:#FC7B26;
    --mint-green:#EFFFF5;
    --border-gray:#E7E7E7;
    --profile-tabs: #451E50;
    --title-red: #CA0003;
    /* new */
    --status-orc:#D67C1D;
    --status-red:#CA0003;
    font-family: "Open Sans", sans-serif;
 }
 
 body{
        font-family: var(--font-family), sans-serif;
        text-transform:capitalize;
 }
/* Cards container */
.containerar{
    margin:0px 25px 50px 25px;
}
.srh-dtl-crd-cards-container {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}

.srh-dtl-crd-card {
    /* min-width: 350px; */
    background: white;
    border-radius: var(--border_radius);
    overflow: hidden;
    transition: transform 0.2s;
    border: 1px solid rgba(0, 0, 0, 0.11);
    position: relative;

    flex: 0 0 calc(33.333% - 13.333px);     
    min-width: 300px; 


    min-width: auto;
    display: flex;
    flex-direction: column;
    }


.srh-dtl-crd-card:hover {
    transform: translateY(-2px);
}
.srh-dtl-crd_not_available{
    position: absolute;
    position: absolute;
    bottom: 0px;
    padding: 19px 0px;
    width: 100%;
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid #d2d2d2;
}
.srh-dtl-crd-unavailable-message{
    padding: 11px;
    background-color: #ddd;
    border-radius: var(--border_radius);
}
.srh-dtl-crd_not_available_div{
    margin-right: 32px;
}
/* Image carousel */
.srh-dtl-crd-image-container {
    position: relative;
    height: 200px;
    overflow: hidden;
}

.srh-dtl-crd-carousel {
    position: relative;
    width: 100%;
    height: 100%;
}

.srh-dtl-crd-carousel-slide {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}
.srh-dtl-crd-carousel-slide.non{
    filter: grayscale(100%) brightness(80%);
}
.srh-dtl-crd-shuttle.non{
   color:#7c7a7a;
   fill: #7c7a7a;
}
.srh-dtl-crd-shuttle.non svg{
    color:#7c7a7a;
   fill: #7c7a7a;
   margin-top: -3px;
}
.srh-dtl-crd-content.non{
    height:230px;
}
.srh-dtl-crd-more_info_div{
    margin-bottom: 10px;
}
.srh-dtl-crd-more_info{
    color:var(--primary-color);
    cursor: pointer;
}
.srh-dtl-crd-more_info.non{
}

.srh-dtl-crd-carousel-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.srh-dtl-crd-carousel-nav.prev {
    left: 10px;
}

.srh-dtl-crd-carousel-nav.next {
    right: 10px;
}

.srh-dtl-crd-carousel-indicators {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 4px;
}

.srh-dtl-crd-indicator {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    cursor: pointer;
}

.srh-dtl-crd-indicator.active {
    background: white;
}

.srh-dtl-crd-image-info {

    display: flex;
    gap: 10px;
    color: white;
    font-size: 12px;
}

.srh-dtl-crd-info-item-camera {

    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    gap: 4px;
    width: 63px;
    height: 32px;
    background: rgba(0, 0, 0, 0.4);
    border-radius: 0px 4px 0px 0px;
    color: white;
    font-size: 14px;


}

.srh-dtl-crd-info-item-area {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    gap: 4px;
    width: 88px;
    height: 28px;
    background: rgba(0, 0, 0, 0.4);
    border-radius: 4px 0px 0px 0px;
    color: white;
    font-size: 14px;

  
}

/* Card content */
.srh-dtl-crd-content {
    padding: 20px;

    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.srh-dtl-crd-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
    color: #333;
}

.srh-dtl-crd-shuttle {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #21A456;
    fill:#21A456;
    font-size: 14px;
    margin-bottom: 12px;
    height: 40px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.srh-dtl-crd-shuttle svg{
    color: #21A456;
    fill:#21A456;
    margin-top: -3px;
}

.srh-dtl-crd-room-info {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 8px;
    font-size: 14px;
    color: #666;
}

.srh-dtl-crd-room-info-item {
    display: flex;
    align-items: center;
    gap: 4px;
}

.srh-dtl-crd-availability {
    color: #e74c3c;
    font-size: 12px;
    font-weight: 500;
}

/* Policy sections */
.srh-dtl-crd-policy-section {
    margin-bottom: 5px;
    border-top: 1px solid #E7E7E7;
    padding-top: 10px;
    margin-top:5px;
}

.srh-dtl-crd-policy-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.srh-dtl-crd-policy-title {
    font-size: 14px;
    font-weight: 500;
    color: #333;
}

.srh-dtl-crd-policy-icon {
    color: #999;
    cursor: help;
}

.srh-dtl-crd-policy-options {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.srh-dtl-crd-policy-option {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}

.srh-dtl-crd-radio {
    width: 16px;
    height: 16px;
    border: 2px solid #5E3277;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
}

.srh-dtl-crd-radio.checked::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 8px;
    height: 8px;
    background: var(--primary-color);
    border-radius: 50%;
}

.srh-dtl-crd-option-price {
    margin-left: auto;
    color: #21A456;
    font-weight: 500;
}

/* Discount badges */
.srh-dtl-crd-discounts {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
    border-top: 1px solid #E7E7E7;
    padding-top: 10px;
}

.srh-dtl-crd-discount-badge {
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 500;
}

.srh-dtl-crd-discount-badge.member {
    background: var(--primary-color);
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 4px 7px;
    gap: 10px;
    width: 49%;
    height: 26px;
    border-radius: 4px;
    flex: none;
    order: 0;
    flex-grow: 0;

}

.srh-dtl-crd-discount-badge.offer {

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2px 7px;
    gap: 10px;
    width: 49%;
    height: 27px;
    background: #21A456;
    border-radius: 4px;
    color: #fff;
    flex: none;
    order: 1;
    flex-grow: 0;

}
.srh-dtl-crd-discount-badge.promo {

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2px 7px;
    gap: 10px;
    width: 49%;
    height: 27px;
    background: #4a21a4;
    border-radius: 4px;
    color: #fff;
    flex: none;
    order: 1;
    flex-grow: 0;

}

/* Pricing */
.srh-dtl-crd-pricing {
    height: 32px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
    align-items: flex-end;
    padding: 0px;
    gap: 10px;
    box-sizing: border-box;
    display: flex;
    justify-content: right;
    margin-bottom: 10px;
}

.srh-dtl-crd-original-price {
    color: #e74c3c;
    text-decoration: line-through;
    font-size: 16px;
    margin-bottom: 4px;
}

.srh-dtl-crd-current-price {
    font-size: 24px;
    font-weight: 700;
    color: #333;
}

.srh-dtl-crd-total-info {
    font-size: 12px;
    color: #666;
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0px 16px;
    gap: 10px;
    height: 21px;
    background: #E5E5E5;
    border-radius: 30px;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
    margin-bottom: 7px;
}

/* Reserve button */
.srh-dtl-crd-reserve-btn {
    width: 100%;
    padding: 14px;
    background: var(--primary-color);
    color: white;
    border: none;
    border-radius: var(--border_radius);
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s;
}

.srh-dtl-crd-reserve-btn:hover {
    background: var(--primary-color);
    color:#fff;
}

/* Responsive design */
@media (max-width: 768px) {


    .srh-dtl-crd-clear-all {
        margin-left: 0;
        text-align: center;
    }

    .srh-dtl-crd-cards-container {
        flex-direction: column;
    }

    .srh-dtl-crd-card {
        min-width: unset;
    }

    .srh-dtl-crd-room-info {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
}

@media (max-width: 480px) {


    .srh-dtl-crd-content {
        padding: 16px;
    }

    .srh-dtl-crd-title {
        font-size: 16px;
    }
}

.icn-flx-htl {
    display: flex;
    flex: 1;
    gap: 15px;
}

/* similar hotels */
.htl-dtl-slider {
    max-width: 1400px;
    margin: 0 auto;
    position: relative;
    background: white;
}

.htl-dtl-slider-header {
    padding: 20px 0px;
    font-size: 18px;
    font-weight: bold;
    color: #333;
    margin-top: 10px;
}

.htl-dtl-slider-container {
    position: relative;
    overflow: hidden;
}

.htl-dtl-slider-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
    gap: 15px;
    flex-direction: row;
    align-items: center;
    padding: 0px;
    gap: 24px;
    width: 1280px;
    height: auto;
    flex: none;
    order: 2;
    align-self: stretch;
    flex-grow: 0;

}

.htl-dtl-slider-item {
    min-width: calc(25% - 15px);
    flex-shrink: 0;
    position: relative;
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    display: flex;
    flex-direction: column;
    padding: 0px;
    isolation: isolate;
    height: auto;
    background: #FFFFFF;
    border: 1px solid #F2F2F2;
    box-shadow: 0px 1px 4px 1px rgba(240, 240, 240, 0.6);
    border-radius: 14px;
    flex: none;
    order: 0;
    flex-grow: 0;
}

.htl-dtl-hotel-card {
    position: relative;
    display: flex;
    flex-direction: column;
}

.htl-dtl-hotel-image {
    position: relative;
    height: 160px;
    overflow: hidden;
}

.htl-dtl-hotel-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.htl-dtl-discount-badge {
    color: white;
    font-size: 12px;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2px 8px;
    gap: 10px;
    position: absolute;
    width: 80px;
    right: 8px;
    top: 172px;
    bottom: 8px;
    background: var(--room-badge-red);
    border-radius: 4px;
    flex: none;
    order: 0;
    flex-grow: 0;
    z-index: 0;
}

.htl-dtl-favorite-btn {
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 15px 18px;
    gap: 7.5px;
    isolation: isolate;
    position: absolute;
    width: 36px;
    height: 36px;
    right: 12px;
    top: 12px;
    background: #FFFFFF;
    box-shadow: 0px 3.75px 7.5px rgba(0, 0, 0, 0.05), 0px 11.25px 22.5px rgba(0, 0, 0, 0.05), 0px 22.5px 45px rgba(0, 0, 0, 0.1);
    border-radius: 69.75px;
    flex: none;
    order: 2;
    flex-grow: 0;
    z-index: 2;
}

.htl-dtl-favorite-btn:hover {
    background: white;
    transform: scale(1.1);
}

.htl-dtl-hotel-info {
    padding: 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.htl-dtl-hotel-name {
    font-weight: bold;
    font-size: 14px;
    color: #333;
    margin-bottom: 4px;
    display: flex;
    gap: 7px;
}

.htl-dtl-hotel-location {
    font-size: 12px;
    color: var(--text-primary-gray-500);
    margin-bottom: 8px;
}

.htl-dtl-rating-section {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.htl-dtl-rating-badge {
    background: #4a90e2;
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: bold;
}

.htl-dtl-rating-text {
    font-size: 12px;
    color: #333;
    font-weight: 600;
}

.htl-dtl-rating-count {
    font-size: 11px;
    color: #666;
}

.htl-dtl-price-section {
    margin-top: auto;
    border-top: 1px solid #E7E7E7;
    padding-top: 10px;
}

.htl-dtl-price-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

.htl-dtl-original-price {
    text-decoration: line-through;
    color: #999;
    font-size: 12px;
}

.htl-dtl-current-price {
    font-size: 16px;
    font-weight: bold;
    color: #333;
}

.htl-dtl-price-label {
    font-size: 11px;
    color: #666;
}

.htl-dtl-savings-badge {
    background: #27ae60;
    color: white;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 10px;
    font-weight: bold;
}

.htl-dtl-navigation {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
}

.htl-dtl-navigation:hover {
    background: white;
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.htl-dtl-prev {
    left: 10px;
}

.htl-dtl-next {
    right: 10px;
}

.htl-dtl-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding: 20px;
    background: white;
}

.htl-dtl-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ddd;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.htl-dtl-dot.active {
    background: #4a90e2;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .htl-dtl-slider-item {
        min-width: calc(29% - 70px);
    }



    .htl-dtl-hotel-image {
        height: 140px;
    }

    .htl-dtl-navigation {
        width: 36px;
        height: 36px;
    }
}

@media (max-width: 480px) {
    .htl-dtl-slider-item {
        min-width: calc(100% - 30px);
    }


    .htl-dtl-slider-header {
        padding: 15px;
        font-size: 16px;
    }
}

@media (max-width: 320px) {
    .htl-dtl-hotel-card {
        height: 240px;
    }

    .htl-dtl-hotel-image {
        height: 120px;
    }
}

.htl-dtl-hotel-image {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 0px;
    isolation: isolate;
    width: 301px;
    height: 202px;
    flex: none;
    order: 0;
    flex-grow: 0;
    z-index: 0;
}

/* map section hotel */

.htl-dtl-review-container {
    max-width: 1400px;
    margin: 0 auto;
    background: white;
    border-radius: 12px;
    overflow: hidden;
}

/* .htl-dtl-review-header {
    padding: 32px;
} */

.htl-dtl-review-title {
    font-size: 22px;
    font-weight: 600;
    color: #333;
    margin-bottom: 32px;
}

.htl-dtl-review-main-content {
    display: flex;
    gap: 48px;
    align-items: flex-start;
}

/* Left side - Score and Ratings */
.htl-dtl-review-left-section {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
    gap: 28px;
    width: 400px;
    height: 490px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 4px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
}

.htl-dtl-review-score-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.htl-dtl-review-score {
    /* Frame 2147227078 */

    /* Auto layout */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 8.57143px;
    gap: 8.57px;

    width: 49.14px;
    height: 48px;

    background: var(--primary-color);
    border-radius: 6.85714px 6.85714px 1.71429px 6.85714px;
    color: #fff;
    /* Inside auto layout */
    flex: none;
    order: 0;
    flex-grow: 0;

}

.htl-dtl-review-score-label {
    font-weight: 600;
    color: #333;
    font-size: 16px;
    margin-bottom: 4px;
}

.htl-dtl-review-score-count {
    font-size: 14px;
    color: #666;
}

.htl-dtl-review-ratings {
    width: 100%;
    gap: 10px;
    display: grid;
}

.htl-dtl-review-rating-item {
    display: block;
    margin-bottom: 16px;
}

.htl-dtl-review-rating-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.htl-dtl-review-rating-label {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

.htl-dtl-review-rating-item:last-child {
    margin-bottom: 0;
}

.htl-dtl-review-rating-score {
    font-size: 14px;
    color: #666;
    font-weight: 500;
    text-align: right;
    min-width: 30px;
}


.htl-dtl-review-rating-bar {
    flex: 1;
    height: 8px;
    background: #e0e0e0;
    border-radius: 4px;
    overflow: hidden;
    width: 100%;
}

.htl-dtl-review-rating-fill {
    height: 100%;
    background: var(--primary-color);
    border-radius: 4px;
    transition: width 0.4s ease;
}



/* Right side - Reviews */
.htl-dtl-review-right-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.htl-dtl-review-comment {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px 0px 16px;
    width: 100%;
    background: #FFFFFF;
    border-bottom: 1px solid #E7E7E7;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.htl-dtl-review-comment-header {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
}

.htl-dtl-review-avatar {
    /* Frame 2147227078 */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 6px;
    gap: 10px;
    width: 38px;
    height: 40px;
    background: var(--primary-color);
    border-radius: 8px 8px 2px 8px;
    flex: none;
    order: 0;
    flex-grow: 0;
    color: white;
    font-weight: bold;
    font-size: 16px;
}

.htl-dtl-review-comment-info {
    flex: 1;
    min-width: 0;
}

.htl-dtl-review-comment-name {
    font-weight: 600;
    color: #333;
    font-size: 15px;
    margin-bottom: 4px;
}

.htl-dtl-review-comment-meta {
    font-size: 12px;
    color: #666;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.htl-dtl-review-comment-text {
    color: #555;
    line-height: 1.6;
    font-size: 14px;
}

.htl-dtl-review-read-more {
    color: var(--primary-color);
    cursor: pointer;
    font-size: 14px;
    margin-left: 4px;
    font-weight: 400;
}

.htl-dtl-review-read-all {
    width: 100%;
    margin-top: 8px;
}

.htl-dtl-review-read-all-btn {
    width: 100%;
    background: transparent;
    padding: 14px 24px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
    border: 1px solid #525252;
    color: #5E3277;
}

.htl-dtl-review-read-all-btn:hover {
    background: var(--primary-color);
    color: white;
}

/* Mobile Responsive */
@media (max-width: 768px) {

    .htl-dtl-map-container {

        padding: 35px 0px 24px;
    }

    .htl-dtl-review-title {
        font-size: 20px;
        margin-bottom: 24px;
    }

    .htl-dtl-review-main-content {
        flex-direction: column;
        gap: 24px;
    }

    .htl-dtl-review-left-section {
        min-width: auto;
        width: 100%;
    }

    .htl-dtl-review-score {
        font-size: 28px;
        padding: 14px 20px;
    }

    .htl-dtl-review-rating-bar {
        max-width: none;
    }

    .htl-dtl-review-comment {
        padding: 16px;
    }

    .htl-dtl-review-avatar {
        width: 36px;
        height: 38px;
        font-size: 14px;
    }


}

@media (max-width: 480px) {
    .htl-dtl-review-header {
        padding: 20px 16px;
    }

    .htl-dtl-review-rating-item {
        flex-wrap: wrap;
        gap: 12px;
    }

    .htl-dtl-review-rating-label {
        min-width: 100%;
        order: 1;
    }

    .htl-dtl-review-rating-bar {
        order: 2;
        flex: 1;
    }

    .htl-dtl-review-rating-score {
        order: 3;
        min-width: auto;
    }

    .htl-dtl-review-comment-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .htl-dtl-review-comment {
        padding: 14px;
    }

    .htl-dtl-review-read-all-btn {
        padding: 12px 20px;
        font-size: 14px;
    }
}

.flag-logo {

    width: 20px;
    height: 12px;
    flex: none;
    order: 0;
    flex-grow: 0;

}

.htl-dtl-review-avatar-ash {
    background-color: #8D8D8D;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 6px;
    gap: 10px;
    width: 38px;
    height: 40px;
    border-radius: 8px 8px 2px 8px;
    flex: none;
    order: 0;
    flex-grow: 0;
    color: white;
    font-weight: bold;
    font-size: 16px;
}

/* hotel details maps */
.htl-dtl-map-container {
    max-width: 1400px;
    margin: 0 auto;
    background: white;
    border-radius: 4px;
    overflow: hidden;
    padding: 48px 0px 24px;
}

.htl-dtl-map-header {
    padding: 15px 20px;
    background: white;
    border-bottom: 1px solid #e0e0e0;
    font-size: 16px;
    font-weight: 600;
    color: #333;
}

.htl-dtl-map-main-content {
    display: flex;
    flex-direction: row;
    padding: 12px;
    gap: 24px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 4px;
    flex: none;
    order: 0;
    flex-grow: 1;
}

.htl-dtl-map-map-section {
    flex: 1;
    position: relative;
    min-height: 350px;
}

.htl-dtl-map-map-area {
    width: 100%;
    height: 90%;
    position: relative;
    overflow: hidden;
}

/* Map roads/lines */
.htl-dtl-map-road-line {
    position: absolute;
    background: #ccc;
}

.htl-dtl-map-road-horizontal {
    width: 90%;
    height: 2px;
    top: 65%;
    left: 5%;
}

.htl-dtl-map-road-vertical {
    width: 2px;
    height: 80%;
    top: 10%;
    left: 55%;
}

.htl-dtl-map-road-diagonal {
    width: 70%;
    height: 2px;
    top: 35%;
    left: 15%;
    transform: rotate(-25deg);
}

.htl-dtl-map-road-curve {
    width: 50%;
    height: 2px;
    top: 50%;
    right: 10%;
    transform: rotate(45deg);
}

/* Map marker */
.htl-dtl-map-marker {
    /* Frame 2147227380 */

    position: absolute;
    width: 49px;
    height: 62px;
    left: 292px;
    top: 202px;


}

.htl-dtl-map-marker::after {
    content: '';
    position: absolute;
    top: 6px;
    left: 6px;
    width: 12px;
    height: 12px;
    background: white;
    border-radius: 50%;
}

.htl-dtl-map-info-section {
    flex: 1;
    padding: 20px;
    background: white;
}

.htl-dtl-map-about-section {
    margin-bottom: 30px;
}

.htl-dtl-map-section-title {
    margin-bottom: 12px;
    font-weight: 600;
    font-size: 18px;
    line-height: 27px;
    display: flex;
    align-items: center;
    color: var(--caption-black);
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.htl-dtl-map-about-text {
    width: 616px;
    height: 60px;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #1A1A1A;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;

}

.htl-dtl-map-attractions-section {
    margin-bottom: 20px;
}

.htl-dtl-map-attractions-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.htl-dtl-map-attraction-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
}

.htl-dtl-map-attraction-icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}


.htl-dtl-map-attraction-text {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.htl-dtl-map-attraction-name {
    font-size: 13px;
    color: #333;
    line-height: 1.3;
}



.htl-dtl-map-address-section {
    padding: 15px 0px;
    gap: 8px;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #000000;
    flex: none;
    order: 1;
    flex-grow: 1;

}

.htl-dtl-map-location-pin {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.htl-dtl-map-address-text {
    font-size: 13px;
    color: #555;
    font-weight: 500;
}

/* Mobile Responsive */
@media (max-width: 768px) {

    .htl-dtl-map-main-content {
        flex-direction: column;
    }

    .htl-dtl-map-map-section {
        flex: none;
        height: 250px;
        border-right: none;
        border-bottom: 1px solid #e0e0e0;
    }

    .htl-dtl-map-info-section {
        padding: 15px;
    }

    .htl-dtl-map-about-section {
        margin-bottom: 25px;
    }

    .htl-dtl-map-section-title {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .htl-dtl-map-about-text {
        font-size: 12px;
    }

    .htl-dtl-map-attraction-name {
        font-size: 12px;
    }


    .htl-dtl-map-address-section {
        padding: 12px 15px;
    }

    .htl-dtl-map-address-text {
        font-size: 12px;
    }
}

@media (max-width: 480px) {


    .htl-dtl-map-header {
        padding: 12px 15px;
        font-size: 15px;
    }

    .htl-dtl-map-map-section {
        height: 200px;
    }

    .htl-dtl-map-info-section {
        padding: 12px;
    }

    .htl-dtl-map-attraction-row {
        gap: 8px;
    }

    .htl-dtl-map-address-section {
        padding: 10px 12px;
        flex-wrap: wrap;
    }
}

.htl-dtl-map-roads {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    box-sizing: border-box;
    width: 616px;
    height: 466px;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.04)), 
    /* url(.png), */
     #FFFFFF;
    border-radius: 4px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 1;

}

.htl-dtl-map-marker {
    position: absolute;
    z-index: 2;
}

.srh-dtl-crd-option-price-blk {
    margin-left: auto;
    font-weight: 500;
}

/* hotel detaile pay now button content */
/* ************ */
.htl-tab-2-container {
    display: flex;
    max-width: 1400px;
    /* margin: 20px auto; */
    gap: 20px;
    padding: 0 20px;
}

.htl-tab-2-left-panel {
    flex: 1;
    min-width: 0;
}

.htl-tab-2-right-panel {
    width: 500px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;
    gap: 12px;

    border-radius: 8px;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.htl-tab-2-card {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
    margin-top: 25px;
}

.htl-tab-2-card-header {
    padding: 20px 20px 10px 20px;
    border-bottom: 1px solid #e5e5e5;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.htl-tab-2-card-title {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
}

.htl-tab-2-radio-group {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

.d-block {
    display: block;
}

.htl-tab-2-form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.htl-tab-2-form-group {
    flex: 1;
    display: flex;
    flex-direction: column;
    /* stack input + helper text */
}

.htl-tab-2-input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid rgba(69, 69, 69, 0.45);
    border-radius: 8px;
    font-size: 14px;
    color: #333;
}

.htl-tab-2-helper {
    font-size: 12px;
    color: var(--text-primary-gray-600);
    margin-top: 6px;
}

.htl-tab-2-phone-group {
    display: flex;
    flex-direction: column;
    /* so helper stays below */
}

.htl-tab-2-radio-option {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 10px 12px;
    gap: 12px;
    width: 180px;
    height: 40px;
    background: #FFFFFF;
    border: 1px solid rgba(69, 69, 69, 0.45);
    border-radius: 8px;
    flex: none;
    order: 1;
    flex-grow: 1;
    font-size: 14px;
}



.htl-tab-2-radio-option.active {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 10px 12px;
    gap: 12px;
    width: 201px;
    height: 40px;
    background: rgba(203, 113, 255, 0.06);
    border: 1px solid rgba(105, 0, 165, 0.83);
    border-radius: 8px;
    flex: none;
    order: 0;
    flex-grow: 1;
}

.htl-tab-2-radio-option:has(input[type="radio"]:checked) {
    background: rgba(203, 113, 255, 0.06);
    border: 1px solid rgba(105, 0, 165, 0.83);
}

.htl-tab-2-radio {
    accent-color: #5E3277;
}

.htl-tab-2-radio {
    width: 16px;
    height: 16px;
}

.htl-tab-2-form-section {
    padding: 20px;
}

.htl-tab-2-form-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
}

.htl-tab-2-form-group {
    flex: 1;
    min-width: 0;

}

.htl-tab-2-label {
    display: block;
    font-size: 12px;
    color: #666;
    margin-bottom: 5px;
    font-weight: 500;
}

.htl-tab-2-input {
    width: 100%;
    padding: 12px;
    border: 1px solid #00000040;
    border-radius: 8px;
    font-size: 14px;
    height: 44px;
    order: 0;
    align-self: stretch;
    flex-grow: 1;
    z-index: 0;
}

.htl-tab-2-phone-group {
    display: flex;
}

.htl-tab-2-country-code {
    width: 95px;
    flex-shrink: 0;
}

.htl-tab-2-checkbox-group {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 15px;
    font-size: 12px;
    color: var(--text-primary-gray-700);
}

.htl-tab-2-checkbox {
    margin-top: 2px;
    background: var(--primary-color);
}

.htl-tab-2-room-header {
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
}

.htl-tab-crd {
    justify-content: space-between;
    margin-bottom: 10px;
}

.htl-tab-2-room-number {
    font-weight: 600;
    color: #333;
}

.htl-tab-2-expand-btn {
    background: none;
    border: none;
    font-size: 18px;
    cursor: pointer;
    color: #666;
}

.htl-crd-bg {
    background-color: #F8F8F9;
    padding: 12px;
    border-radius: 7px;
}

.htl-tab-2-room-content {
    padding: 20px;
}

.htl-tab-2-room-type {
    display: flex;
    align-items: center;
    gap: 15px;

}

.htl-tab-2-room-image {
    /* Frame 2147227073 */

    width: 60px;
    height: 60px;
    border-radius: 6px;

    flex: none;
    order: 0;
    flex-grow: 0;

}

.htl-tab-2-room-info h4 {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 2px;
}

.pay-nw-jr {
    font-size: 12px;
    color: var(--text-primary-gray-300);
}

.litle-pay-nw {
    font-size: 12px;
    color: var(--text-primary-gray-500);
}

.htl-tab-2-guest-details {
    margin-bottom: 20px;
}

.htl-tab-2-guest-input {
    margin-bottom: 10px;
}

.htl-tab-2-pricing-row {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0px;
    gap: 2px;

    background: #FFFFFF;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
    color: var(--text-primary-gray-400);
    font-size: 12px;

}

.htl-tab-pd {
    padding: 0px 20px;
}

.htl-tab-2-pricing-row.total {
    margin-top: 10px;
    padding-top: 15px;
    font-weight: 600;
    font-size: 16px;
}

.htl-tab-2-booking-summary {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.htl-tab-2-summary-header {
    padding: 20px;
    border-bottom: 1px solid #e5e5e5;
}

.htl-tab-2-hotel-info {
    display: flex;
    gap: 15px;
}

.htl-tab-2-hotel-image {
    width: 90px;
    height: 90px;
    border-radius: 6px;
    flex: none;
    order: 0;
    flex-grow: 0;

}

.g-5 {
    gap: 5px;
}

.htl-tab-2-hotel-details h3 {
    width: 194px;
    height: 20px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    letter-spacing: 0.01em;
    color: #000000;
    flex: none;
    order: 0;
    flex-grow: 0;

}

.htl-tab-2-hotel-details p {
    font-size: 12px;
    color: #666;
    margin-bottom: 2px;
}

.htl-tab-2-stars {
    color: #ffa500;
    font-size: 12px;
    align-items: center;
    display: flex;
}

.det-top-htl-location {
    font-size: 12px;
    color: #666;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}

.htl-tab-2-rating {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-top: 4px;
}

.htl-tab-2-rating-score {
    background: #4CAF50;
    color: white;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}

.htl-tab-2-rating-text {
    font-size: 11px;
    color: #666;
}

.htl-tab-2-date-info {

    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 70px;
    border-bottom: 1px solid #E7E7E7;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
    padding: 20px;
}

.htl-tab-2-date-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;

    flex: none;
    order: 0;
    flex-grow: 1;

}

.line-bar {
    width: 50px;
    height: 1px;
    background-color: #E7E7E7;
    margin: 15px 0;
}

.htl-tab-2-date-row-cntr {
    box-sizing: border-box;
    width: 100px;
    height: 37px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 4px;
    flex: none;
    flex-grow: 0;
    justify-content: center;
    display: flex;
    align-items: center;
}

.booking-for {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 12px 0px;
    width: 482px;
    height: 44px;
    border-bottom: 1px solid #E7E7E7;
    flex: none;
    order: 2;
    align-self: stretch;
    flex-grow: 0;
    font-size: 14px;
    text-align: center;
    padding: 20px;
}

.htl-tab-2-date-row-lft {
    display: flex;
    flex-direction: column;
    align-items: end;
    padding: 0px;
    width: 85px;
    height: 58px;
    flex: none;
    order: 4;
    flex-grow: 1;

}

.htl-tab-2-date-row:last-child {
    margin-bottom: 0;
}

.htl-tab-2-date-label {
    font-size: 12px;
    color: #737373;
}

.htl-tab-2-date-value {
    font-size: 12px;
    font-weight: 600;
    color: #333;
}

.htl-tab-2-room-summary {
    padding: 20px;
    border-bottom: 1px solid #e5e5e5;
}

.htl-tab-2-room-summary-title {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
}

.htl-tab-2-room-item {
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 14px;
    display: flex;
}

.htl-rm-nm {
    font-weight: 600;
}

.htl-room-wid {
    width: 115px;
}

.htl-tab-2-room-icon {
    width: 16px;
    height: 16px;
    border-radius: 2px;
}

.htl-tab-2-cancellation {
    color: #4CAF50;
    font-weight: 500;
}

.htl-tab-2-upgrade-banner {
    background: var(--deep-purple-700);
    color: white;
    border-radius: 8px;
    margin: 20px;
}

.htl-tab-2-upgrade-header {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.htl-tab-2-upgrade-title {
    width: 291px;
    height: 40px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #FFFFFF;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.htl-tab-2-upgrade-price {
    font-size: 14px;
}

.htl-tab-2-upgrade-img {
    height: 143px;
}

.htl-tab-2-upgrade-btn {
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #440059;
    font-size: 12px;
    cursor: pointer;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 4px 12px;
    gap: 8px;
    width: 101px;
    height: 34px;
    background: #FFFFFF;
    border-radius: 8px;
    flex: none;
    order: 1;
    flex-grow: 0;

}

.htl-tab-2-ads-section {
    padding: 20px;
}

.htl-tab-2-ads-title {
    font-size: 14px;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
}

.htl-tab-2-ad-items {
    display: flex;
    gap: 15px;
}

.htl-tab-2-ad-item {
    flex: 1;
    text-align: center;
}

.htl-tab-2-ad-image {
    width: 100%;
    height: 60px;
    object-fit: cover;
    border-radius: 6px;
    margin-bottom: 8px;
}

.htl-tab-2-ad-title {
    font-size: 11px;
    font-weight: 600;
    color: #333;
    margin-bottom: 2px;
}

.htl-tab-2-ad-desc {
    font-size: 10px;
    color: #666;
}

.htl-tab-2-add-btn {
    color: #007bff;
    font-size: 12px;
    text-decoration: none;
    font-weight: 500;
}

.htl-tab-2-offer-banner {
    color: #fff;
    border-radius: 8px;
    font-size: 12px;
    text-align: center;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 12px;
    gap: 12px;
    background: linear-gradient(113.11deg, #49025E -3.45%, #49025E 51.77%, #CFA1E9 118.73%), #FFFFFF;
    border-radius: 8px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
    margin-top: 25px;
}

.htl-tab-2-title-si {
    width: 196px;
    height: 22px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    display: flex;
    align-items: center;
    color: #F3AB0F;
    flex: none;
    order: 0;
    flex-grow: 0;

}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .htl-tab-2-container {
        flex-direction: column;
        padding: 0 10px;
        gap: 15px;
    }

    .htl-tab-2-right-panel {
        width: 100%;
        order: -1;
    }

    .htl-tab-2-form-row {
        flex-direction: column;
        gap: 10px;
    }

    .htl-tab-2-phone-group {
        flex-direction: row;
    }

    .htl-tab-2-country-code {
        width: 70px;
    }

    .htl-tab-2-hotel-info {
        flex-direction: column;
        text-align: center;
    }

    .htl-tab-2-hotel-image {
        width: 100%;
        height: 275px;
    }

    .htl-tab-2-ad-items {
        flex-direction: column;
        gap: 10px;
    }

    .htl-tab-2-upgrade-banner {
        margin: 10px;
    }

    .htl-tab-2-offer-banner {
        margin: 10px 10px 0 10px;
    }
}

@media (max-width: 480px) {
    .htl-tab-2-container {
        padding: 0 5px;
    }

    .htl-tab-2-card-header,
    .htl-tab-2-form-section,
    .htl-tab-2-room-content {
        padding: 15px;
    }

    .htl-tab-2-summary-header,
    .htl-tab-2-date-info,
    .htl-tab-2-room-summary,
    .htl-tab-2-ads-section {
        padding: 15px;
    }
}

.htl-tab-upgrade-title {
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    display: flex;
    align-items: center;
    color: var(--primary-color);
    flex: none;
    order: 0;
    flex-grow: 0;
    padding: 10px 20px 0px;
}

.htl-tab-2-upgrade-content {
    display: flex;
    align-items: center;
    gap: 15px;

}

.htl-tab-2-upgrade-img img {
    width: 142px;
    height: 142px;

    border-radius: 5px 0px 0px 5px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

/* hotel  details payon */

.htl-pay-addon-container {

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 24px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 8px;
    flex: none;
    order: 2;
    flex-grow: 0;

}

.htl-pay-addon-header {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    gap: 12px;
}

.htl-pay-addon-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.htl-pay-addon-icon::before {
    content: "✨";
    color: white;
    font-size: 16px;
}

.htl-pay-addon-title {
    font-size: 18px;
    font-weight: 500;
    color: #374151;
}

.htl-pay-addon-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.htl-pay-addon-card {
    background: var(--deep-purple-700);
    border-radius: 20px;
    height: 200px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.htl-pay-addon-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(107, 70, 193, 0.25);
}

.htl-pay-addon-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
}

.htl-pay-addon-text-section {
    flex: 0 0 55%;
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    z-index: 3;
    position: relative;
}

.htl-pay-addon-content-top {
    display: flex;
    flex-direction: column;
}

.htl-pay-addon-service-name {
    font-size: 22px;
    font-weight: 600;
    color: var(--yellow-amber-400);
    margin-bottom: 12px;
    line-height: 1.3;
}

.htl-pay-addon-price-info {
    display: flex;
    flex-direction: column;
}

.htl-pay-addon-price-label {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 2px;
}

.htl-pay-addon-price {
    font-size: 18px;
    font-weight: 600;
    color: white;
}

.htl-pay-addon-btn {
    background: rgba(255, 255, 255, 0.15);
    color: white;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px);
    align-self: flex-start;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    min-width: 80px;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 4px 12px;
    gap: 8px;
    width: 101px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.7);
    border-radius: 10px;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.htl-pay-addon-btn:hover {
    background: rgba(255, 255, 255, 0.25);
    border-color: rgba(255, 255, 255, 0.4);
}

.htl-pay-addon-image-section {
    flex: 1;
    position: relative;
    overflow: hidden;
}

.htl-pay-addon-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.htl-pay-addon-card:hover .htl-pay-addon-image {
    transform: scale(1.05);
}

/* Diagonal partition/slide effect */
.htl-pay-addon-diagonal-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--deep-purple-700);
    clip-path: polygon(0 0, 65% 0, 45% 100%, 0 100%);
    z-index: 2;
}

.htl-pay-addon-image-container {
    clip-path: polygon(25% 0, 100% 0, 100% 100%, 0% 170%);
    z-index: 1;
    margin: 0 auto;

    border-radius: 0px;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
    z-index: 1;
}

.htl-pay-addon-image-container-sidebar {
    clip-path: polygon(49% 0, 100% 0, 100% 100%, 0% 170%);
    z-index: 1;
    margin: 0 auto;
    width: 100px;
    border-radius: 0px;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
    z-index: 1;
}

/* Responsive Design */
@media (max-width: 768px) {
    .htl-pay-addon-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .htl-pay-addon-card {
        height: 180px;
    }

    .htl-pay-addon-text-section {
        padding: 24px 20px;
        flex: 0 0 60%;
    }

    .htl-pay-addon-service-name {
        font-size: 20px;
    }

    .htl-pay-addon-diagonal-overlay {
        clip-path: polygon(0 0, 70% 0, 50% 100%, 0 100%);
    }

    .htl-pay-addon-image-container {
        width: 55%;
        clip-path: polygon(30% 0, 100% 0, 100% 100%, 0% 100%);
    }
}

@media (max-width: 480px) {
    .htl-pay-addon-card {
        height: 160px;
    }

    .htl-pay-addon-text-section {
        padding: 20px 16px;
        flex: 0 0 65%;
    }

    .htl-pay-addon-service-name {
        font-size: 18px;
        margin-bottom: 8px;
    }

    .htl-pay-addon-price {
        font-size: 16px;
    }

    .htl-pay-addon-btn {
        padding: 8px 20px;
        font-size: 12px;
    }

    .htl-pay-addon-diagonal-overlay {
        clip-path: polygon(0 0, 75% 0, 55% 100%, 0 100%);
    }

    .htl-pay-addon-image-container {
        width: 50%;
        clip-path: polygon(35% 0, 100% 0, 100% 100%, 0% 100%);
    }
}

/* Card entrance animation */
.htl-pay-addon-card {
    animation: htl-pay-addon-slideUp 0.6s ease-out forwards;
    opacity: 0;
    transform: translateY(20px);
}

.htl-pay-addon-card:nth-child(odd) {
    animation-delay: 0.1s;
}

.htl-pay-addon-card:nth-child(even) {
    animation-delay: 0.2s;
}

@keyframes htl-pay-addon-slideUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.htl-pay-addon-card-sidebar {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    isolation: isolate;
    width: 220px;
    background: linear-gradient(0deg, #FFFFFF, #FFFFFF), #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.06);
    box-shadow: 0px 0px 9.4px rgba(0, 0, 0, 0.05);
    border-radius: 10px;
    flex: none;
    order: 0;
    flex-grow: 0;
}

.htl-pay-addon-text-section-sidebar {
    flex: 0 0 55%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    z-index: 3;
    position: relative;
    padding: 12px;
}

.htl-pay-addon-service-name-sidebar {
    font-size: 13px;
    font-weight: 600;
    color: #47225C;
    line-height: 1.3;
}

.htl-pay-addon-price-sidebar {
    font-size: 12px;
    font-weight: 600;
    color: var(--success-green-500);
}

.htl-pay-addon-price-label-sidebar {
    color: var(--text-primary-gray-700);
    font-size: 12px;
}

.htl-pay-addon-btn-sidebar {
    margin-top: 5px;

    box-sizing: border-box;

    /* Auto layout */
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 4px 12px;
    gap: 6px;

    width: 75px;
    height: 28px;

    background: #fff;
    border: 1px solid #F3F4F5;
    border-radius: 4px;
    flex: none;
    order: 1;
    flex-grow: 0;

    color: var(--primary-color);

}

.htl-pay-addon-image-sidebar {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
    border-radius: 10px;
}

.htl-pay-addon-diagonal-overlay-sidebar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    clip-path: polygon(0 0, 65% 0, 45% 100%, 0 100%);
    z-index: 2;
}

.htl-tab-2-room-type {

    transition: all 0.3s ease;
}

.htl-tab-2-room-type.hidden {
    display: none;
    /* collapse */
}

.room-2-bx-htl {
    box-sizing: border-box;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    background: #FFFFFF;
    border: 1px solid #F3F4F5;
    border-radius: 8px;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
}

.img-container-addon {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: 100%;
    clip-path: polygon(25% 0, 100% 0, 100% 100%, 0% 100%);
    z-index: 1;
}

/* payment */
.htl-pay-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.htl-pay-main-content {
    flex: 2;
    min-width: 300px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin-bottom: 20px;
}

.htl-pay-sidebar {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    box-sizing: border-box;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 24px;
    gap: 18px;
    width: 500px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 8px;
    flex: none;

    flex-grow: 0;
}

.htl-pay-addon-banner {
    color: white;
    cursor: pointer;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    padding: 16px 24px;
    gap: 12px;
    height: 60px;
    background: linear-gradient(91.43deg, #440159 -5.42%, rgba(255, 253, 108, 0.51) 258.63%, rgba(255, 255, 255, 0) 271.96%), #FFFFFF;
    box-shadow: 0px 1px 2px rgba(204, 204, 204, 0.25);
    border-radius: 8px;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
    margin-bottom: 20px;
    margin-top: 20px;
}

.htl-pay-addon-banner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
}

/* hidden by default */
.htl-pay-addon-container {
    display: none;
    padding: 15px;
    border: 1px solid #ddd;
    border-top: none;
}

/* show when checkbox is checked */
#addon-toggle:checked~.htl-pay-addon-container {
    display: block;
}

/* rotate chevron when open */
.htl-pay-addon-banner .htl-pay-chevron {
    transition: transform 0.3s ease;
}

#addon-toggle:checked+.htl-pay-addon-banner .htl-pay-chevron {
    transform: rotate(180deg);
}

.htl-pay-addon-text {
    font-weight: 500;
    display: flex;
    align-items: center;
}

.htl-pay-chevron {
    width: 20px;
    height: 20px;
    transition: transform 0.3s ease;
    color: #504F50;
}

.htl-pay-form-section {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 24px;
    gap: 16px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 8px;
    flex: none;
    order: 3;
    align-self: stretch;
    flex-grow: 0;
    margin-bottom: 20px;
}

/* Hide the checkbox */
.htl-pay-toggle {
    display: none;
}

/* Default collapsed state */
.htl-pay-addon-expanded {
    display: none;
}

/* Flex alignment for headers */
.htl-pay-addon-header,
.htl-pay-addon-header-expanded {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    padding: 10px;
    border-radius: 6px;
    background: linear-gradient(91.43deg, #440159 -5.42%, rgba(255, 253, 108, 0.51) 258.63%, rgba(255, 255, 255, 0) 271.96%), #FFFFFF;
    color: #fff;
}

.htl-pay-addon-expanded {

    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 20px;
    gap: 24px;
    margin-bottom: 20px;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 8px;
    flex: none;
    order: 2;
    flex-grow: 0;
}

/* Icon + text flex */
.htl-pay-addon-header img,
.htl-pay-addon-header-expanded img {
    margin-right: 10px;
}

/* When checked → show expanded, hide collapsed */
.htl-pay-toggle:checked~.htl-pay-addon-header {
    display: none;
}

.htl-pay-toggle:checked~.htl-pay-addon-expanded {
    display: block;
}

/* Hide checkbox */
.htl-pay-toggle {
    display: none;
}

/* Default collapsed */
.htl-pay-addon-expanded {
    display: none;
}

/* Collapse state visible */


/* Expanded header */
.htl-pay-addon-header-expanded {
    display: none;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    padding: 10px;
    background: #fff;
    margin-bottom: 10px;
}

/* When open */
.htl-pay-toggle:checked~.htl-pay-addon-header {
    display: none;
    /* hide collapsed */
}

.htl-pay-toggle:checked~.htl-pay-addon-expanded {
    display: block;
    /* show expanded */
}

.htl-pay-toggle:checked~.htl-pay-addon-expanded .htl-pay-addon-header-expanded {
    display: flex;
}

.htl-pay-section-title {
    font-size: 18px;
    font-weight: 600;
    flex: 1;
}

.htl-pay-input-group {
    margin-bottom: 16px;
    width: 100%;
}

.htl-pay-input-group p {
    width: 396px;
    height: 18px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.01em;
    color: #504F50;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.htl-pay-textarea::placeholder {
    color: #aaa;
}

/* Default ash color when showing placeholder */
.htl-pay-select:invalid {
    color: #888;
    /* ash */
}

/* Normal color when real value selected */
.htl-pay-select option {
    color: #000;
    /* black or your text color */
}


#htl-pay-arrival {

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 10px;
    gap: 4px;
    isolation: isolate;
    width: 339px;
    height: 44px;
    flex: none;
    order: 0;
    flex-grow: 1;
    font-weight: 400px;

}

.htl-pay-textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    resize: vertical;
    min-height: 80px;
    font-family: inherit;
    height: 97px;
}

.htl-pay-select {
    width: 100%;
    padding: 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: white;
    font-family: inherit;
    cursor: pointer;
}

.htl-pay-disclaimer {
    font-size: 14px;
    color: #6b7280;
    margin-top: 8px;
}

.htl-pay-payment-section {
    border-top: 1px solid #e5e7eb;
    padding: 24px;
}

.htl-pay-security-badges {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.htl-pay-security-item {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #059669;
    font-size: 14px;
}

.htl-pay-checkmark {
    width: 16px;
    height: 16px;
    fill: currentColor;
}

.htl-pay-payment-methods {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.htl-pay-card-icon {
    width: 40px;
    height: 28px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
    color: white;
}

.htl-pay-amex {
    background: #2E77BB;
}

.htl-pay-visa {
    background: #1A1F71;
}



.htl-pay-input {
    width: 100%;
    padding: 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-family: inherit;
}

.htl-pay-input:focus,
.htl-pay-textarea:focus,
.htl-pay-select:focus {
    outline: none;
    border-color: #6B46C1;
    box-shadow: 0 0 0 3px rgba(107, 70, 193, 0.1);
}

.htl-pay-form-row {
    display: flex;
    gap: 12px;
    margin-bottom: 15px;
}

.htl-pay-form-col {
    flex: 1;
}

.htl-pay-expandable-section {
    border-top: 1px solid #e5e7eb;
    margin-bottom: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    background: #FFFFFF;
    border: 1px solid #E7E7E7;
    border-radius: 8px;
    flex: none;
    order: 6;
    align-self: stretch;
    flex-grow: 0;

}

.htl-pay-section-header {
    padding: 16px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    background: #fff;
    border-radius: 20px;
    width: 100%;
}

.htl-pay-section-header:hover {
    background: #f3f4f6;
}

.htl-pay-section-icon {
    width: 24px;
    height: 24px;
    margin-right: 12px;
}

.htl-pay-section-left {
    display: flex;
    align-items: center;
}

.htl-pay-section-content {
    padding: 16px 24px;
    background: #fff;
    border-radius: 20px;
}

.htl-pay-policy-list {
    list-style: none;
}

.htl-pay-policy-item {
    margin-bottom: 8px;
    padding-left: 8px;
    position: relative;
    font-size: 14px;
}

.htl-pay-policy-item::before {
    content: "•";
    position: absolute;
    left: 0;
}

.htl-pay-pricing-header {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

.htl-pay-price-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 8px;
    font-size: 14px;
}




.htl-pay-total-row {
    border-top: 2px solid #e5e7eb;
    padding-top: 16px;
    margin-top: 16px;
}

.htl-pay-total-label {
    font-size: 18px;
    font-weight: 600;
}

.htl-pay-total-value {
    font-size: 24px;
    font-weight: 700;
    color: #111827;
}

.htl-pay-booking-details {
    font-size: 14px;
    color: #6b7280;
    margin-bottom: 20px;
}

.htl-pay-button-group {
    display: flex;
    gap: 12px;
    width: 100%;
}

.htl-pay-button {
    flex: 1;
    padding: 14px 20px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
    font-size: 16px;
}

.htl-pay-button-secondary {
    background: transparent;
    color: #6B46C1;
    border: 2px solid #6B46C1;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    gap: 8px;
    height: 60px;
    border: 1px solid #7200B3;
    border-radius: 8px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 1;
}

.htl-pay-button-secondary:hover {
    background: #f3f0ff;
}

.htl-pay-button-primary {
    color: white;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    gap: 8px;
    height: 60px;
    background: #5E3277;
    border-radius: 8px;
    flex: none;
    order: 1;
    flex-grow: 1;
}

.htl-pay-button-secondary,
.htl-pay-button-primary {
    flex: 1;
    /* ensures equal width */
    height: 60px;
    /* keep consistent height */
}

.htl-pay-button-primary:hover {
    background: linear-gradient(135deg, #553C9A, #7C2D12);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(107, 70, 193, 0.3);
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .htl-pay-container {
        flex-direction: column;
        padding: 16px;
        gap: 16px;
    }

    .htl-pay-main-content,
    .htl-pay-sidebar {
        flex: 1;
        min-width: 100%;
    }

    .d-flex-block {
        display: block !important;
    }

    .htl-pay-form-section,
    .htl-pay-payment-section {
        padding: 20px;
    }

    .htl-pay-sidebar {
        padding: 20px;

    }

    .htl-pay-form-row {
        flex-direction: column;
    }

    .htl-pay-button-group {
        flex-direction: column;
    }

    .htl-pay-security-badges {
        flex-direction: column;
        gap: 8px;
    }

    .htl-pay-payment-methods {
        justify-content: center;
    }

    .htl-pay-addon-banner {
        padding: 12px 16px;
    }

    .htl-pay-section-header {
        padding: 12px 16px;
    }

    .htl-pay-section-content {
        padding: 12px 16px;
    }

    .htl-tab-2-booking-summary {

        width: 100%;
    }

    .htl-pay-sidebar {
        width: 100%;
    }

    .htl-tab-2-card-header {
        display: block;
    }

    .booking-for {

        width: 100%;
    }

    .htl-tab-2-upgrade-title {
        width: 100%;
        margin-bottom: 5px;
    }

    .htl-pay-input-group p {
        width: 100%;
    }

    .htl-tab-2-radio-option {

        width: 47%;
    }

    .htl-pay-addon-card-sidebar {
        height: 120px;
        width: 100%;
    }

    .htl-pay-addon-image-container-sidebar {

        width: 45%;
    }

    #htl-pay-arrival {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .htl-pay-container {
        padding: 12px;
    }

    .htl-pay-pricing-header {
        font-size: 18px;
    }

    .htl-pay-total-value {
        font-size: 20px;
    }

    .htl-pay-form-section,
    .htl-pay-payment-section,
    .htl-pay-sidebar {
        padding: 16px;
    }
}

.policy-icon {
    margin-right: 10px;
}

.w-100 {
    width: 100%;
}

.st-itm-date {
    font-weight: 600;
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #000000;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.st-itm-caps {
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
    color: #000000;
    flex: none;
    order: 0;
    flex-grow: 0;
}

/* booking details */
.book-detail-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 15px;
}

/* Main Layout - Fixed Flexbox */
.book-detail-main-layout {
    display: flex;
    gap: 25px;
    align-items: flex-start;
}

.book-detail-left-section {
    flex: 1;
    min-width: 0;
    /* Prevents flex item from overflowing */
}

.book-detail-sidebar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0px;
    gap: 12px;
    width: 40%;
    flex: none;
    order: 1;
    flex-grow: 0;
}

/* Header Section */
.book-detail-header {
    background: white;
    border-radius: 12px;
    padding: 25px;
    margin-bottom: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.book-detail-content {
    background: white;
    border-radius: 12px;
    padding: 25px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;

}

.srch-pg-location-dtl {
    color: var(--text-primary-gray-400);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 13px;
}

.book-detail-top-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 15px;
    background: #FFFFFF;
    padding: 16px 24px;
}

.book-detail-confirmation {
    display: flex;
    align-items: center;
    gap: 8px;
}

.book-detail-check-icon {
    width: 18px;
    height: 18px;
    margin-right: 10px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 10px;
    font-weight: bold;
    flex-shrink: 0;
}

.book-detail-confirmation-text {
    color: var(--success-green-600);
    font-weight: 600;
    font-size: 15px;
}

.book-detail-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.book-detail-download-btn {
    color: white;
    font-size: 12px;
    cursor: pointer;
    white-space: nowrap;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 6px 12px;
    gap: 7.5px;
    width: 176px;
    height: 33.5px;
    background: #632C75;
    border: 0.75px solid #632C75;
    border-radius: 69.75px;
    flex: none;
    order: 0;
    flex-grow: 0;
}

.d-flex-block {
    display: flex;
}

.book-detail-share-btn {
    color: #6b7280;
    font-size: 12px;
    cursor: pointer;
    white-space: nowrap;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 6px 12px;
    gap: 7.5px;
    width: 88px;
    height: 33.5px;
    background: #FFFFFF;
    border: 0.75px solid #632C75;
    border-radius: 69.75px;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.htl-tab-2-date-info-dtl {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 70px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
}

/* Hotel Card */
.book-detail-hotel-card {
    display: flex;
    gap: 15px;
    margin-bottom: 13px;
    align-items: flex-start;
}

.book-detail-hotel-image {
    width: 147px;
    height: 131px;
    border-radius: 8px;
    flex-shrink: 0;
    overflow: hidden;
    position: relative;
}

.book-detail-hotel-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}

.srch-pg-rating-container-dtl {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.book-detail-hotel-main-info {
    flex: 1;
    min-width: 0;
}

.book-detail-hotel-title {
    margin-bottom: 4px;
    width: 278px;
    height: 27px;
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 27px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: var(--primary-color);
    flex: none;
    order: 0;
    flex-grow: 0;
}

.book-detail-stars {
    display: flex;
    color: var(--star-rating);
    font-size: 12px;
    margin-left: 10px;
}

.book-detail-location {
    color: #6b7280;
    font-size: 11px;
    line-height: 1.3;
}

.book-detail-rating {
    background: #374151;
    color: white;
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 10px;
    text-align: center;
    min-width: 70px;
    height: fit-content;
    flex-shrink: 0;
}

.book-detail-rating-label {
    font-size: 9px;
    margin-bottom: 2px;
}

.book-detail-rating-score {
    font-size: 13px;
    font-weight: bold;
    margin: 1px 0;
}

.book-detail-rating-reviews {
    font-size: 8px;
    opacity: 0.9;
}





.book-detail-info-label {
    color: #6b7280;
    font-size: 11px;
    margin-bottom: 3px;
}

.book-detail-info-value {
    margin-bottom: 2px;
    height: 24px;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #000000;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.line-bar-dtl {
    width: 25%;
    height: 1px;
    background-color: #E7E7E7;
    margin: 15px 0;
}

.book-detail-info-time {
    height: 18px;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 18px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #050505;
    flex: none;
    order: 2;
    flex-grow: 0;
}

.line-bar-dtl-bk {
    width: 12%;
    height: 1px;
    background-color: #E7E7E7;
    margin: 15px 0;
}

/* Status Icons */
.book-detail-status-row {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 24px 0px;
    gap: 10px;
    border-top: 1px solid #E7E7E7;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
    justify-content: space-between;
}

.book-detail-status-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    color: #374151;
    min-width: 200px;
}

.book-detail-status-icon {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 10px;
    font-weight: bold;
    flex-shrink: 0;
}

.book-detail-status-booking {
    padding: 10px;
    width: 40px;
    height: 40px;
    background: linear-gradient(99.63deg, #FFFFFF -101.2%, #EDECF2 96.11%), #FFFFFF;
    border-radius: 5px;
    flex: none;
    order: 0;
    flex-grow: 0;
}



/* Contact Info */
.book-detail-contact {
    padding-top: 15px;
    border-top: 1px solid #e5e7eb;
}

.book-detail-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 6px;
    font-size: 11px;
    color: #6b7280;
}

.book-detail-contact-item span {
    font-weight: 500;
    font-size: 14px;
    display: flex;
    align-items: center;
    color: #1A1A1A;
    flex: none;
    order: 1;
    flex-grow: 1;
    width: 100%;
}

.book-detail-contact-icon {
    color: #6b7280;
    width: 15px;
    margin-top: 1px;
    flex-shrink: 0;
}

/* Action Buttons */
.book-detail-action-buttons {
    margin-top: 20px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 0px;
    gap: 12px;
    height: 46px;
    flex: none;
    order: 5;
    align-self: stretch;
    flex-grow: 0
}

.book-detail-location-btn,
.book-detail-contact-btn {
    flex: 1;
    padding: 10px 16px;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    text-align: center;
    border: none;
    font-weight: 500;
    white-space: nowrap;
    border: 1px solid #7200B3;
    background: #fff;
    color: #7200B3;
    height: 46px;
}



/* Sidebar Styles */
.book-detail-pricing-card {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.book-detail-pricing-header {
    font-weight: 600;
    margin-bottom: 15px;
    color: #000;
    font-size: 16px;
}

.book-detail-base-price-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.book-detail-base-price-label {
    font-size: 14px;
}

.book-detail-base-price {

    width: 57px;
    height: 20px;

    font-family: 'Geist';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #000000;

    flex: none;
    order: 1;
    flex-grow: 0;

}

.book-detail-price-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 12px;
}

.book-detail-price-label {
    height: 20px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #000000;
    flex: none;
    order: 0;
    flex-grow: 1;

}

.book-detail-price-value {
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    color: #000000;
    flex: none;
    order: 1;
    flex-grow: 0;
    justify-content: right;
}

.htl-py-pric-si {
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    color: #000000;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
    margin-bottom: 15px;

}

.book-detail-total-section {
    padding-top: 12px;
    margin-top: 15px;
}

.book-detail-total-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.book-detail-total-label {

    font-weight: 600;
    font-size: 18px;
    line-height: 30px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #000000;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.book-detail-total-amount {
    height: 30px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 30px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #000000;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.detail-total {
    height: 20px;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #000000;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;
}

.book-detail-total-note {
    text-align: right;
    height: 24px;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;
    display: flex;
    align-items: center;
    color: #000000;
    flex: none;
    align-self: stretch;
    flex-grow: 0;
}

.book-detail-add-ons {
    margin-top: 25px;
}

.book-detail-add-ons-header {
    font-weight: 600;
    margin-bottom: 12px;
    color: #111827;
    font-size: 14px;
}

.book-detail-addon-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
}

.book-detail-addon-content {
    flex: 1;
}

.book-detail-addon-title {
    font-weight: 500;
    color: #111827;
    font-size: 12px;
    margin-bottom: 2px;
}

.book-detail-addon-price {
    color: #6b7280;
    font-size: 10px;
}

.book-detail-addon-image {
    width: 32px;
    height: 32px;
    background: #f3f4f6;
    border-radius: 4px;
    margin-left: 10px;
    flex-shrink: 0;
}

/* Content Styles */
.book-detail-section-title {
    font-size: 16px;
    font-weight: 600;
    color: #111827;
}

.book-detail-timeline {
    margin-bottom: 25px;
    flex-wrap: wrap;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 24px 0px;
    gap: 100px;
    width: 690px;
    border-bottom: 1px solid #E7E7E7;
    flex: none;
    order: 7;
    align-self: stretch;
    flex-grow: 0;
}

.book-detail-timeline-item {

    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 0px;
    gap: 12px;
    width: 203px;
    height: 66px;
    flex: none;
    order: 0;
    flex-grow: 0;
}

.book-detail-timeline-icon {
    width: 36px;
    height: 36px;
    background: #3b82f6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 14px;
    font-weight: 600;
    flex-shrink: 0;
}

.htl-pay-addon-service-name-sidebar-py {
    font-size: 12px;
    font-weight: 600;
    color: #47225C;
    line-height: 1.3;
}

.book-detail-timeline-content {
    display: flex;
    flex-direction: column;
}

.book-detail-timeline-date {
    font-weight: 600;
    color: #111827;
    font-size: 13px;
}

.book-detail-timeline-time {
    color: #6b7280;
    font-size: 11px;
    margin-top: 1px;
}

/* Details Grid */
.book-detail-details-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
    margin-bottom: 25px;
}

.book-detail-detail-item {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 200px;
    flex: 1 1 calc(50% - 12.5px);
}

.book-detail-detail-icon {
    color: #6b7280;
    width: 14px;
    flex-shrink: 0;
}

.book-detail-detail-content {
    display: flex;
    flex-direction: column;
}

.book-detail-detail-label {
    color: #6b7280;
    font-size: 11px;
}

.book-detail-detail-value {
    font-weight: 500;
    color: #111827;
    font-size: 12px;
}



.book-detail-guest-title {
    margin-bottom: 10px;

    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    display: flex;
    align-items: center;
    color: #000000;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.book-detail-guest-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.book-detail-guest-item {
    display: flex;
    flex-direction: column;
    min-width: 180px;
    flex: 1 1 calc(50% - 15px);
}

.book-detail-guest-label {
    color: #6b7280;
    font-size: 11px;
    margin-bottom: 3px;
}

.book-detail-guest-value {
    font-family: 'Geist';
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    color: #000000;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;

}

/* Additional Information */
.book-detail-additional {
    margin-top: 25px;
}

.book-detail-additional-title {
    font-weight: 600;
    margin-bottom: 10px;
    color: #000;
    font-size: 16px;
}

.book-detail-additional-text {
    color: var(--text-primary-gray-600);
    font-size: 14px;
    line-height: 1.4;
    width: 95%;
}


.book-detail-arrival-title {
    font-weight: 600;
    margin-bottom: 12px;
    color: #000;
    font-size: 16px;
}

.book-detail-arrival-content {
    display: flex;
    align-items: center;
    gap: 12px;
}


.book-detail-arrival-time {

    font-size: 13px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 13px;
    gap: 12px;
    width: 100%;
    height: 44px;
    flex: none;

    flex-grow: 0;
    border: solid 1px #d5d5d5;
}

/* Cancellation Section */
.book-detail-cancellation {
    margin-top: 25px;
}

.book-detail-cancellation-title {
    font-weight: 600;
    margin-bottom: 10px;
    color: #111827;
    font-size: 16px;
}

.book-detail-hotel-main-display {
    display: flex;
}

.book-detail-cancellation-text {
    margin-bottom: 10px;
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0.01em;
    color: var(--text-primary-gray-600);
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;

}

.book-detail-hotel-title-dtl {
    width: 300px;
    height: 27px;
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 27px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: var(--primary-color);
    flex: none;
    order: 0;
    flex-grow: 0;
}

.book-detail-cancellation-buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.add-info-py {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;
    gap: 4px;
    width: 60%;
    flex: none;
    flex-grow: 1;

}

.book-detail-modify-btn {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    gap: 8px;
    width: 339px;
    height: 46px;
    border: 1px solid rgba(114, 0, 179, 0.3);
    border-radius: 8px;
    flex: none;
    order: 0;
    flex-grow: 1;
    background-color: #fff;
    color: var(--primary-color);
    font-size: 16px;
    cursor: pointer;
}

.book-detail-cancel-btn {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    gap: 8px;
    width: 339px;
    height: 46px;
    border: 1px solid #FFC8C9;
    border-radius: 8px;
    flex: none;
    order: 1;
    flex-grow: 1;
    color: var(--old-price-red);
    background-color: #fff;
    cursor: pointer;
    font-size: 16px;
}

.htl-pay-addon-card-sidebar-two {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    isolation: isolate;
    width: 100%;
    background: linear-gradient(0deg, #FFFFFF, #FFFFFF), #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.06);
    box-shadow: 0px 0px 9.4px rgba(0, 0, 0, 0.05);
    border-radius: 10px;
    flex: none;
    order: 0;
    flex-grow: 0;
    height: 65px;
}

/* Expandable Sections */
.book-detail-expandable {
    margin-top: 25px;
    border-top: 1px solid #e5e7eb;
    padding-top: 20px;
}

.book-detail-expandable-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    margin-bottom: 10px;
}

.htl-pay-addon-text-section-sidebar-py {
    flex: 0 0 55%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    z-index: 3;
    position: relative;
    padding: 9px;
}

.book-detail-expandable-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: #111827;
    font-size: 16px;
}

.book-detail-expand-icon {
    color: #6b7280;
    font-size: 12px;
}

.book-detail-policy-content {

    width: auto;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
    order: 2;
    align-self: stretch;
    flex-grow: 0;

    display: block;
    padding: 10px 20px;
    box-sizing: border-box;
}

.book-detail-policy-content ul {
    margin: 0;
    padding-left: 20px;
    list-style-position: outside;
    /* keeps long text aligned properly */
}

.book-detail-policy-content li {
    margin-bottom: 6px;
    width: fit-content;

}

.book-detail-help-section {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 24px;
    gap: 12px;
    width: 100%;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid #C59DDB;
    border-radius: 8px;
    flex: none;
    order: 4;
    align-self: stretch;
    flex-grow: 0;

}

.book-detail-help-text h3 {
    outline-color: #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 0px;
    background: rgba(255, 255, 255, 1e-06);
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
    font-size: 16px;

}

.book-detail-help-text p {

    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #525252;
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0;

}

.book-detail-help-btn {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    gap: 8px;
    width: 254px;
    height: 46px;
    border: 1px solid #7200B3;
    border-radius: 8px;
    background: none;
    flex: none;
    order: 3;
    flex-grow: 0;

}

/* Responsive Design */
@media (max-width: 968px) {
    .book-detail-main-layout {
        flex-direction: column;
    }

    .book-detail-sidebar {
        flex: none;
        width: 100%;
        order: 1;
    }

    .book-detail-left-section {
        width: 100%;
    }
}

@media (max-width: 768px) {
    .book-detail-container {
        padding: 15px;
    }

    .book-detail-top-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .book-detail-hotel-image {
        width: auto;
        height: auto;
    }

    .book-detail-actions {
        width: 100%;
    }

    .htl-tab-2-date-info-dtl {

        padding: 0px;
    }


    .book-detail-actions button {
        flex: 1;
    }

    .book-detail-hotel-card {
        flex-direction: column;
        text-align: center;
    }

    .book-detail-booking-info {
        gap: 15px;
        justify-content: space-between;
    }


    .book-detail-status-row {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }

    .book-detail-status-item {
        min-width: auto;
        width: 100%;
    }

    .book-detail-timeline {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }

    .book-detail-details-grid {
        flex-direction: column;
        gap: 15px;
    }

    .book-detail-detail-item {
        min-width: auto;
        flex: none;
    }

    .book-detail-guest-grid {
        flex-direction: column;
        gap: 15px;
    }

    .book-detail-guest-item {
        min-width: auto;
        flex: none;
    }

    .book-detail-cancellation-buttons {
        flex-direction: column;
    }

    .book-detail-cancellation-buttons button {
        width: 100%;
    }
}

/* booking  confirmed */

.book-confirm-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    /* Full viewport height */
    padding: 24px;
    /* Optional padding for small screens */
    box-sizing: border-box;
}

.book-confirm-container {
    overflow: hidden;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 48px 48px 24px;
    gap: 24px;
    position: relative;
    width: 50%;
    background: #FFFFFF;
    box-shadow: 0px 6px 27px rgba(0, 0, 0, 0.05);
    border-radius: 12px;
}

.book-confirm-header {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0px;
    gap: 24px;
    height: 165px;
    flex: none;
    flex-grow: 0;
}

.htl-tab-2-date-label-bk {
    font-size: 14px;
    color: #737373;
}

.book-detail-info-value-bk {
    margin-bottom: 2px;
    height: 24px;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    display: flex;
    align-items: center;
    letter-spacing: -0.02em;
    color: #000000;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.book-confirm-checkmark::after {
    content: '✓';
    color: white;
    font-size: 24px;
    font-weight: bold;
}

.book-confirm-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--success-green-600);
    margin-bottom: 5px;
}

.book-confirm-greeting {
    font-size: 24px;
    font-weight: 700;
    color: #333;
    margin-bottom: 5px;
}

.book-confirm-subtitle {
    font-size: 14px;
    color: #6D6D6D;
}

.book-confirm-content {
    padding: 20px;
}

.book-confirm-hotel {
    margin-bottom: 25px;
    border-bottom: 1px solid #eee;
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding: 12px;
    gap: 12px;
    width: 555px;
    height: 104px;
    background: #F4F5F9;
    border-radius: 8px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;

}

.book-confirm-display {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0px;
    gap: 6px;
    width: 350px;
    flex: none;
    order: 0;
    flex-grow: 0;

}

.book-confirm-location {
    gap: 5px;
    height: auto;

    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: block;
    color: #5A5A5A;
}



.book-confirm-hotel-image {
    width: 70px;
    height: 70px;
    border-radius: 8px;
    overflow: hidden;
    flex-shrink: 0;
}

.book-confirm-hotel-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.book-confirm-hotel-info {
    flex: 1;
    min-width: 0;
}

.book-confirm-hotel-name {
    margin-bottom: 5px;
    width: 205px;
    height: 27px;
    font-family: 'Geist';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 27px;
    display: flex;
    align-items: center;
    color: var(--primary-color);
    flex: none;
    order: 0;
    flex-grow: 0;

}

.book-confirm-stars {
    display: flex;
    gap: 2px;
    margin-bottom: 5px;
}

.book-confirm-star {
    color: #ffc107;
    font-size: 12px;
}

.book-confirm-location {
    gap: 5px;
    height: 20px;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    color: #5A5A5A;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.book-confirm-location::before {
    content: url('../images/icons/map-icn.png');
    display: inline-block;
    width: 16px;
    /* Adjust size */
    height: 16px;
}

.book-confirm-details {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
    gap: 15px;
}

.book-confirm-buttons {
    display: flex;
    flex-direction: row;
    gap: 10px;
    margin-top: 15px;
}

.book-confirm-btn {
    padding: 12px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    text-align: center;
    display: block;
}

.book-confirm-btn-secondary {
    color: var(--primary-color);
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 6px 12px;
    gap: 8px;
    width: 50%;
    height: 40px;
    background: rgba(203, 203, 203, 0.2);
    border-radius: 8px;
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 1;
}

.book-confirm-btn-secondary:hover {
    background: #f8f9fa;
    transform: translateY(-1px);
}

.book-confirm-btn-primary {
    color: white;
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
    gap: 8px;
    width: 50%;
    height: 40px;
    background: var(--primary-color);
    border-radius: 8px;
    flex: none;
    order: 1;
    flex-grow: 1;
}

.book-confirm-btn-primary:hover {
    background: #5a359a;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(111, 66, 193, 0.3);
}

/* Mobile optimizations */
@media (max-width: 480px) {
    body {
        /* padding: 10px; */
    }

    .book-confirm-container {
        width: 100%;
        border-radius: 8px;
    }

    .book-confirm-header {
        padding: 25px 15px 15px;
    }

    .book-confirm-greeting {
        font-size: 22px;
    }

    .book-confirm-content {
        padding: 15px;
    }

    .book-confirm-hotel {
        gap: 12px;
    }

    .book-confirm-hotel-image {
        width: 60px;
        height: 60px;
    }

    .book-confirm-hotel-name {
        font-size: 15px;
    }

    .book-confirm-details {
        gap: 10px;
    }


}

@media (max-width: 320px) {
    .book-confirm-details {
        flex-direction: column;
        gap: 15px;
    }




}

.book-confirm-hotel {
    width: 100%;
    /* Make hotel card responsive */
    flex-wrap: wrap;
    /* Allow items to wrap on small screens */
}

.book-confirm-display {
    flex-wrap: wrap;
}

.book-confirm-hotel-name {
    width: auto;
    /* Allow flexible width */
    white-space: normal;
    /* Wrap long hotel names */
}



@media (max-width: 768px) {


    .book-confirm-hotel-image {
        margin-bottom: 12px;
    }




    .book-confirm-buttons {
        flex-direction: column;
        gap: 12px;
    }

    .book-confirm-btn {
        width: 100%;
    }

    .book-detail-info-value-bk {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .book-confirm-hotel-image {
        width: 60px;
        height: 60px;
    }

    .book-confirm-hotel-name {
        font-size: 15px;
    }

    .book-confirm-location {
        font-size: 12px;
    }

    .book-confirm-content {
        padding: 15px;
    }

    .book-confirm-header {
        padding: 25px 15px 15px;
    }
}

@media (max-width: 320px) {
    .book-confirm-details {
        flex-direction: column;
        gap: 15px;
    }
}

.book-confirm-hotel {
    width: 100%;
    /* Make hotel card responsive */
    flex-wrap: wrap;
    /* Allow items to wrap on small screens */
}

.book-confirm-display {
    flex-wrap: wrap;
}

.book-confirm-hotel-name {
    width: auto;
    /* Allow flexible width */
    white-space: normal;
    /* Wrap long hotel names */
}



@media (max-width: 768px) {


    .book-confirm-hotel-image {
        margin-bottom: 12px;
    }




    .book-confirm-buttons {
        flex-direction: column;
        gap: 12px;
    }

    .book-confirm-btn {
        width: 100%;
    }

    .book-detail-info-value-bk {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .book-confirm-hotel-image {
        width: 60px;
        height: 60px;
    }

    .book-confirm-hotel-name {
        font-size: 15px;
    }

    .book-confirm-location {
        font-size: 12px;
    }

    .book-confirm-content {
        padding: 15px;
    }

    .book-confirm-header {
        padding: 25px 15px 15px;
    }
}

.icon-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid #959292;
    color: #333;
    font-size: 10px;
}

.d-center {
    display: flex;
    justify-content: center;
    align-items: center;
}
.srch-popup-heart-icon {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex
;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
}
.stay-info {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    padding: 0;
    width: 192px;
    height: 14px;
    font-size: 12px;
    color: #504F50;
}

.adults::before {
    content: "•";
    margin: 0 5px;
    color: #000; /* Bullet color */
    font-size: 14px;
    align-self: center;
}

            .srch-map-loca{    object-fit: cover;
            box-sizing: border-box;
            width: 100%;
            height: 355px;
            /* background: linear-gradient(0deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.04)), url(your-image-url.jpg) center center / cover no-repeat, #FFFFFF; */
            border-radius: 6px;
            flex: none;
            order: 2;
            align-self: stretch;
            flex-grow: 0;
        }
        .modal-content {
            background: white;
            border-radius: 12px;
            max-width: 1000px;
            width: 100%;
            max-height: 90vh;
            overflow-y: auto;
            position: relative;
            margin-top: 20px;
            padding:25px;
        }
        .htl-srch-popup {
  
    width: 300px;
   
}
        .modal-close {
            position: absolute;
            top: 10px;
            right: 10px;
            background: none;
            border: none;
            font-size: 20px;
            cursor: pointer;
            z-index: 1001;
            color: #666;
        }
        .htl-popup-image-section {
            width: 100%;
            position: relative;
            background: #000;
            display: flex
;
            flex-direction: row;
            align-items: flex-start;
            padding: 0px;
            gap: 12px;
            height: 431px;
            flex: none;
            order: 1;
            align-self: stretch;
            flex-grow: 0;

        }
        .img-logo-srch{
            width: 69px;
            height: 32px;
        }

        .htl-popup-main-image {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .htl-popup-thumbnails {
            position: absolute;
            bottom: 15px;
            left: 15px;
            right: 15px;
            display: flex;
            gap: 8px;
            overflow-x: auto;
            padding: 10px;
            border-radius: 8px;
            justify-content: center;
        }

        .htl-popup-thumbnail {
            min-width: 60px;
            height: 45px;
            border-radius: 4px;
            cursor: pointer;
            object-fit: cover;
            border: 2px solid transparent;
            transition: all 0.3s ease;
        }

        .htl-popup-thumbnail.active {
            border-color: #3498db;
            transform: scale(1.05);
        }

        .htl-popup-thumbnail:hover {
            border-color: #74b9ff;
        }

        .modal-close:hover {
            color: #000;
        }

        .modal-hotel-card {
            /* padding: 20px; */
            border-bottom: 1px solid #eee;
        }

        .modal-tabs {
            display: flex;
            border-bottom: 1px solid #eee;
        }

        .tab-button {
            border: none;
            cursor: pointer;
            color: #666;
            font-weight: 500;
            transition: all 0.3s ease;
            box-sizing: border-box;
            display: flex;
            flex-direction: row;
            justify-content: center;
            align-items: center;
            padding: 14px 24px;
            gap: 8px;
            width: 177.4px;
            height: 50px;
            background: #FFFFFF;
            border-bottom: 1px solid #E7E7E7;
            flex: none;
            order: 0;
            align-self: stretch;
            flex-grow: 1;

        }

        .tab-button:hover {
            background: #e9ecef;
            color: #333;
        }

        .tab-button.active {
            color: #5E3277;
            border-bottom: 2px solid #5E3277;
            background: white;
        }

        .modal-tab-content {
            padding: 20px;
        }
        .modal-tab-btn {
            padding: 0px 20px;
        }
        .tab-content {
            display: none;
        }

        .tab-content.active {
            display: block;
        }

        .tab-content h3 {
            margin: 0 0 20px 0;
            color: #333;
        }
        .htl-srch-map-marker {
    position: absolute;
    width: 49px;
    height: 62px;
    left: 50%;
    top: 81%;
}
.img-popup-location-header{
    font-weight: 600;
    font-size: 16px;
}
        /* Overview styles */
        .overview-highlights {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 15px;
            margin-top: 20px;
        }

        .highlight-item {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 10px;
            background: #f8f9fa;
            border-radius: 8px;
        }

        .highlight-item i {
            color: #007bff;
        }

        /* Amenities styles */
        .amenities-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 30px;
        }

      

        /* Rooms styles */
        .rooms-list {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .room-item {
            display: flex;
            border: 1px solid #ddd;
            border-radius: 8px;
            overflow: hidden;
        }

        .room-image {
            width: 200px;
            height: 150px;
            object-fit: cover;
        }

        .room-details {
            padding: 20px;
            flex: 1;
        }

        .room-details h4 {
            margin: 0 0 10px 0;
        }

        .room-amenities {
            display: flex;
            gap: 15px;
            margin: 15px 0;
            flex-wrap: wrap;
        }

        .room-amenities span {
            font-size: 14px;
            color: #666;
        }

        .room-price {
            font-size: 18px;
            font-weight: bold;
            color: #007bff;
        }
  /* Deals Tab */
  .img-popup-deals-list {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .img-popup-deal-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 5px;
            border-bottom: 1px solid #e0e0e0;

            background: white;
        }

        .img-popup-deal-provider {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .img-popup-deal-logo {

width: 74.67px;
height: 32px;
/* background: url("image"); */
flex: none;
order: 0;
flex-grow: 1;
            border-radius: 4px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
            color: #666;
            font-size: 12px;
        }

        .img-popup-deal-price {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .img-popup-cancellation {
            font-size: 12px;
            color: #28a745;
        }

        .img-popup-price {
            font-size: 18px;
            font-weight: 600;
            color: #1A1A1A;
        }
        /* Location styles */
        .location-info h4 {
            margin: 20px 0 10px 0;
        }

        .location-info ul {
            list-style: none;
            padding: 0;
        }

        .location-info li {
            padding: 5px 0;
        }

        /* Reviews styles */
        .reviews-summary {
            margin-bottom: 30px;
        }

        .overall-rating {
            display: flex;
            align-items: center;
            gap: 15px;
        }

        .rating-score {
            font-size: 36px;
            font-weight: bold;
            color: #28a745;
        }

        .review-item {
            border-bottom: 1px solid #eee;
            padding: 20px 0;
        }

        .reviewer-info {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 10px;
        }

        .review-date {
            color: #666;
            font-size: 14px;
        }

        .review-rating {
            color: #ffc107;
        }

        /* Photos styles */
        .photo-gallery {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
            gap: 15px;
        }

        .photo-item img {
            width: 100%;
            height: 150px;
            object-fit: cover;
            border-radius: 8px;
            cursor: pointer;
            transition: transform 0.3s ease;
        }

        .photo-item img:hover {
            transform: scale(1.05);
        }

        /* Responsive */
        @media (max-width: 768px) {
            .modal-tabs {
                flex-wrap: wrap;
            }
            
            .tab-button {
                padding: 12px 15px;
                font-size: 14px;
            }
            
            .room-item {
                flex-direction: column;
            }
            
            .room-image {
                width: 100%;
                height: 200px;
            }
        }
        .pop-up-dt-container {
            max-width: 1050px;
            background: white;
            margin: 0 auto;
            border-radius: 8px;
            overflow: hidden;
        }

        .pop-up-dt-section {
            display: flex;
            border-bottom: 1px solid #e5e5e5;
            min-height: 60px;
        }

        .pop-up-dt-section:last-child {
            border-bottom: none;
        }

        .pop-up-dt-left {
           
            width: 180px;
            min-width: 180px;
            padding: 15px 0px;
            display: flex;
            align-items: flex-start;
            flex-shrink: 0;
        }

        .pop-up-dt-header {
            display: flex;
            align-items: center;
            width: 100%;
        }

        .pop-up-dt-icon {
            width: 16px;
            height: 16px;
            margin-right: 8px;
            flex-shrink: 0;
        }

        .pop-up-dt-title {
            font-size: 14px;
            font-weight: normal;
            color: #5E3277;
            line-height: 1.3;
            font-weight: 600;
        }

        .pop-up-dt-right {
            flex: 1;
            padding: 15px 20px;
            background-color: white;
        }

        .pop-up-dt-description-text {
            font-size: 14px;
            line-height: 1.5;
            color: #333;
            margin-bottom: 10px;
        }

        .pop-up-dt-read-more {
            color: #5E3277;
            font-size: 14px;
            text-decoration: none;
            cursor: pointer;
        }

        .pop-up-dt-read-more:hover {
            text-decoration: underline;
        }

        .pop-up-dt-check-times {
            display: flex;
            gap: 30px;
            font-size: 14px;
            color: #333;
        }

        .pop-up-dt-check-item {
            color: #333;
        }

        .pop-up-dt-amenities-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 8px 15px;
        }

        .pop-up-dt-amenity-item {
            font-size: 14px;
            color: #333;
            padding: 2px 0;
            display: block;
            width: max-content;
        }

        @media (max-width: 768px) {
            .pop-up-dt-container {
                margin: 0 10px;
            }

            .pop-up-dt-section {
                flex-direction: column;
                min-height: auto;
            }

            .pop-up-dt-left {
                width: 100%;
                min-width: 100%;
                padding: 12px 15px;
            }

            .pop-up-dt-right {
                padding: 12px 15px;
            }

            .pop-up-dt-check-times {
                flex-direction: column;
                gap: 8px;
            }

            .pop-up-dt-amenities-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 6px 15px;
            }
        }

        @media (max-width: 480px) {
            body {
                /* padding: 10px; */
            }

            .pop-up-dt-container {
                margin: 0;
            }

            .pop-up-dt-left {
                padding: 10px 12px;
            }

            .pop-up-dt-right {
                padding: 10px 12px;
            }

            .pop-up-dt-amenities-grid {
                grid-template-columns: 1fr;
                gap: 4px;
            }

            .pop-up-dt-check-times {
                gap: 6px;
            }
        }

         .profile-img {
            margin-right: 8px;
    object-fit: cover;
    box-sizing: border-box;
    width: 42px;
    height: 42px;
    background: #EDEDED;
    border-radius: 30px;
    flex: none;
    order: 1;
    flex-grow: 0;
}

.ind-nav-notification {
width: 42px;
height: 42px;
background: linear-gradient(156.61deg, rgba(247, 232, 255, 0.4) 15.09%, rgba(136, 80, 167, 0.4) 234.1%);
border-radius: 30px;
flex: none;
order: 1;
flex-grow: 0;
border: none;
color: var(--primary-color);
}

.ind-nav-notification:hover {
    background-color: #e0e0e0; 
}
.prof-img-stl{
    display: flex
;
    align-items: center;
}
.ind-nav-img-ht{
    background: transparent;
    color: var(--primary-color);
    border: none;
    padding: 0px;
    gap: 8px;
    opacity: 1;
    border-radius: 8px;
    transform: rotate(0deg);

}
      


.prof-pg {
            display: flex;
        }

        .pro-app-container {
            width: 100%;
            background: #fafafb;
            min-height: 100vh;
            display: flex;
        }

        .pro-sidebar {
            background: white;
            align-items: flex-start;
            padding: 8px 0px 0px;
            gap: 4px;
            width: 233px;
            left: 0px;
            top: 68px;
                }

        .pro-sidebar-item {
            display: flex;
            align-items: center;
            padding: 16px 20px;
            color: var(--text-primary-gray-600);
            text-decoration: none;
            font-size: 13px;
            border-right: 3px solid transparent;
            font-weight: 400;
            gap: 5px;
        }

        .pro-sidebar-item:hover {
            background: #f9fafb;
        }

        .pro-sidebar-item.active {
            background: #451e50;
            color: white;
            border-right-color: var(--primary-color);
        }

        .pro-sidebar-item i {
            width: 16px;
            margin-right: 12px;
            text-align: center;
            font-size: 14px;
        }

        .pro-main-content {
            flex: 1;
            background: #f8f9fa;
        }

        .pro-header-card {
            width: 99%;
            background: linear-gradient(90deg, #4F265B 0%, #6D3D88 100%);
            border-radius: 0 0 24px 24px;
            padding: 24px;
            position: relative;
            overflow: hidden;
        }

        .prof-banner-container {
            width: 100%;
            max-width: 1500px;
            margin: 0 auto;
            padding: 0 16px;
        }

        .header-decorative-image {
            position: absolute;
            bottom: 0;
            right: 0;
            width: 100px;
            height: 144px;
            opacity: 0.2;
            pointer-events: none;
        }

        .stats-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 16px;
        }

        .pro-user-section {
            display: flex;
            gap: 16px;
            margin-bottom: 24px;
        }

        .avatar-wrapper {
            width: 88px;
            height: 88px;
            border-radius: 50%;
            background: linear-gradient(to right, #FFFFFF, #8295AB);
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
        }

        .user-avatar {
            width: 84px;
            height: 84px;
            border-radius: 50%;
            object-fit: cover;
        }

        .profile-badge {
            position: absolute;
            margin-top: 74%;
            display: flex;
            justify-content: center;
            align-items: center;
            width: 71px;
            height: 25px;
            background: linear-gradient(90deg, #F3F5F6 0%, #D3DAE1 100%);
            border-radius: 35px;
            font-size: 12px;
            font-weight: bold;
            color: #333;
            z-index: 2;
        }

        .user-info h2 {
            color: white;
            font-size: 24px;
            font-weight: 600;
            margin-bottom: 4px;
        }

        .user-info .email {
            color: rgba(255, 255, 255, 0.7);
            font-size: 14px;
        }

        .prof-crd-blx {
            display: block;
            width: 50%;
        }

        .prof-crd-flx {
            display: flex;
            justify-content: space-between;
        }

        .total-points {
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: flex-start;
            padding: 16px;
            gap: 20px;
            width: 49%;
            height: 90px;
            background: linear-gradient(360deg, rgba(255, 200, 113, 0) 0%, rgba(237, 215, 181, 0.1) 100%), 
                        linear-gradient(180deg, rgba(255, 255, 255, 0.1) 0%, rgba(153, 153, 153, 0.1) 100%);
            border-radius: 12px;
        }

        .total-points .label {
            color: rgba(255, 255, 255, 0.7);
            font-size: 13px;
            margin-bottom: 4px;
        }

        .total-points .value {
            color: white;
            font-size: 24px;
            font-weight: 600;
            text-align: left;
        }

        .pro-progress-section {
            margin: 20px 0;
            width: 315px;
        }

        .pro-progress-label {
            color: white;
            font-size: 14px;
            margin-bottom: 8px;
            font-weight: 500;
        }

        .pro-progress-bar {
            background: rgba(255, 255, 255, 0.2);
            height: 6px;
            border-radius: 3px;
            overflow: hidden;
            margin-bottom: 8px;
        }

        .pro-progress-fill {
            background: linear-gradient(105.87deg, #FFFFFF -10.38%, #F3AB0F 88.93%);
            height: 100%;
            width: 72%;
            border-radius: 3px;
        }

        .pro-progress-info {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .next-level {
            color: rgba(255, 255, 255, 0.8);
            font-size: 12px;
        }

        .gold-badge {
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 4px 8px;
            gap: 4px;
            width: 67px;
            height: 28px;
            background: linear-gradient(90deg, #EDD7B5 0%, #FFC871 100%);
            border-radius: 35px;
            font-size: 11px;
            font-weight: 600;
        }

        .stats-grid {
            display: flex;
            gap: 0;
            margin-top: 20px;
        }

        .stat-item {
            flex: 1;
            display: flex;
            padding: 16px 12px;
            gap: 12px;
        }

        .stat-icon {
            width: 18px;
            height: 18px;
        }

        .stat-text {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
        }

        .stat-value {
            color: white;
            font-size: 16px;
            font-weight: 600;
            margin-bottom: 4px;
        }

        .stat-label {
            color: rgba(255, 255, 255, 0.7);
            font-size: 10px;
            line-height: 1.2;
        }

        .overlapping-content {
            position: relative;
            z-index: 10;
            margin-top: -15px;
            padding: 0 24px 24px;
            width: 75%;
        }

        .loyalty-section,
        .rewards-section {
            background: white;
            border-radius: 12px;
            padding: 24px;
            margin-bottom: 24px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        }

        .section-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .section-title,
        .rewards-header {
            color: var( --text-primary-gray-700);
            font-size: 16px;
            font-weight: 600;
        }

        .rewards-header {
            margin-bottom: 8px;
        }

        .view-benefits {
            font-weight: 500;
            font-size: 14px;
            display: flex;
            text-decoration: none;
            align-items: center;
            color: var(--primary-color);
            gap: 6px;
        }

        .current-level {
            background: #7D00A3;
            color: white;
            padding: 8px 16px;
            border-radius: 6px 6px 0 0;
            font-size: 13px;
            font-weight: 600;
            width: 100%;
            margin-bottom: 20px;
        }

        .tiers-grid {
            display: flex;
            gap: 16px;
        }

        .tier {
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            text-align: center;
            padding: 57px 0 20px;
            border-radius: 12px;
            background: white;
        }

        .tier.active {
            border: 2px solid var(--primary-color);
            background: rgba(123, 51, 145, 0.05);
            padding: 0 0 20px;
        }

        .tier-icon {
            width: 64px;
            height: 64px;
            margin: 0 auto 12px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }

        .tier-icon img {
            max-width: 100%;
            max-height: 65px;
            height: auto;
        }

        .tier-name {
            color: var( --text-primary-gray-700);
            font-size: 14px;
            font-weight: 600;
            margin-bottom: 4px;
        }

        .tier-subtitle {
            color: var(--text-primary-gray-400);
            font-size: 11px;
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 4px 12px;
            border-radius: 12px;
        }

        .rewards-subtitle {
            color: var(--text-primary-gray-400);
            font-size: 12px;
            margin-bottom: 20px;
        }

        .reward-item {
            display: flex;
            gap: 16px;
            padding: 16px 0;
            border-bottom: 1px solid #f3f4f6;
        }

        .reward-item:last-child {
            border-bottom: none;
            padding-bottom: 0;
        }

        .reward-image {
            width: 115px;
            height: 113px;
            border-radius: 8px;
            background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
            flex-shrink: 0;
            overflow: hidden;
        }

        .reward-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .reward-details {
            flex: 1;
        }

        .reward-name {
            color: var(--primary-color);
            font-size: 18px;
            font-weight: 600;
            margin: 4px 0px
        }

        .reward-location {
            color: var(--text-primary-gray-400);
            font-size: 12px;
            margin-bottom: 19px;
        }

        .reward-tags {
            display: block;
            margin-bottom: 8px;
        }

        .reward-tag {
            font-weight: 400;
            font-size: 12px;
            line-height: 18px;
            color: var( --text-primary-gray-500);
        }

        .points-stat {
            color: var(--text-primary-gray-600);
            font-size: 12px;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 4px;
        }

        .current-level-txt {
            font-weight: 400;
            font-size: 12px;
            line-height: 18px;
            color: var( --text-primary-gray-500);
            margin-bottom: 20px;
        }

        .tier-sub-silver { background-color: #D4DBE2; }
        .tier-sub-gold { background-color: #E0BD86; }
        .tier-sub-plat { background-color: #626160; color: #fff; }
        .tier-sub-diam { background-color: #617484; color: #fff; }

        .g-5 { gap: 5px; }
        .reward-tag-fb { display: flex; gap: 20px; }
        .d-flex { display: flex; }
        .d-block { display: block; }
        .d-center { display: flex; justify-content: center; }

        .ind-top-sold-stars {
            display: flex;
            gap: 2px;
        }

        .ind-top-sold-star {
            width: 12px;
            height: 12px;
            background: var(--star-rating);
            clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
        }

        /* .container { display: flex; justify-content: center; } */

   .pr-wi-sold-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
            gap: 24px;
      margin-bottom: 40px;
    }

    .pr-wi-sold-card {
      background: white;
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 4px 20px rgba(0,0,0,0.08);
      position: relative;
      transition: all 0.3s ease;
    }
    .pr-wi-sold-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 8px 30px rgba(0,0,0,0.15);
    }
.pr-wi-location{
  color: #504F50;
  font-size: 12px;
  margin-bottom: 10px;
}
    .pr-wi-sold-image-container { position: relative; height: 220px; overflow: hidden; }
    .pr-wi-sold-image {
      width: 100%; height: 100%; object-fit: cover;
      transition: transform 0.3s ease;
    }
    .pr-wi-sold-card:hover .pr-wi-sold-image { transform: scale(1.05); }

    .ind-wi-wishlist {
      position: absolute; top: 12px; left: 12px;
      width: 36px; height: 36px;
      background: rgba(255,255,255,0.9);
      backdrop-filter: blur(10px);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      cursor: pointer; transition: all 0.2s ease;
    }
    .ind-wi-wishlist:hover { background: #fff; transform: scale(1.1); }
    .ind-wi-wishlist i { color: #ff4757; font-size: 16px; }

    .pr-wi-sold-badge {
      position: absolute; bottom: 12px; right: 12px;
      background: linear-gradient(135deg,#ff4757,#ff3742);
      color: #fff; padding: 6px 12px;
      border-radius: 20px; font-size: 12px; font-weight: 600;
      box-shadow: 0 2px 8px rgba(255,71,87,0.3);
    }

    .pr-wi-sold-content { padding: 10px; }
    .pr-wi-flx { display: flex;      align-items: center; }
    .pr-wi-sold-hotel-name {
      font-size: 18px;
      font-weight: 600; color: #5D1473;
      margin-right: 8px;
    }

    .pr-wi-sold-stars { display: flex; gap: 3px; }
    .pr-wi-sold-star {
      width: 14px; height: 14px;
      background: linear-gradient(135deg,#ffc107,#ffb300);
      clip-path: polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);
    }

    .pr-wi-sold-location {
      font-size: 14px; color: #666; margin: 12px 0;
      display: flex; align-items: center; gap: 6px;
    }
    .pr-wi-sold-location i { color: #7B3391; font-size: 12px; }

    .pr-wi-sold-rating-section { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
    .pr-wi-rating-badge {
      background: #7B3391;
      color: #fff; padding: 6px 10px;
      border-radius: 8px; font-weight: 600;
      font-size: 14px; min-width: 40px; text-align: center;
      border-radius: 7.11111px 7.11111px 1.77778px 7.11111px;
    }
    .pr-wi-sold-rating-text { font-size: 12px; font-weight: 600; }
    .pr-wi-review-count { font-size: 12px; color: #5A5A5A; }
      
     .prof-review-container {
  max-width: 1200px;
  margin: auto;
  padding: 20px;
}

.prof-review-breadcrumb {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  font-size: 14px;
  color: #666;
}
.prof-review-breadcrumb a {
  color: #6A6E74;
  font-size: 12px;
  text-decoration: none;
}
.prof-review-breadcrumb span {
  margin: 0 8px;
  color: #242A33;
  font-weight: 500;
}

.prof-review-header { margin-bottom: 30px; }

.prof-review-title {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 20px;
  color: #333;
}
.prof-loy-container {
  max-width: 1200px;
  margin: 0 auto;
  
}

.prof-loy-header {
    text-align: center;
    padding: 24px;
    height: initial;
    background: #FFFFFF;
    border-radius: 12px 12px 0px 0px;
}

.prof-loy-back {
  display: flex;
  align-items: center;
  gap: 3px;
  margin-bottom: 20px;
  color: var(--primary-color);
  font-size: 14px;
  cursor: pointer;
}

.prof-loy-back::before { content: none; }

.prof-loy-title {
  font-size: 45px;
  font-weight: 600;
  color: var(--primary-color);
  margin-bottom: 16px;
}

.prof-loy-subtitle {
  color: var(--text-primary-gray-500);
  font-size: 14px;
  line-height: 1.5;
  max-width: 600px;
  margin: 0 auto;
}

.prof-loy-levels {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.prof-loy-card {
  flex: 1;
  min-width: 250px;
  max-width: 280px;
  text-align: center;
  background: #fff;
  padding: 32px 0 20px;
  transition: transform 0.2s ease;
}

.prof-loy-card:hover { transform: translateY(-5px); }

.prof-loy-card.active {
  border: 2px solid var(--primary-color);
  position: relative;
  padding: 0 0 20px;
}

.prof-loy-current-badge {
  background: var(--primary-color);
  color: #fff;
  padding: 8px 16px;
  font-size: 12px;
  font-weight: 600;
  display: inline-block;
  width: 100%;
}

.prof-loy-benefits-title {
  font-size: 12px;
  font-weight: 400;
  color: var(--text-primary-gray-700);
  margin-bottom: 16px;
  padding: 0 25px;
}

.prof-loy-benefits { text-align: left; }

.prof-loy-benefit {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  margin-bottom: 12px;
  padding: 0 25px;
  font-size: 13px;
  line-height: 1.4;
  color: var(--text-primary-gray-700);
}

.prof-loy-benefit p { width: 300px; }

.prof-loy-benefit svg {
  flex-shrink: 0;
  width: 15px;
  height: 20px;
}

/* Badge icon colors */
.star-loy-icn-silver { color: #BABFC4; }
.star-loy-icn-gold   { color: var(--gold-badge); }
.star-loy-icn-platinum { color: #BCBCBC; }
.star-loy-icn-diamond  { color: var(--diamond-badge); }

.prof-loy-icon {
  width: 80px;
  height: 80px;
  margin: 30px auto 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.prof-loy-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.prof-loy-level-name {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 8px;
  color: var(--text-primary-gray-700);
}

.prof-loy-requirement {
  padding: 6px 12px;
  margin-bottom: 20px;
  font-size: 12px;
  border-radius: 16px;
  display: inline-block;
  background: var(--silver-badge);
  color: var(--text-primary-gray-700);
}

.prof-loy-gold .prof-loy-requirement {
  background: var(--gold-badge);
}

.prof-loy-platinum .prof-loy-requirement {
  background: var(--platinum-badge);
  color: #fff;
}

.prof-loy-diamond .prof-loy-requirement {
  background: var(--diamond-badge);
  color: #fff;
}

/* Level backgrounds */
.prof-loy-silver {
  background: linear-gradient(0deg, #fff, #fff),
              linear-gradient(180deg, rgba(255,255,255,0) -16.32%, rgba(163,174,192,0.12) 100%);
}
.prof-loy-gold {
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(180,126,36,0.1) 75%, rgba(175,116,19,0.1) 100%), #fff;
}
.prof-loy-platinum {
  background: linear-gradient(180deg, rgba(255,255,255,0) -16.32%, rgba(163,174,192,0.33) 100%), #fff;
}
.prof-loy-diamond {
  background: linear-gradient(180deg, rgba(255,255,255,0.33) 28.56%, rgba(123,156,183,0.33) 100%), #fff;
}
prof-review-count.active {
    background: #F8F3FA;
    color: #8D599F;
}
.prof-bk-container {
  max-width: 900px;
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 20px 0px;
  padding: 12px 0px; /* gives breathing room on small screens */
}
.prof-bk-booking-id span {
  font-weight: 500;
    color: var(--text-primary-gray-500);
    margin-right: 6px;
    font-size: 14px;
}
.prof-bk-booking-id  {

    font-size: 14px;
}
.prof-review-count {
    background: #F0F0F0;
    color: var(--text-primary-gray-500);
    padding: 2px 6px;
    border-radius: 12px;
    font-size: 12px;
    margin-left: 8px;
}
.prof-bk-middle-box {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 10px 12px;
    display: flex
;
    flex-direction: column;
    gap: 4px;
    min-width: 272px;
}
.prof-bk-card {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* ✅ Status Row */
.prof-bk-status-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.prof-bk-status-pill {
 
  border-radius: 9999px;
  padding: 6px 12px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
  width: 45%;
}
.prof-bk-status-completed{
  background: linear-gradient(135deg, #e9d8f1, #f1e6f7);
  color: var(--primary-color);
}
.prof-bk-status-confirmed{
  background: #1AA7701A;

  color: var(--success-green-500);
}
.prof-bk-status-pending{
  background: #A7801A1A;
  color: var(--status-orc);
}
.prof-bk-status-cancelled{
  background: #FCF2F2;
  color: var(--status-red);
}
.prof-bk-status-icon {
  width: 16px;
  height: 16px;
  border-radius: 50%;

  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
}
.icon-color-pur {

  background: var(--primary-color);
}
.icon-color-gre {

  background: var(--success-green-600);

}
.icon-color-ora {
  background: var(--status-orc);
}
.icon-color-can {

background: var(--status-red);
}
.prof-bk-status-line {
  flex: 1;
  height: 1px;
  background: #e5e5e5;
}

/* ✅ Content Section */
.prof-bk-content {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.prof-bk-image img {
  width: 72px;
  height: 72px;
  border-radius: 8px;
  object-fit: cover;
}

.prof-bk-details {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* ✅ Header */
.prof-bk-header {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
}

.prof-bk-hotel-name {
  font-size: 18px;
  font-weight: 700;
  color: #5a0f71;
  display: flex;
  align-items: center;
  gap: 8px;
}

.prof-bk-stars { color: #fbbf24; }

.prof-bk-location {
  font-size: 14px;
  color: #1A191A;
  display: flex;
  align-items: center;
  gap: 4px;
}

/* ✅ Booking Details (check-in/out + middle box) */
.prof-bk-booking-details {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.prof-bk-date-section {
  display: flex;
  flex-direction: column;
  min-width: 120px;
}

.prof-bk-date-label { font-size: 12px; color: #737373; }
.prof-bk-date-value { font-size: 14px; font-weight: 700; color: #1f2937; }
.prof-bk-time { font-size: 12px; color: var(--text-primary-gray-500); }

/* ✅ Middle Box with Lines */
.prof-bk-middle-box-wrapper {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 10px;
}

.prof-bk-middle-box-wrapper::before,
.prof-bk-middle-box-wrapper::after {
  content: "";
  flex: 1;
  border-top: 1px solid var(--border-gray);
}

.prof-bk-middle-box {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 140px;
  text-align: center;
}

.prof-bk-room-item {
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 6px;
  color: #1A191A;
}
.prof-bk-tab.active {
    color: var(--primary-color);
    font-weight: 600;
}
/* 🔹 Tabs Container */
.prof-bk-tabs {
  display: flex;
  border-bottom: 1px solid var(--border-gray);
  margin-bottom: 20px;
  overflow-x: auto; /* scroll if too many tabs */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* Firefox */
}
.prof-bk-tabs::-webkit-scrollbar { display: none; } /* hide scrollbar */

/* 🔹 Individual Tab */
.prof-bk-tab {
  flex: none; /* prevent shrinking */
  white-space: nowrap;
  padding: 12px 16px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 14px;
  color: var(--text-primary-gray-500);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.bk-pro-actions {
            display: flex;
            gap: 12px;
            justify-content: flex-end;
            margin-top: 10px;
        }

        .bk-pro-btn {
            padding: 6px 20px;
            border-radius: 8px;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s;
            border: none;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .bk-pro-btn-primary {
          background: #7B3391;
          color: #fff;
        }

        .bk-pro-btn-primary:hover {
            background: #2d0572;
        }

        .bk-pro-btn-secondary {
            background: transparent;
            color: #5E3277;
            border: 1px solid #C7A7D3
        }

        .bk-pro-btn-secondary:hover {
            background: #8b5cf6;
            color: white;
        }

/* 🔹 Active Tab */
.prof-bk-tab.active {
  color: var(--primary-color);
  font-weight: 600;
}
.prof-bk-tab.active::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--primary-color);
}
.prof-review-bg {
    background: white;
    padding: 20px;
}
.prof-bk-booking-icon{
  background: #F8F3FA;
    padding: 5px;
    border-radius: 4px;
    color: #430343;
}
 .prof-edit-container {
    width: 100%;
    background: #fafafb;
    min-height: 100vh;    
}
.prof-rev-cntr { display: flex; align-items: center; gap: 4px; }
.prof-rev-icn { width: 16px; height: 16px; color: var(--primary-color); }

.prof-review-tabs {
  display: flex;
  border-bottom: 1px solid var(--border-gray);
  margin-bottom: 20px;
}
.prof-review-tab {
  padding: 12px 16px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 14px;
  color: var(--text-primary-gray-500);
  position: relative;
}
.prof-review-tab.active {
  color: var(--primary-color);
  font-weight: 600;
}
.prof-review-tab.active::after {
  content: '';
  position: absolute;
  bottom: -1px; left: 0; right: 0;
  height: 2px;
  background: var(--primary-color);
}

.prof-review-count {
  background: #F0F0F0;
  color: var(--text-primary-gray-500);
  padding: 2px 6px;
  border-radius: 12px;
  font-size: 12px;
  margin-left: 8px;
}
.prof-review-count.active {
  background: #F8F3FA;
  color: #8D599F;
}

.prof-review-sort-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 5px;
  padding-bottom: 15px;
}

.prof-review-total { font-size: 16px; font-weight: 500; }

.prof-review-sort {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--border-gray);
  border-radius: 6px;
  padding: 6px 10px;
  background: #fff;
  font-size: 14px;
}
.prof-review-sort label {
  margin-right: 6px;
  color: var(--text-primary-gray-700);
  display: flex;
  align-items: center;
  gap: 3px;
}
.prof-review-sort select {
  border: none;
  background: transparent;
  font-size: 14px;
  color: #333;
  outline: none;
}

.prof-review-list { display: flex; flex-direction: column; gap: 20px; }

.prof-review-item-bx,
.prof-review-item,
.prof-review-item-fx {
  display: flex;
  gap: 15px;
  border-radius: 8px;
  background: #fff;
}
.prof-review-item-bx { padding: 20px; border: 1px solid #F3F4F5; }
.prof-review-item-fx { display: block; }

.prof-review-hotel-image {
  flex-shrink: 0;
  width: 75px; height: 75px;
  border-radius: 4px;
  object-fit: cover;
}

.prof-review-content { flex: 1; min-width: 0; }

.prof-review-stars { display: flex; gap: 2px; }
.prof-review-star { color: #ffc107; font-size: 14px; }

.prof-review-location {
  color: var(--text-primary-gray-500);
  font-size: 12px;
  margin-bottom: 8px;
}

.prof-review-dates {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 12px;
  font-size: 12px;
  color: #666;
}

.prof-review-rating {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.prof-review-rating-badge {
  background: var(--primary-color);
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 27px; height: 26px;
  padding: 4px;
  font-size: 12px;
  font-weight: 300;
  border-radius: 8px 8px 0 8px;
}
.prof-review-rating-text {
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  letter-spacing: .01em;
  margin-bottom: 5px;
  color: #6A6E74;
}

.prof-review-text {
  font-size: 12px;
  line-height: 1.4;
  margin-bottom: 8px;
}

.prof-review-read-more {
  font-size: 11px;
  font-weight: 400;
  display: flex;
  align-items: center;
  letter-spacing: .01em;
  color: var(--primary-color);
  text-decoration: none;
}
.prof-review-read-more:hover { text-decoration: underline; }

.prof-review-status { flex-shrink: 0; align-self: flex-start; }
.prof-review-approved {
  background: var(--mint-green);
  color: #00A63E;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
}
.prof-review-pending {
  background: rgba(251,172,0,.11);
  color: var(--orange);
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  justify-content: center;
}
.prof-review-bg{
    background: white;
    padding: 20px;
}
.pro-sidebar-item.active svg {
  fill: white;
}
 .book-detail-timeline-time span{
        font-size: 16px;
        color: #000;
        font-weight: 600;
    }
     /* same as in booking details end */
 .bk-upcoming-header {
      display:flex;align-items:center;gap:12px;
      margin-bottom:16px;
    }
    .bk-upcoming-icon {
      width:32px;height:32px;
      color:#fff;
      border-radius:8px;
      display:flex;align-items:center;justify-content:center;
    }
    .bk-upcoming-title {
      font-size:16px;color:#1f2937;margin:0;
    }
    .bk-upcoming-desc {
      color:#525252;margin:0 0 20px;font-size: 12px;
    }
    .bk-upcoming-btn {
      display:flex;align-items:center;justify-content:center;
      padding:12px;
      border:1px solid #7200B3;
      border-radius:8px;
      color:#5E3277;
      font-weight:600;
      text-decoration:none;
      transition:.2s;
      width:100%;
      font-size: 16px;
    }
    .bk-upcoming-btn:hover {
      background:#8b5cf6;color:#fff;
    }
    @media(max-width:480px){
      .bk-upcoming-header{flex-direction:column;text-align:center}
    }
.htl-af-addon-price-in-sidebar{
    font-weight: 500;
    font-size: 11px;
    display: flex;
    align-items: center;
    color: #504F50;
 }
  .book-detail-timeline-time span{
                font-size: 16px;
                color: #000;
                font-weight: 600;
            }
             /* same as in booking details end */
         .bk-upcoming-header {
              display:flex;align-items:center;gap:12px;
              margin-bottom:10px;
            }
            .bk-upcoming-icon {
              width:32px;height:32px;
              color:#fff;
              border-radius:8px;
              display:flex;align-items:center;justify-content:center;
            }
            .bk-upcoming-title {
              font-size:16px;color:#1f2937;margin:0;
            }
            .bk-upcoming-desc {
              color:var(--text-primary-gray-600);margin:0 0 20px;font-size: 12px;
            }
            .bk-upcoming-btn {
              display:flex;align-items:center;justify-content:center;
              padding:12px;
              border:1px solid var(--primary-color);
              border-radius:8px;
              color:var(--primary-color);
              font-weight:600;
              text-decoration:none;
              transition:.2s;
              width:100%;
              font-size: 16px;
            }
            .bk-upcoming-btn:hover {
              background:#8b5cf6;color:#fff;
            }
          
            @media(max-width:480px){
              .bk-upcoming-header{flex-direction:column;text-align:center}
            }
            /* same as upcoming end */
            /* new */
              /* Badge */
              .fope-profile-badge {
              display: flex;
              align-items: center;
              justify-content: center;
              width: 71px;
              height: 25px;
              border-radius: 35px;
              font: bold 12px/1 system-ui, sans-serif;
              color: #333;
              background: linear-gradient(90deg, #F3F5F6, #D3DAE1);
            }
            .fope-profile-badge img { width: 16px; margin-right: 4px; }
        
            /* Loyalty row */
            .fope-loyalty {
              display: flex;
              align-items: center;
              gap: 12px;
              margin-bottom: 15px;
            }
            .fope-loyalty-icon {
              width: 24px; height: 24px;
              display: flex; align-items: center; justify-content: center;
              flex-shrink: 0;
            }
            .fope-loyalty-title { font-size: 16px; font-weight: 600;    flex: 1; }
        
            /* Points section */
            .fope-loyalty-ponts-earned {
              display: flex;
              flex-direction: column;
              gap: 2px;
              padding: 12px;
              border-radius: 8px;
              background: #F8F3FA;
            }
            .fope-loyalty-points { color: var(--primary-color); font-weight: 600; font-size: 16px; }
            .fope-loyalty-subtitle { color: #8D599F; font-size: 13px; }
            .comp-bk-location {
            display: flex;
            flex-wrap: wrap;
            gap: 10px; /* spacing between items */
        }
        
        .comp-bk-location p {
            flex: 0 0 48%; 
            margin: 0;
            padding: 4px 8px;
            border-radius: 5px;
            font-size: 12px;
            color: var( --text-primary-gray-500);
            display: flex;
            align-items: center;
            gap: 6px; 
        }
        .comp-bk-dt {
            font-weight: 500;
            font-size: 13px;
            line-height: 18px;
            letter-spacing: 0.015em;
            color: var(--primary-color);
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 10px;
            padding: 6px 12px;
            width: 302px;
            height: 30px;
            background: #F8F3FA;
            border-radius: 8px;
            margin: 15px 0;
        }
        .fope-booking-header {
                    margin-bottom: 16px;
                }
        
                .fope-booking-title {
                    font-size: 16px;
                    font-weight: 600;
                    color: #333;
                    margin-bottom: 4px;
                }
        
                .fope-booking-subtitle {
                    font-size: 12px;
                    color: #666;
                }
        
                .fope-hotel-card {
                    display: flex;
                    gap: 12px;
                    margin-bottom: 16px;
                    background: #F4F5F9;
                    padding: 14px;
                    border-radius: 8px;
                }
        
              
        .fope-hotel-image {
            width: 80px;
            height: 80px;;
            border-radius: 8px;
            flex-shrink: 0;
            overflow: hidden;
            position: relative;
        }
        
        .fope-hotel-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 8px;
        }
        
                .fope-hotel-info {
                    flex: 1;
                    min-width: 0;
                }
        
                .fope-hotel-name {
                    font-size: 18px;
                    font-weight: 600;
                    color: #5D1473;
                    margin-bottom: 4px;
                    display: flex;
                    align-items: center;
                    gap: 4px;
                }
        
                .fope-stars {
                    color: #ffc107;
                    font-size: 12px;
                }
        
                .fope-hotel-location {
                    font-size: 12px;
                    color: #666;
                    margin-bottom: 4px;
                    display: flex;
                    align-items: center;
                    gap: 4px;
                }
        
                .fope-hotel-details {
                    font-size: 12px;
                    color: #666;
                    display: flex;
                    align-items: center;
                    gap: 4px;
                }
        
               
                .fope-book-btn {
                    background: var(--primary-color);
                    color: white;
                    border: none;
                    padding: 12px 20px;
                    border-radius: 8px;
                    font-weight: 600;
                    cursor: pointer;
                    width: 40%;
                    margin-bottom: 8px;
                }
        
                .fope-book-info {
                    font-size: 14px;
                    color: var( --text-primary-gray-500);
                }
        
                 
        /* Header */
        .rate-yr-sty-header {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 30px;
        }
        
        .rate-yr-sty-avatar {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: linear-gradient(45deg, #6b21a8, #a855f7);
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: bold;
            font-size: 18px;
        }
        
        .rate-yr-sty-avatar img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 50%;
        }
        
        .rate-yr-sty-header-text h2 {
            font-size: 16px;
            font-weight: bold;
            margin-bottom: 4px;
        }
        
        .rate-yr-sty-header-text p {
            font-size: 14px;
            color: #666;
        }
        
        /* Sections */
        .rate-yr-sty-section {
            margin-bottom: 25px;
        }
        
        .rate-yr-sty-section-title {
            font-size: 14px;
            font-weight: 500;
            margin-bottom: 12px;
        }
        
        /* Rating */
        .rate-yr-sty-rating-row {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
        }
        
        .rate-yr-sty-rating-btn {
            padding: 8px 12px;
            border: 1px solid #7200B34D;
            border-radius: 4px;
            background: transparent;
            color: var(--primary-color);
            cursor: pointer;
            font-size: 14px;
            transition: all 0.2s ease;
            flex: 1;
            min-width: 80px;
            text-align: center;
        }
        
        .rate-yr-sty-rating-btn:hover {
            background-color: #f3e8ff;
        }
        
        .rate-yr-sty-rating-btn.active {
            background-color: var(--primary-color);
            color: white;
            border-color: var(--primary-color);
        }
        
        /* Main rating */
        .rate-yr-sty-main-rating {
            margin-bottom: 22px;
        }
        
        .rate-yr-sty-main-rating .rate-yr-sty-rating-row {
            gap: 12px;
        }
        
        .rate-yr-sty-main-rating .rate-yr-sty-rating-btn {
            padding: 12px 16px;
            font-size: 16px;
            min-width: 100px;
        }
        
        /* Categories */
        .rate-yr-sty-categories {
            display: grid;
            grid-template-columns: 1fr 1fr;
            margin-bottom: 30px;
            gap: 0 25px;
        }
        
        /* Textarea */
        .rate-yr-sty-textarea {
            width: 100%;
            height: 100px;
            padding: 12px;
            border: 1px solid #ccc;
            border-radius: 4px;
            font-family: inherit;
            font-size: 14px;
            resize: vertical;
            margin-bottom: 8px;
        }
        
        .rate-yr-sty-textarea::placeholder {
            color: #999;
        }
        
        .rate-yr-sty-char-count {
            text-align: right;
            font-size: 12px;
            color: var( --text-primary-gray-500);
        }
        
        .rate-yr-sty-details-text {
            font-size: 12px;
            color: #666;
            margin-bottom: 20px;
        }
        
        /* Pictures */
        .rate-yr-sty-pictures-container {
            display: flex;
            gap: 12px;
            align-items: center;
            flex-wrap: wrap;
            margin-bottom: 8px;
        }
        
        .rate-yr-sty-picture-thumb,
        .rate-yr-sty-add-more {
            width: 80px;
            height: 80px;
            border-radius: 4px;
            object-fit: cover;
        }
        
        .rate-yr-sty-add-more {
            border: 1px solid #7200B34D;
            background: transparent;
            color: var(--primary-color);
            cursor: pointer;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            transition: all 0.2s ease;
        }
        
        .rate-yr-sty-add-more:hover {
            background-color: #f3e8ff;
        }
        
        .rate-yr-sty-add-icon {
            font-size: 20px;
            margin-bottom: 4px;
        }
        
        .rate-yr-sty-picture-count {
            font-size: 12px;
            color: #666;
            text-align: right;
        }
        
        /* Actions */
        .rate-yr-sty-actions {
            display: flex;
            gap: 15px;
            justify-content: flex-end;
        }
        
        .rate-yr-sty-btn {
            padding: 12px 24px;
            border-radius: 4px;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s ease;
            border: none;
            width: 50%;
        }
        
        .rate-yr-sty-btn-clear {
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 6px 12px;
            gap: 8px;
            background: rgba(203, 203, 203, 0.2);
            border-radius: 8px;
            color: var(--primary-color);
        }
        
        .rate-yr-sty-btn-clear:hover {
            background-color: #f3e8ff;
        }
        
        .rate-yr-sty-btn-submit {
            background: var(--primary-color);
            color: white;
            border-radius: 8px;
        }
        
        .rate-yr-sty-btn-submit:hover {
            background: #581c87;
        }
        
        /* Footer under textarea */
        .rate-yr-sty-footer {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        
        /* Responsive */
        @media (max-width: 768px) {
            .fope-hotel-card {
                display: block;
            }
            .fope-hotel-image {
            width: auto;
            height: 115px;
            }
            .fope-hotel-info
         {margin-bottom: 10px;}
            .fope-hotel-name {
            font-size: 16px;
            display: block;
            margin-top: 10px;
            }
            .comp-bk-location {
                display: block;
            }
        
            .rate-yr-sty-categories {
                grid-template-columns: 1fr; }
        
            .rate-yr-sty-rating-row {
                gap: 6px;
            }
        
            .rate-yr-sty-rating-btn {
                min-width: 70px;
                padding: 6px 8px;
                font-size: 12px;
            }
        
            .rate-yr-sty-main-rating .rate-yr-sty-rating-btn {
                min-width: 80px;
                padding: 10px 12px;
                font-size: 14px;
            }
        
            .rate-yr-sty-pictures-container {
                gap: 8px;
            }
        
            .rate-yr-sty-picture-thumb,
            .rate-yr-sty-add-more {
                width: 60px;
                height: 60px;
            }
        
            .rate-yr-sty-actions {
                flex-direction: column;
            }
        
            .rate-yr-sty-btn {
                width: 100%;
            }
        }
        
        @media (max-width: 480px) {
            .fope-book-btn {
        
            width: 100%;
            }
            .fope-hotel-card {
                display: block;
            }
            .fope-hotel-image {
            width: auto;
            height: 115px;
            }
            .rate-yr-sty-header {
                flex-direction: column;
                text-align: center;
                gap: 8px;
            }
            .fope-hotel-name {
            display: block;
            }
            .comp-bk-location {
                display: block;
            }
            .book-detail-stars {
           
            margin-left: 0px;
        }
        .comp-bk-dt {
            font-size: 12px;
        width: 287px;
        }
            .rate-yr-sty-rating-row {
                gap: 4px;
            }
        
            .rate-yr-sty-rating-btn {
                min-width: 60px;
                padding: 6px 4px;
                font-size: 11px;
            }
        
            .rate-yr-sty-main-rating .rate-yr-sty-rating-row {
                flex-direction: column;
                gap: 8px;
            }
        
            .rate-yr-sty-main-rating .rate-yr-sty-rating-btn {
                width: 100%;
                min-width: auto;
            }
        }       
        .htl-af-addon-price-in-sidebar{
            
            font-weight: 500;
            font-size: 11px;
            display: flex;
            align-items: center;
            color: #504F50;
            
            
                    }   
                    .rate-yr-sty-header-text p{
    color:#525252;
    font-size: 12px;
    font-weight: 400;
}         


/* newly added styles */
.book-detail-completed-text{
    color: #7D00A3;
    font-weight: 600;
    font-size: 15px;
}
.thank-quote{color:#504F50;
    font-size: 12px;
    font-weight: 400;
}
.book-detail-can-title {
        color: var(--title-red);
        font-weight: 600;
        font-size: 15px;
    }
    .comp-bk-dt-rd {
    font-size: 13px;
    line-height: 18px;
    letter-spacing: 0.015em;
    display: flex
;    color: var(--title-red);
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 8px;
    margin: 5px 0;
}
.comp-bk-ttle{
    color: var(--title-red);
    font-size: 14px;
}
.comp-bk-rd-crd{
display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-start;
padding: 6px 12px;
background: rgba(202, 0, 3, 0.05);
border-radius: 8px;
flex: none;
margin: 10px 0px;
padding: 10px;
background: #CA00030D;
width: 243px;
}
 /* Container */
 .fope-container {
            margin-top: 25px;
            background: #F3F4F599;
            border-radius: 4px;
            padding: 20px;
            display: flex;
            flex-direction: column;
            gap: 12px;
        }
        
        /* Header */
        .fope-payment-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        
        .fope-payment-title {
            display: flex;
            align-items: center;
            gap: 8px;
            font-size: 16px;
            font-weight: 600;
            color: var(--success-green-800);
        }
        
        .fope-check-icon {
            width: 16px;
            height: 16px;
            background: #4CAF50;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #fff;
            font-size: 10px;
        }
        
        .fope-confirmed-badge {
            background: #4CAF50;
            color: #fff;
            padding: 4px 8px;
            border-radius: 4px;
            font-size: 12px;
            font-weight: 600;
        }
        
        /* Payment Amount */
        .fope-payment-amount {
            display: flex;
            justify-content: space-between;
            font-size: 14px;
            font-weight: 500;
            color: var(--success-green-800);
        }
        
        /* Refund Info */
        .fope-refund-info {
            font-size: 12px;
            color: var(--success-green-800);
            line-height: 1.4;
        }
        
        /* Responsive for mobile */
        @media (max-width: 480px) {
          
            .fope-payment-title {
                font-size: 13px;
            }
            .fope-payment-amount {
                font-size: 13px;
            }
            .fope-confirmed-badge {
                font-size: 11px;
                padding: 3px 6px;
            }
        }
        .fope-option {
          flex: 1;
          border: 1px solid #e0e0e0;
          border-radius: 8px;
          padding: 16px;
          cursor: pointer;
          transition: border-color 0.2s;
          display: flex;
          align-items: center; /* Icon + texts aligned in center */
          gap: 12px;
          border: 1px solid #C7A7D3
        }
    
        .fope-option:hover {
          border-color: #4CAF50;
        }
    

    
        .fope-option-text {
          display: flex;
          flex-direction: column;
          gap: 4px;
        }
    
        .fope-option-title {
          font-size: 14px;
          font-weight: 600;
          color: var(--profile-tabs);
        }
    
        .fope-option-subtitle {
          font-size: 12px;
          color: var(--text-primary-gray-500);
        }
.htl-af-addon-price-in-sidebar{        
    font-weight: 500;
    font-size: 11px;
    display: flex;
    align-items: center;
    color: #504F50;
}
.modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    justify-content: center;
    align-items: flex-start;
    padding: 20px;
    overflow-y: auto;
    z-index:9999;
}
.modal-overlay-active {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    justify-content: center;
    align-items: flex-start;
    padding: 20px;
    overflow-y: auto;
}
.bk-cl-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, 0.5);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px;
            z-index: 1000;
        }
        
        /* Popup */
        .bk-cl-popup {
            background: #fff;
            border-radius: 12px;
            width: 100%;
            max-width: 668px;
            max-height: 90vh;
            overflow-y: auto;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
            position: relative;
        }
        
        /* Warning header */
        .bk-cl-warning-header {
            border-radius: 12px 12px 0 0;
            margin-bottom: 20px;
        }
        .bk-cl-warning-title {
            color: var(--old-price-red);
            font-size: 16px;
            font-weight: 600;
            margin-bottom: 4px;
        }
        .bk-cl-warning-subtitle {
            color: var(--caption-black);
            font-size: 12px;
            line-height: 1.4;
        }
        
        /* Content */
        .bk-cl-content {
            padding: 24px;
        }
        
        /* Hotel card */
        .bk-cl-hotel-card {
            display: flex;
            gap: 16px;
            margin-bottom: 24px;
            padding: 16px;
            background: #F4F5F9;
            border-radius: 8px;
        }
        .bk-cl-hotel-image {
            width: 80px;
            height: 80px;
            border-radius: 8px;
            flex-shrink: 0;
            background-size: cover;
            background-position: center;
        }
        .bk-cl-hotel-image img {
            width: 100%;
            height: 100%;
            border-radius: 8px;
        }
        .bk-cl-hotel-info { flex: 1; min-width: 0; }
        .bk-cl-hotel-name {
            font-size: 18px;
            font-weight: 600;
            color: var(--primary-color);
            margin-bottom: 6px;
            display: flex;
            align-items: center;
            gap: 6px;
        }
        
        /* Booking details */
        .bk-cl-booking-details { margin-bottom: 15px; border-radius: 8px; }
        
        /* Total */
        .bk-cl-total-section {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            margin-bottom: 16px;
        }
        .bk-cl-total-label {
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 4px;
            text-align: left;
        }
        .bk-cl-total-details { font-size: 14px; }
        .bk-cl-total-amount { text-align: right; }
        .bk-cl-price { font-size: 18px; font-weight: 700; }
        .bk-cl-tax-info { font-size: 14px; }
        
        /* Refund */
        .bk-cl-refund-info {
            margin-bottom: 24px;
            font-size: 14px;
            color: var(--text-primary-gray-700);
        }
        .bk-cl-refund-text {
            font-size: 14px;
            color: #2d3748;
            line-height: 1.5;
        }
        
        /* Policy */
        .bk-cl-policy-title {
            font-size: 16px;
            font-weight: 600;
            margin-bottom: 5px;
            color: var(--text-primary-gray-600);
        }
        .bk-cl-policy-list { list-style: none; padding: 8px; }
        .bk-cl-policy-item {
            position: relative;
            padding-left: 20px;
            font-size: 14px;
            line-height: 1.5;
            color: var(--text-primary-gray-400);
        }
        .bk-cl-policy-item::before {
            content: "•";
            position: absolute;
            left: 0;
            font-size: 18px;
            line-height: 1.5;
            font-weight: bold;
        }
        
        /* Reason */
        .bk-cl-reason-section { margin-bottom: 24px; }
        .bk-cl-reason-title {
            font-size: 14px;
            font-weight: 600;
            color: var(--caption-black);
            margin: 10px 0 4px;
        }
        .bk-cl-reason-subtitle {
            color: var(--caption-black);
            font-size: 12px;
            margin-bottom: 12px;
        }
        .bk-cl-dropdown {
            width: 100%;
            padding: 12px 16px;
            border: 1px solid #00000040;
            border-radius: 8px;
            font-size: 14px;
            color: var(--text-primary-gray-500);
            background: #fff;
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        .bk-cl-dropdown:focus {
            outline: none;
            border-color: #4299e1;
        }
        
        /* Actions */
        .bk-cl-actions { display: flex; gap: 12px; border-radius: 0 0 12px 12px; }
        .bk-cl-btn {
            flex: 1;
            padding: 14px 24px;
            border-radius: 8px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.2s;
            border: 2px solid transparent;
        }
        .bk-cl-btn-secondary {
            background: #fff;
            color: var(--primary-color);
            border: 1px solid var(--primary-color);
        }
        .bk-cl-btn-secondary:hover {
            background: #f7fafc;
            border-color: #cbd5e0;
        }
        .bk-cl-btn-danger {
            border: 1px solid #FF00005C;
            color: var(--old-price-red);
            background: #CD01050F;
        }
        .bk-cl-btn-danger:hover {
             background: #c53030; 
             color:#f1f1f1;
            }
        
        /* Responsive */
        @media (max-width: 768px) {
            .bk-cl-overlay { padding: 10px; align-items: flex-start; padding-top: 20px; }
            .bk-cl-popup { max-height: 95vh; }
             .bk-cl-content { padding: 20px; }
            .bk-cl-hotel-card { flex-direction: column; text-align: center; }
            .bk-cl-hotel-image { width: 60px; height: 60px; align-self: center; }
            .bk-cl-total-section { gap: 8px; text-align: center; }
            .bk-cl-total-amount { text-align: center; }
            .bk-cl-actions { flex-direction: column;  }
            .bk-cl-hotel-name { font-size: 16px; justify-content: center; }
            .bk-cl-price { font-size: 18px; }
            .bk-cl-tax-info {font-size: 12px;}
            .bk-cl-total-details {font-size: 12px;}
            .bk-cl-warning-title {font-size: 14px;}
            .srch-pg-location-dtl {justify-content: center;}
            /* .bk-cl-warning-header { margin-bottom: 0px;} */
        }
        @media (max-width: 480px) {
            .bk-cl-overlay { padding: 5px; }
        }

.srch-occupancy-popup-list {
    position: absolute;
    top: 18%;
    left: 61%;
    width: 343px;
    background: #FFFFFF;
    border-radius: 16px;
    padding: 18px;
    box-shadow: 0 10px 40px rgba(204, 181, 181, 0.15);
    /* display: none; */
    flex-direction: column;
    gap: 12px;
    z-index: 1000;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

.srch-occupancy-popup-list.active {
    display: flex;
}


/* media */
@media screen and (min-width: 1201px) and (max-width: 1300px) {

/* hotel-detail */
.srh-dtl-crd-cards-container {
    display: flex;
    gap: 10px
}

.srh-dtl-crd-content {
    padding: 10px;
}

.srh-dtl-crd-discount-badge.member {

    padding: 4px 0px;
}

.srh-dtl-crd-title {
    font-size: 16px;
}

.htl-dtl-review-left-section {

    height: 553px;
}
}
@media screen and (min-width: 800px) and (max-width: 1000px) {

.srh-dtl-crd-card{
    flex: 0 0 calc(50% - 13.333px);
}
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
 /* hotel details */
 .srh-dtl-crd-card {
    min-width: auto;
}

.srh-dtl-crd-title {
    font-size: 17px;
    height: 43px;
}

.srh-dtl-crd-cards-container {
    display: flex;
    gap: 9px;
}

.srh-dtl-crd-policy-option {

    font-size: 13px;
}

.srh-dtl-crd-discount-badge.member {
    margin-bottom: 5px;
    width: 100%;
}

.srh-dtl-crd-discount-badge.offer {
    width: 100%;
}

.srh-dtl-crd-discount-badge.promo {
    width: 100%;
}
.srh-dtl-crd-discounts {
    display: block;
}

.srh-dtl-crd-discounts {
    margin-bottom: 10px;
}
}
@media screen and (min-width: 1000px) and (max-width: 1024px) {
     /* hotel details */
     .srh-dtl-crd-card {
        min-width: auto;
    }

    .srh-dtl-crd-title {
        font-size: 17px;
        height: 43px;
    }

    .srh-dtl-crd-cards-container {
        display: flex;
        gap: 9px;
    }

    .srh-dtl-crd-policy-option {

        font-size: 13px;
    }

    .srh-dtl-crd-discount-badge.member {
        margin-bottom: 5px;
        width: 100%;
    }

    .srh-dtl-crd-discount-badge.offer {
        width: 100%;
    }

    .srh-dtl-crd-discounts {
        display: block;
    }

    .srh-dtl-crd-discounts {
        margin-bottom: 10px;
    }

}
@media screen and (min-width: 768px) and (max-width: 999px) {
    .srh-dtl-crd-cards-container {
        flex-direction: row;
    }

    .srh-dtl-crd-cards-container {
        gap: 10px;
    }

    .srh-dtl-crd-info-item-area {

        width: 73px;
        font-size: 12px;
    }

    .srh-dtl-crd-info-item-camera {
        width: 60px;
        font-size: 12px;
    }

    .srh-dtl-crd-title {
        font-size: 17px;
        height: 40px;
    }

    .srh-dtl-crd-shuttle {

        font-size: 12px;
    }

    .srh-dtl-crd-discount-badge.member {
        width: 100%;
        margin-bottom: 10px;
    }

    .srh-dtl-crd-discounts {
        display: block;
    }

    .srh-dtl-crd-discount-badge.offer {
        width: 100%;
    }

    .srh-dtl-crd-content {
        padding: 9px;
    }

    .srh-dtl-crd-option-price {

        /* width: 57px; */
        font-size: 12px;
    }
}
@media screen and (min-width: 641px) and (max-width: 767px) {
    .srh-dtl-crd-info-item-area {

        width: 73px;
        font-size: 12px;
    }

    .srh-dtl-crd-info-item-camera {
        width: 60px;
        font-size: 12px;
    }

    .srh-dtl-crd-title {
        font-size: 17px;
        height: 40px;
    }

    .srh-dtl-crd-shuttle {

        font-size: 12px;
    }


    .srh-dtl-crd-content {
        padding: 9px;
    }

    .srh-dtl-crd-option-price {

        /* width: 57px; */
        font-size: 12px;
    }
}
@media screen and (min-width: 568px) and (max-width: 640px) {
    .srh-dtl-crd-info-item-area {

        width: 73px;
        font-size: 12px;
    }

    .srh-dtl-crd-info-item-camera {
        width: 60px;
        font-size: 12px;
    }

    .srh-dtl-crd-title {
        font-size: 17px;
        height: 40px;
    }

    .srh-dtl-crd-shuttle {

        font-size: 12px;
    }


    .srh-dtl-crd-content {
        padding: 9px;
    }

    .srh-dtl-crd-option-price {

        /* width: 57px; */
        font-size: 12px;
    }

}
@media screen and (min-width: 481px) and (max-width: 567px) {
    .srh-dtl-crd-info-item-area {

        width: 73px;
        font-size: 12px;
    }

    .srh-dtl-crd-info-item-camera {
        width: 60px;
        font-size: 12px;
    }

    .srh-dtl-crd-title {
        font-size: 17px;
        height: 40px;
    }

    .srh-dtl-crd-shuttle {

        font-size: 12px;
    }


    .srh-dtl-crd-content {
        padding: 9px;
    }

    .srh-dtl-crd-option-price {

        /* width: 57px; */
        font-size: 12px;
    }
}
@media screen and (min-width: 340px) and (max-width: 480px) {
    .srh-dtl-crd-info-item-area {

        width: 73px;
        font-size: 12px;
    }

    .srh-dtl-crd-info-item-camera {
        width: 60px;
        font-size: 12px;
    }

    .srh-dtl-crd-title {
        font-size: 17px;
        height: 40px;
    }

    .srh-dtl-crd-shuttle {

        font-size: 12px;
    }


    .srh-dtl-crd-content {
        padding: 9px;
    }

    .srh-dtl-crd-option-price {

        /* width: 57px; */
        font-size: 12px;
    }
    .srh-dtl-crd-room-info {
        flex-direction: row;
    }

    .ind-serch-input {
        font-size: 14px;
    }

    .ind-serch-field-srch {
        min-width: calc(100% - 10px);
    }

    .hotel-detail-stars {
        font-size: 13px;
    }

    .srh-dtl-crd-discount-badge.member {
        margin-bottom: 5px;
        width: 100%;
    }

    .srh-dtl-crd-discount-badge.offer {
        width: 100%;
    }

    .srh-dtl-crd-discounts {
        display: block;
    }

}

.b_widget_room_rate_night_rate{
   
    text-align: end;
}
.b_widget_rate_details_shows{
margin-bottom: 13px;
text-align: end;
}
.srh-dtl-crd-selectroom-section {
    margin-bottom: 20px;
    border-top: 1px solid #E7E7E7;
    padding-top: 10px;
    margin-top:2px;
}
.srh-dtl-crd-rateclass{
    margin-top:auto;
}
@media screen and (min-width: 999px) and (max-width: 1199px) {

.srh-dtl-crd-room-info{
display: block;
}

}
@media screen and (min-width: 768px) and (max-width: 800px) {

    .srh-dtl-crd-room-info{
    display: block;
    }
    
    }
    .promo-code{
        border-radius: var(--border_radius)!important
      }
      .srh-dtl-crd-discount-badge.offer{
        background: var(--secondary-color)!important;
        margin-bottom: 5px;
      }