.image {
  width: 1080px;
  height: 1350px;
  background-color: var(--bgcolor);
  color: var(--primarycolor);
  padding: 3.5cqw 4cqw 4cqw 4cqw;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-synthesis: none;
  font-kerning: normal;
  letter-spacing: 0;
  container-type: inline-size; 
}
.image .wrap{
  position: relative;
  width: 100%;
  height: 100%;
}
.heading {
  line-height: 1.5;
  word-break: normal;
  overflow-wrap: break-word;
  font-feature-settings: "palt";
  letter-spacing: 0;
  line-height: 1.6;
  font-family: var(--fontfamily-serif);
  font-weight: var(--h1-fontweight);
  font-size: clamp(2.5cqw, 4.5cqw, 11cqw);
  white-space: pre-wrap;
}
.sub-text {
  font-family: var(--fontfamily-sans);
  font-weight: var(--p-fontweight);
  font-size: 3.5cqw;
  line-height: 1.7;
  white-space: pre-wrap;
  margin-top: 1.4cqw;
  font-feature-settings: "palt";
  letter-spacing: 0;
}
.tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.4cqw;
  margin-top: 2.5cqw;
  font-size: 2cqw;
  line-height: 1;
}
.tag-list .tag {
  border: 1px solid var(--primarycolor);
  padding: 1cqw 1.3cqw 1.4cqw 1.3cqw;
  font-family: var(--fontfamily-sans);
  font-weight: var(--tag-fontweight);
  font-feature-settings: "palt";
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  letter-spacing: 0;
}
img {
  position: absolute;
  bottom: 0;
  left: 0;
  padding-top: 10cqw;
  width: calc(100% - 35cqw);
  aspect-ratio: 1/1;
  object-fit: contain;
  object-position: left bottom;
  display: block;
}
.logo-wrap {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 35cqw;
  text-align: right;
}
.logo-wrap svg{
  width: 13cqw;
  height: auto;
  display: inline-block;
  fill: var(--primarycolor);
}
.logo-wrap p{
  margin-top: 1.2cqw;
  font-size: 1.7cqw;
}