:root{
  --bg:#fff;
  --fg:#111;
  --max:1200px;
  --gap:32px;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; background:var(--bg); color:var(--fg); }
img{ display:block; max-width:100%; height:auto; }
a{ color:inherit; text-decoration:none; }

.home{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px 24px;
}

.home-inner{
  width:min(var(--max), 100%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:44px;
}

.logo{
  width:min(680px, 92vw);
}

.tabs{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:32px;
  align-items:stretch;
}

.tab{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.tab img{
  max-width:100%;
  max-height:180px;
  width:auto;
  height:auto;
}

@media (max-width: 900px){
  .tabs{
    grid-template-columns:1fr;
  }
  .tab img{
    max-height:200px;
  }
}

.wrap{ width:min(var(--max), calc(100% - 48px)); margin:0 auto; }
.page-top{ padding:22px 0 0; }

.gallery{
  padding:18px 0 56px;
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:28px;
}

@media (max-width: 900px){
  .gallery{ grid-template-columns:1fr; }
}

.back.corner{
  position:fixed;
  top:24px;
  left:24px;
  font-size:32px;
  line-height:1;
  opacity:0.35;
  transition:opacity .15s ease;
  z-index:1000;
}

.back.corner:hover{
  opacity:1;
}