/*==================================================
SSSP BOOK STORE
Version : 1.0
Theme : #8C1818
==================================================*/

:root{

--primary:#8C1818;
--primary-hover:#6d1111;

--gold:#D4AF37;

--white:#ffffff;

--black:#222222;

--text:#555555;

--light:#F8F5F2;

--border:#ECECEC;

--shadow:0 15px 40px rgba(0,0,0,.08);

--radius:18px;

--transition:.35s ease;

}

*{

margin:0;
padding:0;
box-sizing:border-box;

}

body{

font-family:'Poppins',sans-serif;

background:#fff;

color:var(--black);

font-size:15px;

line-height:1.7;

overflow-x:hidden;

}

a{

text-decoration:none;

transition:var(--transition);

}

img{

max-width:100%;

display:block;

}

.section-padding{

padding:90px 0;

}

.container{

max-width:1320px;

margin:auto;

padding:0 15px;

}
/*=============================
TOP HEADER
=============================*/

.top-header{

background:var(--primary);

color:#fff;

padding:8px 0;

font-size:14px;

}

.top-header a{

color:#fff;

margin-left:18px;

}

.main-header{

background:#fff;

box-shadow:0 8px 30px rgba(0,0,0,.05);

position:sticky;

top:0;

z-index:999;

}

.header-inner{

display:flex;

align-items:center;

justify-content:space-between;

padding:18px 0;

}

.logo{

font-size:34px;

font-weight:700;

color:var(--primary);

}

.logo span{

color:var(--gold);

}

.header-right{

display:flex;

align-items:center;

gap:15px;

}
.search-box{

display:flex;

width:620px;

border:2px solid var(--primary);

border-radius:50px;

overflow:hidden;

background:#fff;

}

.search-box select{

width:180px;

border:none;

padding:14px;

background:#fafafa;

outline:none;

}

.search-box input{

flex:1;

border:none;

padding:14px 18px;

outline:none;

}

.search-box button{

width:70px;

border:none;

background:var(--primary);

color:#fff;

cursor:pointer;

transition:.3s;

}

.search-box button:hover{

background:var(--gold);

color:#000;

}
/*====================================
MAIN MENU
====================================*/

.main-menu{

background:#fff;

border-top:1px solid var(--border);

border-bottom:1px solid var(--border);

}

.main-menu ul{

display:flex;

align-items:center;

justify-content:center;

gap:45px;

list-style:none;

margin:0;

padding:18px 0;

}

.main-menu ul li{

position:relative;

}

.main-menu ul li a{

color:var(--black);

font-weight:600;

font-size:15px;

transition:.3s;

}

.main-menu ul li a:hover{

color:var(--primary);

}

.main-menu ul li::after{

content:'';

position:absolute;

left:0;

bottom:-18px;

width:0;

height:3px;

background:var(--primary);

transition:.3s;

}

.main-menu ul li:hover::after{

width:100%;

}



/*====================================
HERO SECTION
====================================*/

.hero{

padding:60px 0;

background:linear-gradient(
135deg,
#fff,
#F8F5F2
);

}

.hero-box{

background:#fff;

border-radius:25px;

overflow:hidden;

box-shadow:var(--shadow);

}

.hero-left{

padding:70px;

}

.hero-left span{

display:inline-block;

background:#FDECEC;

color:var(--primary);

padding:8px 20px;

border-radius:50px;

font-weight:600;

margin-bottom:20px;

}

.hero-left h1{

font-size:54px;

line-height:1.2;

font-weight:700;

margin-bottom:25px;

}

.hero-left p{

font-size:17px;

color:#666;

margin-bottom:35px;

}

.hero-image img{

width:100%;

height:100%;

object-fit:cover;

}



/*====================================
PRIMARY BUTTON
====================================*/

.btn-primary{

background:var(--primary);

border:none;

padding:16px 35px;

border-radius:50px;

color:#fff;

font-weight:600;

transition:.35s;

display:inline-block;

}

.btn-primary:hover{

background:var(--gold);

color:#000;

transform:translateY(-4px);

box-shadow:0 12px 30px rgba(0,0,0,.18);

}
/*====================================
FEATURES
====================================*/

.feature-box{

background:#fff;

border-radius:18px;

padding:35px;

text-align:center;

box-shadow:var(--shadow);

transition:.35s;

height:100%;

}

.feature-box:hover{

transform:translateY(-8px);

}

.feature-icon{

width:80px;

height:80px;

margin:auto;

border-radius:50%;

background:#FDECEC;

display:flex;

align-items:center;

justify-content:center;

font-size:30px;

color:var(--primary);

margin-bottom:25px;

}

.feature-box h4{

font-size:20px;

margin-bottom:12px;

}

.feature-box p{

color:#666;

font-size:15px;

}
/*====================================
SIDEBAR
====================================*/

.sidebar-card{

background:#fff;

border-radius:20px;

box-shadow:var(--shadow);

margin-bottom:30px;

overflow:hidden;

}

.sidebar-title{

background:var(--primary);

padding:18px 25px;

color:#fff;

font-size:18px;

font-weight:600;

}

.sidebar-body{

padding:25px;

}

.category-list{

list-style:none;

padding:0;

margin:0;

}

.category-list li{

border-bottom:1px solid #eee;

}

.category-list li:last-child{

border:none;

}

.category-list li a{

display:flex;

justify-content:space-between;

padding:14px 0;

color:#444;

transition:.3s;

}

.category-list li a:hover{

color:var(--primary);

padding-left:8px;

}
/*====================================
BOOK CARD
====================================*/

.book-card{

background:#fff;

border-radius:22px;

overflow:hidden;

box-shadow:0 12px 35px rgba(0,0,0,.06);

transition:.4s;

position:relative;

height:100%;

border:1px solid #f1f1f1;

}

.book-card:hover{

transform:translateY(-12px);

box-shadow:0 25px 60px rgba(0,0,0,.15);

}



/*====================================
IMAGE
====================================*/

.book-image{

position:relative;

overflow:hidden;

background:#fafafa;

height:360px;

}

.book-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.book-card:hover .book-image img{

transform:scale(1.08);

}



/*====================================
BADGES
====================================*/

.book-badge{

position:absolute;

left:15px;

top:15px;

background:#8C1818;

color:#fff;

padding:7px 14px;

border-radius:30px;

font-size:12px;

font-weight:600;

z-index:5;

}

.book-discount{

position:absolute;

right:15px;

top:15px;

background:#D4AF37;

color:#000;

padding:7px 14px;

border-radius:30px;

font-size:12px;

font-weight:700;

z-index:5;

}



/*====================================
BODY
====================================*/

.book-body{

padding:25px;

}

.book-category{

color:#8C1818;

font-size:13px;

font-weight:600;

text-transform:uppercase;

margin-bottom:10px;

letter-spacing:1px;

}

.book-title{

font-size:22px;

font-weight:700;

line-height:1.4;

margin-bottom:10px;

min-height:60px;

}

.book-title a{

color:#222;

}

.book-title a:hover{

color:#8C1818;

}

.book-author{

color:#777;

margin-bottom:18px;

font-size:15px;

}
/*====================================
RATING
====================================*/

.book-rating{

display:flex;

align-items:center;

gap:4px;

color:#f6b01e;

font-size:14px;

margin-bottom:18px;

}



/*====================================
PRICE
====================================*/

.book-price{

display:flex;

align-items:center;

gap:12px;

margin-bottom:25px;

}

.book-price h3{

color:#8C1818;

font-size:28px;

margin:0;

font-weight:700;

}

.book-price del{

color:#999;

font-size:18px;

}
/*====================================
BUTTONS
====================================*/

.book-buttons{

display:flex;

gap:10px;

}

.book-buttons .details{

flex:1;

background:#fff;

border:2px solid #8C1818;

height:48px;

border-radius:12px;

display:flex;

align-items:center;

justify-content:center;

color:#8C1818;

font-weight:600;

transition:.35s;

}

.book-buttons .details:hover{

background:#8C1818;

color:#fff;

}

.book-buttons .cart{

width:52px;

height:48px;

background:#8C1818;

border:none;

border-radius:12px;

color:#fff;

transition:.35s;

cursor:pointer;

}

.book-buttons .cart:hover{

background:#D4AF37;

color:#000;

transform:scale(1.05);

}
/*====================================
BUTTONS
====================================*/

.book-buttons{

display:flex;

gap:10px;

}

.book-buttons .details{

flex:1;

background:#fff;

border:2px solid #8C1818;

height:48px;

border-radius:12px;

display:flex;

align-items:center;

justify-content:center;

color:#8C1818;

font-weight:600;

transition:.35s;

}

.book-buttons .details:hover{

background:#8C1818;

color:#fff;

}

.book-buttons .cart{

width:52px;

height:48px;

background:#8C1818;

border:none;

border-radius:12px;

color:#fff;

transition:.35s;

cursor:pointer;

}

.book-buttons .cart:hover{

background:#D4AF37;

color:#000;

transform:scale(1.05);

}
/*====================================
PAGINATION
====================================*/

.pagination{

margin-top:60px;

justify-content:center;

}

.page-link{

width:48px;

height:48px;

display:flex;

align-items:center;

justify-content:center;

border-radius:12px !important;

margin:0 6px;

border:none;

box-shadow:0 8px 20px rgba(0,0,0,.06);

color:#222;

font-weight:600;

}

.page-item.active .page-link{

background:#8C1818;

color:#fff;

}

.page-link:hover{

background:#D4AF37;

color:#000;

}
/*====================================
GLASS HEADER
====================================*/

.main-header{

position:sticky;

top:0;

left:0;

width:100%;

z-index:9999;

background:rgba(255,255,255,.95);

backdrop-filter:blur(18px);

-webkit-backdrop-filter:blur(18px);

transition:.35s;

}

.main-header.scrolled{

padding:0;

box-shadow:0 15px 45px rgba(0,0,0,.08);

}



/*====================================
HEADER ICON
====================================*/

.header-icon{

width:52px;

height:52px;

border-radius:14px;

display:flex;

align-items:center;

justify-content:center;

background:#F8F5F2;

color:#8C1818;

font-size:20px;

transition:.35s;

cursor:pointer;

position:relative;

}

.header-icon:hover{

background:#8C1818;

color:#fff;

transform:translateY(-3px);

}



/*====================================
CART COUNT
====================================*/

.cart-count{

position:absolute;

top:-6px;

right:-6px;

width:22px;

height:22px;

border-radius:50%;

background:#D4AF37;

display:flex;

align-items:center;

justify-content:center;

font-size:11px;

font-weight:700;

color:#000;

}
/*====================================
HERO CONTENT
====================================*/

.hero-content{

animation:fadeUp .8s ease;

}

.hero-image{

animation:fadeRight 1s ease;

}

@keyframes fadeUp{

0%{

opacity:0;

transform:translateY(60px);

}

100%{

opacity:1;

transform:none;

}

}

@keyframes fadeRight{

0%{

opacity:0;

transform:translateX(60px);

}

100%{

opacity:1;

transform:none;

}

}
/*====================================
FOOTER
====================================*/

.footer{

background:#111;

color:#ddd;

padding:90px 0 30px;

margin-top:80px;

}

.footer h4{

color:#fff;

margin-bottom:25px;

font-size:22px;

}

.footer ul{

list-style:none;

padding:0;

margin:0;

}

.footer li{

margin-bottom:12px;

}

.footer a{

color:#bbb;

transition:.3s;

}

.footer a:hover{

color:#D4AF37;

padding-left:8px;

}

.footer-bottom{

margin-top:50px;

padding-top:25px;

border-top:1px solid rgba(255,255,255,.08);

text-align:center;

color:#999;

}
/*====================================
SCROLL TOP
====================================*/

.scroll-top{

position:fixed;

right:30px;

bottom:30px;

width:55px;

height:55px;

border-radius:50%;

background:#8C1818;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

cursor:pointer;

box-shadow:0 15px 40px rgba(0,0,0,.18);

transition:.35s;

z-index:999;

}

.scroll-top:hover{

background:#D4AF37;

color:#000;

transform:translateY(-6px);

}
/*====================================
RESPONSIVE
====================================*/

@media(max-width:991px){

.search-box{

width:100%;

margin:20px 0;

}

.main-menu{

display:none;

}

.hero-left{

padding:40px;

}

.hero-left h1{

font-size:38px;

}

.book-image{

height:280px;

}

}

@media(max-width:767px){

.section-padding{

padding:60px 0;

}

.book-buttons{

flex-direction:column;

}

.book-buttons .cart{

width:100%;

}

.hero-left{

padding:30px;

}

.hero-left h1{

font-size:30px;

}

.logo{

font-size:26px;

}

}
