.elementor-22 .elementor-element.elementor-element-e8fa698{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-42da307{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-908571a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-aa3da48{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-cd358ef{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-7085c15{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22 .elementor-element.elementor-element-fb90763{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-e8fa698 *//* ============================================================
   CPR HOMEPAGE — HERO SECTION (CSS ONLY)
   
   PASTE THIS INTO Appearance → Customize → Additional CSS
   
   ADD IT BELOW the header and footer CSS you already have.
   Do not replace anything — just scroll to the bottom and paste.
   ============================================================ */
 
.cpr-hero {
  position: relative;
  background: #0D1B3D;
  color: #fff;
  overflow: hidden;
  min-height: 560px;
  padding: 80px 32px 100px;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-hero-bg {
  position: absolute;
  inset: 0;
  background-image: url('http://cpr.brianfordaz.com/wp-content/uploads/2026/05/ChatGPT-Image-May-22-2026-04_34_57-PM.png');
  background-size: cover;
  background-position: center right;
  opacity: 0.35;
  z-index: 1;
}
 
.cpr-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #0D1B3D 0%, rgba(13,27,61,0.92) 35%, rgba(13,27,61,0.55) 60%, transparent 100%);
  z-index: 2;
}
 
.cpr-hero-inner {
  position: relative;
  z-index: 3;
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  align-items: center;
}
 
.cpr-hero-text {
  max-width: 600px;
}
 
.cpr-hero-h1 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(56px, 8vw, 108px);
  line-height: 0.9;
  letter-spacing: 0.005em;
  text-transform: uppercase;
  margin: 0 0 24px;
  color: #fff;
}
 
.cpr-hero-num {
  color: #D71920;
  display: inline-block;
  position: relative;
}
 
.cpr-hero-num::after {
  content: "TH";
  font-size: 0.35em;
  letter-spacing: 0;
  color: #fff;
  position: absolute;
  top: 0.1em;
  right: -1.3em;
}
 
.cpr-hero-ekg {
  margin: 18px 0 22px;
  max-width: 320px;
  display: block;
}
 
.cpr-hero-tag {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(20px, 2vw, 26px);
  letter-spacing: 0.05em;
  margin-bottom: 16px;
  line-height: 1.15;
  color: #fff;
}
 
.cpr-hero-tag-red {
  color: #E84A50;
}
 
.cpr-hero-lede {
  font-size: 16px;
  line-height: 1.65;
  color: rgba(255,255,255,0.88);
  max-width: 520px;
  margin: 0 0 30px;
}
 
.cpr-hero-lede strong {
  color: #fff;
  font-weight: 700;
}
 
.cpr-hero-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}
 
.cpr-hero-cta-primary {
  background: #D71920;
  color: #fff;
  padding: 16px 26px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 13px;
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 2px solid #D71920;
  text-decoration: none;
  transition: all 0.2s;
}
 
.cpr-hero-cta-primary:hover {
  background: #A8121A;
  border-color: #A8121A;
  color: #fff;
}
 
.cpr-hero-cta-outline {
  background: transparent;
  color: #fff;
  padding: 16px 26px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-size: 13px;
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 2px solid #fff;
  text-decoration: none;
  transition: all 0.2s;
}
 
.cpr-hero-cta-outline:hover {
  background: #fff;
  color: #0D1B3D;
}
 
/* Responsive */
@media (max-width: 900px) {
  .cpr-hero {
    padding: 60px 24px 80px;
    min-height: 0;
  }
  .cpr-hero-inner {
    grid-template-columns: 1fr;
  }
  .cpr-hero-overlay {
    background: linear-gradient(180deg, rgba(13,27,61,0.85), rgba(13,27,61,0.6));
  }
}
 
@media (max-width: 600px) {
  .cpr-hero {
    padding: 50px 18px 70px;
  }
  .cpr-hero-cta-primary,
  .cpr-hero-cta-outline {
    width: 100%;
    justify-content: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-239ea9f *//* ============================================================
   CPR HOMEPAGE — TRUST BAR (CSS ONLY)
   
   PASTE THIS INTO Appearance → Customize → Additional CSS
   
   ADD IT BELOW the hero CSS you already have.
   Just scroll to the bottom and paste.
   ============================================================ */
 
.cpr-trust-wrap {
  background: #fff;
  padding: 0 32px;
  position: relative;
  margin-top: -50px;
  z-index: 10;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-trust-bar {
  max-width: 1400px;
  margin: 0 auto;
  background: #fff;
  box-shadow: 0 16px 40px rgba(13,27,61,0.14);
  border-radius: 4px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border: 1px solid #E5E7EB;
}
 
.cpr-trust-item {
  text-align: center;
  padding: 26px 18px;
  border-right: 1px solid #E5E7EB;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
 
.cpr-trust-item:last-child {
  border-right: none;
}
 
.cpr-trust-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  color: #D71920;
}
 
.cpr-trust-icon svg {
  width: 28px;
  height: 28px;
}
 
.cpr-trust-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0D1B3D;
  line-height: 1.3;
}
 
.cpr-trust-desc {
  font-size: 11px;
  color: #6D6E71;
  line-height: 1.5;
  font-weight: 500;
}
 
/* Responsive */
@media (max-width: 900px) {
  .cpr-trust-bar {
    grid-template-columns: repeat(2, 1fr);
  }
  .cpr-trust-item:nth-child(2n) {
    border-right: none;
  }
  .cpr-trust-item:not(:nth-last-child(-n+2)) {
    border-bottom: 1px solid #E5E7EB;
  }
  /* On mobile, the trust bar should NOT overlap — give the hero room */
  .cpr-trust-wrap {
    margin-top: 0;
    padding: 20px 18px 0;
  }
}
 
@media (max-width: 500px) {
  .cpr-trust-bar {
    grid-template-columns: 1fr;
  }
  .cpr-trust-item {
    border-right: none;
    border-bottom: 1px solid #E5E7EB;
  }
  .cpr-trust-item:last-child {
    border-bottom: none;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-908571a *//* ============================================================
   CPR HOMEPAGE — OWNER STORY (CSS ONLY)
   
   Paste below the trust bar CSS in Additional CSS.
   
   NOTE: The photo URLs are Unsplash placeholders, just like the
   hero was. Once Tim has real photos, swap the three URLs at
   the bottom of this file (search for "background-image").
   ============================================================ */
 
.cpr-owner {
  background: #fff;
  padding: 80px 32px 60px;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-owner-inner {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 60px;
  align-items: center;
}
 
.cpr-owner-eyebrow {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #D71920;
  margin-bottom: 12px;
}
 
.cpr-owner-h2 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(36px, 4.5vw, 58px);
  line-height: 0.95;
  letter-spacing: 0.005em;
  color: #0D1B3D;
  text-transform: uppercase;
  margin: 0 0 22px;
}
 
.cpr-owner-red {
  color: #D71920;
}
 
.cpr-owner-lede {
  font-size: 15px;
  line-height: 1.7;
  color: #4A5468;
  margin: 0 0 16px;
}
 
.cpr-owner-lede strong {
  color: #0D1B3D;
  font-weight: 700;
}
 
.cpr-owner-bullets {
  list-style: none;
  margin: 18px 0;
  padding: 0;
}
 
.cpr-owner-bullets li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 8px 0;
  font-size: 14px;
  color: #0D1B3D;
  font-weight: 600;
}
 
.cpr-owner-dot {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  background: #D71920;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  margin-top: 1px;
}
 
.cpr-owner-promise {
  background: #F5F6F8;
  padding: 16px 18px;
  margin: 16px 0;
  border-left: 3px solid #0D1B3D;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
  font-weight: 600;
  color: #0D1B3D;
}
 
.cpr-owner-promise-ico {
  flex-shrink: 0;
  color: #D71920;
  display: grid;
  place-items: center;
}
 
.cpr-owner-promise-ico svg {
  width: 18px;
  height: 18px;
}
 
.cpr-owner-close {
  font-size: 14px;
  line-height: 1.7;
  color: #4A5468;
  margin: 16px 0 0;
}
 
/* Photo collage */
.cpr-owner-photos {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 14px;
  position: relative;
  height: 560px;
}
 
.cpr-owner-photo {
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}
 
.cpr-owner-photo-main {
  grid-row: 1 / 3;
  background-image: url('https://images.unsplash.com/photo-1560250097-0b93528c311a?w=1000&q=80');
}
 
.cpr-owner-photo-fam {
  background-image: url('https://images.unsplash.com/photo-1609220136736-443140cffec6?w=900&q=80');
}
 
.cpr-owner-photo-tech {
  background-image: url('https://images.unsplash.com/photo-1581244277943-fe4a9c777189?w=900&q=80');
}
 
.cpr-owner-photo-tag {
  position: absolute;
  bottom: 14px;
  left: 14px;
  background: #0D1B3D;
  color: #fff;
  padding: 10px 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  line-height: 1.4;
  z-index: 2;
}
 
.cpr-owner-photo-star {
  color: #D71920;
  font-size: 14px;
}
 
/* Responsive */
@media (max-width: 1000px) {
  .cpr-owner-inner {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .cpr-owner-photos {
    height: 480px;
  }
}
 
@media (max-width: 700px) {
  .cpr-owner {
    padding: 60px 18px 40px;
  }
  .cpr-owner-photos {
    height: 420px;
    gap: 10px;
  }
  .cpr-owner-photo-tag {
    font-size: 9px;
    padding: 8px 10px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-aa3da48 *//* ============================================================
   CPR HOMEPAGE — IICRC TIMELINE (CSS ONLY)
   
   Paste below the owner story CSS in Additional CSS.
   ============================================================ */
 
.cpr-timeline {
  background: #0D1B3D;
  color: #fff;
  padding: 80px 32px;
  position: relative;
  overflow: hidden;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-timeline::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 50px 50px;
  pointer-events: none;
}
 
.cpr-timeline-inner {
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
 
.cpr-timeline-head {
  text-align: center;
  margin-bottom: 50px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
 
.cpr-timeline-h2 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(36px, 5vw, 64px);
  letter-spacing: 0.01em;
  line-height: 1;
  margin: 0 0 16px;
  text-transform: uppercase;
  color: #fff;
}
 
.cpr-timeline-red {
  color: #D71920;
}
 
.cpr-timeline-sub {
  font-size: 15px;
  line-height: 1.7;
  color: rgba(255,255,255,0.8);
  margin: 0;
}
 
.cpr-timeline-sub strong {
  color: #fff;
  font-weight: 700;
}
 
.cpr-timeline-ekg {
  margin: 30px auto 0;
  max-width: 1100px;
  opacity: 0.5;
  display: block;
}
 
.cpr-timeline-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  margin-top: 40px;
}
 
.cpr-timeline-cell {
  text-align: center;
  padding: 0 6px;
}
 
.cpr-timeline-icon {
  width: 56px;
  height: 56px;
  margin: 0 auto 16px;
  display: grid;
  place-items: center;
  border: 2px solid #D71920;
  border-radius: 50%;
  color: #D71920;
  background: rgba(215,25,32,0.08);
}
 
.cpr-timeline-icon svg {
  width: 28px;
  height: 28px;
}
 
.cpr-timeline-time {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 38px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.02em;
}
 
.cpr-timeline-unit {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.6);
  margin-bottom: 14px;
}
 
.cpr-timeline-event {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #E84A50;
  margin-bottom: 10px;
}
 
.cpr-timeline-detail {
  font-size: 12px;
  line-height: 1.65;
  color: rgba(255,255,255,0.75);
  margin: 0;
}
 
/* Responsive */
@media (max-width: 1000px) {
  .cpr-timeline-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 20px;
  }
}
 
@media (max-width: 600px) {
  .cpr-timeline {
    padding: 60px 18px;
  }
  .cpr-timeline-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-cd358ef *//* ============================================================
   CPR HOMEPAGE — SERVICES GRID (CSS ONLY)
   
   Paste below the timeline CSS in Additional CSS.
   
   NOTE: Image URLs for each card background are Unsplash
   placeholders. Search for "background-image" at the bottom to
   swap them when Tim's real photos are ready.
   ============================================================ */
 
.cpr-services {
  background: #fff;
  padding: 80px 32px;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-services-inner {
  max-width: 1400px;
  margin: 0 auto;
}
 
.cpr-services-head {
  text-align: center;
  margin-bottom: 36px;
  position: relative;
}
 
.cpr-services-h2 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(28px, 3.2vw, 38px);
  letter-spacing: 0.03em;
  color: #0D1B3D;
  text-transform: uppercase;
  display: inline-block;
  padding: 0 24px;
  margin: 0;
  position: relative;
}
 
.cpr-services-h2::before,
.cpr-services-h2::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 80px;
  height: 1px;
  background: #D71920;
}
 
.cpr-services-h2::before { left: -80px; }
.cpr-services-h2::after { right: -80px; }
 
.cpr-services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
 
.cpr-svc-card {
  background: #fff;
  border: 1px solid #E5E7EB;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: all 0.3s;
}
 
.cpr-svc-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(13,27,61,0.10);
}
 
.cpr-svc-img {
  aspect-ratio: 16/10;
  background-size: cover;
  background-position: center;
  position: relative;
}
 
.cpr-svc-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(13,27,61,0.5));
}
 
.cpr-svc-1 .cpr-svc-img {
  background-image: url('http://cpr.brianfordaz.com/wp-content/uploads/2026/05/CPR-Restoration-Water-Damage-Restoration.png');
}

.cpr-svc-2 .cpr-svc-img {
  background-image: url('http://cpr.brianfordaz.com/wp-content/uploads/2026/05/CPR-Restoration-Fire-Damage-Restoration-Services.png');
}

.cpr-svc-3 .cpr-svc-img {
  background-image: url('http://cpr.brianfordaz.com/wp-content/uploads/2026/05/CPR-Restoration-Mold-Remediation-Services.png');
}

.cpr-svc-4 .cpr-svc-img {
  background-image: url('http://cpr.brianfordaz.com/wp-content/uploads/2026/05/CPR-Restoration-Recon-Services.png');
}
 
.cpr-svc-badge {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 44px;
  height: 44px;
  background: #fff;
  border-radius: 50%;
  display: grid;
  place-items: center;
  z-index: 2;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
 
.cpr-svc-badge svg {
  width: 22px;
  height: 22px;
}
 
.cpr-svc-1 .cpr-svc-badge { color: #0072CE; }
.cpr-svc-2 .cpr-svc-badge { color: #D71920; }
.cpr-svc-3 .cpr-svc-badge { color: #2E7D32; }
.cpr-svc-4 .cpr-svc-badge { color: #0D1B3D; }
 
.cpr-svc-body {
  padding: 22px 22px 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
 
.cpr-svc-h3 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 22px;
  letter-spacing: 0.03em;
  color: #0D1B3D;
  line-height: 1.05;
  margin: 0 0 10px;
  text-transform: uppercase;
}
 
.cpr-svc-p {
  font-size: 13px;
  color: #4A5468;
  line-height: 1.6;
  margin: 0 0 16px;
  flex: 1;
}
 
.cpr-svc-link {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #D71920;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: gap 0.2s;
}
 
.cpr-svc-card:hover .cpr-svc-link {
  gap: 12px;
}
 
/* Responsive */
@media (max-width: 1000px) {
  .cpr-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
 
@media (max-width: 700px) {
  .cpr-services {
    padding: 60px 18px;
  }
  .cpr-services-h2::before,
  .cpr-services-h2::after {
    display: none;
  }
}
 
@media (max-width: 500px) {
  .cpr-services-grid {
    grid-template-columns: 1fr;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3f765fb *//* ============================================================
   CPR HOMEPAGE — PROCESS BAND (CSS ONLY)
   
   Paste below the services CSS in Additional CSS.
   ============================================================ */
 
.cpr-process {
  background: #0D1B3D;
  color: #fff;
  padding: 70px 32px;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-process-inner {
  max-width: 1400px;
  margin: 0 auto;
}
 
.cpr-process-head {
  text-align: center;
  margin-bottom: 40px;
}
 
.cpr-process-h2 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(28px, 3.4vw, 40px);
  letter-spacing: 0.04em;
  color: #fff;
  display: inline-block;
  padding: 0 20px;
  margin: 0;
  position: relative;
  text-transform: uppercase;
}
 
.cpr-process-h2::before,
.cpr-process-h2::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 60px;
  height: 1px;
  background: #D71920;
}
 
.cpr-process-h2::before { left: -60px; }
.cpr-process-h2::after { right: -60px; }
 
.cpr-process-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
  position: relative;
}
 
.cpr-process-grid::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 8%;
  right: 8%;
  height: 2px;
  background: linear-gradient(90deg, #D71920, #E84A50, #D71920);
  z-index: 0;
}
 
.cpr-process-step {
  text-align: center;
  position: relative;
  z-index: 2;
}
 
.cpr-process-badge {
  width: 56px;
  height: 56px;
  background: #D71920;
  color: #fff;
  border-radius: 50%;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  border: 3px solid #0D1B3D;
  box-shadow: 0 0 0 2px #D71920;
}
 
.cpr-process-badge svg {
  width: 24px;
  height: 24px;
}
 
.cpr-process-num {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: #E84A50;
  margin-bottom: 4px;
  text-transform: uppercase;
}
 
.cpr-process-h4 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 16px;
  letter-spacing: 0.04em;
  color: #fff;
  margin: 0 0 6px;
  text-transform: uppercase;
}
 
.cpr-process-p {
  font-size: 11px;
  line-height: 1.55;
  color: rgba(255,255,255,0.75);
  margin: 0;
}
 
/* Responsive */
@media (max-width: 900px) {
  .cpr-process-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 16px;
  }
  .cpr-process-grid::before {
    display: none;
  }
}
 
@media (max-width: 500px) {
  .cpr-process {
    padding: 60px 18px;
  }
  .cpr-process-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .cpr-process-h2::before,
  .cpr-process-h2::after {
    display: none;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7085c15 */<!-- ============================================================
     CPR HOMEPAGE — PROCESS BAND (HTML ONLY)
     
     6-step "Our Proven Restoration Process" navy band.
     This is the StoryBrand "Plan" continued — how it works.
     
     PASTE INTO A NEW HTML WIDGET below the services widget.
     Set the section to Full Width, padding 0, margin 0.
     ============================================================ -->
 
<section class="cpr-process">
  <div class="cpr-process-inner">
 
    <div class="cpr-process-head">
      <h2 class="cpr-process-h2">Our Proven Restoration Process</h2>
    </div>
 
    <div class="cpr-process-grid">
 
      <div class="cpr-process-step">
        <div class="cpr-process-badge">
          <svg viewBox="0 0 24 24" fill="currentColor"><path d="M20 15.5c-1.25 0-2.45-.2-3.57-.57-.35-.11-.74-.03-1.02.24l-2.2 2.2c-2.83-1.44-5.15-3.75-6.59-6.58l2.2-2.21c.28-.27.36-.66.25-1.01C8.7 6.45 8.5 5.25 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z"/></svg>
        </div>
        <div class="cpr-process-num">Step 01</div>
        <h4 class="cpr-process-h4">Emergency Call</h4>
        <p class="cpr-process-p">You call. A real dispatcher answers. We assign your crew before we hang up.</p>
      </div>
 
      <div class="cpr-process-step">
        <div class="cpr-process-badge">
          <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><circle cx="11" cy="11" r="7"/><line x1="16" y1="16" x2="21" y2="21"/></svg>
        </div>
        <div class="cpr-process-num">Step 02</div>
        <h4 class="cpr-process-h4">Inspection</h4>
        <p class="cpr-process-p">We assess the damage on-site, build the scope, and brief your insurer.</p>
      </div>
 
      <div class="cpr-process-step">
        <div class="cpr-process-badge">
          <svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 2 C12 2 6 9 6 14 C6 17.3 8.7 20 12 20 C15.3 20 18 17.3 18 14 C18 9 12 2 12 2 Z"/></svg>
        </div>
        <div class="cpr-process-num">Step 03</div>
        <h4 class="cpr-process-h4">Mitigation</h4>
        <p class="cpr-process-p">We stop the damage from compounding and secure the area immediately.</p>
      </div>
 
      <div class="cpr-process-step">
        <div class="cpr-process-badge">
          <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"/><path d="M12 3 V7 M12 17 V21 M3 12 H7 M17 12 H21 M5.6 5.6 L8.5 8.5 M15.5 15.5 L18.4 18.4 M5.6 18.4 L8.5 15.5 M15.5 8.5 L18.4 5.6"/></svg>
        </div>
        <div class="cpr-process-num">Step 04</div>
        <h4 class="cpr-process-h4">Drying &amp; Cleaning</h4>
        <p class="cpr-process-p">Commercial-grade equipment restores your property to a stable baseline.</p>
      </div>
 
      <div class="cpr-process-step">
        <div class="cpr-process-badge">
          <svg viewBox="0 0 24 24" fill="currentColor"><path d="M14 6 L10 2 L4 8 L8 12 L2 18 L6 22 L12 16 L16 20 L22 14 L18 10 L20 8 L16 4 Z"/></svg>
        </div>
        <div class="cpr-process-num">Step 05</div>
        <h4 class="cpr-process-h4">Restoration</h4>
        <p class="cpr-process-p">Repairs and rebuilds bring your home back to pre-loss condition.</p>
      </div>
 
      <div class="cpr-process-step">
        <div class="cpr-process-badge">
          <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><polyline points="5,12 10,17 19,7"/></svg>
        </div>
        <div class="cpr-process-num">Step 06</div>
        <h4 class="cpr-process-h4">Completion</h4>
        <p class="cpr-process-p">Final walkthrough together. We don't leave until you say it's done.</p>
      </div>
 
    </div>
  </div>
</section>/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f5c05fb *//* ============================================================
   CPR HOMEPAGE — PROCESS BAND (CSS ONLY)
   
   Paste below the services CSS in Additional CSS.
   ============================================================ */
 
.cpr-process {
  background: #0D1B3D;
  color: #fff;
  padding: 70px 32px;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-process-inner {
  max-width: 1400px;
  margin: 0 auto;
}
 
.cpr-process-head {
  text-align: center;
  margin-bottom: 40px;
}
 
.cpr-process-h2 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(28px, 3.4vw, 40px);
  letter-spacing: 0.04em;
  color: #fff;
  display: inline-block;
  padding: 0 20px;
  margin: 0;
  position: relative;
  text-transform: uppercase;
}
 
.cpr-process-h2::before,
.cpr-process-h2::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 60px;
  height: 1px;
  background: #D71920;
}
 
.cpr-process-h2::before { left: -60px; }
.cpr-process-h2::after { right: -60px; }
 
.cpr-process-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
  position: relative;
}
 
.cpr-process-grid::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 8%;
  right: 8%;
  height: 2px;
  background: linear-gradient(90deg, #D71920, #E84A50, #D71920);
  z-index: 0;
}
 
.cpr-process-step {
  text-align: center;
  position: relative;
  z-index: 2;
}
 
.cpr-process-badge {
  width: 56px;
  height: 56px;
  background: #D71920;
  color: #fff;
  border-radius: 50%;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  border: 3px solid #0D1B3D;
  box-shadow: 0 0 0 2px #D71920;
}
 
.cpr-process-badge svg {
  width: 24px;
  height: 24px;
}
 
.cpr-process-num {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.15em;
  color: #E84A50;
  margin-bottom: 4px;
  text-transform: uppercase;
}
 
.cpr-process-h4 {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 16px;
  letter-spacing: 0.04em;
  color: #fff;
  margin: 0 0 6px;
  text-transform: uppercase;
}
 
.cpr-process-p {
  font-size: 11px;
  line-height: 1.55;
  color: rgba(255,255,255,0.75);
  margin: 0;
}
 
/* Responsive */
@media (max-width: 900px) {
  .cpr-process-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 16px;
  }
  .cpr-process-grid::before {
    display: none;
  }
}
 
@media (max-width: 500px) {
  .cpr-process {
    padding: 60px 18px;
  }
  .cpr-process-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .cpr-process-h2::before,
  .cpr-process-h2::after {
    display: none;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fb90763 *//* ============================================================
   CPR HOMEPAGE — INSURANCE PARTNERS v2 (CSS ONLY)
   
   REPLACEMENT for file 20.
   
   HOW TO REPLACE:
   1. In Customizer → Additional CSS, find the old CSS block
      that starts with /* CPR HOMEPAGE — INSURANCE PARTNERS */
   2. Delete the entire old block (from that header comment
      down to the last closing brace before the next section)
   3. Paste this entire file in its place
   4. Click Publish
   
   The class names changed (cpr-ins-strip instead of
   cpr-insurance-partners) so there's no leftover style
   conflict from the old version.
   ============================================================ */
 
.cpr-ins-strip {
  background: #F5F6F8;
  padding: 60px 32px;
  font-family: 'Montserrat', system-ui, sans-serif;
}
 
.cpr-ins-strip-inner {
  max-width: 1300px;
  margin: 0 auto;
  text-align: center;
}
 
.cpr-ins-strip-eyebrow {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #D71920;
  margin-bottom: 12px;
}
 
.cpr-ins-strip-h2 {
  font-family: 'Bebas Neue', 'Arial Narrow', sans-serif;
  font-size: clamp(28px, 3.4vw, 40px);
  letter-spacing: 0.03em;
  color: #0D1B3D;
  text-transform: uppercase;
  margin: 0 0 16px;
  display: inline-block;
  padding: 0 24px;
  position: relative;
}
 
.cpr-ins-strip-h2::before,
.cpr-ins-strip-h2::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 60px;
  height: 1px;
  background: #D71920;
}
 
.cpr-ins-strip-h2::before { left: -60px; }
.cpr-ins-strip-h2::after { right: -60px; }
 
.cpr-ins-strip-sub {
  font-size: 14px;
  line-height: 1.65;
  color: #4A5468;
  max-width: 680px;
  margin: 0 auto 36px;
}
 
.cpr-ins-strip-sub strong {
  color: #0D1B3D;
  font-weight: 700;
}
 
/* The strip itself */
.cpr-ins-strip-row {
  background: #fff;
  border: 1px solid #E5E7EB;
  border-radius: 4px;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  align-items: center;
  padding: 8px 0;
  box-shadow: 0 4px 16px rgba(13,27,61,0.04);
}
 
.cpr-ins-logo-slot {
  height: 60px;
  display: grid;
  place-items: center;
  padding: 0 14px;
  border-right: 1px solid #EEF0F3;
  transition: background 0.2s ease;
}
 
.cpr-ins-logo-slot:last-child {
  border-right: none;
}
 
.cpr-ins-logo-slot:hover {
  background: #FAFBFC;
}
 
/* CRITICAL: constrain logo size hard so no SVG can break out */
.cpr-ins-logo-slot img {
  max-width: 100%;
  max-height: 36px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: grayscale(60%);
  opacity: 0.75;
  transition: all 0.25s ease;
}
 
.cpr-ins-logo-slot:hover img {
  filter: grayscale(0%);
  opacity: 1;
}
 
.cpr-ins-strip-foot {
  font-family: 'Playfair Display', Georgia, serif;
  font-style: italic;
  font-size: 13px;
  color: #6D6E71;
  margin: 24px 0 0;
}
 
/* Responsive */
@media (max-width: 1100px) {
  .cpr-ins-strip-row {
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
  }
  .cpr-ins-logo-slot {
    border-right: 1px solid #EEF0F3;
    border-bottom: 1px solid #EEF0F3;
  }
  /* Remove right border on every 4th item */
  .cpr-ins-logo-slot:nth-child(4n) {
    border-right: none;
  }
  /* Remove bottom border on last row */
  .cpr-ins-logo-slot:nth-last-child(-n+3) {
    border-bottom: none;
  }
}
 
@media (max-width: 700px) {
  .cpr-ins-strip {
    padding: 50px 18px;
  }
  .cpr-ins-strip-h2::before,
  .cpr-ins-strip-h2::after {
    display: none;
  }
  .cpr-ins-strip-row {
    grid-template-columns: repeat(2, 1fr);
  }
  .cpr-ins-logo-slot {
    height: 70px;
  }
  .cpr-ins-logo-slot:nth-child(4n) {
    border-right: 1px solid #EEF0F3;
  }
  .cpr-ins-logo-slot:nth-child(2n) {
    border-right: none;
  }
  .cpr-ins-logo-slot:nth-last-child(-n+1) {
    border-bottom: none;
  }
  .cpr-ins-logo-slot img {
    max-height: 32px;
  }
}/* End custom CSS */