/* Figma 37:202. Shared frontend/editor geometry. Native block controls own
 * typography, colors, spacing and borders. */
:where(.rx-product-v2) { --rx-product-gap: clamp(1.25rem, 2.5vw, 3rem); }
.rx-product-v2 > .alignwide { width: calc(100% - 2 * var(--rx-figma-gutter)); max-width: var(--wp--style--global--wide-size); margin-inline: auto; }
.rx-product-v2__intro { display: grid; grid-template-columns: minmax(0, 508fr) minmax(0, 854fr) minmax(0, 216fr); gap: 0; padding-block-start: clamp(4rem, 7.35vw, 8rem); }
.rx-product-v2__intro > * { margin-block-start: 0; }
.rx-product-v2__title { margin: 0; max-width: 28.3125rem; align-self: start; }
.rx-product-v2__summary { min-width: 0; padding-block-start: clamp(1.5rem, 4.5vw, 4.8rem); }
.rx-product-v2__system > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.rx-product-v2__system > strong { font: inherit; text-transform: uppercase; }
.rx-product-v2__summary > .rx-product-v2__excerpt { max-width: 35.125rem; margin-block: .875rem 0; }
.rx-product-v2__excerpt p { margin: 0; }
.rx-product-v2__summary > .rx-product-v2__documents { margin-block: clamp(1.5rem, 1.8vw, 2rem) clamp(2rem, 3.5vw, 4rem); }
.rx-product-v2__download-grid { gap: clamp(1rem, 2vw, 2rem); padding: 0; max-width: 42.5rem; }
.rx-product-v2__download-grid > li > p { margin-block: 0 .35rem; }
.rx-product-v2__download-grid > li > h2 { margin: 0; }
.rx-product-v2__download-grid a { text-underline-offset: .15em; }
.rx-product-v2__image { margin: 0; width: 100%; }
.rx-product-v2__image img { width: 100%; height: auto; aspect-ratio: 854 / 477; object-fit: contain; }
.rx-product-v2__content { margin-block-start: 0; }
.rx-product-v2__content > :is(.rx-product-v2__sheet, .rx-product-sections), .rx-product-v2__solution-links { width: 54.12%; margin-inline: 32.193% auto; }
.rx-product-v2__relation-wrap { padding-block-start: 2rem; }
.rx-product-v2__solution-links { border-block: 1px solid var(--wp--preset--color--line); padding-block: 1rem; }
.rx-product-v2__solution-links .wp-block-post-template { display: grid; gap: 1rem; padding: 0; list-style: none; }
.rx-product-v2__solution-links summary { cursor: pointer; }
.rx-product-v2__sheet { --rx-product-gap: clamp(1.25rem, 2.5vw, 3rem); }
.editor-styles-wrapper .rx-product-v2__sheet { max-width: 56rem; margin-inline: auto; }
/* New two-column compositions are owned by native Columns/Group settings.
 * Neutralize only legacy sheet constraints, without imposing a second grid. */
.rx-product-page-body :is(.rx-product-v2__sheet, .rx-product-sections) { max-width: none; width: 100%; margin-inline: 0; }
.rx-product-page-composition :is(.wp-block-column, .rx-product-page-body) { min-width: 0; }
.rx-product-page-composition :is(.rx-product-code, .rx-product-system):empty { display: none; }
.rx-product-page-composition .wp-block-file a { overflow-wrap: anywhere; }
.rx-product-v2__section { margin-block-start: clamp(3rem, 5vw, 5rem); }
.rx-product-v2__section > h2 { margin-block: 0 1.5rem; }
.rx-product-v2__prose { max-width: 36rem; }
.rx-product-v2__features { margin-block-start: clamp(2rem, 4vw, 4rem); border-top: 1px solid var(--wp--preset--color--line); }
.rx-product-v2__feature { gap: 1rem; padding-block: 1.15rem; border-bottom: 1px solid var(--wp--preset--color--line); align-items: baseline; }
.rx-product-v2__feature > p { margin: 0; }
.rx-product-v2__index { flex: 0 0 2.25rem; }
.rx-product-v2__elements { gap: clamp(1rem, 1.5vw, 2rem); }
.rx-product-v2__element { display: flex; flex-direction: column; min-width: 0; }
.rx-product-v2__element-copy { border-inline-start: 1px solid var(--wp--preset--color--line); padding-inline-start: 1.25rem; flex-grow: 1; }
.rx-product-v2__element-copy > h3 { margin-block: .35rem 1.5rem; }
.rx-product-v2__element-copy > p:first-child { margin-block: 0; text-transform: uppercase; }
.rx-product-v2__element-copy ul { padding-inline-start: 1rem; list-style: disc; }
.rx-product-v2__element-image { margin-block: 2rem 0; }
.rx-product-v2__element-image img { width: 100%; aspect-ratio: 271 / 126; object-fit: cover; border-radius: .375rem; }
.rx-product-v2__benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem 2rem; padding-inline-start: 1rem; list-style: disc; }
.rx-product-v2__benefits > li { padding-inline-end: .75rem; }
/* Figma 37:202: horizontal rules only. One shared native table style also
 * covers pre-existing product tables. Inline Gutenberg controls take priority. */
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) { max-inline-size: 100%; overflow-x: auto; margin-block-start: 2rem; }
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) table { width: 100%; border: 0; border-collapse: collapse; }
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) table:has(tr > :nth-child(5)) { min-width: 42rem; }
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) :is(thead, tbody, tfoot) { border: 0; }
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) :is(th, td) { padding: .4rem .5rem; border: 0; border-bottom: 1px solid var(--wp--preset--color--line); text-align: start; vertical-align: top; font-size: inherit; font-weight: inherit; }
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) :is(th, td):first-child { padding-inline-start: 0; }
.wp-block-table:is(.rx-product-v2__table, .rx-product-configurations, .is-style-rexpol-technical) :is(th, td):last-child { padding-inline-end: 0; }
:where(.wp-block-table.rx-product-v2__table, .wp-block-table.rx-product-configurations, .wp-block-table.is-style-rexpol-technical) { font-size: var(--wp--preset--font-size--small); line-height: 1.4; }
.rx-product-v2__projects { display: grid; grid-template-columns: minmax(0, 508fr) minmax(0, 1070fr); gap: 0; margin-block: clamp(6rem, 11vw, 12rem); }
.rx-product-v2__projects-copy { max-width: 89%; }
.rx-product-v2__projects-copy > h2 { margin-block: 0 2.5rem; }
.rx-product-v2__projects-copy > p + p { margin-block-start: 1.5rem; }
.rx-product-v2__project-grid { gap: clamp(1rem, 1.5vw, 1.75rem); margin: 0; }
.rx-product-v2__project-grid .rx-home-project-card { min-height: 0; aspect-ratio: 454 / 280; }
.rx-product-v2__project-grid .rx-home-project-card .wp-block-post-featured-image { display: block; opacity: 1; }
.rx-product-v2__project-grid .rx-home-project-card::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgb(0 0 0 / .15), transparent 45%, rgb(0 0 0 / .65)); pointer-events: none; }
.rx-product-v2__project-grid .rx-home-project-card__title { border-color: currentColor; }
.rx-product-v2__project-grid .rx-home-project-card__title a { color: inherit; }
.rx-product-v2__related { margin-block: clamp(6rem, 11vw, 12rem); }
.rx-product-v2__related-head { display: grid; grid-template-columns: minmax(0, 508fr) minmax(0, 1070fr); gap: 0; margin-block-end: 5rem; }
.rx-product-v2__related-head > h2 { margin: 0; }
.rx-product-v2__related-head > div { max-width: 36rem; }
.rx-product-v2__related-head > div > p:first-child { margin-block-start: 0; }
.rx-product-v2__related .wp-block-post-featured-image { margin-block: 0 .75rem; }
.rx-product-v2__related-cards > li > p { margin-block: .35rem; }
.rx-product-v2__related-cards > li > h3 { margin: 0; }

/* Figma 519:231: three editable core compositions demonstrating the type scale. */
.rx-blue-editorial-cards { display: grid; gap: var(--wp--preset--spacing--40); max-width: 34rem; }
:where(.rx-blue-editorial-card) { border-radius: .5rem; padding: var(--wp--preset--spacing--30); }
.rx-blue-editorial-card > :first-child { margin-block-start: 0; }
.rx-blue-editorial-card > :last-child { margin-block-end: 0; }
.rx-blue-editorial-card h2 { margin-block: .5rem; }

@media (max-width: 781px) {
	.rx-product-v2__intro, .rx-product-v2__projects, .rx-product-v2__related-head { grid-template-columns: minmax(0, 1fr); }
	.rx-product-v2__intro { padding-block-start: 3rem; }
	.rx-product-v2__summary { padding-block-start: 0; }
	.rx-product-v2__content > :is(.rx-product-v2__sheet, .rx-product-sections), .rx-product-v2__solution-links { width: 100%; margin-inline: 0; }
	.rx-product-v2__summary { margin-block-start: 2rem; }
	.rx-product-v2__elements.is-layout-grid { grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
	.rx-product-v2__element-image { max-width: 28rem; }
	.rx-product-v2__benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rx-product-v2__related-head { margin-block-end: 4rem; }
	.rx-product-v2__projects-copy > h2 { margin-block-end: 1.5rem; }
	.rx-product-v2__projects-copy { max-width: none; margin-block-end: 2rem; }
}
@media (max-width: 480px) {
	.rx-product-v2__download-grid.is-layout-grid { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
	.rx-product-v2__project-grid.is-layout-grid, .rx-product-v2__benefits { grid-template-columns: minmax(0, 1fr); }
	.rx-product-v2__feature { gap: .5rem; }
	.rx-product-v2__index { flex-basis: 2rem; }
}
