.svshop{
    min-height:100vh;
    background:#020617;
    color:#fff;
}

.svshop-container{
    width:min(1150px,calc(100% - 32px));
    margin:0 auto;
}

.svshop-hero{
    padding:115px 0 50px;
}

.svshop-hero-grid{
    display:grid;
    grid-template-columns:1.4fr .8fr;
    gap:40px;
    align-items:center;
}

.svshop-badge{
    display:inline-flex;
    padding:10px 16px;
    border:1px solid rgba(215,169,75,.3);
    border-radius:999px;
    background:rgba(215,169,75,.1);
    color:#e6c879;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.svshop h1{
    margin:20px 0 0;
    max-width:720px;
    font-size:clamp(42px,6vw,68px);
    line-height:.98;
    font-weight:900;
    letter-spacing:-.045em;
}

.svshop h1 span{
    color:#e6c879;
}

.svshop-hero p{
    max-width:650px;
    margin:22px 0 0;
    color:rgba(255,255,255,.72);
    font-size:18px;
    line-height:1.7;
}

.svshop-benefits{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:25px;
}

.svshop-benefits span{
    padding:12px 16px;
    border-radius:12px;
    background:#080d12;
    font-size:14px;
}

.svshop-cart-summary{
    padding:34px;
    text-align:center;
    border:1px solid rgba(215,169,75,.2);
    border-radius:28px;
    background:#080d12;
}

.svshop-big-icon{
    margin-bottom:14px;
    font-size:54px;
}

.svshop-cart-summary strong{
    display:block;
    font-size:30px;
    font-weight:900;
}

.svshop-cart-summary span{
    display:block;
    margin-top:5px;
    font-size:21px;
    font-weight:900;
}

.svshop-products{
    padding:0 0 100px;
}

.svshop-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.svshop-product{
    overflow:hidden;
    border:1px solid rgba(255,255,255,.1);
    border-radius:28px;
    background:#080d12;
}

.svshop-product-image{
    display:flex;
    align-items:center;
    justify-content:center;
    aspect-ratio:4/3;
    background:#05090d;
}

.svshop-product-image span{
    font-size:72px;
}

.svshop-product-body{
    padding:22px;
}

.svshop-category{
    color:#e6c879;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
}

.svshop-product h2{
    margin:5px 0 0;
    font-size:21px;
    font-weight:900;
}

.svshop-product p{
    min-height:44px;
    margin:9px 0 0;
    color:#aab3bf;
    font-size:14px;
    line-height:1.55;
}

.svshop-price{
    margin-top:18px;
    font-size:26px;
    font-weight:900;
}

.svshop-stock{
    margin-top:5px;
    color:rgba(255,255,255,.45);
    font-size:12px;
}

.svshop-size{
    width:100%;
    margin-top:16px;
    padding:12px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:12px;
    background:#05090d;
    color:#fff;
    font-weight:700;
}

.svshop-add-row{
    display:flex;
    gap:12px;
    margin-top:16px;
}

.svshop-qty{
    display:flex;
    align-items:center;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.1);
    border-radius:12px;
    background:#05090d;
}

.svshop-qty button{
    padding:11px;
    border:0;
    background:transparent;
    color:#fff;
    cursor:pointer;
}

.svshop-qty-input{
    width:50px;
    border:0;
    background:transparent;
    color:#fff;
    text-align:center;
    font-weight:900;
    outline:none;
}

.svshop-add{
    flex:1;
    padding:11px 14px;
    border:0;
    border-radius:12px;
    background:
        linear-gradient(
            90deg,
            #e6c879,
            #d7a94b,
            #b98a32
        );
    color:#05090d;
    font-weight:900;
    cursor:pointer;
}

.svshop-add:disabled{
    opacity:.4;
    cursor:not-allowed;
}

.svshop-notice{
    margin-top:30px;
    padding:16px;
    border:1px solid rgba(245,158,11,.3);
    border-radius:15px;
    background:rgba(245,158,11,.1);
    color:#fde68a;
    font-weight:700;
}

.svshop-cart{
    margin-top:40px;
    padding:28px;
    scroll-margin-top:100px;
    border:1px solid rgba(215,169,75,.25);
    border-radius:28px;
    background:#080d12;
}

.svshop-cart-title{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:center;
}

.svshop-cart-title h2,
.svshop-cart-title strong{
    margin:0;
    font-size:26px;
    font-weight:900;
}

.svshop-empty{
    min-height:auto !important;
    margin-top:18px !important;
}

.svshop-cart-line{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:12px;
    padding:15px;
    border-radius:13px;
    background:#05090d;
}

.svshop-cart-line > div:first-child strong,
.svshop-cart-line > div:first-child span{
    display:block;
}

.svshop-cart-line > div:first-child span{
    margin-top:5px;
    color:#aab3bf;
    font-size:14px;
}

.svshop-cart-line-actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.svshop-cart-line-actions button{
    padding:8px 11px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:10px;
    background:#080d12;
    color:#fff;
    cursor:pointer;
}

.svshop-cart-line-actions .svshop-remove{
    border-color:rgba(239,68,68,.3);
    color:#f87171;
}

.svshop-cart-actions{
    display:flex;
    justify-content:space-between;
    gap:15px;
    margin-top:25px;
}

.svshop-clear,
.svshop-checkout{
    padding:13px 20px;
    border-radius:12px;
    font-weight:900;
    cursor:pointer;
}

.svshop-clear{
    border:1px solid rgba(239,68,68,.3);
    background:transparent;
    color:#f87171;
}

.svshop-checkout{
    border:0;
    background:#fff;
    color:#05090d;
}

.svshop-clear:disabled,
.svshop-checkout:disabled{
    opacity:.35;
    cursor:not-allowed;
}

.svshop-checkout-note{
    min-height:auto !important;
    margin-top:15px !important;
    color:rgba(255,255,255,.4) !important;
    font-size:12px !important;
}

@media(max-width:900px){

    .svshop-hero-grid{
        grid-template-columns:1fr;
    }

    .svshop-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:620px){

    .svshop-grid{
        grid-template-columns:1fr;
    }

    .svshop-cart-line{
        align-items:flex-start;
        flex-direction:column;
    }

    .svshop-cart-actions{
        flex-direction:column;
    }

    .svshop-cart-actions button{
        width:100%;
    }
}

.svshop-form-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
    margin:20px 0;
}

.svshop-form-grid input{
    width:100%;
    padding:14px 15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:#05090d;
    color:#fff;
    outline:none;
}

.svshop-form-grid input:focus{
    border-color:#d7a94b;
}

#svshop-create-order{
    margin-top:5px;
}

@media(max-width:650px){

    .svshop-form-grid{
        grid-template-columns:1fr;
    }
}

/* ===== STOCK BOUTIQUE ===== */

.svshop-stock{
    display:inline-flex;
    align-items:center;
    gap:8px;
    width:max-content;
    margin:12px 0 16px;
    padding:8px 12px;
    border-radius:999px;
    font-size:13px;
    font-weight:800;
    letter-spacing:.2px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.05);
}

.svshop-stock-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:currentColor;
    box-shadow:0 0 10px currentColor;
}

.svshop-stock-instock{
    color:#52d273;
    border-color:rgba(82,210,115,.35);
    background:rgba(82,210,115,.08);
}

.svshop-stock-available{
    color:#d7a94b;
    border-color:rgba(215,169,75,.35);
    background:rgba(215,169,75,.08);
}

.svshop-stock-outofstock{
    color:#ff6262;
    border-color:rgba(255,98,98,.35);
    background:rgba(255,98,98,.08);
}

#svshop-customer-form{
    scroll-margin-top:120px;
}

#svshop-create-order:disabled{
    opacity:.65;
    cursor:not-allowed;
}
