#s01 {
  overflow: hidden;
  background: radial-gradient(ellipse at 50% 52%, var(--card), transparent 66%), var(--bg);
}

#s01 .mod-head { max-width: 780px; }
#s01 .s01-table {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
  align-items: center;
  gap: clamp(38px, 6vw, 88px);
  padding: 30px 12px 48px;
}
#s01 .s01-sheet { position: relative; min-width: 0; margin: 0; }
#s01 .s01-sheet-vedano { z-index: 2; transform: rotate(-3deg); }
#s01 .s01-sheet-bramante { transform: translateY(44px) rotate(3deg); }
#s01 .s01-paper {
  position: relative;
  padding: clamp(7px, 0.9vw, 13px);
  background: var(--paper);
  border: 1px solid rgba(255, 248, 239, 0.65);
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.2), 0 24px 60px rgba(0, 0, 0, 0.4);
}
#s01 .s01-paper > img { width: 100%; height: auto; }
#s01 .s01-sheet .caption { padding-inline: 3px; max-width: 440px; line-height: 1.5; }
#s01 .s01-lens {
  position: absolute;
  z-index: 3;
  top: 43%;
  right: -12%;
  width: clamp(130px, 15vw, 208px);
  aspect-ratio: 1;
  overflow: hidden;
  border: 5px solid var(--paper);
  border-radius: 50%;
  outline: 1px solid var(--bronze);
  background: white;
  box-shadow: 0 16px 45px rgba(0, 0, 0, 0.4);
  transform: rotate(3deg);
}
#s01 .s01-lens img {
  position: absolute;
  width: 400%;
  max-width: none;
  height: auto;
  left: -138%;
  top: -220%;
}
#s01 .s01-closing {
  width: 54%;
  margin: clamp(54px, 9vh, 116px) 0 0 auto;
  padding-top: 30px;
  border-top: 1px solid var(--line);
  font-family: var(--serif);
  font-size: clamp(30px, 3.9vw, 55px);
  font-weight: 400;
  font-style: italic;
  line-height: 1.13;
  letter-spacing: -0.02em;
  color: var(--bronze-soft);
}

@media (max-width: 767px) {
  #s01 .s01-table { grid-template-columns: minmax(0, 1fr); gap: 56px; padding: 18px 8px 16px; }
  #s01 .s01-sheet-vedano { width: 78%; max-width: 350px; margin-inline: auto; transform: rotate(-2deg); }
  #s01 .s01-sheet-bramante { transform: rotate(1.5deg); }
  #s01 .s01-lens { width: clamp(104px, 29vw, 156px); right: -14%; }
  #s01 .s01-closing { width: 100%; margin-top: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  #s01 .s01-sheet-vedano { transform: none; }
  #s01 .s01-sheet-bramante { transform: none; }
  #s01 .s01-lens { transform: none; }
}
