.sh-cf{
	background:#fdfbf7;
	padding:64px clamp(20px,5vw,64px) 72px;
	font-family:'Inter', sans-serif;
}

.sh-cf-intro{
	text-align:center;
	max-width:560px;
	margin:0 auto 44px;
}
.sh-cf-intro .eyebrow{
	color:var(--sh-accent-red); font-size:.85rem; font-weight:700;
	text-transform:uppercase; letter-spacing:.04em; margin-bottom:10px;
}
.sh-cf-intro h2{
	font-family:'Fraunces', serif; font-weight:500; font-size:clamp(1.6rem,3.4vw,2.2rem);
	color:#1c130d; line-height:1.25;
}

.sh-cf-steps{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:22px;
	max-width:1000px;
	margin:0 auto;
}

.sh-cf-step{
	background:#fff;
	border:1px solid #ece6da;
	border-radius:16px;
	padding:34px 26px 30px;
	text-align:center;
	position:relative;
	box-shadow:0 10px 28px rgba(20,15,10,.05);
	transition:transform .2s ease, box-shadow .2s ease;
}
.sh-cf-step:hover{
	transform:translateY(-3px);
	box-shadow:0 16px 36px rgba(20,15,10,.1);
}
.sh-cf-icon{
	font-size:2.4rem;
	margin-bottom:14px;
}
.sh-cf-number{
	position:absolute;
	top:-14px;
	left:50%;
	transform:translateX(-50%);
	width:30px; height:30px;
	background:var(--sh-accent-red);
	color:#fff;
	border-radius:50%;
	font-size:.85rem;
	font-weight:700;
	display:flex; align-items:center; justify-content:center;
	box-shadow:0 4px 10px rgba(193,57,31,.3);
}
.sh-cf-step h3{
	font-family:'Fraunces', serif; font-weight:500; font-size:1.15rem;
	color:#1c130d; margin-bottom:8px;
}
.sh-cf-step p{
	color:#5a5148; font-size:.9rem; line-height:1.55;
}
.sh-cf-step-link{
	display:inline-block; margin-top:10px;
	color:var(--sh-accent-red); text-decoration:none;
	font-size:.85rem; font-weight:600;
}
.sh-cf-step-link:hover{ text-decoration:underline; }

.sh-cf-cta{
	text-align:center;
	margin-top:36px;
}
.sh-cf-btn{
	display:inline-block;
	background:var(--sh-accent-red) !important;
	color:#fff !important;
	text-decoration:none;
	font-weight:600;
	font-size:.95rem;
	padding:13px 30px;
	border-radius:100px;
	transition:background .2s ease;
}
.sh-cf-btn:hover{ background:var(--sh-accent-red-hover) !important; }

@media (max-width:820px){
	.sh-cf-steps{ grid-template-columns:1fr; max-width:400px; gap:28px; }
}
