.solution-banner{
padding:100px 0;
text-align:center;
background:var(--background-soft);
}

.solution-banner h1{
margin:20px 0;
font-size:clamp(2.8rem,6vw,4.5rem);
}

.solution-banner p:last-child{
max-width:720px;
margin:auto;
line-height:1.8;
color:var(--text-body);
}

.solution-intro{
padding:90px 0;
}

.solution-intro-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.featured-solutions{
padding:90px 0;
background:var(--background-soft);
}

.solution-box{
display:flex;
justify-content:space-between;
align-items:center;
padding:35px;
margin-bottom:25px;
border-radius:18px;
background:#fff;
border:1px solid var(--border-light);
transition:.3s;
}

.solution-box:hover{
transform:translateY(-6px);
box-shadow:var(--shadow-medium);
}

.solution-box span{
font-size:40px;
font-weight:700;
color:rgba(43,178,76,.2);
}

.technology-section{
padding:90px 0;
}

.tech-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}

.tech-grid div{
padding:35px;
text-align:center;
border-radius:16px;
border:1px solid var(--border-light);
background:#fff;
}

.benefit-section{
padding:90px 0;
background:var(--background-soft);
}

.benefit-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.benefit-grid img{
width:100%;
}

.benefit-grid ul{
line-height:2.2;
}

.faq-section{
padding:90px 0;
}

.faq-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}

.faq-card{
padding:30px;
border-radius:16px;
border:1px solid var(--border-light);
background:#fff;
}

/* CTA */

.cta-section {
  position: relative;
  overflow: hidden;
  padding: 75px 0;
  background: linear-gradient(
    120deg,
    var(--dark-green),
    var(--dark-green-light)
  );
}

.cta-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 60px;
}

.cta-content {
  max-width: 720px;
}

.cta-label {
  margin-bottom: 12px;
  color: #62dc7d;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}

.cta-content h2 {
  margin-bottom: 16px;
  color: var(--text-white);
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1.2;
}

.cta-content > p:last-child {
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.9rem;
  line-height: 1.8;
}

.cta-actions {
  display: flex;
  align-items: center;
  gap: 14px;
}

.cta-primary-button {
  background-color: var(--primary-green);
  color: var(--text-white);
}

.cta-primary-button:hover {
  background-color: #39c75b;
}

.services-list {
  padding: 90px 0;
  background-color: var(--background-white);
}

.service-card h3 {
  margin-bottom: 12px;
}

.service-card p {
  color: var(--text-body);
  font-size: 0.85rem;
  line-height: 1.8;
}

.services-intro-grid > div:last-child p {
  color: var(--text-body);
  line-height: 1.8;
}