.minamoto-availability-page .p-cover {
  height: 280px;
  background: linear-gradient(135deg, #faf8f6 0%, #f3efec 100%);
}

.minamoto-availability-page .p-cover::before {
  background: transparent;
}

.minamoto-availability-page .p-cover__title {
  color: #3b2a25 !important;
  font-size: clamp(26px, 3vw, 38px);
  letter-spacing: 0.06em;
}

.minamoto-availability-page .p-cover__sub {
  color: #765f55 !important;
  letter-spacing: 0.08em;
}

.minamoto-availability {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(24px, 5vw, 48px);
  border: 1px solid #e8e3df;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 30px rgb(58 43 37 / 8%);
  color: #322925;
  font-size: 16px;
  line-height: 1.9;
  overflow-wrap: anywhere;
}

.minamoto-availability > :first-child {
  margin-top: 0;
}

.minamoto-availability > :last-child {
  margin-bottom: 0;
}

.minamoto-availability h2,
.minamoto-availability h3 {
  margin: 1.5em 0 0.65em;
  color: #3b2a25;
  line-height: 1.5;
}

.minamoto-availability a {
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

@media screen and (max-width: 767px) {
  .minamoto-availability-page .p-cover {
    height: 160px;
  }

  .minamoto-availability-page .p-cover__title {
    font-size: 24px;
  }

  .minamoto-availability {
    padding: 24px 20px;
    border-radius: 4px;
    font-size: 15px;
    line-height: 1.85;
  }
}
