.dpo-challenge-section{
background:#ffffff;
}

.dpo-content h2{
font-size:38px;
font-weight:700;
margin-bottom:20px;
}

.dpo-content h2 span{
color:#0d6efd;
}

.small-title{
font-size:12px;
letter-spacing:1px;
color:#7a7a7a;
text-transform:uppercase;
}

.dpo-card{
background:#fff;
padding:25px;
border-radius:10px;
margin-bottom:20px;
box-shadow:0 8px 20px rgba(0,0,0,0.08);
transition:0.3s;
}

.dpo-card:hover{
transform:translateY(-5px);
}

.dpo-card .icon{
font-size:28px;
color:#0d6efd;
margin-bottom:10px;
}

.dpo-services-section{
background:#ffffff;
}

.section-title h2{
font-size:38px;
font-weight:700;
margin-bottom:15px;
}

.section-title h2 span{
color:#0d6efd;
}

.mini-title{
font-size:12px;
letter-spacing:2px;
text-transform:uppercase;
color:#8c8c8c;
}

.dpo-service-card{
background:#fff;
border-radius:12px;
padding:25px;
margin-bottom:25px;
box-shadow:0 10px 25px rgba(0,0,0,0.06);
transition:0.3s;
border:1px solid #eee;
height: auto;
}

.dpo-service-card:hover{
transform:translateY(-6px);
box-shadow:0 12px 35px rgba(0,0,0,0.1);
}

.dpo-service-card .icon{
width:50px;
height:50px;
background:#f2edff;
border-radius:10px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:15px;
}

.dpo-service-card .icon i{
font-size:22px;
color:#0d6efd;
}

.dpo-advantage-section{
background:#f6f7fb;
}

.dpo-advantage-content h2{
font-size:38px;
font-weight:700;
margin-bottom:15px;
}

.dpo-advantage-content h2 span{
color:#0d6efd;
}

.dpo-checklist{
list-style:none;
padding:0;
margin-top:20px;
}

.dpo-checklist li{
background:#fff;
padding:15px 18px;
border-radius:8px;
margin-bottom:12px;
font-size:15px;
box-shadow:0 6px 15px rgba(0,0,0,0.06);
display:flex;
align-items:center;
}

.dpo-checklist li i{
color:#0d6efd;
font-size:18px;
margin-right:10px;
}

.dpo-target-section{
background:#ffffff;
}
/* FIX ROW ALIGNMENT */
.dpo-target-section .row {
  display: flex;
  flex-wrap: wrap;
}

/* FIX COLUMN HEIGHT */
.dpo-target-section .col-lg-4,
.dpo-target-section .col-md-6 {
  display: flex;
  align-items: stretch;   /* IMPORTANT */
}

/* CARD FIX */
.dpo-target-card{
  background:#fff;
  padding:30px;
  border-radius:12px;
  margin-bottom:25px;
  box-shadow:0 8px 20px rgba(0,0,0,0.06);
  border:1px solid #eee;
  transition:0.3s;

  /* MAIN FIX */
  width: 100%;
  height: 90%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* OPTIONAL: CONTROL TEXT HEIGHT */
.dpo-target-card h4 {
  min-height: 48px;   /* keeps titles aligned */
}

.dpo-target-card p {
  min-height: 40px;   /* keeps description aligned */
}
.dpo-target-card:hover{
transform:translateY(-6px);
box-shadow:0 12px 35px rgba(0,0,0,0.1);
}

/* TEXT CONTROL (DESKTOP ONLY) */
@media (min-width: 992px) {
  .dpo-target-card h4 {
    min-height: 48px;
  }

  .dpo-target-card p {
    min-height: 40px;
  }
}
.dpo-target-card.active{
border:2px solid #0d6efd;
}

.dpo-target-card .icon{
width:60px;
height:60px;
margin:auto;
background:#f3efff;
border-radius:12px;
display:flex;
align-items:center;
justify-content:center;
margin-bottom:15px;
}

.dpo-target-card .icon i{
font-size:26px;
color:#0d6efd;
}

.dpo-process-section{
background:#f6f7fb;
}

.process-content h2{
font-size:38px;
font-weight:700;
margin-bottom:15px;
}

.process-content h2 span{
color:#0d6efd;
}

.process-step{
display:flex;
align-items:flex-start;
background:#fff;
padding:18px;
border-radius:10px;
margin-top:20px;
box-shadow:0 6px 15px rgba(0,0,0,0.06);
}

.step-number{
background:#0d6efd;
color:#fff;
width:40px;
height:40px;
border-radius:8px;
display:flex;
align-items:center;
justify-content:center;
font-weight:700;
margin-right:15px;
}

.step-text h4{
font-size:18px;
margin-bottom:5px;
}

.cta-dpo-section{
    background: linear-gradient(135deg, #0d6efd, #0d6efd);
    color: #fff;
    text-align: center;
}

.cta-subtitle{
    font-size: 12px;
    letter-spacing: 2px;
    text-transform: uppercase;
    opacity: 0.8;
    display: block;
    margin-bottom: 10px;
}

.cta-title{
    font-size: 42px;
    font-weight: 700;
    margin-bottom: 20px;
    line-height: 1.3;
}

.cta-text{
    max-width: 650px;
    margin: 0 auto 30px;
    font-size: 16px;
    opacity: 0.9;
}

.cta-btn{
    background: #fff;
    color: #333;
    border-radius: 8px;
    padding: 12px 30px;
    font-weight: 600;
}

.cta-btn:hover{
    background: #ff5a00;
    color: #fff;
}