.pm { padding-block: 16px 60px; }
.pm-cloth { padding: 34px; border-radius: 8px; background-color: #fff; background-image: linear-gradient(90deg, rgb(235 97 94 / .5) 50%, transparent 50%), linear-gradient(rgb(235 97 94 / .5) 50%, transparent 50%); background-size: 40px 40px; }
.pm-card { background: #fffdf8; max-inline-size: 860px; margin-inline: auto; padding: 44px clamp(22px, 5vw, 64px); border: 1px solid #e7dccb; box-shadow: 0 16px 40px rgb(46 42 43 / .15); text-align: center; }
.pm-card .hand { font-size: 28px; color: var(--coral-ink); }
.pm-card h1 { font-size: clamp(38px, 5vw, 58px); letter-spacing: .04em; text-transform: uppercase; margin-block: 4px 10px; }
.pm-card > p { font-size: 17px; color: var(--ink-soft); }
.pm-rule { display: flex; align-items: center; gap: 14px; margin-block: 26px; color: var(--coral); }
.pm-rule::before, .pm-rule::after { content: ""; flex: 1; border-block-start: 2px dotted currentColor; }
.pm-menu { list-style: none; padding: 0; text-align: start; display: grid; gap: 22px; counter-reset: c; }
.pm-menu li { counter-increment: c; }
.pm-menu h2 { font-size: 20px; display: flex; align-items: baseline; gap: 10px; }
.pm-menu h2::before { content: counter(c, upper-roman) "."; color: var(--coral); font-size: 17px; min-inline-size: 34px; }
.pm-menu h2::after { content: ""; flex: 1; border-block-end: 2px dotted #cdbfa9; translate: 0 -5px; }
.pm-menu p { padding-inline-start: 44px; color: var(--ink-soft); font-size: 15.5px; margin-block-start: 4px; }
.pm-small { text-align: start; font-size: 14.5px; color: var(--ink-soft); background: #f7f1e6; border-radius: 10px; padding: 18px 20px; }
.pm-small p + p { margin-block-start: 8px; }
@media (max-width: 640px) { .pm-cloth { padding: 12px; } .pm-menu p { padding-inline-start: 0; } }
