/* Tour only. Shared public-design owns fonts/grid/controls; site-chrome owns header/footer. */
.product-tour { font-size: 18px; line-height: 1.6; color: var(--ink); }
.product-tour .tour-shell { padding-block: 0; }
.product-tour h1, .product-tour h2, .product-tour h3, .product-tour strong, .product-tour dt { font-weight: 500; }
.product-tour h1 { max-width: 24ch; font-size: 56px; line-height: 1.06; letter-spacing: -.035em; margin: 0 0 24px; text-wrap: pretty; }
.product-tour h2 { font-size: 42px; line-height: 1.12; letter-spacing: -.035em; margin: 0 0 24px; text-wrap: pretty; }
.product-tour h3 { font-size: 22px; line-height: 1.3; margin: 0 0 16px; }
.product-tour p { max-width: 62ch; margin: 0 0 24px; }
.product-tour p:last-child { margin-bottom: 0; }
.product-tour .tour-lead { font-size: 21px; line-height: 1.6; margin-bottom: 16px; }
.product-tour figure, .product-tour dl { margin: 0; min-width: 0; }
.product-tour dd { margin: 0; }
.product-tour figcaption { max-width: 62ch; }
.product-tour figure > figcaption:first-child { margin-bottom: 24px; }
.product-tour figure > figcaption h3 { margin: 0; }
.product-tour a:not(.product-button) { color: var(--primary); text-underline-offset: 4px; }
.product-tour .tour-dark a:not(.product-button),
.product-tour .tour-dark a:not(.product-button):is(:visited, :hover, :active) { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.product-tour .tour-dark a:not(.product-button):focus-visible { outline: 2px solid var(--on-dark-muted); outline-offset: 5px; }
.product-tour :focus-visible { outline: 2px solid var(--primary); outline-offset: 5px; }
.product-tour [id] { scroll-margin-top: 96px; }
.product-tour .tour-alias { display: block; height: 0; }
.product-tour .tour-hero { padding-block: 48px; }
.product-tour .tour-index { margin-block: 24px; }
.product-tour .tour-index ul { padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 0 24px; list-style: none; }
.product-tour .tour-index a { display: inline-flex; align-items: center; min-height: 44px; font-size: 16px; text-decoration: none; }
.product-tour .tour-index a:hover { text-decoration: underline; }
.product-tour .tour-availability { font-size: 16px; color: var(--mute); }
.product-tour .tour-dark { background: var(--dark); color: var(--on-dark-muted); border-radius: 40px 40px 0 0; padding-block: 80px; }
.product-tour .tour-dark .tour-shell { color: var(--on-dark-muted); }
.product-tour .tour-dark :is(h2,h3,dt,strong) { color: #fff; }
.product-tour .tour-split { display: grid; grid-template-columns: minmax(0,40fr) minmax(0,60fr); gap: 48px; align-items: start; }
.product-tour .tour-copy { min-width: 0; }
.product-tour .tour-relations { padding: 24px; border: 1px solid var(--mute); background: var(--dark-card); border-radius: 24px; }
.product-tour .tour-relation-groups { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 24px; }
.product-tour .tour-relation-group { min-width: 0; }
.product-tour .tour-relation-group:first-child { grid-column: 1; grid-row: 1; }
.product-tour .tour-relation-group:last-child { grid-column: 2; grid-row: 1; }
.product-tour .tour-relation-group h3 { padding-bottom: 16px; border-bottom: 1px solid var(--mute); }
.product-tour .tour-relation-group dl > div + div { margin-top: 24px; }
.product-tour .tour-relation-group dt { margin-bottom: 8px; }
.product-tour .tour-relation-connector { grid-column: 1 / -1; margin: 24px 0 0; padding-top: 16px; border-top: 2px solid var(--primary); font-size: 16px; }
.product-tour .tour-materials { margin-top: 56px; padding-top: 56px; border-top: 1px solid var(--mute); }
.product-tour .tour-definitions > div { display: grid; grid-template-columns: minmax(145px,30fr) minmax(0,70fr); gap: 24px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.product-tour .tour-definitions > div:first-child { border-top: 1px solid var(--line); }
.product-tour .tour-dark .tour-definitions > div { border-color: var(--mute); }
.product-tour .tour-definitions dt { font-size: 18px; line-height: 1.6; }
.product-tour .tour-section { padding-block: 80px; }
.product-tour .tour-specification { padding: 24px; background: var(--surface-2); border-radius: 24px; }
.product-tour .tour-task-ground { margin-top: 24px; }
.product-tour .tour-task-ground h3 { margin-bottom: 16px; }
.product-tour .tour-integrations { background: var(--surface-2); }
.product-tour .tour-connection-labels { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: start; gap: 16px; margin-bottom: 24px; }
.product-tour .tour-connection-labels h3 { margin-bottom: 8px; }
.product-tour .tour-connection-labels p { font-size: 16px; }
.product-tour .tour-mcp-label { display: flex; align-items: center; gap: 12px; text-align: center; font-size: 22px; line-height: 1.3; font-weight: 500; }
.product-tour .tour-mcp-label::before, .product-tour .tour-mcp-label::after { content: ''; height: 1px; width: 24px; background: var(--primary); }
.product-tour .tour-connection figcaption { font-size: 18px; }
.product-tour .tour-integration-status { border-top: 1px solid var(--line); padding-top: 24px; margin-top: 24px; }
.product-tour .tour-integration-status h3 { margin-bottom: 16px; }
.product-tour .tour-close { padding-block: 48px; background: var(--surface-2); }
.product-tour .tour-close > .tour-shell { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 32px; align-items: center; }
.product-tour .tour-close h2 { font-size: 32px; margin-bottom: 16px; }
.product-tour .tour-close-links { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
.product-tour .tour-close-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 16px; }
@media(min-width:801px) and (max-width:1099px) {
 .product-tour .tour-split { grid-template-columns: minmax(300px,40fr) minmax(300px,60fr); gap: 32px; }
 .product-tour .tour-definitions > div { grid-template-columns: minmax(0,1fr); gap: 8px; }
 .product-tour .tour-connection-labels { gap: 8px; }
 .product-tour .tour-mcp-label { gap: 8px; }
 .product-tour .tour-mcp-label::before, .product-tour .tour-mcp-label::after { width: 12px; }
 .product-tour .tour-close > .tour-shell { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:1099px) {
 .product-tour .tour-relation-groups { grid-template-columns: minmax(0,1fr); }
 .product-tour .tour-relation-group:first-child, .product-tour .tour-relation-group:last-child { grid-column: auto; grid-row: auto; }
 .product-tour .tour-relation-connector { grid-column: auto; margin: 24px 0; border-top: 0; border-left: 2px solid var(--primary); padding: 8px 0 8px 16px; }
}
@media(max-width:800px) {
 .product-tour { font-size: 17px; }
 .product-tour h1 { font-size: 38px; line-height: 1.1; }
 .product-tour h2 { font-size: 32px; line-height: 1.15; }
 .product-tour h3 { font-size: 21px; }
 .product-tour .tour-lead { font-size: 19px; }
 .product-tour .tour-hero { padding-block: 32px 40px; }
 .product-tour .tour-index ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 24px; }
 .product-tour .tour-split { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .product-tour .tour-section, .product-tour .tour-dark { padding-block: 56px; }
 .product-tour .tour-dark { border-radius: 24px 24px 0 0; }
 .product-tour .tour-relations, .product-tour .tour-specification { padding: 20px; border-radius: 20px; }
 .product-tour .tour-materials { margin-top: 40px; padding-top: 40px; }
 .product-tour .tour-definitions > div { grid-template-columns: minmax(0,1fr); gap: 8px; padding-block: 20px; }
 .product-tour .tour-definitions dt { font-size: 17px; }
 .product-tour .tour-connection-labels { grid-template-columns: minmax(0,1fr); gap: 12px; }
 .product-tour .tour-mcp-label { flex-direction: column; justify-self: start; gap: 12px; font-size: 21px; }
 .product-tour .tour-mcp-label::before, .product-tour .tour-mcp-label::after { height: 12px; width: 1px; }
 .product-tour .tour-connection figcaption { font-size: 17px; }
 .product-tour .tour-close { padding-block: 40px; }
 .product-tour .tour-close > .tour-shell { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .product-tour .tour-close h2 { font-size: 28px; }
 .product-tour .tour-close-links { align-items: stretch; flex-direction: column; }
 .product-tour .tour-close-links .product-button { width: 100%; }
}
@media(max-width:500px) { .product-tour [id] { scroll-margin-top: 84px; } }
