/* ==========================================================
   GlitterNailsByMe
   Boutique Edition v0.1
   ========================================================== */

:root{

--primary:#d98ca7;
--secondary:#f7eef2;
--accent:#b8860b;
--dark:#333333;
--light:#ffffff;
--shadow:0 15px 40px rgba(0,0,0,.12);

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:Arial,Helvetica,sans-serif;

background:#fff;

color:var(--dark);

line-height:1.7;

}

/* ===========================
Header
=========================== */

header{

display:flex;

justify-content:space-between;

align-items:center;

padding:20px 8%;

background:white;

box-shadow:0 5px 20px rgba(0,0,0,.05);

position:sticky;

top:0;

z-index:999;

}

.logo{

font-size:30px;

font-weight:bold;

color:var(--primary);

letter-spacing:1px;

}

nav a{

text-decoration:none;

margin-left:25px;

color:#555;

font-weight:600;

transition:.3s;

}

nav a:hover{

color:var(--primary);

}

.studio{

padding:10px 18px;

border-radius:40px;

background:linear-gradient(135deg,#f7d7e4,#ffffff);

box-shadow:var(--shadow);

}

/* ===========================
Hero
=========================== */

.hero{

height:90vh;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

padding:40px;

background:

linear-gradient(
rgba(255,255,255,.75),
rgba(255,255,255,.75)
),

url("../images/hero.jpg");

background-size:cover;

background-position:center;

}

.hero-content{

max-width:700px;

animation:fadeIn 1.4s;

}

.hero h1{

font-size:64px;

margin-bottom:20px;

color:#222;

}

.hero p{

font-size:22px;

margin-bottom:40px;

color:#555;

}

.button{

display:inline-block;

padding:18px 42px;

background:linear-gradient(
135deg,
#f3b6cb,
#d98ca7);

color:white;

text-decoration:none;

border-radius:50px;

font-size:18px;

font-weight:bold;

transition:.3s;

box-shadow:var(--shadow);

}

.button:hover{

transform:translateY(-4px);

}

/* ===========================
Cards
=========================== */

.collections{

padding:100px 8%;

text-align:center;

}

.product-card{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:35px;

margin-top:50px;

}

.product-card{

    background:white;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 15px 35px rgba(0,0,0,.12);

}

.product-card:hover{

transform:translateY(-10px);

}

.product-card h3{

margin-bottom:15px;

color:var(--primary);

}

/* ===========================
Story
=========================== */

.story{

padding:100px 10%;

background:var(--secondary);

text-align:center;

}

.story h2{

font-size:40px;

margin-bottom:25px;

}

.story p{

max-width:700px;

margin:auto;

font-size:20px;

}

/* ===========================
Newsletter
=========================== */

.newsletter{

padding:90px 8%;

text-align:center;

}

.newsletter form{

margin-top:35px;

}

.newsletter input{

width:320px;

padding:16px;

border:1px solid #ddd;

border-radius:50px;

font-size:18px;

}

.newsletter button{

padding:16px 35px;

margin-left:12px;

border:none;

background:var(--primary);

color:white;

border-radius:50px;

cursor:pointer;

font-size:17px;

transition:.3s;

}

.newsletter button:hover{

background:#c56e91;

}

/* ===========================
Footer
=========================== */

footer{

padding:45px;

text-align:center;

background:#222;

color:white;

}

/* ===========================
Animations
=========================== */

@keyframes fadeIn{

from{

opacity:0;

transform:translateY(30px);

}

to{

opacity:1;

transform:none;

}

}

/* ===========================
Responsive
=========================== */

@media(max-width:900px){

.hero h1{

font-size:42px;

}

.hero p{

font-size:18px;

}

header{

flex-direction:column;

}

nav{

margin-top:20px;

}

nav a{

display:inline-block;

margin:8px;

}

.newsletter input{

width:100%;

margin-bottom:15px;

}

.newsletter button{

width:100%;

margin-left:0;

}

}
/* ===========================
Shop Page
=========================== */

.page-title{

padding:80px 20px;

text-align:center;

background:#faf7f9;

}

.page-title h1{

font-size:48px;

margin-bottom:10px;

}

.product-grid {

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.product-card {

    background:white;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 15px 35px rgba(0,0,0,.12);

    transition:.35s;

}

.product-card:hover {

    transform:translateY(-10px);

}

.product-image {

    height:360px;

    overflow:hidden;

    position:relative;

    padding:18px;

    background:linear-gradient(145deg, var(--secondary), #ffffff);

}

.product-card h3 {

    margin:20px 0 10px;

    color:var(--primary);

}

.price{

font-size:22px;

color:var(--primary);

font-weight:bold;

margin:15px 0;

}

.product .button{

margin-bottom:25px;

}

.product-image img {

    width:100%;

    height:100%;

    object-fit:cover;

    border-radius:14px;

    box-shadow:0 10px 25px rgba(0,0,0,.18);

    transition:transform .45s;

}

.product-card:hover img {

    transform:scale(1.1);

}

.cart{

width:100%;

padding:14px;

border:none;

background:linear-gradient(
135deg,
#f3b6cb,
#d98ca7);

color:white;

border-radius:40px;

cursor:pointer;

font-weight:bold;

transition:.3s;

}

.cart:hover{

transform:translateY(-3px);

}

.product-card{
    position:relative;
}

.badge{

    position:absolute;

    top:15px;

    left:15px;

    background:#d84c70;

    color:white;

    padding:8px 14px;

    border-radius:30px;

    font-size:12px;

    font-weight:bold;

    z-index:10;

}
.rating{

    color:#d4af37;

    font-size:18px;

    margin-top:10px;

}

.rating span{

    color:#777;

    font-size:14px;

}

.active{

color:var(--primary);

font-weight:bold;

border-bottom:3px solid var(--primary);

padding-bottom:6px;

}