
.tsr-cta-editorial{
	margin:32px 0;
	padding:28px;
	border-radius:22px;
	background:
		radial-gradient(circle at top right, rgba(255,255,255,.8), rgba(255,255,255,0) 30%),
		linear-gradient(135deg,#fff7ef 0%,#ffffff 100%);
	border:1px solid rgba(0,0,0,.08);
	box-shadow:0 15px 35px rgba(0,0,0,.08);
	position:relative;
	overflow:hidden;
}

.tsr-cta-editorial::before{
	content:"";
	position:absolute;
	right:-60px;
	bottom:-60px;
	width:160px;
	height:160px;
	border-radius:50%;
	background:radial-gradient(circle, rgba(155,28,28,.08) 0%, rgba(155,28,28,0) 70%);
	pointer-events:none;
}

.tsr-cta-eyebrow{
	display:inline-block;
	margin-bottom:10px;
	padding:6px 10px;
	border-radius:999px;
	background:rgba(0,0,0,.05);
	font-size:12px;
	text-transform:uppercase;
	letter-spacing:.08em;
	font-weight:700;
	color:#5b4035;
}

.tsr-cta-title{
	margin:0 0 10px;
	font-size:clamp(26px,3vw,34px);
	line-height:1.15;
	letter-spacing:-.02em;
	color:#1a1a1a;
}

.tsr-cta-text{
	margin:0 0 18px;
	max-width:64ch;
	font-size:16px;
	line-height:1.6;
	color:#4c403a;
}

.tsr-cta-button{
	display:inline-flex;
	align-items:center;
	gap:10px;
	padding:14px 20px;
	border-radius:999px;
	background:#1a1a1a;
	color:#fff !important;
	text-decoration:none !important;
	font-weight:700;
	transition:transform .2s ease, box-shadow .2s ease, gap .2s ease, background .2s ease;
	box-shadow:0 10px 22px rgba(26,26,26,.18);
	position:relative;
	z-index:1;
}

.tsr-cta-button:hover,
.tsr-cta-button:focus{
	transform:translateY(-2px);
	background:#333;
	gap:14px;
	box-shadow:0 14px 28px rgba(26,26,26,.22);
}

.tsr-cta-arrow{
	font-size:18px;
	line-height:1;
}

@media (max-width:680px){
	.tsr-cta-editorial{
		padding:22px 18px;
		border-radius:18px;
	}
	.tsr-cta-title{
		font-size:28px;
	}
	.tsr-cta-text{
		font-size:15px;
	}
}
