/* Small presentation primitives for fixed content templates, not a page builder. */
.cd-content-page { display: grid; gap: var(--cd-space-12); padding-block: var(--cd-space-6); }
.cd-content-page > *, .cd-content-grid > *, .cd-content-payment > div { min-width: 0; }
.cd-content-page :is(h1,h2,h3,p) { margin: 0; overflow-wrap: anywhere; }
.cd-content-page h1 { font-size: var(--cd-font-xl); }
.cd-content-page h2 { font-size: var(--cd-font-xl); line-height: var(--cd-line-height-heading); }
.cd-content-page h3 { font-size: var(--cd-font-lg); line-height: var(--cd-line-height-heading); }
.cd-content-page p { color: var(--cd-color-muted); }
.cd-content-page section > h2 { margin-bottom: var(--cd-space-6); }
.cd-content-page .woocommerce-breadcrumb { margin: 0; font-size: var(--cd-font-sm); color: var(--cd-color-muted); }
.cd-content-page .woocommerce-breadcrumb a { color: inherit; }
.cd-content-hero { display: grid; grid-template-columns: minmax(0,2fr) minmax(0,1fr); align-items: center; gap: var(--cd-space-3); box-shadow: var(--cd-shadow-raised-soft); }
.cd-content-hero .cd-content-headline { font-size: var(--cd-font-lg); font-weight: var(--cd-weight-semibold); color: var(--cd-color-text); }
.cd-content-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--cd-space-6); }
.cd-content-card { display: flex; flex-direction: column; gap: var(--cd-space-4); }
.cd-content-icon { display: inline-flex; color: var(--cd-color-accent); }
.cd-content-icon svg { width: var(--cd-space-8); height: var(--cd-space-8); }
.cd-content-lines { white-space: pre-line; }
.cd-content-card .cd-content-value { font-size: var(--cd-font-xl); font-weight: var(--cd-weight-semibold); line-height: var(--cd-line-height-heading); color: var(--cd-color-text); }
.cd-content-pills { display: flex; flex-wrap: wrap; gap: var(--cd-space-2); }
.cd-content-pill { display: inline-block; padding: var(--cd-space-1) var(--cd-space-3); border-radius: var(--cd-radius-sm); background: var(--cd-color-accent-soft); color: var(--cd-color-text); font-size: var(--cd-font-sm); }
.cd-content-note { font-size: var(--cd-font-sm); }
.cd-content-details { background: var(--cd-surface-raised); box-shadow: var(--cd-shadow-raised-soft); border-color: var(--cd-border-soft); }
.cd-content-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--cd-space-2); padding: var(--cd-space-2); border-radius: var(--cd-radius-md); background: var(--cd-surface-inset); box-shadow: var(--cd-shadow-inset); }
.cd-content-tabs .cd-pill { min-width: 0; white-space: normal; text-align: center; border-radius: calc(var(--cd-radius-md) - var(--cd-space-2)); background: transparent; box-shadow: none; }
.cd-content-tabs .cd-pill[aria-selected="true"] { background: var(--cd-surface-raised); box-shadow: var(--cd-shadow-raised-soft); color: var(--cd-color-text); }
.cd-content-panel { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: var(--cd-space-6); align-items: start; padding-top: var(--cd-space-6); }
.cd-content-detail-copy > p { margin-top: var(--cd-space-4); max-width: var(--cd-container-narrow); }
.cd-content-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--cd-space-4) var(--cd-space-6); margin: 0; }
.cd-content-facts dt { color: var(--cd-color-muted); font-size: var(--cd-font-sm); }
.cd-content-facts dd { margin: var(--cd-space-1) 0 0; white-space: pre-line; overflow-wrap: anywhere; }
.cd-content-payment { display: flex; align-items: flex-start; gap: var(--cd-space-4); box-shadow: var(--cd-shadow-raised-soft); }
.cd-content-payment .cd-content-icon { flex-shrink: 0; }
.cd-content-payment p, .cd-content-payment .cd-content-pill { margin-top: var(--cd-space-3); }
.cd-content-hero-copy { display: grid; gap: var(--cd-space-3); }
.cd-content-hero-art { display: flex; align-items: center; justify-content: center; gap: var(--cd-space-4); }
.cd-content-hero-art > span { position: relative; display: grid; place-items: center; width: var(--cd-space-12); height: var(--cd-space-12); flex-shrink: 0; border-radius: var(--cd-radius-md); background: var(--cd-surface-raised); box-shadow: var(--cd-shadow-raised-soft); color: var(--cd-color-muted); }
.cd-content-hero-art > span:not(:last-child)::after { content: ''; position: absolute; left: 100%; width: var(--cd-space-4); height: 1px; background: var(--cd-border-soft); }
.cd-content-hero-art svg { width: var(--cd-space-6); height: var(--cd-space-6); }
.cd-content-steps { display: grid; grid-template-columns: repeat(var(--cd-content-step-count,4),minmax(0,1fr)); gap: var(--cd-space-6); list-style: none; padding: 0; margin: 0; }
.cd-content-steps li { position: relative; min-width: 0; }
.cd-content-steps li:not(:last-child)::before { content: ''; position: absolute; top: var(--cd-space-6); left: var(--cd-space-12); width: calc(100% + var(--cd-space-6) - var(--cd-space-12)); height: 1px; background: var(--cd-border-soft); }
.cd-content-step-node { position: relative; display: grid; place-items: center; width: var(--cd-space-12); height: var(--cd-space-12); border-radius: var(--cd-radius-md); background: var(--cd-surface-raised); box-shadow: var(--cd-shadow-raised-soft); color: var(--cd-color-accent); }
.cd-content-step-node svg { width: var(--cd-space-6); height: var(--cd-space-6); }
.cd-content-step-number { display: block; color: var(--cd-color-muted); font-size: var(--cd-font-sm); margin-block: var(--cd-space-3) var(--cd-space-1); }
.cd-content-steps p { margin-top: var(--cd-space-2); }
.cd-content-faq { width: 100%; max-width: var(--cd-container-narrow); justify-self: center; }
.cd-content-faq-item { margin-top: var(--cd-space-3); background: var(--cd-surface-raised); box-shadow: var(--cd-shadow-raised-soft); border-radius: var(--cd-radius-card); }
.cd-content-faq-item:has([aria-expanded="true"]) { background: var(--cd-surface-inset); box-shadow: var(--cd-shadow-inset); }
.cd-content-faq button { display: flex; align-items: center; justify-content: space-between; gap: var(--cd-space-4); width: 100%; min-height: var(--cd-space-12); padding: var(--cd-space-4) var(--cd-space-6); border: 0; border-radius: inherit; background: none; color: var(--cd-color-text); font: inherit; text-align: left; cursor: pointer; }
.cd-content-faq svg { width: var(--cd-icon-size); height: var(--cd-icon-size); flex-shrink: 0; }
.cd-content-faq [aria-expanded="true"] svg { transform: rotate(180deg); }
.cd-content-faq [role="region"] { padding: 0 var(--cd-space-6) var(--cd-space-6); }
.cd-content-cta { display: flex; align-items: center; justify-content: space-between; gap: var(--cd-space-6); }
.cd-content-cta p { margin-top: var(--cd-space-3); }
.cd-content-actions { display: flex; flex-wrap: wrap; gap: var(--cd-space-3); }
.cd-content-page :is(a,button):focus-visible { outline: var(--cd-focus-width) solid var(--cd-focus-color); outline-offset: var(--cd-focus-offset); }
.cd-content-page [hidden] { display: none; }
/* Desktop-only emphasis; tablet/mobile keep their accepted geometry and connectors. */
@media (min-width: 64.001rem) {
 .cd-content-hero-art { gap: calc(var(--cd-space-4) + var(--cd-space-1)); }
 .cd-content-hero-art > span { width: calc(var(--cd-space-12) + var(--cd-space-2)); height: calc(var(--cd-space-12) + var(--cd-space-2)); }
 .cd-content-hero-art svg { width: calc(var(--cd-space-6) + var(--cd-space-1)); height: calc(var(--cd-space-6) + var(--cd-space-1)); }
 .cd-content-hero-art > span:not(:last-child)::after { width: calc(var(--cd-space-4) + var(--cd-space-1)); background: var(--cd-color-border); }
 .cd-content-steps li:not(:last-child)::before { background: var(--cd-color-border); }
}
@media (max-width: 64rem) {
 .cd-content-grid { grid-template-columns: minmax(0,1fr); }
 .cd-content-panel { grid-template-columns: minmax(0,1fr); }
 .cd-content-steps { grid-template-columns: minmax(0,1fr); gap: var(--cd-space-4); }
 .cd-content-steps li { display: grid; grid-template-columns: var(--cd-space-12) minmax(0,1fr); gap: var(--cd-space-4); }
 .cd-content-steps li:not(:last-child)::before { top: var(--cd-space-12); left: var(--cd-space-6); width: 1px; height: calc(100% + var(--cd-space-4) - var(--cd-space-12)); }
 .cd-content-step-number { margin-top: 0; }
 .cd-content-cta { align-items: stretch; flex-direction: column; }
}
@media (max-width: 40rem) {
 .cd-content-page { gap: var(--cd-space-8); }
 .cd-content-page .cd-surface { padding: var(--cd-space-4); }
 .cd-content-page h2 { font-size: var(--cd-font-lg); }
 .cd-content-facts { grid-template-columns: minmax(0,1fr); }
 .cd-content-hero { grid-template-columns: minmax(0,1fr); }
 .cd-content-hero-art { display: none; }
 .cd-content-tabs { grid-template-columns: minmax(0,1fr); }
 .cd-content-tabs .cd-pill { min-height: var(--cd-control-size); justify-content: flex-start; text-align: left; box-shadow: none; }
 .cd-content-tabs [aria-selected="true"]::after { content: ''; width: var(--cd-space-2); height: var(--cd-space-2); margin-inline-start: auto; flex-shrink: 0; border-radius: var(--cd-radius-pill); background: currentColor; }
 .cd-content-panel { gap: var(--cd-space-4); padding-top: var(--cd-space-4); }
 .cd-content-facts > div { display: grid; grid-template-columns: minmax(0,0.8fr) minmax(0,1.2fr); gap: var(--cd-space-3); }
 .cd-content-facts dd { margin: 0; }
 .cd-content-faq button { padding: var(--cd-space-4); font-size: var(--cd-font-md); }
 .cd-content-faq [role="region"] { padding: 0 var(--cd-space-4) var(--cd-space-4); }
 .cd-content-actions { flex-direction: column; }
 .cd-content-actions .cd-button { width: 100%; }
}

/* Opt-in editorial media treatment; page-specific dimensions stay with the page. */
.cd-content-media { position: relative; overflow: hidden; border-radius: var(--cd-radius-md); box-shadow: var(--cd-shadow-raised-soft); }
.cd-content-media::after { content: ''; position: absolute; inset: 0; border: 1px solid var(--cd-border-soft); border-radius: inherit; pointer-events: none; }
.cd-content-media > img { display: block; width: 100%; height: auto; object-fit: cover; border-radius: inherit; }
