/** Shopify CDN: Minification failed

Line 689:1 Expected "}" to go with "{"

**/
/* ======================================
FX CO PRODUCT LIGHTWEIGHT
====================================== */

:root{
--bg:#070707;
--card:rgba(18,18,18,.92);
--border:rgba(255,255,255,.08);
--purple:#8B5CF6;
--radius:28px;
}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
background:var(--bg);
color:white;
font-family:Inter,sans-serif;
}

.fx-product{
position:relative;
padding:90px 6vw;
overflow:hidden;
background:#060606;
min-height:100vh;
}

/* ======================================
BACKGROUND
====================================== */

.fx-background{
position:absolute;
inset:0;
overflow:hidden;
pointer-events:none;
z-index:0;
}

.fx-glow{
position:absolute;
border-radius:50%;
opacity:.12;
}

.glow-1{
width:500px;
height:500px;
background:#7f3cff;
top:-180px;
left:-150px;
}

/* ======================================
LAYOUT
====================================== */

.fx-shell{
max-width:1550px;
margin:auto;
display:grid;
grid-template-columns:58% 42%;
gap:55px;
align-items:start;
position:relative;
z-index:5;
}

/* ======================================
GALLERY
====================================== */

.fx-gallery{
display:flex;
flex-direction:column;
gap:22px;
}

.fx-image-card{
background:var(--card);
border:1px solid var(--border);
border-radius:var(--radius);
overflow:hidden;
padding:28px;
box-shadow:
0 25px 80px rgba(0,0,0,.45);
}

.fx-image-card img{
width:100%;
display:block;
}

#fxMainImage{
transition:opacity .2s ease;
}

.fx-thumbnails{
display:flex;
gap:14px;
flex-wrap:wrap;
margin-top:24px;
}

.fx-thumb{
width:90px;
height:90px;
border-radius:18px;
border:1px solid rgba(255,255,255,.08);
background:#111;
overflow:hidden;
cursor:pointer;
}

.fx-thumb img{
width:100%;
height:100%;
object-fit:cover;
}

.fx-thumb.active{
border-color:var(--purple);
box-shadow:
0 0 25px rgba(139,92,246,.25);
}

/* ======================================
SIDEBAR
====================================== */

.fx-sidebar{
position:sticky;
top:120px;
background:var(--card);
border:1px solid var(--border);
border-radius:var(--radius);
padding:40px;
box-shadow:
0 25px 80px rgba(0,0,0,.45);
}

.fx-tag{
display:inline-flex;
padding:10px 18px;
border-radius:999px;
background:rgba(139,92,246,.12);
color:#bfa4ff;
font-size:12px;
font-weight:700;
letter-spacing:.12em;
margin-bottom:24px;
}

.fx-sidebar h1{
font-size:56px;
line-height:1;
font-weight:900;
margin-bottom:18px;
}

.fx-rating{
display:flex;
gap:14px;
margin-bottom:22px;
font-size:18px;
}

.fx-rating span{
color:#bdbdbd;
}

.fx-price{
font-size:42px;
font-weight:800;
margin-bottom:20px;
}

.fx-description{
line-height:1.7;
color:#cfcfcf;
margin-bottom:35px;
}

/* ======================================
BUY AREA
====================================== */

.fx-buy{
display:flex;
flex-direction:column;
gap:24px;
margin-top:35px;
}

.fx-option label{
display:block;
margin-bottom:10px;
font-size:13px;
letter-spacing:.08em;
color:#9f9f9f;
text-transform:uppercase;
}

/* ======================================
SWATCHES
====================================== */

.fx-swatches{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:14px;
margin-top:10px;
}

.fx-swatch{
display:flex;
align-items:center;
gap:14px;
padding:16px;
background:rgba(255,255,255,.03);
border:1px solid rgba(255,255,255,.08);
border-radius:18px;
cursor:pointer;
color:white;
position:relative;
}

.fx-swatch.active{
border-color:#8B5CF6;
background:rgba(139,92,246,.08);
}

.fx-check{
position:absolute;
right:14px;
top:14px;
width:16px;
height:16px;
opacity:0;
stroke:#8B5CF6;
stroke-width:3;
fill:none;
}

.fx-swatch.active .fx-check{
opacity:1;
}

.fx-swatch-preview{
width:44px;
height:44px;
border-radius:12px;
border:1px solid rgba(255,255,255,.08);
flex-shrink:0;
}

.standard{
background:#1b1b1b;
}

.chrome{
background:
linear-gradient(
135deg,
#6f6f6f,
#d9d9d9,
#7a7a7a,
#ffffff,
#666
);
}

.glitter{
background:
radial-gradient(circle,#ffffff 3%,transparent 4%),
radial-gradient(circle,#b16cff 3%,transparent 4%),
#1c1c1c;
background-size:12px 12px;
}

.holographic{
background:
linear-gradient(
135deg,
#ff4fd8,
#63d4ff,
#8B5CF6,
#6dff9b,
#ffe066
);
}

/* ======================================
BUTTONS
====================================== */

.fx-cart,
.fx-buy-now,
.fx-builder-button{
height:60px;
border:none;
border-radius:18px;
cursor:pointer;
font-weight:700;
}

.fx-cart{
height:68px;
background:
linear-gradient(
135deg,
#6d28d9,
#8B5CF6,
#a855f7,
#7c3aed
);
color:white;
box-shadow:
0 12px 35px rgba(139,92,246,.35);
}

.fx-buy-now{
background:transparent;
border:1px solid rgba(255,255,255,.12);
color:white;
}

.fx-builder-button{
width:100%;
background:white;
color:black;
}

/* ======================================
FEATURES
====================================== */

.fx-features{
margin-top:40px;
display:grid;
gap:16px;
}

.fx-feature{
display:flex;
align-items:center;
gap:18px;
padding:18px;
border-radius:18px;
background:rgba(255,255,255,.03);
border:1px solid rgba(255,255,255,.06);
}

.fx-feature-icon{
width:52px;
height:52px;
display:flex;
align-items:center;
justify-content:center;
font-size:22px;
border-radius:16px;
background:rgba(139,92,246,.12);
}

.fx-feature p{
font-size:13px;
color:#bcbcbc;
line-height:1.5;
}

/* ======================================
BUILDER
====================================== */

.fx-builder-card{
margin-top:45px;
padding:35px;
border-radius:28px;
background:
linear-gradient(
135deg,
rgba(139,92,246,.12),
rgba(255,255,255,.03)
);
border:1px solid rgba(139,92,246,.25);
}

.fx-builder-card span{
font-size:12px;
letter-spacing:.15em;
color:#b794ff;
font-weight:700;
}

.fx-builder-card h2{
font-size:34px;
margin:14px 0;
}

.fx-builder-card p{
color:#c8c8c8;
line-height:1.6;
margin-bottom:26px;
}

/* ======================================
SHIPPING
====================================== */

.fx-shipping{
display:grid;
gap:14px;
margin-top:30px;
}

.fx-ship-item{
display:flex;
gap:16px;
padding:16px 18px;
background:rgba(255,255,255,.03);
border:1px solid rgba(255,255,255,.06);
border-radius:18px;
}

.fx-ship-item span{
font-size:13px;
color:#bdbdbd;
line-height:1.5;
}

/* ======================================
MOBILE
====================================== */

@media(max-width:1000px){

.fx-shell{
grid-template-columns:1fr;
gap:35px;
}

.fx-sidebar{
position:relative;
top:auto;
padding:32px;
}

.fx-sidebar h1{
font-size:40px;
}

.fx-thumbnails{
justify-content:center;
}

.fx-thumb{
width:75px;
height:75px;
}

.fx-glow{
display:none;
}

*,
*::before,
*::after{
animation:none !important;
transition:none !important;
}

/* ======================================
PRODUCT FORM
====================================== */

.fx-product-form{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:18px;
}

/* ======================================
QUANTITY
====================================== */

.fx-qty{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
}

.fx-qty button{

    width:50px;
    height:50px;

    border:none;
    border-radius:14px;

    background:#181818;
    color:white;

    font-size:26px;
    cursor:pointer;

    transition:.25s;
}

.fx-qty button:hover{

    background:#252525;

}

#fxQuantity{

    width:90px;
    height:50px;

    background:#181818;

    border:none;
    border-radius:14px;

    color:white;

    text-align:center;

    font-size:18px;
    font-weight:700;

    outline:none;
}

/* ======================================
BUTTONS
====================================== */

.fx-cart,
.fx-buy-now{

    width:100%;
    min-height:74px;

    padding:22px;

    border:none;
    border-radius:20px;

    cursor:pointer;

    font-size:19px;
    font-weight:800;
    letter-spacing:.05em;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background .25s ease;

}

/* ADD TO CART */

.fx-cart{

    background:
    linear-gradient(
        135deg,
        #6d28d9,
        #8B5CF6,
        #a855f7,
        #7c3aed
    );

    color:white;

    box-shadow:
        0 15px 45px rgba(139,92,246,.35);

}

.fx-cart:hover{

    transform:
        translateY(-4px);

    box-shadow:
        0 20px 55px rgba(139,92,246,.45);

}

/* PURCHASE */

.fx-buy-now{

    background:
        rgba(255,255,255,.04);

    border:
        1px solid rgba(255,255,255,.10);

    color:white;

}

.fx-buy-now:hover{

    transform:
        translateY(-4px);

    border-color:#8B5CF6;

    box-shadow:
        0 15px 45px rgba(139,92,246,.18);

}

/* SOLD OUT */

.sold-out{

    background:#1a1a1a !important;

    border:
        1px solid rgba(255,255,255,.06) !important;

    color:#888 !important;

    cursor:not-allowed !important;

    box-shadow:none !important;

}

.sold-out:hover{

    transform:none !important;

    box-shadow:none !important;

}

/* MOBILE */

@media(max-width:749px){

    .fx-cart,
    .fx-buy-now{

        min-height:68px;

        font-size:17px;

    }

    .fx-qty{

        gap:10px;

    }

    .fx-qty button{

        width:46px;
        height:46px;

    }

    #fxQuantity{

        width:80px;
        height:46px;

    }

}