133 lines
3.2 KiB
CSS
133 lines
3.2 KiB
CSS
/* ============================================================
|
|
CTA COMPONENT
|
|
Centered call-to-action section with background treatment
|
|
============================================================ */
|
|
|
|
.cta-section {
|
|
padding: 6rem 0;
|
|
background-color: var(--cta-bg);
|
|
background-image: var(--cta-gradient);
|
|
position: relative;
|
|
overflow: hidden;
|
|
transition: background-color 0.4s ease;
|
|
}
|
|
|
|
/* ── Background decoration ─────────────────────────────── */
|
|
.cta-section::before,
|
|
.cta-section::after {
|
|
content: '';
|
|
position: absolute;
|
|
border-radius: 50%;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.cta-section::before {
|
|
width: 500px; height: 500px;
|
|
background: radial-gradient(circle, var(--color-primary-soft) 0%, transparent 70%);
|
|
top: -200px; left: -100px;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.cta-section::after {
|
|
width: 400px; height: 400px;
|
|
background: radial-gradient(circle, var(--color-accent-soft) 0%, transparent 70%);
|
|
bottom: -150px; right: -50px;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.cta-inner {
|
|
text-align: center;
|
|
max-width: 680px;
|
|
margin: 0 auto;
|
|
position: relative;
|
|
z-index: 1;
|
|
}
|
|
|
|
/* ── Label ─────────────────────────────────────────────── */
|
|
.cta-label {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
font-size: 0.78rem;
|
|
font-weight: 700;
|
|
letter-spacing: 0.1em;
|
|
text-transform: uppercase;
|
|
color: var(--color-primary);
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
/* ── Headline ──────────────────────────────────────────── */
|
|
.cta-title {
|
|
font-family: var(--font-heading);
|
|
font-size: clamp(2rem, 4.5vw, 3.2rem);
|
|
font-weight: 900;
|
|
color: var(--color-heading);
|
|
line-height: 1.12;
|
|
letter-spacing: -0.025em;
|
|
margin-bottom: 1.25rem;
|
|
}
|
|
|
|
.cta-title em {
|
|
font-style: normal;
|
|
color: var(--color-primary);
|
|
}
|
|
|
|
.cta-subtitle {
|
|
font-size: 1.05rem;
|
|
color: var(--color-text-muted);
|
|
line-height: 1.75;
|
|
margin-bottom: 2.5rem;
|
|
max-width: 500px;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
/* ── Actions ───────────────────────────────────────────── */
|
|
.cta-actions {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 1rem;
|
|
flex-wrap: wrap;
|
|
margin-bottom: 2rem;
|
|
}
|
|
|
|
/* ── Trust line ────────────────────────────────────────── */
|
|
.cta-trust {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 1.5rem;
|
|
flex-wrap: wrap;
|
|
}
|
|
|
|
.cta-trust-item {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.4rem;
|
|
font-size: 0.82rem;
|
|
color: var(--color-text-muted);
|
|
font-weight: 500;
|
|
}
|
|
|
|
.cta-trust-item svg {
|
|
width: 14px; height: 14px;
|
|
stroke: var(--color-primary);
|
|
fill: none;
|
|
stroke-width: 2.5;
|
|
stroke-linecap: round;
|
|
stroke-linejoin: round;
|
|
}
|
|
|
|
.cta-divider {
|
|
width: 4px; height: 4px;
|
|
border-radius: 50%;
|
|
background-color: var(--color-border);
|
|
}
|
|
|
|
@media (max-width: 480px) {
|
|
.cta-divider {
|
|
display: none;
|
|
}
|
|
}
|