
.smhp-root{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    background:#fff;
    color:#342b23;
}
.smhp-top{
    display:flex;
    align-items:flex-start;
    gap:48px;
}
.smhp-gallery-col{
    flex:0 0 50%;
    max-width:50%;
    min-width:0;
}
.smhp-info-col{
    flex:1 1 auto;
    min-width:0;
    padding-top:4px;
}
.smhp-main-image{
    position:relative;
    width:100%;
    height:600px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f7f7f7;
}
.smhp-main-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
}
.smhp-zoom-button{
    position:absolute;
    top:16px;
    right:16px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #bbb;
    border-radius:50%;
    background:#fff;
    color:#342b23;
    font-size:15px;
    cursor:pointer;
}
.smhp-thumbs{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:12px;
    overflow-x:auto;
}
.smhp-thumb{
    width:76px;
    height:76px;
    flex:0 0 auto;
    padding:3px;
    border:1px solid #ddd;
    background:#fff;
    cursor:pointer;
}
.smhp-thumb.is-active{
    border-color:#071054;
}
.smhp-thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.smhp-breadcrumb{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    align-items:center;
    font-size:11px;
    line-height:1.5;
    margin-bottom:12px;
}
.smhp-breadcrumb a{
    text-decoration:none;
}
.smhp-title{
    margin:0 0 12px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:38px;
    line-height:1.12;
    font-weight:400;
}
.smhp-rating-row{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:6px;
    font-size:11px;
}
.smhp-rating-row .star-rating{
    margin:0;
}
.smhp-stock{
    font-size:11px;
    margin-bottom:6px;
}
.smhp-stock p{
    margin:0;
}
.smhp-price{
    font-size:24px;
    line-height:1.25;
    font-weight:600;
    margin:10px 0 16px;
}
.smhp-price del{
    opacity:.55;
    font-size:.75em;
    margin-right:8px;
}
.smhp-price ins{
    text-decoration:none;
}
.smhp-short{
    font-size:14px;
    line-height:1.65;
    margin-bottom:24px;
    max-width:620px;
}
.smhp-cart-area{
    margin-top:18px;
}
.smhp-cart-area form.cart{
    margin:0;
}
.smhp-cart-area .variations{
    width:100%;
    margin:0 0 18px!important;
    border:0!important;
}
.smhp-cart-area .variations tr{
    display:block;
    margin-bottom:12px;
}
.smhp-cart-area .variations th,
.smhp-cart-area .variations td{
    display:block;
    width:100%;
    padding:0!important;
    border:0!important;
    text-align:left;
}
.smhp-cart-area .variations label{
    display:block;
    margin-bottom:7px;
    padding:0;
    font-weight:600;
    font-size:12px;
    background:transparent!important;
}
.smhp-cart-area select{
    min-width:220px;
    min-height:42px;
    padding:0 36px 0 12px;
    border:1px solid #cfc7b8;
    background-color:transparent!important;
    border-radius:0;
}
.smhp-cart-area .reset_variations{
    margin-left:10px;
    font-size:11px;
}
.smhp-cart-area .single_variation_wrap{
    margin-top:12px;
}
.smhp-cart-area .woocommerce-variation-price{
    margin-bottom:12px;
}
.smhp-cart-area .woocommerce-variation-description{
    margin-bottom:12px;
}
.smhp-cart-area .quantity{
    float:none!important;
    display:inline-flex!important;
    vertical-align:middle;
    margin:0 8px 0 0!important;
}
.smhp-cart-area input.qty{
    width:64px!important;
    height:42px!important;
    border:1px solid #cfc7b8;
    border-radius:0;
}
.smhp-cart-area .single_add_to_cart_button{
    min-height:42px!important;
    padding:0 22px!important;
    border:0!important;
    border-radius:0;
    background:#071054!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:700!important;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.smhp-cart-area .single_add_to_cart_button:hover{
    background:#121d79!important;
}
.smhp-cart-area .stock{
    margin:0 0 10px;
}
.smhp-trust-list{
    list-style:none;
    margin:18px 0 0;
    padding:0;
    font-size:11px;
    line-height:1.6;
}
.smhp-trust-list li{
    display:flex;
    gap:8px;
    align-items:flex-start;
    margin-bottom:4px;
}
.smhp-trust-tick{
    color:#68a36e;
    font-weight:700;
}
.smhp-meta{
    margin-top:20px;
    padding-top:15px;
    border-top:1px solid #eeeae2;
    font-size:11px;
    line-height:1.8;
}
.smhp-meta a{
    color:inherit;
}
.smhp-tabs{
    margin-top:54px;
}
.smhp-tab-nav{
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:34px;
    border-bottom:1px solid #dedbd4;
    overflow-x:auto;
}
.smhp-tab-button{
    flex:0 0 auto;
    border:0;
    border-bottom:2px solid transparent;
    background:transparent!important;
    padding:0 0 12px;
    color:#5c554c;
    font-size:11px;
    cursor:pointer;
    white-space:nowrap;
    box-shadow:none!important;
}
.smhp-tab-button:hover,
.smhp-tab-button:focus,
.smhp-tab-button:active{
    background:transparent!important;
    box-shadow:none!important;
}
.smhp-tab-button.is-active{
    color:#b48716;
    border-bottom-color:#b48716;
}
.smhp-tab-panels{
    padding-top:24px;
}
.smhp-tab-panel{
    display:none;
    font-size:13px;
    line-height:1.7;
}
.smhp-tab-panel.is-active{
    display:block;
}
.smhp-tab-panel h2,
.smhp-tab-panel h3{
    font-family:Georgia,"Times New Roman",serif;
}
.smhp-spec-table{
    width:100%;
    border-collapse:collapse;
}
.smhp-spec-table th,
.smhp-spec-table td{
    padding:10px 12px;
    border-bottom:1px solid #ece8e0;
    text-align:left;
    vertical-align:top;
}
.smhp-spec-table th{
    width:28%;
    font-weight:600;
}
.smhp-tab-panel #reviews{
    margin:0;
}
.smhp-lightbox{
    position:fixed;
    inset:0;
    z-index:2147483500;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
    background:rgba(0,0,0,.88);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:.2s ease;
}
.smhp-lightbox.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.smhp-lightbox img{
    max-width:94vw;
    max-height:90vh;
    object-fit:contain;
}
.smhp-lightbox-close{
    position:absolute;
    top:18px;
    right:22px;
    width:42px;
    height:42px;
    border:1px solid rgba(255,255,255,.6);
    border-radius:50%;
    background:transparent;
    color:#fff;
    font-size:28px;
    cursor:pointer;
}
.smhp-editor-note{
    padding:12px 14px;
    background:#fff8e5;
    border:1px solid #ddd;
}
body.smhc-product-layout-active .smhc-product-main{
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
}
body.smhc-product-layout-active .smhc-product-main > .smhc-product-viewport > .elementor{
    width:100%;
    max-width:none;
}
@media(max-width:1024px){
    .smhp-top{gap:30px}
    .smhp-gallery-col{flex-basis:48%;max-width:48%}
    .smhp-main-image{height:480px}
    .smhp-title{font-size:32px}
}
@media(max-width:767px){
    .smhp-top{
        display:block;
    }
    .smhp-gallery-col{
        max-width:none!important;
        width:100%!important;
        margin-bottom:26px;
    }
    .smhp-info-col{
        width:100%;
    }
    .smhp-main-image{
        height:420px;
    }
    .smhp-title{
        font-size:30px;
    }
    .smhp-tab-nav{
        justify-content:flex-start;
        gap:22px;
    }
    .smhp-cart-area select{
        width:100%;
        min-width:0;
    }
    .smhp-cart-area .quantity{
        margin-bottom:10px!important;
    }
}


/* v1.9.1 — You May Also Like */
.smhp-related{
    margin-top:70px;
    background:#fff;
}
.smhp-related-heading{
    margin:0 0 28px;
    color:#071054;
    font-family:Georgia,"Times New Roman",serif;
    font-size:30px;
    line-height:1.2;
    font-weight:500;
    text-align:center;
}
.smhp-related-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
}
.smhp-related-card{
    min-width:0;
    overflow:hidden;
    background:#fff;
    border:0 solid transparent;
    border-radius:12px;
}
.smhp-related-image{
    display:block;
    width:100%;
    height:280px;
    overflow:hidden;
    background:#f7f7f8;
    border-radius:12px 12px 0 0;
}
.smhp-related-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .25s ease;
}
.smhp-related-card:hover .smhp-related-image img{
    transform:scale(1.02);
}
.smhp-related-card-body{
    padding:14px 14px 0;
}
.smhp-related-title{
    margin:0 0 7px;
    color:#071054;
    font-size:15px;
    line-height:1.4;
    font-weight:600;
}
.smhp-related-title a{
    color:inherit;
    text-decoration:none;
}
.smhp-related-price{
    margin:0 0 13px;
    color:#071054;
    font-size:14px;
    font-weight:600;
}
.smhp-related-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 16px;
    background:#071054;
    color:#fff!important;
    border-radius:8px;
    text-decoration:none!important;
    font-size:11px;
    font-weight:700;
    letter-spacing:.03em;
    text-transform:uppercase;
}
.smhp-related-button:hover{
    background:#d92d62;
    color:#fff!important;
}

@media(max-width:1024px){
    .smhp-related-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .smhp-related-image{
        height:240px;
    }
}
@media(max-width:767px){
    .smhp-related-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
    }
    .smhp-related-image{
        height:200px;
    }
    .smhp-related-card-body{
        padding:10px 8px 0;
    }
    .smhp-related-heading{
        font-size:26px;
    }
}

/* Variation backgrounds requested transparent by default.
   Elementor controls can deliberately override these. */
.smhp-cart-area .variations label{
    background:transparent!important;
}
.smhp-cart-area select{
    background-color:transparent!important;
}

/* Product tab buttons: prevent global theme button hover backgrounds.
   Elementor v1.9.1 hover/active controls can override using inline selectors. */
.smhp-tab-button{
    background:transparent!important;
}
.smhp-tab-button:hover,
.smhp-tab-button:focus,
.smhp-tab-button:active{
    box-shadow:none!important;
}


/* ==========================================================
   v1.9.2 — Clear link / native Pay securely placement
   ========================================================== */
.smhp-cart-area .reset_variations,
.smhp-cart-area .reset_variations:hover,
.smhp-cart-area .reset_variations:focus,
.smhp-cart-area .reset_variations:active{
    display:inline!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin-left:10px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    background-color:transparent!important;
    box-shadow:none!important;
    text-decoration:underline!important;
    line-height:1.4!important;
}

.smhp-purchase-row{
    display:flex;
    align-items:stretch;
    flex-wrap:wrap;
    gap:10px;
    width:100%;
}
.smhp-purchase-row .single_add_to_cart_button{
    flex:1 1 180px;
}
.smhp-purchase-row .quantity{
    flex:0 0 auto;
}
.smhp-express-checkout-slot{
    flex:1 1 210px;
    min-width:210px;
    display:flex;
    align-items:stretch;
}
.smhp-express-checkout-slot > *,
.smhp-express-checkout-slot iframe{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
}
.smhp-express-checkout-slot .wc-stripe-express-checkout-element,
.smhp-express-checkout-slot .wc-stripe-product-checkout-container,
.smhp-express-checkout-slot .wc-stripe-express-checkout-wrapper,
.smhp-express-checkout-slot [id*="express-checkout"],
.smhp-express-checkout-slot [class*="express-checkout"]{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
}
@media(max-width:767px){
    .smhp-purchase-row{flex-direction:column;}
    .smhp-purchase-row .quantity,
    .smhp-purchase-row .single_add_to_cart_button,
    .smhp-express-checkout-slot{
        width:100%!important;
        min-width:0!important;
    }
}

/* Expanded You May Also Love controls */
.smhp-related-card{
    transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.smhp-related-card-body{padding:14px;}
.smhp-related-button.is-full{
    display:flex;
    width:100%;
}


/* ==========================================================
   v1.9.3 — Clear link hard reset / Select width / Product meta
   ========================================================== */

/* Remove the grey bar/background around WooCommerce "Clear".
   Parent cells and pseudo-elements are also neutralised because some
   themes style the reset row rather than only the link itself. */
body .smhp-cart-area .variations,
body .smhp-cart-area .variations tbody,
body .smhp-cart-area .variations tr,
body .smhp-cart-area .variations th,
body .smhp-cart-area .variations td,
body .smhp-cart-area .variations td.value{
    background:transparent!important;
    background-color:transparent!important;
    box-shadow:none!important;
}

body .smhp-cart-area a.reset_variations,
body .smhp-cart-area a.reset_variations:link,
body .smhp-cart-area a.reset_variations:visited,
body .smhp-cart-area a.reset_variations:hover,
body .smhp-cart-area a.reset_variations:focus,
body .smhp-cart-area a.reset_variations:active{
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:5px 0 0 10px!important;
    padding:0!important;
    border:0!important;
    border-width:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-color:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    text-shadow:none!important;
    text-decoration:underline!important;
}

body .smhp-cart-area a.reset_variations::before,
body .smhp-cart-area a.reset_variations::after{
    content:none!important;
    display:none!important;
    background:none!important;
    box-shadow:none!important;
}

/* Allow Elementor's responsive Choose Option Width control to work. */
.smhp-cart-area select{
    max-width:100%;
    min-width:0!important;
}

/* Product meta styling base. */
.smhp-meta{
    display:grid;
    row-gap:2px;
}
.smhp-meta > div{
    margin:0;
}
.smhp-meta strong{
    font-weight:700;
}
.smhp-meta a{
    text-decoration:none;
    transition:color .18s ease;
}

/* Purchase row: quantity + Add to Basket + Link stay on the same desktop row. */
.smhp-purchase-row{
    display:flex!important;
    align-items:stretch!important;
    flex-wrap:nowrap!important;
    width:100%!important;
}
.smhp-purchase-row .quantity{
    flex:0 0 auto!important;
}
.smhp-purchase-row .single_add_to_cart_button{
    flex:0 0 auto!important;
}
.smhp-express-checkout-slot{
    flex:1 1 220px!important;
    min-width:180px;
    max-width:100%;
    overflow:visible;
}
.smhp-express-checkout-slot > *,
.smhp-express-checkout-slot button,
.smhp-express-checkout-slot a,
.smhp-express-checkout-slot iframe{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
}

@media(max-width:767px){
    .smhp-purchase-row{
        flex-wrap:wrap!important;
    }
    .smhp-express-checkout-slot{
        flex:1 0 100%!important;
        width:100%!important;
        min-width:0!important;
    }
}


/* ==========================================================
   v1.9.4 — Product toast + stronger purchase-row placement
   ========================================================== */

/* Desktop: Quantity + Add to Basket + Pay securely with Link are one row. */
@media(min-width:768px){
    .smhp-purchase-row{
        display:grid!important;
        grid-template-columns:auto auto minmax(180px,1fr)!important;
        align-items:stretch!important;
        gap:10px;
        width:100%!important;
    }

    .smhp-purchase-row .quantity,
    .smhp-purchase-row .single_add_to_cart_button,
    .smhp-express-checkout-slot{
        width:auto!important;
        min-width:0!important;
        max-width:none!important;
        margin:0!important;
    }

    .smhp-express-checkout-slot{
        display:flex!important;
        align-items:stretch!important;
    }

    .smhp-express-checkout-slot > *,
    .smhp-express-checkout-slot button,
    .smhp-express-checkout-slot a,
    .smhp-express-checkout-slot iframe{
        width:100%!important;
        height:100%!important;
        min-height:100%!important;
        margin:0!important;
    }
}

/* Runtime toast appended to body. */
.smhp-cart-toast{
    position:fixed;
    z-index:999999;
    display:flex;
    align-items:center;
    gap:10px;
    box-sizing:border-box;
    min-width:220px;
    opacity:0;
    transform:translateY(12px);
    pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;
    font-size:14px;
    line-height:1.4;
    box-shadow:0 14px 38px rgba(0,0,0,.16);
}

.smhp-cart-toast.is-visible{
    opacity:1;
    transform:translateY(0);
}

.smhp-cart-toast .smhp-toast-tick{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:22px;
    height:22px;
    min-width:22px;
    border:1px solid currentColor;
    border-radius:50%;
    color:var(--smhp-toast-icon,#fff);
    font-size:13px;
    font-weight:700;
}

.smhp-cart-toast.position-top-right{
    top:24px;
    right:24px;
}
.smhp-cart-toast.position-bottom-right{
    right:24px;
    bottom:24px;
}
.smhp-cart-toast.position-bottom-center{
    left:50%;
    bottom:24px;
    transform:translate(-50%,12px);
}
.smhp-cart-toast.position-bottom-center.is-visible{
    transform:translate(-50%,0);
}

@media(max-width:767px){
    .smhp-cart-toast,
    .smhp-cart-toast.position-top-right,
    .smhp-cart-toast.position-bottom-right,
    .smhp-cart-toast.position-bottom-center{
        left:16px;
        right:16px;
        width:auto;
        max-width:none!important;
    }

    .smhp-cart-toast.position-top-right{
        top:16px;
    }
    .smhp-cart-toast.position-bottom-right,
    .smhp-cart-toast.position-bottom-center{
        bottom:16px;
    }

    .smhp-cart-toast.position-bottom-center{
        transform:translateY(12px);
    }
    .smhp-cart-toast.position-bottom-center.is-visible{
        transform:translateY(0);
    }
}


/* v1.9.5 — AJAX cart / Link same-row reliability */
.smhp-express-checkout-slot:empty{display:none!important;}
@media(min-width:768px){
  .smhp-purchase-row.has-express{display:grid!important;grid-template-columns:auto auto minmax(220px,1fr)!important;align-items:stretch!important;column-gap:10px!important;row-gap:10px!important;width:100%!important;}
  .smhp-purchase-row.has-express>.quantity{grid-column:1;}
  .smhp-purchase-row.has-express>.single_add_to_cart_button{grid-column:2;width:auto!important;white-space:nowrap;}
  .smhp-purchase-row.has-express>.smhp-express-checkout-slot{grid-column:3;display:flex!important;align-items:stretch!important;min-width:220px;}
  .smhp-purchase-row.has-express>.smhp-express-checkout-slot>*,.smhp-purchase-row.has-express>.smhp-express-checkout-slot button,.smhp-purchase-row.has-express>.smhp-express-checkout-slot [role="button"],.smhp-purchase-row.has-express>.smhp-express-checkout-slot iframe{width:100%!important;max-width:none!important;min-height:42px!important;margin:0!important;}
}
.smhp-cart-error{margin:0 0 12px;padding:11px 13px;border:1px solid #d8a4af;border-radius:10px;background:#fff7f8;color:#8b2338;font-size:13px;line-height:1.45;}
.smhp-cart-area .single_add_to_cart_button.loading{opacity:.7;cursor:wait!important;}
.smhp-cart-area .single_add_to_cart_button.added{box-shadow:0 0 0 2px rgba(7,16,84,.08);}
@media(max-width:767px){.smhp-purchase-row.has-express{display:flex!important;flex-direction:column!important;}}


/* ==========================================================
   v1.9.6 — Purchase row proportions + luxury toast UI
   ========================================================== */
@media(min-width:768px){
    .smhp-purchase-row.has-express{
        display:flex!important;
        align-items:center!important;
        flex-wrap:nowrap!important;
        gap:10px!important;
        width:100%!important;
    }
    .smhp-purchase-row.has-express > .quantity{
        flex:0 0 72px!important;
        width:72px!important;
        min-width:72px!important;
        max-width:72px!important;
    }
    .smhp-purchase-row.has-express > .single_add_to_cart_button{
        flex:0 0 180px!important;
        width:180px!important;
        min-width:180px!important;
        max-width:180px!important;
        height:52px!important;
        min-height:52px!important;
        max-height:52px!important;
        padding:0 22px!important;
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        line-height:1!important;
        white-space:nowrap!important;
        align-self:center!important;
    }
    .smhp-purchase-row.has-express > .quantity input.qty{
        width:100%!important;
        height:52px!important;
        min-height:52px!important;
        max-height:52px!important;
        box-sizing:border-box!important;
    }
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot{
        flex:1 1 320px!important;
        width:auto!important;
        min-width:220px!important;
        max-width:none!important;
        height:52px!important;
        min-height:52px!important;
        max-height:52px!important;
        display:flex!important;
        align-items:center!important;
        overflow:hidden;
    }
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot > *,
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot button,
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot [role="button"],
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot iframe{
        width:100%!important;
        max-width:none!important;
        height:52px!important;
        min-height:52px!important;
        max-height:52px!important;
        margin:0!important;
        box-sizing:border-box!important;
    }
}

.smhp-cart-toast{
    overflow:hidden;
    background:#fff;
    color:#071054;
    border:1px solid #e7e9f0;
}
.smhp-toast-top{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:start;
    gap:11px;
}
.smhp-toast-tick{
    margin-top:1px;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    border-radius:50%!important;
    background:#071054!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
}
.smhp-toast-copy{
    color:inherit;
    font-weight:600;
    line-height:1.45;
    padding-top:2px;
}
.smhp-toast-close{
    appearance:none;
    width:28px;
    height:28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0;
    margin:-2px -4px 0 0;
    border:0!important;
    border-radius:50%;
    background:transparent!important;
    color:#7a7f90!important;
    font-size:22px;
    line-height:1;
    cursor:pointer;
    box-shadow:none!important;
}
.smhp-toast-close:hover{background:#f4f5f8!important;color:#071054!important;}
.smhp-toast-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;}
.smhp-toast-action{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 16px;
    border:1px solid transparent;
    border-radius:10px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
    text-decoration:none!important;
    transition:transform .16s ease,opacity .16s ease;
}
.smhp-toast-action:hover{transform:translateY(-1px);opacity:.94;}
.smhp-toast-checkout{border-style:solid!important;border-width:1px!important;}
@media(max-width:767px){
    .smhp-purchase-row.has-express{display:flex!important;flex-direction:column!important;align-items:stretch!important;}
    .smhp-purchase-row.has-express > .quantity,
    .smhp-purchase-row.has-express > .single_add_to_cart_button,
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot{width:100%!important;min-width:0!important;max-width:none!important;flex:0 0 auto!important;}
    .smhp-purchase-row.has-express > .single_add_to_cart_button,
    .smhp-purchase-row.has-express > .quantity input.qty,
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot,
    .smhp-purchase-row.has-express > .smhp-express-checkout-slot > *{height:50px!important;min-height:50px!important;max-height:50px!important;}
    .smhp-toast-actions{grid-template-columns:1fr;}
}


/* ==========================================================
   v1.9.7 — Screenshot-matched toast + remove Woo View basket
   ========================================================== */

/* WooCommerce's automatic red/pink "View basket" link is not needed,
   because the custom toast already provides VIEW CART. */
.smhp-cart-area .added_to_cart.wc-forward,
.smhp-cart-area a.added_to_cart,
.smhp-purchase-row .added_to_cart.wc-forward,
.smhp-purchase-row a.added_to_cart{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
}

/* Toast card matching the supplied reference. */
.smhp-cart-toast{
    width:min(488px,calc(100vw - 32px))!important;
    max-width:488px!important;
    min-width:0!important;
    padding:24px 22px 22px!important;
    background:#ffffff!important;
    color:#071054!important;
    border:1px solid #ececf1!important;
    border-radius:8px!important;
    box-shadow:0 10px 30px rgba(7,16,84,.12)!important;
    overflow:visible!important;
}

.smhp-toast-top{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:16px!important;
    min-height:44px;
}

.smhp-toast-copy{
    padding:0!important;
    color:#071054!important;
    font-size:16px!important;
    font-weight:500!important;
    line-height:1.55!important;
    letter-spacing:0!important;
}

/* No success-circle/tick in the reference design. */
.smhp-cart-toast .smhp-toast-tick{
    display:none!important;
}

.smhp-toast-close{
    position:relative!important;
    top:-6px!important;
    right:-4px!important;
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#7d7d82!important;
    font-size:26px!important;
    font-weight:300!important;
    line-height:28px!important;
}

.smhp-toast-close:hover,
.smhp-toast-close:focus{
    background:transparent!important;
    color:#071054!important;
    transform:none!important;
}

.smhp-toast-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
    margin-top:16px!important;
}

.smhp-toast-action{
    width:100%!important;
    min-height:48px!important;
    height:48px!important;
    padding:0 18px!important;
    border-radius:10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:14px!important;
    font-weight:500!important;
    letter-spacing:0!important;
    line-height:1!important;
    text-decoration:none!important;
    text-transform:uppercase!important;
    box-shadow:none!important;
    transform:none!important;
}

.smhp-toast-view-cart{
    border:1px solid #071054!important;
    background:#071054!important;
    color:#ffffff!important;
}

.smhp-toast-view-cart:hover{
    background:#071054!important;
    color:#ffffff!important;
    opacity:.92!important;
}

.smhp-toast-checkout{
    border:1px solid #071054!important;
    background:#ffffff!important;
    color:#071054!important;
}

.smhp-toast-checkout:hover{
    background:#fbf8f5!important;
    color:#071054!important;
    opacity:1!important;
}

@media(max-width:767px){
    .smhp-cart-toast{
        left:16px!important;
        right:16px!important;
        width:auto!important;
        max-width:none!important;
        padding:20px 18px 18px!important;
    }

    .smhp-toast-copy{
        font-size:15px!important;
    }

    .smhp-toast-actions{
        grid-template-columns:1fr 1fr!important;
        gap:10px!important;
    }

    .smhp-toast-action{
        min-height:46px!important;
        height:46px!important;
        padding:0 10px!important;
        font-size:12px!important;
    }
}


/* ==========================================================
   v1.9.8 — No product-page entrance animation + clickable toast
   ========================================================== */

/*
 * Disable Elementor entrance/load animation on single product pages.
 * This does NOT remove normal product hover transitions.
 */
body.single-product .elementor-invisible{
    visibility:visible!important;
    opacity:1!important;
}

body.single-product .animated,
body.single-product .elementor-element.animated{
    animation-name:none!important;
    animation-duration:0s!important;
    animation-delay:0s!important;
    animation-iteration-count:1!important;
    transition-delay:0s!important;
}

/* Toast used to inherit pointer-events:none from the earlier toast shell.
   Restore click interaction for VIEW CART / CHECKOUT / close. */
.smhp-cart-toast{
    pointer-events:auto!important;
}

.smhp-cart-toast *,
.smhp-toast-top,
.smhp-toast-actions,
.smhp-toast-action,
.smhp-toast-close{
    pointer-events:auto!important;
}

.smhp-toast-action{
    position:relative;
    z-index:2;
    cursor:pointer!important;
}

.smhp-toast-close{
    position:relative;
    z-index:3;
    cursor:pointer!important;
}


/* ==========================================================
   v1.9.9 — Category archive parity + editable toast styling
   ========================================================== */

/* Runtime toast now lives inside the Elementor widget root, so every
   "Added to Basket Toast - Full Styling" control can target it directly. */
.smhp-root .smhp-cart-toast{
    background:var(--smhp-toast-bg,#ffffff)!important;
    color:var(--smhp-toast-text,#071054)!important;
}

.smhp-root .smhp-toast-copy{
    color:inherit!important;
}

.smhp-root .smhp-toast-view-cart{
    background:var(--smhp-view-bg,#071054)!important;
    color:var(--smhp-view-color,#ffffff)!important;
}

.smhp-root .smhp-toast-checkout{
    background:var(--smhp-checkout-bg,#ffffff)!important;
    color:var(--smhp-checkout-color,#071054)!important;
    border-color:var(--smhp-checkout-border,#071054)!important;
}

/* Ensure Elementor typography controls can override the old reference defaults. */
.elementor-widget-smhc_product_details .smhp-toast-copy,
.elementor-widget-smhc_product_details .smhp-toast-action{
    font-family:inherit;
}

/* Category archive uses the exact Shop layout shell/cards/sidebar.
   No WooCommerce default archive grid should leak through. */
body.tax-product_cat .woocommerce-products-header,
body.tax-product_cat .woocommerce-result-count,
body.tax-product_cat .woocommerce-ordering,
body.tax-product_cat ul.products{
    /* Only relevant if another plugin outputs the default loop around our template. */
}


/* ==========================================================
   v1.9.10 — Toast Elementor controls always visible + live preview
   ========================================================== */

.smhp-toast-editor-preview{
    position:relative;
    z-index:1;
    width:min(488px,calc(100% - 8px));
    max-width:488px;
    margin:28px 0 6px auto;
    padding:24px 22px 22px;
    background:#fff;
    color:#071054;
    border:1px solid #e7e9f0;
    border-radius:8px;
    box-shadow:0 10px 30px rgba(7,16,84,.12);
    box-sizing:border-box;
}

.smhp-toast-editor-preview::before{
    content:"TOAST PREVIEW — EDIT IN STYLE TAB";
    display:block;
    margin:0 0 14px;
    color:#d92d62;
    font-size:10px;
    font-weight:700;
    letter-spacing:.08em;
}

.smhp-toast-editor-preview .smhp-toast-close,
.smhp-toast-editor-preview .smhp-toast-action{
    pointer-events:none!important;
}

/* Keep defaults clean but do not hard-lock style values against Elementor. */
.elementor-widget-smhc_product_details .smhp-toast-editor-preview .smhp-toast-copy,
.elementor-widget-smhc_product_details .smhp-cart-toast .smhp-toast-copy{
    color:inherit;
}

@media(max-width:767px){
    .smhp-toast-editor-preview{
        width:100%;
        max-width:100%;
        margin:24px 0 6px;
    }
}
