﻿:root{
	--bl-cream:#F6F1E6;
	--bl-cream-2:#EFE7D6;
	--bl-green:#005843;
	--bl-green-dark:#003D2E;
	--bl-green-soft:#2F8E74;
	--bl-butter:#E7B84C;
	--bl-ink:#213027;
	--bl-muted:#6E7C74;
	--bl-line:#DCD3C0;
}

body{
	background:var(--bl-cream);
	color:var(--bl-ink);
	font-family:"Hanken Grotesk",-apple-system,Segoe UI,Roboto,sans-serif;
	-webkit-font-smoothing:antialiased;
}

.cp-eyebrow{
	display:inline-flex;align-items:center;gap:10px;
	font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
	color:var(--bl-green);margin-bottom:18px;
}
.cp-eyebrow::before,.cp-eyebrow::after{content:"";width:26px;height:1px;background:var(--bl-green-soft);opacity:.5}
.cp-title{
	font-family:"Fraunces",serif;font-optical-sizing:auto;font-weight:600;
	font-size:clamp(34px,5.4vw,54px);line-height:1.04;letter-spacing:-.01em;
	margin:0 0 16px;color:var(--bl-ink);
}
.cp-title em{font-style:italic;font-weight:500;color:var(--bl-green)}
.cp-sub{margin:0;font-size:17px;line-height:1.65;color:var(--bl-muted)}

.produtos-hero{background:var(--bl-cream-2)}
.produtos-hero-inner{max-width:1180px;margin:0 auto;padding:66px 24px 58px;text-align:center}
.produtos-hero-inner .cp-eyebrow{justify-content:center}
.produtos-hero-inner .cp-sub{max-width:600px;margin:0 auto}

.products-page{padding:44px 0 60px}
.products-page .container{max-width:1180px;margin:0 auto;padding:0 24px}

.products-page .products-layout{
	display:flex;
	align-items:flex-start;
	gap:36px;
}

.products-page .product-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
	gap:28px;
	flex:1 1 auto;
	min-width:0;
}

.products-page .filter-sidebar{
	position:sticky;
	top:100px; /* 76px da navbar fixa + 24px de respiro */
	width:236px;
	flex:0 0 236px;
	padding:0;
}
.products-page .filter-head{
	display:flex;align-items:center;gap:9px;
	margin:0 0 16px;padding-left:4px;
	font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
	color:var(--bl-green);
}
.products-page .filter-head .fa{color:var(--bl-green-soft);font-size:14px}

.products-page .nav-prod{
	display:flex;flex-direction:column;gap:5px;
	margin:0;padding:0;list-style:none;
}
.products-page .nav-prod::before,
.products-page .nav-prod::after{content:none;display:none}
.products-page .nav-prod li{width:100%;float:none;margin:0}

.products-page .nav-prod li a{
	display:flex;align-items:center;justify-content:space-between;gap:10px;
	background:#fff;color:var(--bl-ink);
	padding:9px 14px;border:1px solid #e6ebe9;border-radius:50px;
	font-size:14px;font-weight:600;text-align:left;text-decoration:none;
	box-shadow:0 4px 14px rgba(0,0,0,.05);
	transition:transform .3s ease,box-shadow .3s ease,background .3s ease,color .3s ease,border-color .3s ease;
}
.products-page .nav-prod li a::after{
	content:"\f105";
	font-family:"FontAwesome";
	font-size:13px;color:#1a4b38;
	transition:transform .3s ease,color .3s ease;
}
.products-page .filter-sidebar .nav-prod li a:hover{
	transform:translateX(4px);
	background:#fff;
	border-color:var(--bl-green-soft);
	color:var(--bl-green);
	box-shadow:0 10px 20px rgba(18,107,83,.12);
}
.products-page .filter-sidebar .nav-prod li a:hover::after{color:var(--bl-green);transform:translateX(2px)}

.products-page .filter-sidebar .nav-prod li.active a,
.products-page .filter-sidebar .nav-prod li.active a:hover,
.products-page .filter-sidebar .nav-prod li.active a:focus{
	background:var(--bl-green);
	color:#fff;
	border-color:var(--bl-green);
	box-shadow:0 12px 24px rgba(0,88,67,.22);
	transform:none;
}
.products-page .filter-sidebar .nav-prod li.active a::after{color:rgba(255,255,255,.85)}

.products-page .product-card{
	background:#fff;
	border:1px solid #e6ebe9;
	border-radius:16px;
	overflow:hidden;
	box-shadow:0 4px 20px rgba(0,0,0,.05);
	transition:transform .4s cubic-bezier(.25,.46,.45,.94),box-shadow .4s ease,border-color .4s ease;
	position:relative;
	display:flex;
	flex-direction:column;
	animation:productFadeUp .5s ease both;
}
@keyframes productFadeUp{
	from{opacity:0;transform:translateY(20px)}
	to{opacity:1;transform:translateY(0)}
}
.products-page .product-card:hover{
	transform:translateY(-8px);
	border-color:var(--bl-green-soft);
	box-shadow:0 14px 26px rgba(18,107,83,.16);
}

.products-page .product-image-wrapper{
	position:relative;overflow:hidden;background:#fff;padding-top:52%;
}
.products-page .product-image-wrapper img{
	position:absolute;top:0;left:0;width:100%;height:100%;
	object-fit:contain;padding:10px;
	transition:transform .6s ease;
}
.products-page .product-card:hover .product-image-wrapper img{transform:scale(1.08)}

.products-page .product-content{
	padding:22px 22px 20px;display:flex;flex-direction:column;flex:1 1 auto;
}
.products-page .product-content .product-title{
	font-family:"Hanken Grotesk",-apple-system,Segoe UI,Roboto,sans-serif;
	font-size:16px;font-weight:600;line-height:1.25;
	color:var(--bl-ink);margin:0 0 6px;
}
.products-page .product-subtitle{
	font-size:13px;color:var(--bl-muted);margin:0 0 12px;font-style:italic;
}
.products-page .product-description{
	font-size:14px;color:var(--bl-muted);line-height:1.7;
	text-align:justify;
	-webkit-hyphens:auto;
	hyphens:auto;          
	overflow-wrap:break-word;
	display:-webkit-box;
	-webkit-line-clamp:5;
	line-clamp:5;
	-webkit-box-orient:vertical;
	overflow:hidden;
}
.products-page .product-description p{margin:0 0 8px}
.products-page .product-description p:last-child{margin-bottom:0}
.products-page .product-description ul,
.products-page .product-description ol{margin:0 0 8px;padding-left:18px}
.products-page .product-description li{margin-bottom:4px}

.products-page .product-footer{
	display:flex;align-items:center;justify-content:flex-end;
	margin-top:auto;padding-top:16px;
}
.products-page .btn-details{
	display:inline-block;background:var(--bl-green);color:#fff;border:1px solid var(--bl-green);
	padding:7px 18px;border-radius:100px;
	font-size:11px;font-weight:700;letter-spacing:.02em;text-decoration:none;cursor:pointer;
	transition:all .3s ease;
}

/* Descricao na pagina de detalhe do produto */
.product-content .col-md-7{text-align:justify}

.products-page .pagination{margin:40px 0 0}

.products-page .products-empty{
	grid-column:1 / -1;text-align:center;color:var(--bl-muted);
	padding:50px 20px;font-size:17px;
}

@media (max-width:991px){
	.products-page .products-layout{flex-direction:column}

	.products-page .filter-sidebar{
		position:static;
		order:-1;flex:none;
		width:100%;
		margin:0;
		padding:0 0 4px;
	}
	.products-page .filter-head{padding-left:0;margin-bottom:10px}
	.products-page .nav-prod{
		display:grid;
		grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
		gap:8px;
		padding-bottom:6px;
	}
	.products-page .nav-prod li,
	.products-page ul.nav-pills.nav-prod > li{width:100%;margin:0}
	.products-page .nav-prod li a{
		justify-content:center;
		padding:9px 12px;border-radius:100px;
		white-space:nowrap;text-align:center;
	}
	.products-page .nav-prod li a::after{display:none}
	.products-page .filter-sidebar .nav-prod li a:hover{transform:translateY(-3px)}
}

@media (max-width:575px){
	.products-page .product-grid{grid-template-columns:1fr;gap:20px}
	.products-page .product-card{max-width:420px;margin:0 auto}
	.products-page .product-content .product-title{font-size:18px}
	.produtos-hero-inner{padding:52px 24px 46px}
}
.btn-details:hover,
.btn-details:focus {
    background: var(--bl-green-soft);
    color: #fff;
    text-decoration: none;
}