![]()
/* ============ SHARED BASE ============ */
.crpr-blog,
.crpr-blog *,
.crpr-blog *::before,
.crpr-blog *::after{ box-sizing:border-box; }
.crpr-blog{ width:100%; font-family:inherit; -webkit-font-smoothing:antialiased; }
.fl-module-html .fl-module-content:has(.crpr-blog){ margin:0 !important; }
.crpr-wrap{
position:relative;
width:100%;
max-width:1180px;
margin:0 auto;
padding-left:24px;
padding-right:24px;
}
.crpr-accent{ color:#1FA97A; }
/* ===================== POST HERO ===================== */
.crpr-post-hero{
position:relative;
overflow:hidden;
padding:clamp(30px,4vw,54px) 0 clamp(26px,3.5vw,42px);
background:#F7FAF8;
}
.crpr-post-hero::before{
content:””;
position:absolute;
top:-190px; right:-130px;
width:430px; height:430px;
border-radius:50%;
background:radial-gradient(circle,rgba(112,250,188,.24) 0%,rgba(112,250,188,0) 70%);
pointer-events:none;
}
/* Everything in the hero sits on a narrower measure than the grid */
.crpr-post-hero .crpr-wrap{ max-width:820px; }
/* ———- Back link ———- */
.crpr-back{
display:inline-flex;
align-items:center;
gap:7px;
margin:0 0 22px;
color:#54646E !important;
font-size:13.5px;
font-weight:600;
text-decoration:none !important;
transition:color .18s ease;
}
.crpr-back svg{ width:15px; height:15px; flex:0 0 auto; transition:transform .18s ease; }
.crpr-back:hover{ color:#0B1F3A !important; }
.crpr-back:hover svg{ transform:translateX(-3px); }
.crpr-back:focus-visible{ outline:2px solid #0B1F3A; outline-offset:3px; border-radius:3px; }
/* ———- Category chips ———- */
.crpr-post-cats{
display:flex;
flex-wrap:wrap;
gap:7px;
margin:0 0 16px;
}
.crpr-post-cats a{
display:inline-block;
padding:5px 12px;
border:1px solid rgba(11,31,58,.10);
border-radius:999px;
background:#fff;
color:#1FA97A !important;
font-size:11.5px;
font-weight:700;
letter-spacing:.02em;
line-height:1.4;
text-decoration:none !important;
transition:border-color .18s ease, background .18s ease;
}
.crpr-post-cats a:hover{ border-color:#70FABC; background:#EEFCF5; }
/* ———- Title ———- */
.crpr-post-title{
margin:0 0 16px !important;
color:#0B1F3A !important;
font-size:clamp(27px,4vw,45px) !important;
font-weight:800 !important;
line-height:1.12 !important;
letter-spacing:-.025em;
}
/* ———- Meta ———- */
.crpr-post-meta{
display:flex;
flex-wrap:wrap;
align-items:center;
gap:2px;
color:#6B7B85;
font-size:13.5px;
font-weight:600;
line-height:1.5;
}
.crpr-post-meta a{ color:#1FA97A !important; text-decoration:none !important; }
.crpr-post-meta a:hover{ text-decoration:underline !important; }
.crpr-meta-sep{ margin:0 8px; color:rgba(11,31,58,.25); }
/* ———- Featured image ———- */
.crpr-post-figure{
margin:clamp(26px,3.5vw,40px) 0 0 !important;
padding:0 !important;
overflow:hidden;
border:1px solid rgba(11,31,58,.08);
border-radius:16px;
background:#0B1F3A;
aspect-ratio:16 / 9;
box-shadow:0 8px 28px rgba(11,31,58,.08);
}
.crpr-post-figure img{
width:100% !important;
height:100% !important;
max-width:none !important;
display:block;
object-fit:cover;
border-radius:0 !important;
}
@media (max-width:767px){
.crpr-wrap{ padding-left:20px; padding-right:20px; }
.crpr-post-figure{ border-radius:13px; aspect-ratio:4 / 3; }
.crpr-back{ margin-bottom:18px; }
}
/* ============================================================
POST BODY TYPOGRAPHY
Give the ROW holding your Content module the class:
crpr-post-body (Advanced tab → Class)
============================================================ */
.crpr-post-body{
background:#F7FAF8;
padding-top:clamp(28px,3.5vw,44px) !important;
padding-bottom:clamp(36px,4.5vw,60px) !important;
}
.crpr-post-body .fl-row-content{
max-width:820px !important;
margin:0 auto;
}
.crpr-post-body .fl-rich-text,
.crpr-post-body .fl-module-content{
color:#3E4E58;
font-size:17px;
line-height:1.78;
}
.crpr-post-body p{
margin:0 0 22px;
color:#3E4E58;
font-size:17px;
line-height:1.78;
}
.crpr-post-body h2{
margin:42px 0 14px;
color:#0B1F3A;
font-size:clamp(22px,2.6vw,29px);
font-weight:800;
line-height:1.25;
letter-spacing:-.02em;
}
.crpr-post-body h3{
margin:32px 0 12px;
color:#0B1F3A;
font-size:clamp(18px,2vw,22px);
font-weight:700;
line-height:1.3;
}
.crpr-post-body h4{
margin:26px 0 10px;
color:#0B1F3A;
font-size:17px;
font-weight:700;
}
.crpr-post-body a{
color:#1FA97A;
text-decoration:none;
border-bottom:1px solid rgba(31,169,122,.35);
transition:border-color .18s ease;
}
.crpr-post-body a:hover{ border-bottom-color:#1FA97A; }
.crpr-post-body ul,
.crpr-post-body ol{
margin:0 0 22px;
padding-left:22px;
}
.crpr-post-body li{
margin:0 0 9px;
color:#3E4E58;
font-size:17px;
line-height:1.72;
}
.crpr-post-body li::marker{ color:#1FA97A; }
.crpr-post-body blockquote{
margin:30px 0;
padding:20px 24px;
border:0;
border-left:3px solid #70FABC;
border-radius:0 12px 12px 0;
background:#fff;
color:#0B1F3A;
font-size:18px;
font-style:normal;
line-height:1.65;
}
.crpr-post-body blockquote p:last-child{ margin-bottom:0; }
.crpr-post-body img{
max-width:100%;
height:auto;
border-radius:12px;
}
.crpr-post-body figcaption{
margin-top:9px;
color:#6B7B85;
font-size:13px;
text-align:center;
}
.crpr-post-body hr{
margin:36px 0;
border:0;
border-top:1px solid rgba(11,31,58,.10);
}
.crpr-post-body table{
width:100%;
margin:0 0 24px;
border-collapse:collapse;
font-size:15px;
}
.crpr-post-body th,
.crpr-post-body td{
padding:11px 14px;
border:1px solid rgba(11,31,58,.10);
text-align:left;
}
.crpr-post-body th{ background:#fff; color:#0B1F3A; font-weight:700; }
@media (max-width:767px){
.crpr-post-body p,
.crpr-post-body li{ font-size:16px; }
.crpr-post-body blockquote{ font-size:16.5px; padding:17px 19px; }
}
@media (prefers-reduced-motion:reduce){
.crpr-back svg{ transition:none; }
.crpr-back:hover svg{ transform:none; }
}
The 30-Day Guarantee
Reading about it is one thing. Ranking is another.
Book a free strategy call and we’ll map out exactly where your brand is invisible —
across search, AI assistants, Maps, and media — and what it takes to fix it.
- Featured in Forbes or USA Today within 30 days — or we keep working at no extra cost.
- One partner for PR, AI search, Maps, and ads instead of four separate vendors.
- Market exclusivity: one practice per market, so competitors can’t hire us.
/* —- shared base (safe to repeat) —- */
.crpr-blog,
.crpr-blog *,
.crpr-blog *::before,
.crpr-blog *::after{ box-sizing:border-box; }
.crpr-blog{ width:100%; }
.crpr-wrap{
position:relative;
width:100%;
max-width:1180px;
margin:0 auto;
padding-left:24px;
padding-right:24px;
}
.crpr-narrow{ max-width:820px; }
.crpr-post-end{
padding:0 0 clamp(44px,5.5vw,70px);
background:#F7FAF8;
}
/* ===================== AUTHOR BOX ===================== */
.crpr-author{
display:flex;
align-items:flex-start;
gap:18px;
padding:22px;
border:1px solid rgba(11,31,58,.08);
border-radius:14px;
background:#fff;
box-shadow:0 2px 12px rgba(11,31,58,.05);
}
.crpr-author-avatar{
flex:0 0 auto;
width:56px;
height:56px;
overflow:hidden;
border-radius:50%;
background:#EEFCF5;
}
.crpr-author-avatar img{
width:100% !important;
height:100% !important;
display:block;
object-fit:cover;
border-radius:50% !important;
}
.crpr-author-label{
margin:0 0 3px !important;
color:#1FA97A !important;
font-size:11.5px !important;
font-weight:700 !important;
letter-spacing:.04em;
line-height:1.3 !important;
}
.crpr-author-name{
margin:0 0 7px !important;
color:#0B1F3A !important;
font-size:17px !important;
font-weight:700 !important;
line-height:1.3 !important;
}
.crpr-author-name a{ color:#0B1F3A !important; text-decoration:none !important; }
.crpr-author-name a:hover{ color:#1FA97A !important; }
.crpr-author-bio{
margin:0 !important;
color:#54646E !important;
font-size:14.5px !important;
line-height:1.65 !important;
}
/* ===================== SHARE ROW ===================== */
.crpr-share{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:space-between;
gap:14px;
margin-top:18px;
padding:16px 22px;
border:1px solid rgba(11,31,58,.08);
border-radius:14px;
background:#fff;
}
.crpr-share-label{
color:#0B1F3A;
font-size:13.5px;
font-weight:700;
}
.crpr-share-links{ display:flex; gap:8px; }
.crpr-share-btn{
display:inline-flex;
align-items:center;
justify-content:center;
width:36px;
height:36px;
border:1px solid rgba(11,31,58,.12);
border-radius:9px;
background:#fff;
color:#0B1F3A !important;
text-decoration:none !important;
transition:background .18s ease, border-color .18s ease, color .18s ease;
}
.crpr-share-btn svg{ width:16px; height:16px; }
.crpr-share-btn:hover{
border-color:#70FABC;
background:#EEFCF5;
color:#1FA97A !important;
}
.crpr-share-btn:focus-visible{ outline:2px solid #0B1F3A; outline-offset:2px; }
/* ===================== CTA ===================== */
.crpr-cta-card{
position:relative;
overflow:hidden;
display:grid;
grid-template-columns:1.15fr .85fr;
gap:38px;
align-items:center;
margin-top:clamp(30px,4vw,48px);
padding:clamp(24px,3.2vw,42px) clamp(20px,3.2vw,40px);
border-radius:18px;
background:#0B1F3A;
}
.crpr-cta-card::after{
content:””;
position:absolute;
right:-120px; bottom:-150px;
width:380px; height:380px;
border-radius:50%;
background:radial-gradient(circle,rgba(112,250,188,.20) 0%,rgba(112,250,188,0) 70%);
pointer-events:none;
}
.crpr-cta-left,
.crpr-cta-points{ position:relative; z-index:1; }
.crpr-cta-badge{
display:inline-flex;
align-items:center;
gap:8px;
margin:0 0 17px;
padding:7px 14px;
border:1px solid rgba(112,250,188,.32);
border-radius:999px;
background:rgba(112,250,188,.08);
color:#70FABC;
font-size:12.5px;
font-weight:700;
line-height:1.2;
}
.crpr-cta-badge svg{ width:15px; height:15px; flex:0 0 auto; }
.crpr-cta-title{
margin:0 0 13px !important;
color:#ffffff !important;
font-size:clamp(21px,2.6vw,31px) !important;
font-weight:800 !important;
line-height:1.2 !important;
letter-spacing:-.02em;
}
.crpr-cta-body{
margin:0 !important;
max-width:54ch;
color:#C6D3DE !important;
font-size:clamp(14.5px,1.1vw,16px) !important;
line-height:1.7 !important;
}
.crpr-cta-actions{
display:flex;
flex-wrap:wrap;
align-items:center;
gap:20px;
margin-top:25px;
}
.crpr-cta-btn{
display:inline-flex;
align-items:center;
gap:9px;
padding:13px 23px;
border-radius:9px;
background:#70FABC;
color:#0B1F3A !important;
font-size:14.5px;
font-weight:700;
line-height:1.2;
text-decoration:none !important;
transition:background .18s ease, transform .18s ease;
}
.crpr-cta-btn svg{ width:15px; height:15px; flex:0 0 auto; }
.crpr-cta-btn:hover{ background:#8FFFCE; transform:translateY(-2px); }
.crpr-cta-btn:focus-visible{ outline:2px solid #fff; outline-offset:3px; }
.crpr-cta-mail{
color:#70FABC !important;
font-size:14.5px;
font-weight:600;
text-decoration:none !important;
border-bottom:1px solid rgba(112,250,188,.35);
padding-bottom:2px;
}
.crpr-cta-mail:hover{ border-bottom-color:#70FABC; }
.crpr-cta-points{
margin:0 !important;
padding:0 !important;
list-style:none !important;
}
.crpr-cta-points li{
display:flex;
gap:12px;
margin:0 !important;
padding:14px 0;
color:#D7E2EA;
font-size:14.5px;
line-height:1.6;
list-style:none !important;
border-top:1px solid rgba(255,255,255,.10);
}
.crpr-cta-points li:first-child{ border-top:0; padding-top:0; }
.crpr-cta-points li:last-child{ padding-bottom:0; }
.crpr-cta-dot{
flex:0 0 auto;
width:7px; height:7px;
margin-top:8px;
border-radius:50%;
background:#70FABC;
}
/* ===================== RESPONSIVE ===================== */
@media (max-width:1023px){
.crpr-cta-card{ grid-template-columns:1fr; gap:26px; }
}
@media (max-width:767px){
.crpr-wrap{ padding-left:20px; padding-right:20px; }
.crpr-author{ flex-direction:column; gap:14px; padding:19px; }
.crpr-share{ justify-content:flex-start; padding:15px 19px; }
.crpr-cta-card{ border-radius:15px; }
.crpr-cta-actions{ gap:15px; margin-top:22px; }
.crpr-cta-btn{ width:100%; justify-content:center; }
.crpr-cta-mail{ width:100%; }
.crpr-cta-points li{ font-size:14px; padding:13px 0; }
}
@media (prefers-reduced-motion:reduce){
.crpr-cta-btn{ transition:none; }
.crpr-cta-btn:hover{ transform:none; }
}