/* ACTS Footer — reference-matched footer layout */

.cew-site-footer{
	--cew-footer-cols:6;
	width:100%;
	background:#FAFAF8;
	color:#171717;
}

.cew-site-footer,
.cew-site-footer *{
	box-sizing:border-box;
}

.cew-site-footer-inner{
	width:100%;
	max-width:1440px;
	margin:0 auto;
	padding:24px 24px 22px;
}

.cew-site-footer-top{
	display:grid;
	grid-template-columns:auto minmax(0,1fr);
	align-items:start;
	gap:112px;
	width:100%;
}

.cew-footer-apps{
	display:flex;
	align-items:flex-start;
	gap:11px;
	flex:0 0 auto;
}

.cew-footer-stores{
	display:grid;
	gap:8px;
}

.cew-footer-store,
.cew-footer-qr{
	display:block;
	line-height:0;
	text-decoration:none;
}

.cew-footer-store img,
.cew-footer-qr img{
	display:block;
	height:auto;
	max-width:100%;
	transition:opacity .2s ease;
}

.cew-footer-store img{
	width:134px;
}

.cew-footer-qr img{
	width:99px;
}

.cew-footer-columns{
	min-width:0;
	align-items:start;
}

.cew-footer-layout-grid .cew-footer-columns{
	display:grid;
	grid-template-columns:repeat(var(--cew-footer-cols),minmax(0,1fr));
	column-gap:40px;
	row-gap:28px;
}

.cew-footer-layout-grid .cew-footer-column{
	width:auto!important;
	max-width:none!important;
	flex:none!important;
	min-width:0;
}

.cew-footer-layout-custom .cew-footer-columns{
	display:flex;
	flex-wrap:wrap;
	gap:18px;
}

.cew-footer-layout-custom .cew-footer-column{
	flex:0 0 var(--cew-footer-col-width);
	max-width:var(--cew-footer-col-width);
	min-width:0;
}

.cew-footer-column.cew-align-left{text-align:left}
.cew-footer-column.cew-align-center{text-align:center}
.cew-footer-column.cew-align-right{text-align:right}

.cew-footer-column-title,
.cew-footer-column-title-link{
	display:block;
	margin:0 0 14px;
	padding:0;
	color:#9B9B98;
	font-size:12px;
	line-height:1.2;
	font-weight:400;
	letter-spacing:.02em;
	text-transform:uppercase;
	text-decoration:none;
}

.cew-footer-links{
	display:grid;
	gap:12px;
}

.cew-footer-links>a,
.cew-footer-menu a{
	color:#171717;
	text-decoration:none;
	font-size:14px;
	line-height:1.3;
	font-weight:400;
	transition:color .2s ease;
}

.cew-footer-menu{
	display:grid;
	gap:12px;
	list-style:none;
	margin:0;
	padding:0;
}

.cew-footer-menu li{
	margin:0;
	padding:0;
}

/* Bottom — deliberately no divider by default to match the reference. */
.cew-site-footer-bottom{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:42px;
	margin-top:112px;
	padding-top:0;
	border-top:0 solid #E5E7E2;
}

.cew-site-footer.has-bottom-divider .cew-site-footer-bottom{
	border-top-width:1px;
}

.cew-footer-bottom-left{
	display:grid;
	gap:14px;
	min-width:0;
	max-width:760px;
}

.cew-footer-brand{
	display:inline-flex;
	width:max-content;
	max-width:100%;
	color:inherit;
	text-decoration:none;
	line-height:0;
}

.cew-footer-brand img{
	display:block;
	width:208px;
	height:auto;
	max-width:100%;
}

.cew-footer-tagline{
	max-width:650px;
	color:#333;
	font-size:14px;
	line-height:1.4;
	font-weight:400;
}

.cew-footer-bottom-right{
	display:grid;
	gap:10px;
	justify-items:end;
	align-content:end;
}

.cew-footer-social{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:8px;
	flex-wrap:wrap;
}

.cew-footer-social a{
	--cew-social-bg:#E6E8E3;
	--cew-social-color:#111111;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:32px;
	padding:0;
	background:var(--cew-social-bg);
	color:var(--cew-social-color);
	text-decoration:none;
	transition:background .2s ease,color .2s ease,transform .2s ease;
}

.cew-footer-social a:hover{
	transform:translateY(-1px);
}

.cew-footer-social a i{
	font-size:15px;
}

.cew-footer-social a svg{
	display:block;
	width:15px;
	height:15px;
	fill:currentColor;
}

.cew-footer-copyright{
	color:#A3A3A0;
	font-size:12px;
	line-height:1.3;
	font-weight:400;
	text-align:right;
	white-space:nowrap;
}

@media(max-width:1100px){
	.cew-site-footer-top{
		grid-template-columns:1fr;
		gap:44px;
	}

	.cew-footer-layout-grid .cew-footer-columns{
		--cew-footer-cols:3;
		column-gap:28px;
	}

	.cew-site-footer-bottom{
		margin-top:70px;
	}
}

@media(max-width:700px){
	.cew-site-footer-inner{
		padding:30px 18px 22px;
	}

	.cew-footer-apps{
		flex-wrap:wrap;
	}

	.cew-footer-layout-grid .cew-footer-columns{
		--cew-footer-cols:2;
		column-gap:20px;
	}

	.cew-site-footer-bottom{
		align-items:flex-start;
		flex-direction:column;
		margin-top:52px;
	}

	.cew-footer-bottom-right{
		justify-items:start;
	}

	.cew-footer-social{
		justify-content:flex-start;
	}

	.cew-footer-copyright{
		text-align:left;
		white-space:normal;
	}
}

@media(max-width:420px){
	.cew-footer-layout-grid .cew-footer-columns{
		--cew-footer-cols:1;
	}
}


/* Mobile-only brand placement:
 * reference order = Logo + tagline → app/QR → lists → socials/copyright.
 */
.cew-footer-mobile-brand{
	display:none;
}

@media(max-width:700px){
	.cew-site-footer-top{
		display:flex;
		flex-direction:column;
		gap:28px;
	}

	.cew-footer-mobile-brand{
		display:grid;
		gap:8px;
		width:100%;
		order:-10;
	}

	.cew-footer-mobile-brand .cew-footer-brand{
		display:inline-flex;
	}

	.cew-footer-mobile-brand .cew-footer-tagline{
		margin:0;
		max-width:100%;
	}

	/* The desktop brand stays in its original bottom-left location only
	   on larger screens; mobile uses the duplicated brand above. */
	.cew-site-footer-bottom .cew-footer-bottom-left{
		display:none!important;
	}

	.cew-site-footer-bottom{
		margin-top:20px!important;
		gap:10px;
	}

	.cew-footer-bottom-right{
		width:100%;
		justify-items:center;
	}

	.cew-footer-social{
		justify-content:center;
	}

	.cew-footer-copyright{
		width:100%;
		text-align:center;
	}
}
