/* Local visual proposal only. Not an approved production asset. */
.yp-hero-inner { grid-template-columns: 1fr; gap: 26px; padding-block: 34px 42px; }
.yp-hero-copy { position: relative; padding: 0; }
.yp-hero h1 { font-size: clamp(34px, 3.5vw, 48px); margin-top: 10px; }
.yp-hero-subtitle { font-size: 19px; }
.yp-hero .yp-stroke { margin-block: 10px 12px; }
.yp-handwritten { position: absolute; right: 18px; top: 15px; margin: 0; font-size: 20px; transform: rotate(-7deg); }
.yp-products { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.yp-product { padding: 14px 14px 17px; }
.yp-book-link img { width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: contain; }
.yp-product-copy { padding: 14px 3px 17px; }
.yp-product-copy h2 { font-size: 28px; }
.yp-product-copy p { font-size: 13px; }
.yp-product > .yp-button { font-size: 15px; min-height: 47px; padding-inline: 6px; gap: 4px; }
.yp-product > .yp-button svg { width: 18px; height: 18px; flex-basis: 18px; }
@media (max-width: 900px) {
  .yp-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .yp-handwritten { display: none; }
}
@media (max-width: 600px) {
  .yp-hero-inner { padding-block: 26px; gap: 18px; }
  .yp-hero h1 { font-size: clamp(29px, 8vw, 42px); }
  .yp-hero-subtitle { font-size: 15px; }
  .yp-products { gap: 11px; }
  .yp-product { padding: 8px 8px 13px; }
  .yp-product-copy { padding: 10px 3px 12px; }
  .yp-product-copy h2 { font-size: 22px; }
  .yp-product-copy p { font-size: 11px; }
  .yp-product > .yp-button { font-size: 11px; padding: 11px 4px; gap: 2px; min-height: 42px; }
  .yp-product > .yp-button svg { width: 15px; height: 15px; flex-basis: 15px; }
}
@media (max-width: 360px) {
  .yp-products { grid-template-columns: 1fr; }
  .yp-book-link img { height: 320px; aspect-ratio: auto; }
  .yp-product-copy p { font-size: 13px; }
  .yp-product > .yp-button { font-size: 15px; }
}
