@charset "utf-8";

.project-page{
  background:#fff;
}

.project-hero{
    padding-top:50px;
}

.project-list-section{
  padding-bottom:40px;
}

.project-list{
  display:grid;
  gap:46px;
}

.project-card{
  background:#fff;
  border:1px solid #dddfe7;
  border-top:4px solid var(--gold);
  box-shadow:0 8px 18px rgba(0,0,0,.04);
  overflow:hidden;
}

.project-card-head{
  padding:34px 40px 26px;
  border-bottom:1px solid #e5e7ee;
}

.project-num{
  margin:0 0 10px;
  color:#c59a2d;
  font-size:12px;
  font-weight:700;
  letter-spacing:.16em;
}

.project-card-head h2{
  margin:0;
  color:var(--navy);
  font-size:30px;
  line-height:1.5;
  font-family:var(--mincho);
  font-weight:500;
}

.project-card-body{
  display:grid;
  grid-template-columns:42% 1fr;
  gap:0;
}

.project-image{
  display:flex;
  padding:30px;
  background:#f7f4ef;
}

.project-image img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}

.project-content{
  padding:38px 42px;
}

.project-content p{
  margin:0 0 20px;
  color:#344765;
  font-size:15px;
  line-height:2.1;
}

.project-content p:last-of-type{
  margin-bottom:30px;
}

.project-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100%;
  max-width:520px;
  padding:17px 22px;
  background:var(--navy);
  color:#fff;
  text-decoration:none;
  font-size:14px;
  line-height:1.6;
  transition:.3s;
}

.project-link b{
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#c59a2d;
  color:#fff;
  flex-shrink:0;
  font-weight:400;
}

.project-link:hover{
  transform:translateX(6px);
  background:#c59a2d;
}

.project-link:hover b{
  background:#fff;
  color:var(--navy);
}

@media(max-width:760px){

  .project-hero{
    padding:30px 0 0;
  }

  .project-list-section{
    padding:30px 0;
  }

  .project-list{
    gap:28px;
  }

  .project-card-head{
    padding:22px 20px 18px;
  }

  .project-card-head h2{
    font-size:18px;
  }

  .project-card-body{
    grid-template-columns:1fr;
  }

  .project-image{
	  text-align: center;
	  width: 100%;
    padding:20px;
  }
  .project-content{
    padding:28px 24px;
  }

  .project-content p{
    font-size:14px;
  }

  .project-link{
    max-width:none;
  }
}