/* ===================================
   JERBEL DESIGN SYSTEM
=================================== */

.container{
    width:min(var(--container),92%);
    margin:auto;
}

/* ===================================
   BOTÕES
=================================== */

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:15px 32px;
    border-radius:999px;
    text-decoration:none;
    font-family:var(--body);
    font-weight:700;
    transition:.35s;
    cursor:pointer;
    border:none;
}

.btn-primary{
    color:#fff;
    background:
        linear-gradient(135deg,
        var(--pink),
        #ff7db3,
        var(--purple));
    box-shadow:0 20px 45px rgba(216,111,166,.30);
}

.btn-primary:hover{
    transform:translateY(-4px);
    box-shadow:0 30px 60px rgba(216,111,166,.45);
}

.btn-outline{

    color:var(--pink);

    background:#fff;

    border:2px solid var(--pink);

}

.btn-outline:hover{

    background:var(--pink);

    color:#fff;

}

/* ===================================
   TITULOS
=================================== */

.section-title{

    font-family:var(--title);

    font-size:clamp(34px,4vw,54px);

    color:var(--text);

    text-align:center;

    margin-bottom:18px;

}

.section-subtitle{

    max-width:720px;

    margin:auto;

    text-align:center;

    color:var(--muted);

    line-height:1.8;

}

/* ===================================
   CARDS
=================================== */

.card{

    background:rgba(255,255,255,.82);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.7);

    border-radius:var(--radius);

    overflow:hidden;

    transition:.35s;

    box-shadow:var(--shadow);

}

.card:hover{

    transform:translateY(-10px);

    box-shadow:0 30px 80px rgba(123,53,200,.18);

}

.card-image{

    aspect-ratio:1/1;

    overflow:hidden;

}

.card-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.45s;

}

.card:hover img{

    transform:scale(1.08);

}

.card-body{

    padding:24px;

}

.card-title{

    font-size:22px;

    color:var(--text);

    margin-bottom:10px;

    font-family:var(--title);

}

.card-price{

    color:var(--pink);

    font-size:26px;

    font-weight:800;

}

/* ===================================
   BADGES
=================================== */

.badge{

    display:inline-flex;

    align-items:center;

    padding:8px 14px;

    border-radius:999px;

    background:linear-gradient(
        135deg,
        var(--pink-soft),
        var(--lilac-soft)
    );

    color:var(--pink-dark);

    font-size:12px;

    font-weight:700;

}

/* ===================================
   PRODUTO
=================================== */

.product-card{

    position:relative;

    background:#fff;

    border-radius:28px;

    overflow:hidden;

    border:1px solid var(--border);

    transition:.35s;

    box-shadow:var(--shadow);

}

.product-card:hover{

    transform:translateY(-10px);

    box-shadow:var(--shadow-pink);

}

.product-image{

    display:block;

    overflow:hidden;

}

.product-image img{

    width:100%;

    aspect-ratio:1/1;

    object-fit:cover;

    transition:.45s;

}

.product-card:hover img{

    transform:scale(1.08);

}

.product-badge{

    position:absolute;

    top:18px;

    left:18px;

    background:linear-gradient(
        135deg,
        var(--pink),
        var(--purple)
    );

    color:#fff;

    padding:8px 14px;

    border-radius:999px;

    font-size:12px;

    font-weight:800;

}

.product-info{

    padding:22px;

}

.product-info h3{

    font-family:var(--title);

    color:var(--text);

    font-size:24px;

    margin-bottom:10px;

}

.product-old-price{

    color:#999;

    text-decoration:line-through;

}

.product-info strong{

    display:block;

    margin:10px 0 18px;

    color:var(--pink);

    font-size:24px;

}

.product-button{

    display:flex;

    justify-content:center;

    align-items:center;

    height:50px;

    border-radius:16px;

    text-decoration:none;

    background:linear-gradient(
        135deg,
        var(--pink),
        var(--purple)
    );

    color:#fff;

    font-weight:700;

    transition:.35s;

}

.product-button:hover{

    transform:translateY(-2px);

}

/* ===================================
   RESPONSIVO
=================================== */

@media(max-width:768px){

.container{

width:92%;

}

.btn{

width:100%;

}

.section-title{

font-size:34px;

}

}