/* SMA v2 — Scoped to custom Avada shortcode output */
.sma-v2-product,.sma-v2-product *{box-sizing:border-box}
.sma-v2-product{font-family:Archivo,'Helvetica Neue',Arial,sans-serif;color:#23231f;max-width:1100px;margin:0 auto;padding:clamp(30px,5vw,60px) 18px 75px}
.sma-v2-top{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(30px,5vw,64px);align-items:start}
.sma-v2-stage{position:relative;aspect-ratio:1;background:#f7f6f2;border:1px solid #e6e3d9;border-radius:8px;overflow:hidden}
.sma-v2-full{display:flex;align-items:center;justify-content:center;width:100%;height:100%;pad.sma-v4-productding:clamp(18px,3vw,36px)}
.sma-v2-main{display:block;width:100%;height:100%;object-fit:contain;transition:opacity .15s ease}
.sma-v2-prev,.sma-v2-next{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:44px;border:0;border-radius:5px;background:rgba(51,53,90,.83);color:#fff;font-size:22px;cursor:pointer;z-index:2}
.sma-v2-prev{left:8px}.sma-v2-next{right:8px}.sma-v2-prev:hover,.sma-v2-next:hover{background:#a85a1e}
.sma-v2-counter{position:absolute;bottom:10px;right:12px;background:rgba(51,53,90,.86);color:#fff;padding:5px 9px;border-radius:4px;font-size:12px}
.sma-v2-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}
.sma-v2-thumb{display:block;cursor:pointer;aspect-ratio:1;border:2px solid #e6e3d9;border-radius:6px;padding:7px;background:#f7f6f2;overflow:hidden}
.sma-v2-thumb.is-active,.sma-v2-thumb:hover{border-color:#33355a}.sma-v2-thumb img{width:100%;height:100%;object-fit:contain}
.sma-v2-categories{margin-bottom:12px;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#a85a1e}
.sma-v2-categories a{color:#8f4c19!important;text-decoration:none}
.sma-v2-title{font-family:Archivo,Arial,sans-serif!important;color:#33355a!important;font-size:clamp(28px,3.4vw,40px)!important;font-weight:700!important;line-height:1.1!important;margin:0 0 20px!important;letter-spacing:-.015em}
.sma-v2-price{font-size:27px;font-weight:700;color:#a85a1e;border-bottom:1px solid #e6e3d9;padding-bottom:20px;margin-bottom:20px}.sma-v2-price del{font-size:.7em;opacity:.7}
.sma-v2-short,.sma-v2-short p,.sma-v2-short li{font-size:16.5px!important;line-height:1.65!important;color:#23231f!important}
.sma-v2-short p{margin:0 0 14px}.sma-v2-short ul{list-style:disc!important;padding-left:24px;margin-bottom:16px}.sma-v2-short li{margin-bottom:6px}
.sma-v2-short a,.sma-v2-description a{color:#33355a!important;text-decoration:underline!important;text-underline-offset:3px}
.sma-v2-purchase{margin-top:20px}.sma-v2-external,.sma-v2-purchase .single_add_to_cart_button{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 28px!important;border:0!important;border-radius:4px!important;background:#a85a1e!important;color:#fff!important;text-decoration:none!important;font-size:16px!important;font-weight:700!important;line-height:1.3!important;text-transform:none!important}
.sma-v2-external:hover,.sma-v2-purchase .single_add_to_cart_button:hover{background:#8f4c19!important;color:#fff!important}
.sma-v2-purchase form.cart{display:flex;gap:12px;flex-wrap:wrap;align-items:center;padding:18px;background:#f7f6f2;border:1px solid #e6e3d9;border-radius:6px}
.sma-v2-purchase .quantity{margin:0!important}
.sma-v2-description{margin-top:clamp(46px,6vw,72px);padding-top:35px;border-top:1px solid #e6e3d9;max-width:100%}
.sma-v2-description h2:first-child,.sma-v2-description h3:first-child{font-size:13px!important;font-weight:700!important;letter-spacing:.16em;text-transform:uppercase;color:#33355a!important;border-bottom:2px solid #a85a1e;padding-bottom:12px;max-width:760px}
.sma-v2-description p,.sma-v2-description li{font-size:17px;line-height:1.7}.sma-v2-description li{margin-bottom:10px}.sma-v2-description blockquote{border-left:4px solid #a85a1e;background:#f7f6f2;padding:22px 25px;margin:25px 0;max-width:760px}
.sma-v2-related{margin-top:clamp(50px,7vw,80px);padding-top:45px;border-top:1px solid #e6e3d9}
.sma-v2-related h2{font-family:Archivo,Arial,sans-serif!important;color:#33355a!important;font-size:clamp(24px,3vw,30px)!important;line-height:1.2!important;margin:0 0 26px!important}
.sma-v2-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.sma-v2-card{display:flex;flex-direction:column;border:1px solid #e6e3d9;border-radius:6px;overflow:hidden;background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.sma-v2-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(61,63,99,.12)}
.sma-v2-card-image{display:flex;aspect-ratio:1;align-items:center;justify-content:center;background:#f7f6f2;padding:16px}
.sma-v2-card-image img{width:100%!important;height:100%!important;object-fit:contain!important;margin:0!important}
.sma-v2-card-body{flex:1;display:flex;flex-direction:column;padding:18px 18px 20px}
.sma-v2-card h3{font-family:Archivo,Arial,sans-serif!important;font-size:17px!important;line-height:1.3!important;font-weight:700!important;margin:0 0 12px!important}
.sma-v2-card h3 a{color:#33355a!important;text-decoration:none}.sma-v2-card h3 a:hover{text-decoration:underline}
.sma-v2-card-price{font-weight:700;color:#a85a1e;margin-bottom:12px;font-size:16px}
.sma-v2-card-link{margin-top:auto;display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 14px;background:#fff;border:2px solid #33355a;border-radius:4px;color:#33355a!important;text-decoration:none!important;font-weight:700;font-size:14px}
.sma-v2-card-link:hover{background:#33355a;color:#fff!important}
.sma-v2-product button:focus-visible,.sma-v2-product a:focus-visible{outline:3px solid #d28735;outline-offset:3px}
@media(max-width:900px){.sma-v2-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.sma-v2-top{grid-template-columns:1fr}.sma-v2-gallery{max-width:520px;width:100%;margin:0 auto}.sma-v2-product{padding:28px 16px 55px}}
@media(max-width:480px){.sma-v2-thumbs{gap:8px}.sma-v2-related-grid{gap:12px}.sma-v2-card-body{padding:12px}.sma-v2-card h3{font-size:15px!important}.sma-v2-external{width:100%}}

/* v3: theme integration. Only product pages containing the SMA dynamic output. */
body.single-product:has(.sma-v3-product) .fusion-page-title-bar {
  background:#3d3f63!important;background-image:none!important;border:0!important;
  min-height:0!important;height:auto!important;padding:24px 0!important;
}
body.single-product:has(.sma-v3-product) .fusion-page-title-bar .entry-title,
body.single-product:has(.sma-v3-product) .fusion-page-title-bar h1,
body.single-product:has(.sma-v3-product) .fusion-page-title-bar h2 {color:#e8a765!important;font-size:13px!important;letter-spacing:.15em!important;text-transform:uppercase!important}
body.single-product:has(.sma-v3-product) #main {padding-top:0!important;padding-bottom:0!important;background:#fff!important}
body.single-product:has(.sma-v3-product) #content {margin-top:0!important;padding-top:0!important;width:100%!important;float:none!important}
body.single-product:has(.sma-v3-product) .fusion-builder-row:first-child {margin-top:0!important}
body.single-product:has(.sma-v3-product) .fusion-layout-column:has(.sma-v3-product) {margin-top:0!important;margin-bottom:0!important}
body.single-product:has(.sma-v3-product) .fusion-text:has(> .sma-v3-product) {margin:0!important}
.sma-v3-product {max-width:1100px!important;margin:0 auto!important;padding:34px 0 68px!important}
.sma-v3-product .sma-v2-top {gap:clamp(28px,5vw,60px)}
.sma-v3-product .sma-v2-stage {background:#f7f6f2;border-color:#e6e3d9}
.sma-v3-product .sma-v2-summary {min-width:0}
.sma-v3-product .sma-v2-purchase {display:block!important;visibility:visible!important;opacity:1!important}
.sma-v3-product .sma-v2-external {display:inline-flex!important;width:auto!important;white-space:normal;text-align:center}
.sma-v3-product .sma-v2-short ul {padding-left:22px!important}
.sma-v3-product .sma-v2-description {max-width:none}
.sma-v3-product .sma-v2-description > h3:first-child {font-family:Archivo,Arial,sans-serif}
.sma-v3-product .sma-v2-related-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.6vw,28px)}
.sma-v3-product .sma-v2-card {border-radius:6px;box-shadow:none}
.sma-v3-product .sma-v2-card-image {aspect-ratio:1/1;padding:18px}
.sma-v3-product .sma-v2-card-body {padding:18px 20px 20px}
.sma-v3-product .sma-v2-card-link {width:max-content;max-width:100%;text-align:center}
.sma-v3-admin-notice {background:#fff8e5;border:1px solid #e1bc65;color:#614900;padding:12px 16px;border-radius:4px;font-size:14px;margin:12px 0}
@media(max-width:900px){.sma-v3-product .sma-v2-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.sma-v3-product{padding:25px 14px 55px!important}}
@media(max-width:480px){.sma-v3-product .sma-v2-related-grid{gap:12px}.sma-v3-product .sma-v2-external{width:100%!important}}

/* v4 — banner and related cards match the supplied two-page reference PDF */
body.single-product:has(.sma-v4-product) .fusion-page-title-bar {display:none!important}
body.single-product:has(.sma-v4-product) #main {padding:0!important;max-width:none!important}
body.single-product:has(.sma-v4-product) #content {width:100%!important;margin:0!important;padding:0!important}
body.single-product:has(.sma-v4-product) #main > .fusion-row {max-width:none!important;width:100%!important}
body.single-product:has(.sma-v4-product) .fusion-layout-column:has(.sma-v4-product) {margin-top:0!important;margin-bottom:0!important}
.sma-v4-banner{background:#3d3f63;color:#fff;width:100%;margin:0;padding:21px max(20px,calc((100vw - 1100px)/2));font-family:Archivo,Arial,sans-serif}
.sma-v4-banner-inner{max-width:1100px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:16px}
.sma-v4-banner-title{color:#e8a765;font-size:12.5px;letter-spacing:.16em;font-weight:700;line-height:1.35}
.sma-v4-banner-back{color:#fff!important;font-size:14px;font-weight:600;text-decoration:underline!important;text-underline-offset:3px}
.sma-v4-banner-back:hover{color:#e8a765!important}
.sma-v4-product{max-width:1100px!important;padding:60px 18px 60px!important}
.sma-v4-product .sma-v2-top{gap:clamp(30px,5vw,64px)}
.sma-v4-product .sma-v2-title{font-size:clamp(27px,3vw,35px)!important;border-bottom:1px solid #e6e3d9;padding-bottom:17px!important;margin-bottom:17px!important}
.sma-v4-product .sma-v2-stage{border:1px solid #e6e3d9}
.sma-v4-product .sma-v2-description{margin-top:34px;padding-top:0;border-top:0}
.sma-v4-product .sma-v2-description::before{content:'DESCRIPTION';display:block;font-size:13px;font-weight:700;letter-spacing:.16em;color:#33355a;border-bottom:2px solid #a85a1e;margin:0 0 22px;padding:0 0 11px}
.sma-v4-product .sma-v2-description > h3:first-child{font-size:21px!important;letter-spacing:normal!important;text-transform:none!important;border:0!important;padding:0!important;margin-top:0!important}
.sma-v4-product .sma-v2-related{margin-top:52px;padding-top:28px}
.sma-v4-product .sma-v2-related h2{font-size:24px!important;margin:0 0 23px!important}
.sma-v4-product .sma-v2-related-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;justify-content:start}
.sma-v4-product .sma-v2-card{border:1px solid #e6e3d9;border-radius:5px;box-shadow:none}
.sma-v4-product .sma-v2-card-image{aspect-ratio:1/1;background:#f7f6f2;padding:17px}
.sma-v4-product .sma-v2-card-body{padding:15px 16px 18px}
.sma-v4-product .sma-v2-card h3{font-size:16px!important;line-height:1.25!important;margin-bottom:9px!important}
.sma-v4-product .sma-v2-card-price{font-size:15px;margin-bottom:10px}
.sma-v4-product .sma-v2-card-link{min-height:38px;padding:7px 15px;border:1.5px solid #33355a;border-radius:2px;font-size:13px;margin-top:auto}
@media(max-width:900px){.sma-v4-product .sma-v2-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sma-v4-banner{padding:18px 16px}.sma-v4-banner-inner{align-items:flex-start;flex-direction:column;gap:8px}.sma-v4-product{padding:20px 16px 45px!important}.sma-v4-product .sma-v2-related-grid{gap:12px}}

/* v4.1: banner is relocated before #main so Avada layout columns cannot clip it. */
body.single-product.sma-v4-banner-active .fusion-page-title-bar {display:none!important}
body.single-product.sma-v4-banner-active #main {padding-top:0!important}
body.single-product.sma-v4-banner-active > #wrapper .sma-v4-banner {display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;position:relative!important;z-index:1!important}
body.single-product.sma-v4-banner-active .sma-v4-banner-inner {display:flex!important}


/* SMA Dynamic Product Gallery — Single Thumbnail Row */

.sma-v4-product .sma-v2-gallery {
    min-width: 0 !important;
    max-width: 100% !important;
}

.sma-v4-product .sma-v2-thumbs {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;

    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 8px 2px 12px !important;
    box-sizing: border-box !important;

    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.sma-v4-product .sma-v2-thumbs > .sma-v2-thumb {
    display: block !important;
    flex: 0 0 76px !important;
    width: 76px !important;
    min-width: 76px !important;
    max-width: 76px !important;
    height: 76px !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.sma-v4-product .sma-v2-thumb img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

@media (max-width: 767px) {
    .sma-v4-product .sma-v2-thumbs > .sma-v2-thumb {
        flex-basis: 64px !important;
        width: 64px !important;
        min-width: 64px !important;
        max-width: 64px !important;
        height: 64px !important;
    }
}

.sma-v2-description h2:first-child,
.sma-v2-description h3:first-child {
    border-bottom: none !important;
}

/* Disable hover effect on external product button */
.sma-v2-purchase .sma-v2-external:hover,
.sma-v2-purchase .sma-v2-external:focus {
    background: #a85a1e !important;
    color: #ffffff !important;
    border-color: #a85a1e !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

.sma-v2-purchase .sma-v2-external:hover span,
.sma-v2-purchase .sma-v2-external:focus span {
    color: inherit !important;
    transform: none !important;
}

