/* ==========================================
   ARTISAN STUDIO
   CROCHET + JEWELLERY STORE
========================================== */

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Poppins:wght@300;400;500;600;700&display=swap');

/* =========================
ROOT VARIABLES
========================= */

:root{

--cream:#FFF8F2;
--beige:#F5E8D8;
--blush:#FADDE1;
--lavender:#EDE4FF;
--rose:#D9A5B3;
--gold:#D4AF37;
--champagne:#F7E7CE;

--brown:#6F5A4E;
--dark:#333333;
--white:#ffffff;

--shadow-sm:0 4px 12px rgba(0,0,0,.08);
--shadow-md:0 10px 25px rgba(0,0,0,.10);
--shadow-lg:0 20px 40px rgba(0,0,0,.12);

--radius:20px;
--transition:all .35s ease;

}

/* =========================
GLOBAL RESET
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Poppins',sans-serif;

background:var(--cream);

color:var(--dark);

overflow-x:hidden;

}

img{

width:100%;

display:block;

}

a{

text-decoration:none;

}

ul{

list-style:none;

padding-left:0;

}

.section-padding{

padding:100px 0;

}

/* =========================
CUSTOM SCROLLBAR
========================= */

::-webkit-scrollbar{

width:8px;

}

::-webkit-scrollbar-track{

background:#f5f5f5;

}

::-webkit-scrollbar-thumb{

background:var(--gold);

border-radius:50px;

}

/* =========================
NAVBAR
========================= */

.custom-navbar{

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

backdrop-filter:blur(18px);

border-radius:0 0 25px 25px;

box-shadow:0 8px 25px rgba(0,0,0,.06);

padding:15px 0;

}

.navbar-brand{

font-family:'Cormorant Garamond',serif;

font-size:2rem;

font-weight:700;

color:#7c5c52 !important;

}

.nav-link{

font-weight:600;

margin-left:18px;

color:#555 !important;

position:relative;

}

.nav-link::after{

content:"";

position:absolute;

bottom:-5px;

left:0;

width:0;

height:2px;

background:#d9a5b3;

transition:.3s;

}

.nav-link:hover::after{

width:100%;

}

.nav-link:hover{

color:#d9a5b3 !important;

}

/* =========================
HERO SECTION
========================= */

.hero-section{
background:
linear-gradient(
rgba(255,248,242,.80),
rgba(255,248,242,.80)),
url("https://images.unsplash.com/photo-1512436991641-6745cdb1723f");
background-size:cover;
background-position:center;
}
.hero-tag{

display:inline-block;

background:var(--champagne);

color:var(--brown);

padding:10px 18px;

border-radius:50px;

font-size:14px;

font-weight:600;

}

.hero-title{

font-family:'Cormorant Garamond',serif;

font-size:4.5rem;

font-weight:700;

line-height:1.1;

color:var(--brown);

margin-bottom:25px;

}

.hero-subtitle{

font-size:1.1rem;

line-height:1.9;

margin-bottom:30px;

max-width:650px;

}

.hero-buttons{

display:flex;

gap:15px;

flex-wrap:wrap;

}

.btn-primary-custom{

background:linear-gradient(
135deg,
var(--gold),
#c99817
);

color:white;

padding:14px 32px;

border-radius:50px;

font-weight:600;

border:none;

transition:var(--transition);

}

.btn-primary-custom:hover{

transform:translateY(-4px);

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

color:white;

}

.btn-outline-custom{

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

color:var(--gold);

padding:14px 32px;

border-radius:50px;

font-weight:600;

transition:var(--transition);

}

.btn-outline-custom:hover{

background:var(--gold);

color:white;

}

.hero-image{

border-radius:30px;

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

animation:float 4s ease-in-out infinite;

}

@keyframes float{

0%{
transform:translateY(0);
}

50%{
transform:translateY(-15px);
}

100%{
transform:translateY(0);
}

}

/* =========================
SECTION HEADING
========================= */

.section-heading h2{

font-family:'Cormorant Garamond',serif;

font-size:3rem;

font-weight:700;

color:var(--brown);

margin-bottom:10px;

}

.section-heading p{

color:#777;

font-size:1rem;

}
/* =========================
SEARCH & FILTER
========================= */

.form-control,
.form-select{

border:none;

padding:15px;

border-radius:15px;

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

background:white;

}

.form-control:focus,
.form-select:focus{

box-shadow:0 0 0 3px rgba(212,175,55,.20);

border:none;

outline:none;

}

.form-control::placeholder{

color:#999;

}

/* =========================
PRODUCT CARD
========================= */

.product-card{

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

backdrop-filter:blur(10px);

border-radius:25px;

overflow:hidden;

transition:var(--transition);

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

height:100%;

border:1px solid rgba(212,175,55,.10);

}

.product-card:hover{

transform:translateY(-10px);

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

border-color:rgba(212,175,55,.35);

}

.product-card img{

height:280px;

object-fit:cover;

transition:var(--transition);

}

.product-card:hover img{

transform:scale(1.05);

}

.product-body{

padding:22px;

}

.product-body h5{

font-weight:600;

margin-bottom:10px;

color:var(--brown);

}

.price{

color:var(--gold);

font-weight:700;

font-size:1.25rem;

margin-bottom:15px;

}

.add-cart-btn{

width:100%;

background:linear-gradient(
135deg,
var(--gold),
#c99817
);

color:white;

border:none;

padding:12px;

border-radius:12px;

font-weight:600;

transition:var(--transition);

}

.add-cart-btn:hover{

background:linear-gradient(
135deg,
#c99817,
#b8860b
);

transform:translateY(-2px);

color:white;

}

/* =========================
ABOUT SECTION
========================= */

.about-section{

background:linear-gradient(
to right,
var(--cream),
var(--lavender)
);

}

.about-section img{

border-radius:25px;

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

}

.about-section h2{

font-family:'Cormorant Garamond',serif;

font-size:3rem;

font-weight:700;

color:var(--brown);

}

.about-section p{

line-height:1.9;

margin-top:15px;

font-size:1rem;

color:#555;

}

/* =========================
WHY CHOOSE US
========================= */

.why-us{

background:white;

}

.feature-card{

background:white;

border-radius:20px;

padding:35px 20px;

text-align:center;

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

transition:var(--transition);

height:100%;

}

.feature-card:hover{

transform:translateY(-10px);

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

}

.feature-card i{

font-size:2.5rem;

color:var(--gold);

margin-bottom:15px;

}

.feature-card h5{

font-weight:600;

color:var(--brown);

margin:0;

}

/* =========================
CATEGORY BADGE
========================= */

.collection-badge{

display:inline-block;

padding:10px 20px;

background:linear-gradient(
135deg,
var(--gold),
#c99817
);

color:white;

border-radius:50px;

font-size:14px;

font-weight:600;

margin-bottom:15px;

}

/* =========================
PRODUCT ANIMATION
========================= */

.product-item{

animation:fadeUp .5s ease;

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(20px);

}

to{

opacity:1;

transform:translateY(0);

}

}
/* =========================
REVIEWS SECTION
========================= */

.review-card{

background:white;

border-radius:20px;

padding:30px;

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

transition:var(--transition);

height:100%;

}

.review-card:hover{

transform:translateY(-8px);

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

}

.review-card p{

font-style:italic;

line-height:1.8;

color:#555;

}

.review-card h6{

margin-top:15px;

font-weight:600;

color:var(--gold);

}

/* =========================
INSTAGRAM SECTION
========================= */

.insta-img{

width:100%;

height:320px;

object-fit:cover;

border-radius:20px;

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

transition:var(--transition);

}

.insta-img:hover{

transform:translateY(-6px) scale(1.03);

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

}

/* =========================
CONTACT SECTION
========================= */

.contact-section{

background:linear-gradient(
135deg,
var(--blush),
var(--lavender)
);

}

.contact-section h2{

font-family:'Cormorant Garamond',serif;

font-size:3rem;

font-weight:700;

color:var(--brown);

}

.contact-links{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.contact-links a{

background:white;

color:var(--brown);

padding:15px 25px;

border-radius:50px;

font-weight:600;

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

transition:var(--transition);

}

.contact-links a:hover{

transform:translateY(-5px);

background:var(--gold);

color:white;

}

.contact-links i{

margin-right:8px;

}

/* =========================
OFFCANVAS CART
========================= */

.offcanvas{

border-top-left-radius:25px;

border-bottom-left-radius:25px;

}

#cart-items{

max-height:450px;

overflow-y:auto;

}

/* =========================
CHECKOUT MODAL
========================= */

.modal-content{

border:none;

border-radius:25px;

overflow:hidden;

}

.modal-header{

border-bottom:none;

}

.modal-footer{

border-top:none;

}

#placeOrderBtn{

background:linear-gradient(
135deg,
var(--gold),
#c99817
);

color:white;

border:none;

padding:12px 30px;

border-radius:12px;

font-weight:600;

}

#placeOrderBtn:hover{

opacity:.95;

}

/* =========================
FLOATING WHATSAPP
========================= */

.floating-whatsapp{

position:fixed;

left:25px;

bottom:25px;

width:60px;

height:60px;

background:#25D366;

color:white;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:28px;

z-index:999;

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

transition:var(--transition);

}

.floating-whatsapp:hover{

transform:scale(1.1);

color:white;

}

/* =========================
BACK TO TOP
========================= */

#backToTop{

position:fixed;

right:25px;

bottom:25px;

width:55px;

height:55px;

border:none;

border-radius:50%;

background:linear-gradient(
135deg,
var(--gold),
#c99817
);

color:white;

font-size:20px;

display:none;

z-index:999;

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

transition:var(--transition);

}

#backToTop:hover{

transform:translateY(-4px);

}

/* =========================
FOOTER
========================= */

.footer{

background:#2e2e2e;

color:white;

padding:70px 0 20px;

}

.footer h5{

margin-bottom:20px;

font-weight:600;

}

.footer p{

color:#ddd;

}

.footer-links li{

margin-bottom:10px;

}

.footer-links a{

color:#ddd;

transition:var(--transition);

}

.footer-links a:hover{

color:var(--gold);

}

.social-icons{

display:flex;

gap:15px;

}

.social-icons a{

width:45px;

height:45px;

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

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

color:white;

transition:var(--transition);

}

.social-icons a:hover{

background:var(--gold);

color:white;

}

.footer hr{

border-color:rgba(255,255,255,.1);

}

/* =========================
RESPONSIVE
========================= */

@media(max-width:991px){

.hero-title{

font-size:3rem;

}

.section-padding{

padding:80px 0;

}

.about-section{

text-align:center;

}

}

@media(max-width:768px){

.hero-title{

font-size:2.5rem;

}

.section-heading h2{

font-size:2.2rem;

}

.hero-buttons{

justify-content:center;

}

.hero-section{

text-align:center;

}

.contact-links{

flex-direction:column;

align-items:center;

}

.insta-img{

height:250px;

}

}

@media(max-width:576px){

.hero-title{

font-size:2rem;

}

.navbar-brand{

font-size:1.5rem;

}

.section-padding{

padding:60px 0;

}

.product-card img{

height:220px;

}

.insta-img{

height:200px;

}

}