: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;
}
.cp-company em{font-style:italic;font-weight:500;color:var(--bl-green)}
.strong{
	color:var(--bl-green);
}
body{
	margin:0;
	background:var(--bl-cream);
	color:var(--bl-ink);
	font-family:"Hanken Grotesk",-apple-system,Segoe UI,Roboto,sans-serif;
	-webkit-font-smoothing:antialiased;
}

.company-carousel{
	margin:0 0 40px
}
.company-carousel + .page-top{
	margin-top:0
}
.company-carousel .banner-carousel{
	height:640px;
	overflow:hidden;
	position:relative;
}
.company-carousel .banner-slide{
	position:relative
}
.company-carousel .banner-media,
.company-carousel .banner-media img{
	width:100%;height:100%;display:block;
}
.company-carousel .banner-media img{
	object-fit:cover
}
.company-carousel .banner-carousel::after{ 
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	height:120px;
	background:linear-gradient(to top,rgba(0,61,46,.35),transparent);
	pointer-events:none;
}
.company-carousel .banner-arrow{
	width:52px;height:52px;border-radius:50%;
	background:rgba(0,88,67,.82);color:#fff;border:none;
	display:flex;align-items:center;justify-content:center;
	font-size:26px;line-height:1;cursor:pointer;z-index:3;
	transition:background .3s ease,transform .3s ease;
	position:absolute;top:50%;transform:translateY(-50%);
}
.company-carousel .banner-arrow:hover{background:var(--bl-green-dark);transform:translateY(-50%) scale(1.06)}
.company-carousel .banner-prev{left:22px}
.company-carousel .banner-next{right:22px}
.company-carousel .banner-dots{
	position:absolute;left:0;right:0;bottom:22px;z-index:3;
	display:flex;justify-content:center;gap:10px;
}
.company-carousel .banner-dot{
	width:9px;height:9px;border-radius:50%;padding:0;border:none;cursor:pointer;
	background:rgba(255,255,255,.55);transition:background .3s ease,width .3s ease;
}
.company-carousel .banner-dot.is-active{background:var(--bl-butter);width:26px;border-radius:100px}

@media (max-width:991px){.company-carousel .banner-carousel{height:420px}}
@media (max-width:767px){
	.company-carousel .banner-carousel{height:300px}
	.company-carousel .banner-arrow{width:44px;height:44px;font-size:22px}
	.company-carousel .banner-prev{left:12px}
	.company-carousel .banner-next{right:12px}
}

.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)}

.cp-intro{max-width:1180px;margin:0 auto;padding:20px 24px 10px}
.cp-head{max-width:660px;margin:0 auto 46px;text-align: center}
.cp-head .cp-eyebrow{justify-content:center}

.cp-story{
	display:grid;grid-template-columns:1.55fr .95fr;gap:48px;align-items:start;
}
.cp-story-lead p{
	font-size:17px;line-height:1.75;color:#3c4a42;margin:0 0 20px;
}
.cp-story-lead p:first-child{
	font-family:"Fraunces",serif;font-weight:500;font-size:clamp(19px,2.2vw,23px);
	line-height:1.5;color:var(--bl-ink);
}
.cp-story-lead--center{
	grid-column:1 / -1;max-width:800px;margin:0 auto;text-align:justify;
}
.cp-story-lead--center p:first-child{text-align:center}

.cp-facts{
	background:#fff;border:1px solid #e6ebe9;border-radius:20px;
	padding:10px 26px;
}
.cp-fact{padding:22px 0;border-bottom:1px solid var(--bl-line)}
.cp-fact:last-child{border-bottom:none}
.cp-fact-num{
	display:block;font-family:"Fraunces",serif;font-weight:600;font-style:italic;
	font-size:30px;line-height:1;color:var(--bl-green);
}
.cp-fact-label{
	display:block;margin-top:8px;font-size:12px;font-weight:700;letter-spacing:.12em;
	text-transform:uppercase;color:var(--bl-muted);
}

.cp-heritage{background:var(--bl-green);color:#fff;margin-top:90px;overflow:hidden}
.cp-heritage-inner{
	max-width:1180px;margin:0 auto;padding:66px 24px;
	display:grid;grid-template-columns:auto 1px 1fr;gap:44px;align-items:center;
}
.cp-year{
	font-family:"Fraunces",serif;font-weight:600;font-style:italic;
	font-size:clamp(60px,9vw,100px);line-height:.9;color:#fff;
}
.cp-year small{
	display:block;font-family:"Hanken Grotesk",sans-serif;font-style:normal;
	font-weight:700;font-size:13px;letter-spacing:.24em;text-transform:uppercase;
	color:rgba(255,255,255,.7);margin-top:10px;
}
.cp-hdivider{width:1px;height:100%;background:rgba(255,255,255,.18)}
.cp-heritage h3{
	font-family:"Fraunces",serif;font-weight:500;
	font-size:clamp(22px,3vw,30px);line-height:1.25;margin:0 0 14px;color:#fff;
}
.cp-heritage p{margin:0;font-size:16px;line-height:1.7;color:rgba(255,255,255,.82);max-width:620px}

.cp-values{max-width:1180px;margin:0 auto;padding:84px 24px 40px}
.cp-values .cp-head{margin-bottom:44px}
.cp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.cp-card{
	background:#fff;border:1px solid #e6ebe9;border-radius:18px;padding:30px 24px;
	text-align:center;
	transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease;
}
.cp-card:hover{
	transform:translateY(-6px);border-color:var(--bl-green-soft);
	box-shadow:0 16px 30px rgba(18,107,83,.14);
}
.cp-seal{
	width:72px;height:72px;border-radius:50%;margin:0 auto 18px;
	display:flex;align-items:center;justify-content:center;
	background:rgb(0 88 67 / 88%);position:relative;
	transition:background .35s ease,transform .5s cubic-bezier(.2,.7,.2,1);
}
.cp-seal::after{
	content:"";position:absolute;inset:2px;border-radius:50%;
	border:4.5px dashed rgba(255,255,255,.32);transition:transform .8s ease;
}
.cp-seal .fa{font-size:26px;color:#fff}
.cp-card:hover .cp-seal{background:var(--bl-green-dark);transform:scale(1.05)}
.cp-card:hover .cp-seal::after{transform:rotate(-18deg)}
.cp-card-title{
	font-family:"Fraunces",serif;font-weight:600;font-size:19px;
	margin:0 0 8px;color:var(--bl-ink);
}
.cp-card-text{margin:0;font-size:14.5px;line-height:1.6;color:var(--bl-muted)}

.cp-produtos{max-width:1180px;margin:0 auto;padding:44px 24px 40px}
.cp-produtos .cp-head{margin-bottom:44px}
.cp-prod-grid{
	display:grid;grid-template-columns:repeat(8,1fr);gap:18px;
}
.cp-prod-card{
	position:relative;
	display:flex;flex-direction:column;align-items:center;justify-content:center;
	text-align:center;gap:7px;padding:13px;
	background:#fff;border:1px solid #e6ebe9;border-radius:16px;
	text-decoration:none;color:inherit;
	transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease;
}
.cp-prod-card:hover,.cp-prod-card:focus-visible{
	transform:translateY(-6px);border-color:var(--bl-green-soft);
	box-shadow:0 14px 26px rgba(18,107,83,.16);outline:none;text-decoration:none;
}
.cp-prod-card .cp-seal{margin:0}
.cp-prod-card:hover .cp-seal{background:var(--bl-green-dark);transform:scale(1.05)}
.cp-prod-card:hover .cp-seal::after{transform:rotate(-18deg)}
.cp-prod-name{
	font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;
	margin:0;color:#a6bbae;transition:color .35s ease;
}
.cp-prod-card:hover .cp-prod-name,.cp-prod-card:focus-visible .cp-prod-name{color:#126b53}
.cp-prod-card.is-more{background:#fbfaf6}
@media (max-width:991px){.cp-prod-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:560px){.cp-prod-grid{grid-template-columns:repeat(2,1fr)}}

.cp-cta{background:var(--bl-cream-2);margin-top:0px}
.cp-cta-inner{
	max-width:1180px;margin:0 auto;padding:64px 24px;
	display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;
}
.cp-cta-inner h3{
	font-family:"Fraunces",serif;font-weight:600;
	font-size:clamp(23px,3.2vw,34px);line-height:1.12;margin:0;color:var(--bl-ink);max-width:640px;
}
.cp-cta-btns{display:flex;gap:14px;flex-wrap:wrap}
.cp-btn{
	display:inline-flex;align-items:center;justify-content:center;
	text-decoration:none;font-weight:700;font-size:14px;letter-spacing:.02em;
	padding:15px 28px;border-radius:100px;transition:all .3s ease;
}
.cp-btn--solid{background:var(--bl-green);color:#fff}
.cp-btn--solid:hover{background:var(--bl-green-dark);transform:translateY(-2px)}
.cp-btn--ghost{background:transparent;color:var(--bl-green);border:1.5px solid var(--bl-green)}
.cp-btn--ghost:hover{transform:translateY(-2px)}

@media (prefers-reduced-motion:no-preference){
	.cp-card{opacity:0;transform:translateY(16px);animation:cpUp .6s cubic-bezier(.2,.7,.2,1) forwards}
	.cp-card:nth-child(1){animation-delay:.05s}
	.cp-card:nth-child(2){animation-delay:.12s}
	.cp-card:nth-child(3){animation-delay:.19s}
	.cp-card:nth-child(4){animation-delay:.26s}
	@keyframes cpUp{to{opacity:1;transform:none}}
}

@media (max-width:900px){
	.cp-story{grid-template-columns:1fr;gap:30px}
	.cp-heritage-inner{grid-template-columns:1fr;gap:24px;text-align:center}
	.cp-hdivider{display:none}
	.cp-grid{grid-template-columns:repeat(2,1fr)}
	.cp-cta-inner{flex-direction:column;text-align:center}
	.cp-cta-btns{justify-content:center}
}
@media (max-width:520px){
	.cp-grid{grid-template-columns:1fr}
}

.bv-zigzag{max-width:1180px;margin:0 auto;padding:20px 24px 40px}
.bv-block{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:40px 0}
.bv-block--flip .bv-img-wrap{order:2}
.bv-block--flip .bv-txt{order:1}
.bv-img-wrap{position:relative;padding:14px}
.bv-frame{position:relative;border-radius:18px;overflow:hidden;background:#fff;border:1px solid #e6ebe9;aspect-ratio:4/3}
.bv-frame img{display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease,transform 5s ease;position:absolute;inset:0}
.bv-frame img.is-active{opacity:1;transform:scale(1.03)}
.bv-frame img.is-active{cursor:zoom-in}
.bv-zigzag .bv-frame{cursor:zoom-in;box-shadow:0 4px 14px rgba(33,48,39,.08);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.bv-zigzag .bv-frame::after{content:"Ampliar foto";position:absolute;right:14px;bottom:14px;z-index:1;padding:9px 14px;border-radius:999px;background:rgba(0,61,46,.88);color:#fff;font:600 12px/1.2 "Hanken Grotesk",sans-serif;letter-spacing:.04em;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.bv-zigzag .bv-frame img.is-active{transition:opacity .6s ease,transform .35s ease}
.bv-zigzag .bv-frame:hover{transform:translateY(-3px);border-color:var(--bl-green-soft);box-shadow:0 12px 26px rgba(0,61,46,.18)}
.bv-zigzag .bv-frame:hover img.is-active{transform:scale(1.07)}
.bv-zigzag .bv-frame:hover::after{opacity:1;transform:translateY(0)}
.bv-lightbox{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:48px 90px;background:rgba(8,14,11,.94)}
.bv-lightbox.is-open{display:flex}
.bv-lightbox-content{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.bv-lightbox-image{display:block;max-width:100%;max-height:calc(100vh - 100px);width:auto;height:auto;object-fit:contain;box-shadow:0 16px 60px rgba(0,0,0,.35)}
.bv-lightbox-close,.bv-lightbox-arrow{position:absolute;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;color:#fff;background:rgba(255,255,255,.16);cursor:pointer;transition:background .2s ease,transform .2s ease}
.bv-lightbox-close:hover,.bv-lightbox-arrow:hover{background:rgba(255,255,255,.3);transform:scale(1.06)}
.bv-lightbox-close{top:20px;right:24px;width:48px;height:48px;font-size:36px;line-height:1}
.bv-lightbox-arrow{top:50%;width:54px;height:54px;font-size:46px;line-height:1;transform:translateY(-50%)}
.bv-lightbox-arrow:hover{transform:translateY(-50%) scale(1.06)}
.bv-lightbox-prev{left:24px}
.bv-lightbox-next{right:24px}
.bv-lightbox-counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:#fff;font:600 14px/1.4 "Hanken Grotesk",sans-serif;letter-spacing:.08em}
.bv-lightbox button:focus-visible{outline:2px solid #E7B84C;outline-offset:4px}
.bv-dots{position:absolute;z-index:2;display:flex;gap:10px}
.bv-dots--bottom{bottom:-6px;left:50%;transform:translateX(-50%);flex-direction:row}
.bv-dots--right{top:50%;right:-6px;transform:translateY(-50%);flex-direction:column}
.bv-dots--left{top:50%;left:-6px;transform:translateY(-50%);flex-direction:column}
.bv-dot{width:16px;height:16px;border-radius:50%;background:#b4b2a9;opacity:.45;cursor:pointer;border:none;padding:0;transition:all .3s ease}
.bv-dot:hover{opacity:.7;transform:scale(1.15)}
.bv-dot.is-active{opacity:1;background:var(--bl-green,#005843)}
.bv-line{position:absolute;background:#DCD3C0;opacity:.3;width:50px;height:1px;top:50%}
.bv-line--right{right:-56px}
.bv-line--left{left:-56px}
.bv-txt{padding:0 8px}
.bv-eyebrow{display:block;font-family:"Fraunces",serif;font-style:italic;font-weight:500;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--bl-green,#005843);margin-bottom:6px}
.bv-title{font-family:"Fraunces",serif;font-weight:500;font-size:26px;line-height:1.15;color:var(--bl-ink,#213027);margin:0 0 14px}
.bv-body{font-family:"Hanken Grotesk",sans-serif;font-size:16px;line-height:1.75; text-align: center; color:var(--bl-muted,#6E7C74);margin:0;min-height:80px;transition:opacity .4s ease}
.bv-divider{border:none;height:1px;background:#DCD3C0;margin:0;opacity:.5}
@media(max-width:900px){
  .bv-block{grid-template-columns:1fr;gap:20px;padding:30px 0}
  .bv-block--flip .bv-img-wrap{order:0}
  .bv-block--flip .bv-txt{order:1}
  .bv-txt{padding:0}
  .bv-line{display:none}
}
@media(max-width:600px){
  .bv-zigzag{padding:10px 16px 30px}
  .bv-title{font-size:22px}
  .bv-lightbox{padding:64px 52px}
  .bv-lightbox-image{max-height:calc(100vh - 140px)}
  .bv-lightbox-close{top:12px;right:12px;width:42px;height:42px;font-size:32px}
  .bv-lightbox-arrow{width:40px;height:40px;font-size:36px}
  .bv-lightbox-prev{left:8px}
  .bv-lightbox-next{right:8px}
  .bv-lightbox-counter{bottom:14px}
  .bv-body{
	font-size:15px;
	
}
}
.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}
/* Política da Qualidade */
.cp-policy{position:relative;margin-top:30px;background:var(--bl-green-dark);color:#fff;overflow:hidden}
.cp-policy-bg{position:absolute;inset:0;pointer-events:none;
	background:
		radial-gradient(circle at 12% 20%,rgba(47,142,116,.45),transparent 45%),
		radial-gradient(circle at 90% 85%,rgba(231,184,76,.18),transparent 40%);}
.cp-policy-bg::before,.cp-policy-bg::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(255,255,255,.14)}
.cp-policy-bg::before{width:420px;height:420px;top:-160px;right:-120px}
.cp-policy-bg::after{width:260px;height:260px;bottom:-110px;left:-70px}
.cp-policy-inner{position:relative;max-width:1180px;margin:0 auto;padding:84px 24px 90px}
.cp-policy-head{text-align:center;margin:0 auto 54px;max-width:660px}
.cp-policy-head .cp-eyebrow{justify-content:center;color:var(--bl-butter)}
.cp-policy-head .cp-eyebrow::before,.cp-policy-head .cp-eyebrow::after{background:var(--bl-butter)}
.cp-policy-head .cp-title{color:#fff;margin:0}
.cp-policy-head .cp-title em{color:var(--bl-butter)}
.cp-policy-text{max-width:760px;margin:0 auto;text-align:center}
.cp-policy-text p{margin:0 0 22px;font-family:"Fraunces",serif;font-size:clamp(18px,2.2vw,24px);line-height:1.6;color:rgba(255,255,255,.92)}
.cp-policy-text p:last-child{margin-bottom:0}
@media (max-width:900px){
	.cp-policy-inner{padding:64px 20px 70px}
}
