.opening-chapter { border-bottom: 1px solid #e4eee5; padding-bottom: 55px; }
.opening-sea-board {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  align-items: center;
  padding: 65px 35px 35px;
  border-radius: 30px 6px 30px 6px;
  background: #eef8f5;
}
.opening-label { position: absolute; top: 18px; left: 30px; font-size: 14px; letter-spacing: 2px; }
.opening-label > span { margin-left: 10px; font: 24px Georgia, serif; vertical-align: -2px; }
.opening-sea-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; padding: 0 8px; }
.opening-sea-grid .photo:first-child { transform: rotate(-4deg); }
.opening-sea-grid .photo:last-child { transform: rotate(3deg); margin-top: 18px; }
.opening-sea-grid img { width: 100%; height: 310px; object-fit: cover; object-position: center 30%; }
.opening-note { padding-left: 22px; color: #7d9588; font-size: 19px; transform: rotate(4deg); text-align: center; }
.opening-row { margin-top: 37px; }
.opening-row h3, .opening-pair h3 { font-size: 18px; font-weight: 500; letter-spacing: 1px; margin-bottom: 22px; }
.opening-portraits-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 27px; padding: 0 20px; }
.opening-portraits-grid img { height: 260px; width: 100%; object-fit: cover; object-position: center 25%; }
.opening-portraits-grid .photo:nth-child(1) { transform: rotate(-2deg); }
.opening-portraits-grid .photo:nth-child(2) { transform: rotate(3deg); }
.opening-portraits-grid .photo:nth-child(3) { transform: rotate(-3deg); }
.opening-pairs { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 42px; }
.opening-pair { min-width: 0; padding: 24px 18px; border-radius: 15px; background: #fbf8ed; }
.opening-pair:last-child { background: #f4f3f9; }
.opening-pair-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.opening-pair-grid .photo { padding: 8px; }
.opening-pair-grid img { height: 215px; width: 100%; object-fit: cover; object-position: center 25%; }
.opening-pair-grid .photo-caption { font-size: 14px; }
@media (max-width: 1050px) {
  .opening-sea-board { grid-template-columns: minmax(0, 1fr); padding: 55px 30px 25px; }
  .opening-note { padding: 0; margin-top: 25px; font-size: 17px; }
  .opening-note br { display: none; }
  .opening-sea-grid img { height: 330px; }
  .opening-portraits-grid { gap: 18px; padding: 0 12px; }
  .opening-portraits-grid img { height: 245px; }
  .opening-pairs { gap: 22px; }
  .opening-pair-grid { gap: 12px; }
  .opening-pair-grid img { height: 190px; }
}
@media (max-width: 720px) {
  .opening-chapter { padding-bottom: 35px; }
  .opening-sea-board { padding: 55px 12px 24px; }
  .opening-label { left: 20px; }
  .opening-sea-grid { gap: 14px; padding: 0; }
  .opening-sea-grid .photo { padding: 7px; }
  .opening-sea-grid img { height: 205px; }
  .opening-sea-grid .photo-caption { font-size: 14px; }
  .opening-note { font-size: 16px; }
  .opening-portraits-grid { grid-template-columns: 1fr 1fr; gap: 16px; padding: 0 7px; }
  .opening-portraits-grid .photo { padding: 8px; }
  .opening-portraits-grid img { height: 200px; }
  .opening-portraits-grid .photo-caption { font-size: 14px; }
  .opening-portraits-grid .photo:last-child { grid-column: 1 / -1; width: 60%; justify-self: center; }
  .opening-portraits-grid .photo:last-child img { height: auto; aspect-ratio: 3 / 4; }
  .opening-pairs { grid-template-columns: 1fr; margin-top: 32px; }
  .opening-pair-grid img { height: 205px; }
  .opening-pair { padding: 21px 15px; }
}
@media (max-width: 375px) {
  .opening-sea-grid img { height: 180px; }
  .opening-portraits-grid img, .opening-pair-grid img { height: 185px; }
}
