.cclc-hero{
	position:relative;
	width:100%;
	height:var(--cclc-height,900px);
	overflow:hidden;
	background:#111;
	isolation:isolate;
}
.cclc-stage,.cclc-slide{position:absolute;inset:0}
.cclc-slide{
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity var(--cclc-transition,650ms) ease,visibility var(--cclc-transition,650ms) ease;
	color:var(--cclc-text-color,#fff);
}
.cclc-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:2}
.cclc-bg,.cclc-bg img{position:absolute;inset:0;width:100%;height:100%}
.cclc-bg img{object-fit:cover;object-position:var(--cclc-pos-x,50%) var(--cclc-pos-y,50%)}
.cclc-overlay{position:absolute;inset:0;background:rgba(0,0,0,var(--cclc-overlay,0));z-index:1}
.cclc-copy{
	position:absolute;
	z-index:3;
	left:clamp(32px,4vw,72px);
	top:50%;
	transform:translateY(-50%);
	width:min(var(--cclc-text-width,620px),calc(100% - 150px));
	text-shadow:0 2px 18px rgba(0,0,0,.18);
}
.cclc-eyebrow{
	font:700 clamp(17px,1.45vw,28px)/1.1 Georgia,"Times New Roman",serif;
	letter-spacing:.01em;
	margin:0 0 18px;
}
.cclc-title{
	font:700 clamp(48px,5vw,96px)/.96 Georgia,"Times New Roman",serif;
	letter-spacing:-.02em;
	margin:0 0 28px;
	color:inherit;
	text-transform:uppercase;
	max-width:100%;
}
.cclc-description{
	font:500 clamp(15px,1.05vw,20px)/1.6 Arial,Helvetica,sans-serif;
	max-width:540px;
	margin:0 0 34px;
}
.cclc-description p{margin:0}
.cclc-cta{
	display:inline-flex;
	align-items:center;
	gap:16px;
	color:inherit;
	text-decoration:none;
	font:600 14px/1 Arial,Helvetica,sans-serif;
	transition:opacity .2s ease;
}
.cclc-cta:hover{opacity:.78;color:inherit}
.cclc-arrow{
	position:relative;
	width:48px;
	height:1px;
	background:currentColor;
	display:inline-block;
}
.cclc-arrow:after{
	content:"";
	position:absolute;
	right:0;
	top:50%;
	width:8px;
	height:8px;
	border-top:1px solid currentColor;
	border-right:1px solid currentColor;
	transform:translateY(-50%) rotate(45deg);
}
.cclc-next-preview{
	position:absolute;
	z-index:4;
	top:0;
	right:0;
	width:min(18vw,290px);
	height:100%;
	overflow:hidden;
	background:#15100c;
}
.cclc-next-preview:after{
	content:"";
	position:absolute;
	inset:0;
	background:rgba(26,12,4,.42);
	pointer-events:none;
}
.cclc-next-preview img{
	width:100%;
	height:100%;
	object-fit:cover;
	filter:blur(8px);
	transform:scale(1.06);
	opacity:.84;
}
.cclc-dots{
	position:absolute;
	z-index:7;
	right:clamp(24px,3.2vw,58px);
	top:50%;
	transform:translateY(-50%);
	display:flex;
	flex-direction:column;
	gap:18px;
}
.cclc-dot{
	appearance:none;
	border:0;
	background:none;
	padding:0;
	margin:0;
	color:rgba(255,255,255,.55);
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:10px;
	font:600 14px/1 Arial,Helvetica,sans-serif;
	cursor:pointer;
	min-width:62px;
}
.cclc-dot .cclc-line{
	width:0;
	height:1px;
	background:#fff;
	transition:width .25s ease;
}
.cclc-dot.is-active{color:#fff}
.cclc-dot.is-active .cclc-line{width:44px}
.cclc-socials{
	position:absolute;
	z-index:6;
	left:clamp(32px,4vw,72px);
	bottom:22px;
	display:flex;
	gap:14px;
}
.cclc-socials a{
	color:#fff;
	text-decoration:none;
	font:700 10px/1 Arial,Helvetica,sans-serif;
	letter-spacing:.14em;
	opacity:.9;
}
.cclc-nav{
	position:absolute;
	z-index:8;
	top:50%;
	transform:translateY(-50%);
	width:42px;
	height:52px;
	border:1px solid rgba(255,255,255,.35);
	background:rgba(0,0,0,.12);
	color:#fff;
	font-size:30px;
	line-height:1;
	cursor:pointer;
	opacity:0;
	transition:opacity .2s ease,background .2s ease;
}
.cclc-hero:hover .cclc-nav,.cclc-nav:focus{opacity:1}
.cclc-prev{left:10px}
.cclc-next{right:calc(min(18vw,290px) + 10px)}
.cclc-nav:hover{background:rgba(0,0,0,.35)}
@media(max-width:1024px){
	.cclc-next-preview{width:150px}
	.cclc-next{right:160px}
	.cclc-copy{width:calc(100% - 220px)}
	.cclc-title{font-size:clamp(46px,7vw,72px)}
}
@media(max-width:767px){
	.cclc-hero{height:var(--cclc-height-mobile,760px)}
	.cclc-next-preview{display:none}
	.cclc-copy{
		left:24px;
		right:24px;
		top:auto;
		bottom:100px;
		transform:none;
		width:auto;
		max-width:none;
	}
	.cclc-eyebrow{font-size:16px;margin-bottom:12px}
	.cclc-title{font-size:clamp(38px,13vw,62px);margin-bottom:18px}
	.cclc-description{font-size:14px;line-height:1.55;margin-bottom:24px;max-width:90%}
	.cclc-dots{
		right:18px;
		top:26px;
		transform:none;
		flex-direction:row;
		gap:10px;
	}
	.cclc-dot{min-width:auto;font-size:11px;gap:5px}
	.cclc-dot .cclc-line{display:none}
	.cclc-socials{left:24px;bottom:24px;gap:10px}
	.cclc-nav{display:none}
}
@media(prefers-reduced-motion:reduce){
	.cclc-slide{transition:none}
}

/* v1.0.1 */
.cclc-hero.is-single .cclc-next-preview,
.cclc-hero.is-single .cclc-dots,
.cclc-hero.is-single .cclc-nav{display:none!important}
.cclc-hero.is-single .cclc-copy{width:min(var(--cclc-text-width,620px),calc(100% - 100px))}
.cclc-hero.has-arrows .cclc-prev{left:20px}
.cclc-hero.has-arrows .cclc-next{right:calc(min(18vw,290px) + 20px)}
@media(max-width:1024px){
	.cclc-hero.has-arrows .cclc-next{right:170px}
}
@media(max-width:767px){
	.cclc-bg img{object-position:var(--cclc-mobile-pos-x,var(--cclc-pos-x,50%)) var(--cclc-mobile-pos-y,var(--cclc-pos-y,50%))}
	.cclc-hero.is-single .cclc-copy{width:auto}
}


/* v1.0.2 — force true full-bleed image coverage */
.cclc-stage,
.cclc-slide{
	width:100%!important;
	height:100%!important;
}

.cclc-bg{
	display:block!important;
	position:absolute!important;
	inset:0!important;
	width:100%!important;
	height:100%!important;
	overflow:hidden!important;
	margin:0!important;
	padding:0!important;
}

.cclc-bg img{
	display:block!important;
	position:absolute!important;
	inset:0!important;
	width:100%!important;
	height:100%!important;
	min-width:100%!important;
	min-height:100%!important;
	max-width:none!important;
	max-height:none!important;
	margin:0!important;
	padding:0!important;
	object-fit:cover!important;
	object-position:var(--cclc-pos-x,50%) var(--cclc-pos-y,50%)!important;
}

@media(max-width:767px){
	.cclc-bg img{
		object-position:var(--cclc-mobile-pos-x,var(--cclc-pos-x,50%)) var(--cclc-mobile-pos-y,var(--cclc-pos-y,50%))!important;
	}
}


/* v1.0.3 — next-slide preview is optional and OFF by default */
.cclc-next-preview{
	display:none!important;
}
.cclc-hero.has-preview .cclc-next-preview{
	display:block!important;
}
.cclc-dots{
	right:clamp(24px,3vw,52px);
}
.cclc-hero.has-preview .cclc-dots{
	right:clamp(24px,3.2vw,58px);
}
.cclc-hero:not(.has-preview) .cclc-copy{
	width:min(var(--cclc-text-width,620px),calc(100% - 150px));
}
.cclc-hero:not(.has-preview).has-arrows .cclc-next{
	right:20px;
}
@media(max-width:1024px){
	.cclc-hero.has-preview .cclc-next-preview{width:150px}
	.cclc-hero.has-preview.has-arrows .cclc-next{right:170px}
}
@media(max-width:767px){
	.cclc-hero.has-preview .cclc-next-preview{display:none!important}
	.cclc-dots{right:18px}
}
