SEO PROCESS
How the work gets done.
A clear sequence with check-ins and approval points at every stage.
Audit
Technical crawl, content review,
competitor landscape and a baseline
of your current search visibility.
Prioritise
A focused roadmap ranked by likely
impact and effort, aligned to the
pages that drive inquiries or sales.
Implement
Technical fixes, on-page improvements,
local optimization and content
production — documented as we go.
Measure & refine
Monthly reporting on rankings,
organic traffic and conversions,
with the next round of priorities.
/* ======================================
PROCESS SECTION
====================================== */
.process-section,
.process-section * {
box-sizing: border-box;
}
.process-section {
--process-purple: #7928d5;
--process-pink: #c01fe0;
position: relative;
isolation: isolate;
width: 100%;
padding: 60px 34px 50px;
overflow: hidden;
color: #ffffff;
/* Use the WordPress theme's typography */
font-family: inherit;
font-size: inherit;
font-weight: inherit;
line-height: inherit;
background:
radial-gradient(
ellipse at 5% 100%,
rgba(106, 35, 185, 0.48),
transparent 48%
),
radial-gradient(
ellipse at 100% 0%,
rgba(119, 24, 151, 0.40),
transparent 45%
),
linear-gradient(
115deg,
#170a2d 0%,
#210b38 55%,
#290c3d 100%
);
}
.process-section::before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
pointer-events: none;
background-image:
linear-gradient(
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
),
linear-gradient(
90deg,
rgba(255, 255, 255, 0.035) 1px,
transparent 1px
);
background-size: 56px 56px;
}
.process-container {
width: 100%;
max-width: 1216px;
margin: 0 auto;
}
/* ======================================
HEADING & BADGE
====================================== */
.process-heading {
margin: 0 0 62px;
text-align: center;
}
.process-section .process-badge {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 9px;
padding: 8px 15px;
border-radius: 30px;
background: rgba(195, 145, 232, 0.16);
color: #dca5f3;
font-family: inherit;
font-size: 12px;
font-weight: 800;
line-height: 1.2;
letter-spacing: 2px;
text-transform: uppercase;
}
.process-section .badge-dot {
display: block;
flex: 0 0 6px;
width: 6px;
height: 6px;
border-radius: 50%;
background: #dca5f3;
animation: process-blink 1.5s ease-in-out infinite;
}
@keyframes process-blink {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.35;
}
}
.process-section .process-heading h2 {
margin: 16px 0 14px;
padding: 0;
color: #ffffff;
font-family: inherit;
font-size: clamp(30px, 3.2vw, 44px);
font-weight: 750;
line-height: 1.2;
letter-spacing: -1.4px;
}
.process-section .process-heading > p {
max-width: 850px;
margin: 0 auto;
padding: 0;
color: #c8badc;
font-family: inherit;
font-size: 16px;
font-weight: inherit;
line-height: 1.75;
}
/* ======================================
FOUR-COLUMN LAYOUT
====================================== */
.process-steps {
position: relative;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 24px;
}
.process-line {
position: absolute;
z-index: 0;
top: 35px;
left: 12.5%;
right: 12.5%;
height: 4px;
border-radius: 5px;
background: linear-gradient(
90deg,
#7732dc 0%,
#a92ae3 65%,
#cf22dc 100%
);
}
.process-step {
position: relative;
z-index: 1;
min-width: 0;
text-align: center;
}
/* ======================================
ICON CONTAINERS
====================================== */
.process-section .process-icon-wrap {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 82px;
height: 82px;
margin: 0 auto 22px;
border-radius: 25px;
background: rgba(111, 37, 180, 0.10);
transition: transform 0.25s ease;
}
.process-section .process-icon {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 64px;
width: 64px;
height: 64px;
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 17px;
background: linear-gradient(
135deg,
#7730d7,
#bd20d7
);
box-shadow: 0 0 22px rgba(167, 34, 225, 0.15);
}
.process-section .step-number {
position: absolute;
top: 1px;
right: -1px;
display: flex;
align-items: center;
justify-content: center;
width: 29px;
height: 29px;
border-radius: 50%;
background: #ffffff;
color: #4e1696;
font-family: inherit;
font-size: 12px;
font-weight: 800;
line-height: 1;
box-shadow: 0 0 0 3px rgba(33, 11, 56, 0.55);
}
/* All CSS icons use predictable dimensions */
.process-section .css-icon {
position: relative;
display: block;
flex: 0 0 30px;
width: 30px;
height: 30px;
}
/* ======================================
ICON 1: COMPASS
====================================== */
.process-section .compass-icon {
width: 25px;
height: 25px;
flex-basis: 25px;
border: 2px solid #ffffff;
border-radius: 50%;
transform: rotate(-12deg);
}
.process-section .compass-needle {
position: absolute;
left: 7px;
top: 3px;
width: 0;
height: 0;
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-bottom: 15px solid #ffffff;
transform: rotate(25deg);
}
.process-section .compass-center {
position: absolute;
left: 8px;
top: 10px;
width: 5px;
height: 5px;
border-radius: 50%;
background: #dca5f3;
}
/* ======================================
ICON 2: TARGET
====================================== */
.process-section .target-icon {
display: block;
}
.process-section .target-ring {
position: absolute;
top: 50%;
left: 50%;
display: block;
border: 2px solid #ffffff;
border-radius: 50%;
transform: translate(-50%, -50%);
}
.process-section .target-ring-outer {
width: 30px;
height: 30px;
}
.process-section .target-ring-middle {
width: 20px;
height: 20px;
}
.process-section .target-ring-inner {
width: 8px;
height: 8px;
background: #ffffff;
}
/* ======================================
ICON 3: ROCKET
====================================== */
.process-section .rocket-icon {
transform: rotate(38deg);
}
.process-section .rocket-body {
position: absolute;
left: 10px;
top: 4px;
width: 12px;
height: 21px;
border: 2px solid #ffffff;
border-radius: 80% 80% 45% 45%;
}
.process-section .rocket-nose {
position: absolute;
left: 12px;
top: 1px;
width: 8px;
height: 8px;
border-top: 2px solid #ffffff;
border-left: 2px solid #ffffff;
transform: rotate(45deg);
}
.process-section .rocket-window {
position: absolute;
left: 13px;
top: 10px;
width: 6px;
height: 6px;
border: 1.5px solid #ffffff;
border-radius: 50%;
}
.process-section .rocket-fin {
position: absolute;
top: 17px;
width: 8px;
height: 8px;
border: 2px solid #ffffff;
}
.process-section .rocket-fin-left {
left: 4px;
border-right: 0;
border-radius: 4px 0 0 5px;
}
.process-section .rocket-fin-right {
right: 3px;
border-left: 0;
border-radius: 0 4px 5px 0;
}
.process-section .rocket-flame {
position: absolute;
left: 14px;
bottom: -3px;
width: 5px;
height: 7px;
border: 1.5px solid #dca5f3;
border-radius: 0 0 50% 50%;
}
/* ======================================
ICON 4: ANALYTICS CHART
====================================== */
.process-section .chart-icon {
width: 30px;
height: 30px;
}
.process-section .chart-axis {
position: absolute;
left: 2px;
bottom: 2px;
width: 26px;
height: 25px;
border-left: 2px solid #ffffff;
border-bottom: 2px solid #ffffff;
}
.process-section .chart-line {
position: absolute;
height: 2px;
background: #ffffff;
transform-origin: left center;
border-radius: 2px;
}
.process-section .chart-line-one {
left: 6px;
top: 18px;
width: 9px;
transform: rotate(-45deg);
}
.process-section .chart-line-two {
left: 12px;
top: 12px;
width: 8px;
transform: rotate(25deg);
}
.process-section .chart-line-three {
left: 19px;
top: 15px;
width: 11px;
transform: rotate(-48deg);
}
.process-section .chart-line-four {
display: none;
}
.process-section .chart-point {
position: absolute;
z-index: 2;
width: 4px;
height: 4px;
border-radius: 50%;
background: #ffffff;
}
.process-section .chart-point-one {
left: 5px;
top: 17px;
}
.process-section .chart-point-two {
left: 12px;
top: 10px;
}
.process-section .chart-point-three {
left: 18px;
top: 13px;
}
.process-section .chart-point-four {
left: 25px;
top: 5px;
}
/* ======================================
STEP TEXT — THEME FONT INHERITANCE
====================================== */
.process-section .process-step h3 {
margin: 0 0 13px;
padding: 0;
color: #ffffff;
font-family: inherit;
font-size: 20px;
font-weight: 750;
line-height: 1.3;
letter-spacing: -0.5px;
}
.process-section .process-step p {
max-width: 290px;
margin: 0 auto;
padding: 0;
color: #c7b9db;
font-family: inherit;
font-size: 15.5px;
font-weight: inherit;
line-height: 1.8;
overflow-wrap: break-word;
}
/* ======================================
HOVER
====================================== */
@media (hover: hover) {
.process-section .process-step:hover .process-icon-wrap {
transform: translateY(-5px);
}
.process-section .process-step:hover .process-icon {
box-shadow: 0 0 28px rgba(188, 39, 230, 0.38);
}
}
/* ======================================
TABLET
====================================== */
@media (max-width: 900px) {
.process-section {
padding: 70px 24px;
}
.process-heading {
margin-bottom: 48px;
}
.process-steps {
grid-template-columns: repeat(2, minmax(0, 1fr));
column-gap: 28px;
row-gap: 42px;
}
.process-line {
display: none;
}
.process-section .process-step p {
max-width: 310px;
font-size: 15px;
}
}
/* ======================================
MOBILE
====================================== */
@media (max-width: 520px) {
.process-section {
padding: 56px 20px;
}
.process-heading {
margin-bottom: 38px;
}
.process-section .process-badge {
padding: 8px 12px;
font-size: 10px;
letter-spacing: 1.7px;
}
.process-section .process-heading h2 {
font-size: 31px;
line-height: 1.22;
letter-spacing: -0.8px;
}
.process-section .process-heading > p {
font-size: 14px;
line-height: 1.75;
}
.process-steps {
grid-template-columns: minmax(0, 1fr);
gap: 34px;
}
.process-section .process-icon-wrap {
margin-bottom: 15px;
}
.process-section .process-step h3 {
margin-bottom: 8px;
font-size: 19px;
}
.process-section .process-step p {
max-width: 330px;
font-size: 14px;
line-height: 1.75;
}
}
/* Accessibility */
@media (prefers-reduced-motion: reduce) {
.process-section *,
.process-section *::before,
.process-section *::after {
animation: none !important;
transition: none !important;
}
}
/* Inherit Elementor Kit typography */
.process-section,
.process-section h2,
.process-section h3,
.process-section p,
.process-section .process-badge,
.process-section .step-number {
font-family: inherit !important;
}
/* Elementor global heading typography */
.process-section h2,
.process-section h3 {
font-size: revert !important;
font-weight: revert !important;
line-height: revert !important;
letter-spacing: revert !important;
}
/* Elementor global body typography */
.process-section p {
font-size: revert !important;
font-weight: revert !important;
line-height: revert !important;
letter-spacing: revert !important;
}
.process-section .process-badge {
font-family: inherit !important;
font-size: inherit !important;
font-weight: inherit !important;
letter-spacing: inherit !important;
text-transform: uppercase;
}
.process-section .process-heading h2 {
font-size: 32px !important;
line-height: 1.2 !important;
}
@media (max-width: 520px) {
.process-section .process-heading h2 {
font-size: 24px !important;
}
}
.process-section .process-badge {
font-size: 12px !important;
padding: 6px 12px !important;
gap: 7px !important;
letter-spacing: 1px !important;
}