.section{
  padding:32px 0;
}

.section-title{
  margin-bottom:18px;
  font-size:30px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
}

.promo{
  padding:24px 0 36px;
}

.promo .container{
  background:linear-gradient(135deg, var(--color-primary), #ff7a00);
  color:var(--color-white);
  border-radius:var(--radius-lg);
  padding:28px 22px;
  box-shadow:var(--shadow-soft);
  text-align:center;
}

.promo h2{
  font-size:30px;
  line-height:1;
  margin-bottom:10px;
  font-weight:900;
}

.promo p{
  font-size:20px;
  margin-bottom:8px;
}

.promo h3{
  font-size:34px;
  font-weight:900;
}

.location{
  padding:8px 0 42px;
}

.location .container{
  background:var(--color-white);
  border-radius:var(--radius-lg);
  padding:24px 20px;
  box-shadow:var(--shadow-soft);
  text-align:center;
}

.location h2{
  font-size:28px;
  line-height:1;
  font-weight:900;
  color:var(--color-dark);
  margin-bottom:12px;
}

.location p{
  font-size:18px;
  margin-bottom:6px;
}

.footer{
  background:var(--color-dark);
  color:var(--color-white);
  padding:28px 0 36px;
  margin-top:8px;
}

.footer p{
  text-align:center;
  font-size:15px;
  opacity:.95;
  margin-bottom:8px;
}

@media (min-width:768px){
  .section{
    padding:48px 0;
  }

  .section-title{
    font-size:38px;
    margin-bottom:22px;
  }

  .promo .container,
  .location .container{
    padding:34px 28px;
  }

  .promo h2{
    font-size:40px;
  }

  .promo h3{
    font-size:42px;
  }

  .location h2{
    font-size:34px;
  }
}