/* Taskbook 16: shared, unframed product information patterns. */
body main .product-page :is(.pcm-care,.pcm-notes,.pcm-notice-group,.pcm-include-group,.pcm-grid,.pcm-column,.pcm-list,.pcm-row,.pcm-copy) {
  min-width: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
body main .product-page .pcm-icon {
  display: block;
  flex: none;
  width: 20px;
  height: 20px;
  color: var(--palette-forest);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
}
body main .product-page :is(.pcm-care,.pcm-notice-group) {
  max-width: none;
  padding: 0;
  border: 0;
}
body main .product-page .pcm-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 32px;
  margin-block: 28px;
  padding: 0;
  border: 0;
}
body main .product-page .pcm-grid[data-product-columns="4"] { grid-template-columns: repeat(4,minmax(0,1fr)); }
body main .product-page .pcm-grid[data-product-columns="2"] { grid-template-columns: repeat(2,minmax(0,1fr)); }
body main .product-page .pcm-column {
  padding: 24px 0 0;
  border: 0;
  border-top: 1px solid var(--palette-divider);
}
body main .product-page .pcm-column > .pcm-icon { margin-bottom: 16px; }
body main .product-page :is(.pcm-title,.pcm-include-group > h3,.pcm-notice-group > h3) {
  margin: 0 0 12px;
  color: var(--ink);
  font-size: 20px !important;
  font-weight: 700;
  line-height: 1.5;
  text-wrap: balance;
  letter-spacing: 0;
}
body main .product-page .pcm-include-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; }
body main .product-page .pcm-notes { display: grid; grid-template-columns: minmax(0,1fr); gap: 48px; }
body main .product-page .pcm-list { list-style: none; display: block; max-width: 756px; padding: 0; margin: 24px 0; border: 0; }
body main .product-page .pcm-row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 24px 0;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--palette-divider);
  list-style: none;
}
body main .product-page .pcm-row > .pcm-icon { margin-top: 6px; }
body main .product-page .pcm-copy { flex: 1; }
body main .product-page :is([data-product-content],[data-product-content-scope]) :is(p,li,.pcm-copy),
body main .product-page :is([data-product-content],[data-product-content-scope]) :is(p,li,.pcm-copy)[data-type-copy]:not(.ds-aux) {
  font-size: 18px !important;
  line-height: 1.8 !important;
  color: var(--ink) !important;
  text-wrap: pretty;
}
body main .product-page [data-product-content-scope] p { max-width: 720px; }
body main .product-page .pcm-copy > :first-child { margin-top: 0; }
body main .product-page .pcm-copy > :last-child { margin-bottom: 0; }
body main .product-page .pcm-copy :is(strong,.pcm-conclusion) {
  font-size: inherit !important;
  font-weight: 700;
  line-height: inherit;
  color: var(--palette-forest);
}
body main .product-page .pcm-conclusion { margin: 0 0 12px; }
body main .product-page .pcm-punctuation {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
body main .product-page .pcm-fold {
  border: 0;
  border-bottom: 1px solid var(--palette-divider);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body main .product-page .pcm-fold > summary {
  background: transparent;
}
body main .product-page .pcm-fold > .itinerary-body { background: transparent; }
@media(max-width:1023px) {
  body main .product-page .pcm-grid[data-product-columns="4"] { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:719px) {
  body main .product-page :is(.pcm-grid,.pcm-grid[data-product-columns],.pcm-include-grid) { grid-template-columns: minmax(0,1fr); gap: 28px; }
  body main .product-page .pcm-notes { gap: 36px; }
  body main .product-page .pcm-row { gap: 12px; padding-block: 20px; }
  body main .product-page :is([data-product-content],[data-product-content-scope]) :is(p,li,.pcm-copy),
  body main .product-page :is([data-product-content],[data-product-content-scope]) :is(p,li,.pcm-copy)[data-type-copy]:not(.ds-aux) { font-size: 17px !important; }
}
