/* ================================
   Disable text selection for UI
================================ */

button,
a,
nav,
.menu,
.btn,
.card,
.swiper,
.swiper-slide,
.hamburger-line,
div {
    user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

/* ================================
   Allow selection for content
================================ */

.entry-content,
.article-content,
.post-content,
.product-description {
    user-select: text;
    -webkit-user-select: text;
}

/* ================================
   Remove mobile tap highlight
================================ */

* {
    -webkit-tap-highlight-color: transparent;
}

/* ================================
   Better button behavior
================================ */

button,
a {
    cursor: pointer;
}

/* ================================
   Prevent image drag
================================ */

img {
  user-drag: none;
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

/* ================================
   Disable highlight when clicking
================================ */

::selection {
    background: rgba(0,0,0,0.1);
}

/* 
=============================
   ADD CSS
============================= 
*/
body{
    position: relative;
}

body::before{
    content:"";
    position:fixed;
    inset:0;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    z-index:-1;
}

.main-content-section p{
   margin-bottom: 15px;
}

#headerInner #topLogo a{
   width: 100px;
}

.gallery-shadow{
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

/* Hide Horizontal Scrollbar */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

#lightboxImage {
    -webkit-user-drag: none;
    user-select: none;
}

/* map style */
.contact-map{
    margin-top: 80px;
}

.contact-map iframe{

    width:100%;
    height:500px;
    border:0;
    display:block;

}

.toast-success p{
    margin-bottom: 0px;
}

#galleryAHeroImage{

    transition:
        opacity .3s ease,
        transform .3s ease;

}

.hero-changing {
    opacity: 0;
    transform: scale(.98);
}

/* ==========================================================
    GalleryA Product Thumbnail Dock (Optimized)
========================================================== */

.galleryA-thumbnail-wrapper{
    position:relative;
    margin-top:24px;
    padding:0;
    overflow: hidden;
    width: 100%;
}

.galleryA-thumbnail-swiper{
    overflow:hidden;
}

.galleryA-thumbnail-swiper .swiper-wrapper{
    padding-top:5px;
}

.galleryA-thumbnail-swiper{
    min-width:0;
    max-width:100%;
    width:100%;
}

.galleryA-thumbnail-swiper .swiper-wrapper{
    width:100%;
}

.galleryA-thumbnail-swiper .swiper-slide{
    min-width:0;
}

.galleryA-thumb{
    width:100%;
    aspect-ratio:1 / 1;
    height:auto;

    border:none;
    border-radius:15px;
    overflow:hidden;
    cursor:pointer;
    opacity:.35;
    transition:.3s;
}

.galleryA-thumb:hover{
    opacity:.75;
}

.galleryA-thumb.is-active{
    opacity:1;
}

.galleryA-thumb-image{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.galleryA-thumb-prev,
.galleryA-thumb-next{
    position:absolute;
    bottom:-10px;
    transform:translateY(-50%);
    width:36px;
    height:36px;
    background:#fff;
    cursor:pointer;
    z-index:99;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #44403b;
}

.galleryA-thumb-prev:hover,
.galleryA-thumb-next:hover{
    color: #d08700;

    transition-duration: .3s;
}

.galleryA-thumb-prev{
    left:0;
}

.galleryA-thumb-next{
    right:0;
}

div.product .stock{
    color: #b7791f!important;
}


.galleryA-product-meta a:hover{
    color: #d08700;
    transition-duration: .3s;
}

.related.products ul::before,
.related.products ul::after{
    display:none;
    content:none;
}

.woocommerce-review__author{
    font-size:1.125rem;
    font-weight:700;
    color:#1c1917;
}

.woocommerce-review__published-date{
    display:block;
    margin-top:.35rem;
    font-size:.875rem;
    color:#78716c;
}

.star-rating, p.stars a{
    color:#f59e0b;
}

.description p{
    margin:0;
    color:#44403c;
    line-height:1.8;
}

.comment-text{
    width:100%;
}

.avatar{
    width:72px;
    height:72px;
    border-radius:9999px;
}

.galleryA-reviews p{
    margin-bottom: 0px;
}

.wc-block-cart-items__header .wc-block-cart-items__header-image,
.wc-block-cart-items__header .wc-block-cart-items__header-product,
.wc-block-cart-items__header .wc-block-cart-items__header-total,
.wc-block-cart-items__header th,
.wc-block-cart__totals-title,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text,
.wc-block-components-title.wc-block-components-title
{
    font-size: 18px!important;
    font-family: 'Sulphur Point', sans-serif!important;
    font-weight: 600!important;
    letter-spacing: normal!important;
    text-transform: uppercase;
}

.wc-block-cart-item__wrap a.wc-block-components-product-name{
    font-size: 16px;
}

.wc-block-cart__main .wc-block-cart-items th,
.wc-block-cart .wc-block-cart__totals-title,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text,
.wc-block-components-title.wc-block-components-title
{
    padding: 12px 16px 12px 0;
}

.wc-block-cart .wc-block-cart__totals-title{
    border-top: 1px solid #e7e5e5;
}

.wc-block-components-totals-wrapper, 
.wp-block-woocommerce-cart-order-summary-totals-block
{
    border-top: 1px solid #e7e5e5;
}

.wc-block-cart .wp-block-woocommerce-cart-order-summary-block{
    border-bottom: 1px solid #e7e5e5;
}

.wc-block-cart__main .wc-block-cart-items,
tr.wc-block-cart-items__row,
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title .wc-block-components-checkout-order-summary__title-text,
.wc-block-components-title.wc-block-components-title
{
    border-bottom: 1px solid #e7e5e5;
    border-top: 1px solid #e7e5e5!important;
    border-spacing: 0;
}

.wc-block-cart__main .wc-block-cart-items td{
    border-top: 0 solid ;
}

div.wc-block-components-product-metadata__description{
    display: none;
}

table.wc-block-cart-items .wc-block-cart-items__row a.wc-block-components-product-name{
    font-size: 1rem;
    color: #b7791f;
}

table.wc-block-cart-items .wc-block-cart-items__row a.wc-block-components-product-name:hover{
    color: #d08700;
    scale: 1.05;
    transition: all; 
    transition-duration: .3s;
}

.wc-block-components-formatted-money-amount,
.wc-block-components-product-price ins.wc-block-components-product-price__value
{
    font-weight: 600;
}

.wc-block-components-product-badge{
    background: none;
    color: #16a34a;
}

.wc-block-components-form .wc-block-components-text-input input[type=email], .wc-block-components-form .wc-block-components-text-input input[type=number], .wc-block-components-form .wc-block-components-text-input input[type=password], .wc-block-components-form .wc-block-components-text-input input[type=tel], .wc-block-components-form .wc-block-components-text-input input[type=text], .wc-block-components-form .wc-block-components-text-input input[type=url], .wc-block-components-text-input input[type=email], .wc-block-components-text-input input[type=number], .wc-block-components-text-input input[type=password], .wc-block-components-text-input input[type=tel], .wc-block-components-text-input input[type=text], .wc-block-components-text-input input[type=url], .wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-textarea, .woocommerce form .form-row .input-text, .woocommerce form .form-row select, :where(.woocommerce) .select2-container .select2-dropdown, :where(.woocommerce) .select2-container .select2-selection{
    border: 1px solid #e7e5e5;
    border-radius: 8px;
    box-sizing: border-box;
    color: #432004;
    outline-color: #d08700;
}

:root :where(.wp-element-button, .wp-block-button__link), .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button{
    display: inline-flex;
    align-items: center;
    border-radius: 9999px;
    padding: 16px 32px;
    font-size: 1rem;
    background-color: #b7791f;
    font-weight: 500;
    color: #fff;
    transition: all!important;
    transition-duration: .3s!important;
    /* transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); */
}

:root :where(.wp-element-button, .wp-block-button__link):hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button:hover{
    /* hover:-translate-y-1 */
    transform: translateY(-4px); 

    /* hover:bg-yellow-700 */
    background-color: #a16207; 

    /* hover:shadow-xl */
    box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); 

    color: #fff;
}

.select2-container .select2-selection--single .select2-selection__rendered{
    overflow: visible;
    z-index: 99999;
}

body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link):focus{
    box-shadow: none;
    outline: 0px solid transparent;
}

.wp-block-woocommerce-checkout-order-summary-block{
    border: 0;
}

.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title{
    margin-top: 0;
}

.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted, 
.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted
{
    box-shadow: inset 0 0 0 1.5px #d08700;
}

fieldset{
    margin-bottom: 40px!important;
}

.wp-block-woocommerce-checkout{
    padding-top: 0;
}

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity{
    background-color: #d08700;
}

/* ==================================================
   Header Utility
================================================== */

.header-icon{

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#432004;

    border-radius:999px;

    transition:all .3s ease;

}

.header-icon svg{

    width:24px;
    height:24px;

}

.header-icon:hover{

    color: #d08700;
    scale: 1.2;
    transition: all;
    transition-duration: .3s;

}

span.cart-badge {
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 50%;
    background: #d08700;
    width: 18px;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
}

/* ======================================
   Header Account
====================================== */

.header-account{
    position:relative;
}

.account-trigger{
    cursor:pointer;
    border:none;
    background:none;
}

.account-dropdown{
    position:absolute;
    top:calc(100% + 14px);
    right:0;
    width:300px;
    background:#fff;
    border-radius:18px;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:
        0 20px 50px rgba(0,0,0,.08);
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    transform:translateY(12px);
    transition:.3s;
    z-index:100;
    color: #432004;
}

.header-account:hover .account-dropdown{
    opacity:1;
    visibility:visible;
    transform:none;
}

.account-profile{
    display:flex;
    align-items:center;
    gap:16px;
    padding:24px;
}

.account-avatar{
    width:50px;
    height:50px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f7f5f3;
}

.account-avatar svg{
    width:24px;
    height:24px;
}

.account-name{
    font-weight:700;
    font-size:16px;
}

.account-email{
    color:#777;
    font-size:13px;
    margin-top:4px;
}

.account-divider{
    height:1px;
    background:#eee;
}

.account-menu{
    padding:10px;
}

.account-menu a{
    display:block;
    padding:12px 14px;
    border-radius:12px;
    color:inherit;
    text-decoration:none;
    transition:.25s;
}

.account-menu a:hover{
    color:#d08700;
    transition: .3s;
}

.account-logout{
    display:block;
    padding:18px 20px;
    color:#b91c1c;
    text-decoration:none;
}

.account-logout:hover{
    background:#fff2f2;
}

/* ======================================
   Header Search
====================================== */

.header-search{
    position:relative;
}

.search-dropdown{
    position:absolute;
    right:0;
    top:calc(100% + 14px);
    width:360px;
    padding:20px;
    background:#fff;
    border-radius:20px;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    opacity:0;
    visibility:hidden;
    transform:translateY(12px);
    transition:.25s;
}

.header-search:hover .search-dropdown{
    opacity:1;
    visibility:visible;
    transform:none;
}

.search-form{
    display:flex;
}

.search-form input[type="search"]{
    width:100%;
    border:none;
    outline:none;
    padding:14px 16px;
    border-radius:12px;
    background:#F7F5F3;
}

.search-suggestions{
    margin-top:18px;
}

.search-suggestions span{
    display:block;
    font-size:13px;
    color:#999;
    margin-bottom:12px;
}

.search-suggestions a{
    display:inline-block;
    margin:0 8px 8px 0;
    padding:8px 14px;
    border-radius:999px;
    background:none;
    text-decoration:none;
    font-size:14px;
    border: 1px solid #e7e5e5;
    color: #432004;
}

.search-suggestions a:hover{
    border: 1px solid #d08700;
    color: #d08700;
    background: #FEFCE8;
    transition-duration: .3s;
    transition: all;
}

/*==================================================
Cart
==================================================*/

.header-cart{
    position:relative;
}

.cart-dropdown{
    position:absolute;
    top:calc(100% + 14px);
    right:0;
    width:380px;
    background:#fff;
    border-radius:20px;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:.25s;
    overflow:hidden;
    z-index:999;
}

.header-cart:hover .cart-dropdown{
    opacity:1;
    visibility:visible;
    transform:none;
}

.cart-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px;
    border-bottom:1px solid #eee;
}

.cart-items{
    max-height:360px;
    overflow:auto;
}

.cart-item{
    display:flex;
    gap:16px;
    padding:20px;
    border-bottom:1px solid #f3f3f3;
}

.cart-item-image img{
    width:72px;
    border-radius:12px;
}

.cart-item-content{
    flex:1;
}

.cart-item-content h5{
    margin-bottom:6px;
}

.cart-item-content h5 a{
    text-decoration:none;
    font-size: 1rem;
    color: #b7791f;
    font-weight: 600;
}

.cart-item-content h5:hover{
    color: #d08700;
    scale: 1.05;
    transition: all;
    transition-duration: .3s;
}

.cart-item-content span{
    display:block;
    font-size:13px;
    color:#432004;
    margin-bottom:6px;
}

.cart-item-content bdi{
    display: inline-flex;
}

.cart-item-remove a{
    color:#999;
    font-size:24px;
    text-decoration:none;
}

.cart-footer{
    padding:20px;
    color: #432004;
}

.cart-subtotal{
    display:flex;
    justify-content:space-between;
    margin-bottom:20px;
}

.cart-buttons{
    display:flex;
    gap:24px;
}

.cart-buttons a{
    display: inline-flex;
    align-items: center;
    border-radius: 9999px;
    padding: 16px 32px;
    font-size: 1rem;
    background-color: #b7791f;
    font-weight: 500;
    transition: all!important;
    transition-duration: .3s!important;
    color: #fff;
    /* transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); */
}

.cart-buttons a:hover{
    /* hover:-translate-y-1 */
    transform: translateY(-4px); 

    /* hover:bg-yellow-700 */
    background-color: #a16207; 

    /* hover:shadow-xl */
    box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); 
}

.cart-buttons a:focus{
    box-shadow: none;
    outline: 0px solid transparent;
}


#mobileSearchOverlay{

    position:fixed;
    inset:0;

    background:#fff;

    transform:translateY(-100%);
    transition:.35s ease;

    z-index:9999;

}

#mobileSearchOverlay.is-open{

    transform:translateY(0);

}

#mobileCartOverlay{

    position:fixed;
    top:0;
    right:0;

    width:100%;
    height:100%;

    background:#fff;

    transform:translateX(100%);
    transition:.35s ease;

    z-index:9999;

}

#mobileCartOverlay.is-open{

    transform:translateX(0);

}

/*==================================================
My Account CSS
==================================================*/

.woocommerce-MyAccount-navigation-link--customer-logout a{
    color: #b91c1c;
}

.woocommerce-MyAccount-navigation-link--customer-logout a:hover{
    background: #fff2f2;
    border-color: #b91c1c;
}

/* ======================================
   SelectWoo / Select2
====================================== */

.select2-container--default .select2-results__option{

    padding: 12px 16px;
    color: #432004;
    transition: all .25s ease;

}

/* Hover */

.select2-container--default .select2-results__option--highlighted[aria-selected], .wc-blocks-components-select__select option:checked{

    background: #FEF3C7 !important;   /* Light Gold */
    color: #B7791F !important;

}

/* Selected */

.select2-container--default .select2-results__option[aria-selected="true"], .wc-blocks-components-select__select option:hover{

    background: #B7791F !important;
    color: #fff !important;

}

/*==================================================
Checkout Extra
==================================================*/

.checkout-extra{
    margin-top:80px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:32px;
}

.checkout-card{
    background:#fff;
    border:1px solid #F1E8DA;
    border-radius:24px;
    padding:32px;
    transition:.3s;
}

.checkout-card:hover{
    transform:translateY(-6px);
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.checkout-card-icon{
    width:64px;
    height:64px;
    border-radius:50%;
    background:#FFF6DD;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
    margin-bottom:20px;
}

.checkout-card h3{
    font-size:22px;
    font-weight:600;
    color:#432004;
    margin-bottom:14px;
}

.checkout-card p{
    color:#6B4F3A;
    line-height:1.8;
}

.checkout-card span{
    display:inline-block;
    margin-top:20px;
    color:#B7791F;
    font-weight:600;
}

@media(max-width:1023px){

    .search-dropdown{
        display:none;
    }

    .cart-dropdown{
        display:none;
    }

    .checkout-extra{
        grid-template-columns:1fr;
    }

}