/*
Theme Name: child-sinatra
Author: child-sinatra
Description: child-sinatra
Version: 1.0
Template: sinatra

This is the child theme for Sinatra 1.4.0 theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

/* ===== CUSTOM SINGLE PRODUCT PAGE ===== */

@import url('https://fonts.googleapis.com/css2?family=Nunito&display=swap');

#sinatra-primary-nav,
#sinatra-primary-nav * {
    font-family: 'Nunito', sans-serif !important;
}
@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans&display=swap');

div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video,
input, textarea, select, button {
    font-family: 'Nunito Sans', sans-serif !important;
}
.custom-single-product-wrapper {
    max-width: 1100px;
    margin: 30px auto;
    padding: 0 15px;
}
.search main#content {
    display: grid !important;
    grid-template-columns: repeat(2, auto);
    gap: 20px;
}
.sinatra-nav .children, .sinatra-nav .sub-menu{
    min-width:330px !important;
}
.csp-container {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    flex-wrap: wrap;
}

/* --- LEFT: Images --- */
.csp-images {
    flex: 0 0 45%;
    max-width: 45%;
}

.csp-main-image img {
    width: 100%;
    border-radius: 12px;
    object-fit: cover;
    max-height: 420px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.csp-thumbnails {
    display: flex;
    gap: 10px;
    margin-top: 12px;
}

.csp-thumb {
    width: 80px;
    height: 70px;
    object-fit: cover;
    border-radius: 8px;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border 0.2s;
}

.csp-thumb:hover,
.csp-thumb.active {
    border-color: #e91e8c;
}

/* --- RIGHT: Summary --- */
.csp-summary {
    flex: 1;
    min-width: 280px;
}

.csp-title {
    font-size: 24px;
    font-weight: 700;
    color: #222;
    line-height: 1.4;
    margin-bottom: 10px;
}

.csp-divider {
    border: none;
    border-top: 1px solid #ddd;
    margin: 12px 0;
}

/* Rating */
.csp-rating {
    color: #f5a623;
    font-size: 20px;
    margin-bottom: 12px;
}
.csp-rating span {
    color: #666;
    font-size: 14px;
}

/* Price */
.csp-price-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.csp-regular-price {
    font-size: 16px;
    color: #999;
    text-decoration: line-through;
}

.csp-sale-price {
    font-size: 22px;
    font-weight: 700;
    color: #e91e8c;
}

.csp-badge {
    background: #e91e8c;
    color: #fff;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
}

/* Trust Badges */
.csp-trust-badges {
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.csp-badge-item {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

/* Buttons */
.csp-buttons {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.csp-btn {
    padding: 13px 24px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s, transform 0.1s;
    cursor: pointer;
}

.csp-btn:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

.csp-whatsapp {
    background: #fff;
    color: #333;
    border: 2px solid #25D366;
}

.csp-booknow {
    background: #e91e8c;
    color: #fff;
    border: 2px solid #e91e8c;
}


/* Button click fix */
#csp-book-btn {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 999 !important;
}

/* Koi overlay block kar raha ho toh */
.custom-single-product-wrapper * {
    pointer-events: auto;
}
/* Addon Qty Controls */
.rk-addon-qty {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 6px;
}
.rk-qty-btn {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid #D04A6C;
    background: #fff;
    color: #D04A6C;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    transition: all .2s;
}
.rk-qty-btn:hover {
    background: #D04A6C;
    color: #fff;
}
.rk-qty-num {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    min-width: 20px;
    text-align: center;
}
.rk-qty-selector {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 4px;
}
.rk-qty-selector button {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid #D04A6C;
    background: #fff;
    color: #D04A6C;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.rk-qty-selector span {
    font-size: 15px;
    font-weight: 600;
    min-width: 20px;
    text-align: center;
}
.rk-qty-confirm-btn {
    width: 100%;
    padding: 7px;
    background: #22c55e;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    cursor: pointer;
    margin-top: 6px;
    font-weight: 600;
}
.rk-cal-day.in-range {
    background: #fce4ec;
    color: #D04A6C;
    border-radius: 0;
}
.rk-cal-day.selected {
    background: #D04A6C !important;
    color: #fff !important;
    border-radius: 50%;
}

/* --- MOBILE RESPONSIVE --- */
@media (max-width: 767px) {
    .csp-images,
    .csp-summary {
        flex: 0 0 100%;
        max-width: 100%;
    }
.search main#content {
    grid-template-columns: repeat(1, auto);
}
.search .si-container {
    padding: 0 15px !important;
}
    .csp-title { font-size: 20px; }
    .csp-sale-price { font-size: 18px; }
    .csp-btn { width: 100%; }
    .sinatra-logo img {
    max-height: 236px;
    width: 100%;
    min-width: 200px !important;
    max-width: 200px !important;
}
.si-container.si-header-container {
    padding: 0 20px !important;
}
.rk-product-box .rk-main-img{
    height: 100% !important;
}
.rk-product-box .rk-thumb {
    height: 100% !important;
    border-radius: 8px !important;
}
.rk-product-box .rk-old-price {
    font-size: 14px !important;
}
.rk-product-box .rk-new-price {
    font-size: 16px !important;
    padding-left: 0 !important;
}
.rk-product-box .rk-rating-label {
    font-size: 14PX !important;
}
.rk-product-box .rk-trust li {
    font-size: 15px !important;
    margin-top: 15px !important;
}
.rk-product-box .rk-btn-row {
    display: grid !important;
    grid-template-columns: repeat(2, auto) !important;
}
.elementor-element.elementor-element-8541b6c {
    display: grid !important;
    grid-template-columns: repeat(2, auto) !important;
}
.rk-product-box .rk-badge {
    font-size: 12px !important;
    padding: 3px 5px !important;
    border-radius: 7px !important;
}
.rk-product-box .rk-btn-row img {
    height: 32px !important;
}
.elementor-element-c1e9b0f .e-con-inner{
    display: grid !important;
    grid-template-columns: repeat(2, auto) !important;
}
    .footer-main {
        display: block !important;
    }
    .footer-bottom {
    display: block !important;
    font-size: 11px !important;
}
.footer-bottom svg {
    position: relative;
    top: 4px;
}
.cs-item-card {
    display: block !important;
}
.cs-item-delete-row {
    margin-top: 46px;
}
.cs-qty-wrap {
    position: absolute;
    margin-top: 8px;
}
.cs-cart-left {
    /* flex: 4; */
    min-width: 0;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
}
.elementor-element-793f119 p {
    padding: 0 20px !important;
    font-size: 22px !important;
}
.elementor-element-793f119 p {
    padding: 0 20px !important;
    font-size: 22px !important;
}
p.fill-data {
    padding: 0 14px 8px !important;
}
span.numners {
    font-size: 21px !important;
}
span.emails {
    font-size: 16px !important;
}
.rk-info-item span {
    font-size: 15px !important;
}
.rk-info-item img {
    width: 27px !important;
}
.rk-social-icon {
    border: 0 !important;
}
.elementor-15 .elementor-element.elementor-element-6857339 .elementor-button{
        padding: 4px 23px !important;
}
.wcu-label {
    font-size: 17px !important;
}
    .rk-info-item img {
        width: 27px !important;
        height: 27px !important;
    }
    .zoom-btn {
    top: -119px !important;
    left: 14% !important;
    padding: 3px 65px !important;
}
h3.elementor-image-box-title {
    margin-top: 5px;
}
.elementor-element-c0222f0 img {
    height: 52px !important;
    object-fit: contain !important;
}
}