.container,
.wrap,
.page-shell,
.footer-inner{
  width:min(1120px,calc(100% - 32px));
  margin:0 auto;
}

.page-main,
.main{
  width:min(1120px,calc(100% - 32px));
  margin:0 auto;
  padding:26px 0 96px;
}

.page-section{
  margin-top:18px;
}

.stack-10{display:grid;gap:10px}
.stack-12{display:grid;gap:12px}
.stack-14{display:grid;gap:14px}
.stack-18{display:grid;gap:18px}
.stack-22{display:grid;gap:22px}

.grid-2,
.cols-2,
.two-boxes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}

.grid-3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.grid-4{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.grid-5{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}

.actions-center,
.center{
  display:flex;
  justify-content:center;
}

.inline-center{
  display:flex;
  align-items:center;
  justify-content:center;
}

@media (max-width:980px){
  .grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:720px){
  .container,
  .wrap,
  .page-shell,
  .footer-inner,
  .page-main,
  .main{width:calc(100% - 24px)}

  .page-main,
  .main{padding:20px 0 100px}

  .grid-2,
  .cols-2,
  .two-boxes,
  .grid-3,
  .grid-4,
  .grid-5{grid-template-columns:1fr}
}
