.bushel-showcase { --column: 1360px; }
.tour-hero { padding: 52px 0 40px; }
.tour-hero h1 { max-width: 21ch; font-size: clamp(44px, 6.2vw, 78px); }
.tour-hero .product-lede { max-width: 65ch; }
.workspace-section { scroll-margin-top: 18px; }
.workspace-label { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:16px; }
.workspace-label h2 { margin:0; font-size:14px; font-weight:550; letter-spacing:-.02em; }
.workspace-label a { font-size:12px; text-decoration:none; }
.demo-panel { overflow:hidden; border:1px solid #35414b; border-radius:13px; background:#10151c; box-shadow:0 26px 65px -35px #27303380; }
.demo-windowbar { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 15px; min-height:48px; background:#202a32; color:#d7e1e7; }
.demo-windowbar > div { display:flex; align-items:center; gap:9px; }
.demo-windowbar strong { font-size:12px; font-weight:550; }
.live-dot { display:inline-block; width:6px; height:6px; background:#69e8a3; border-radius:50%; flex-shrink:0; }
.demo-badge { color:#b9c7cf; border:1px solid #566671; border-radius:4px; padding:2px 5px; font-size:10px; }
.demo-windowbar button { background:transparent; border:1px solid #52616d; border-radius:5px; color:#d8e5e8; font:500 11px system-ui,sans-serif; padding:6px 10px; cursor:pointer; min-height:30px; }
.demo-windowbar button:hover { background:#34444c; }
.demo-windowbar #expand-demo { font-size:19px; line-height:1; padding:4px 9px; }
.demo-windowbar #demo-zoom { display:none; }
.demo-viewport { position:relative; overflow:hidden; height:750px; background:#11161e; scrollbar-color:#718897 #18232f; }
.demo-viewport.is-panning { overflow:auto; }
#bushel-frame { display:block; border:0; width:100%; height:750px; transform-origin:top left; background:#11161e; }
#bushel-frame[hidden] { display:none; }
.demo-loading { position:absolute; inset:0; display:flex; flex-direction:column; gap:15px; align-items:center; justify-content:center; padding:25px; color:#c0d6d0; text-align:center; font-size:14px; background:#11161e; }
.demo-loading[hidden] { display:none; }
.demo-loading p { margin:0; }
.demo-unavailable { padding:0; }
.demo-fallback-preview { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:.24; }
.demo-fallback-card { position:relative; max-width:460px; margin:20px; padding:25px; border:1px solid #52616d; border-radius:10px; background:#17212bf5; color:#edf3f5; }
.demo-fallback-card h3 { margin:0 0 12px; font-size:23px; line-height:1.2; }
.demo-fallback-card p { font-size:14px; line-height:1.6; color:#c0d6d0; }
.demo-fallback-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:20px; }
.demo-fallback-actions a,.demo-fallback-actions button { padding:11px 15px; border:1px solid #759788; border-radius:6px; color:#12251c; background:#a8e4c4; font:600 13px system-ui,sans-serif; text-decoration:none; cursor:pointer; }
.mobile-demo-hint { display:none; color:#cad9df; background:#202a32; font-size:11px; line-height:1.6; margin:0; padding:12px 15px; }
.demo-panel:fullscreen { border:0; border-radius:0; padding:12px; display:flex; flex-direction:column; }
.demo-panel:fullscreen .demo-viewport { flex:1; }
.coach-kicker { font-size:9px; letter-spacing:.12em; font-weight:650; color:var(--accent); margin:0 0 8px; }
.tour-footnote { text-align:center; color:#756b5f; font-size:11px; margin:17px 10px 0; }
.demo-status { font-size:12px; color:#675b4c; text-align:center; margin:8px 0 0; }
.demo-status:empty { display:none; }
.guide-heading { display:grid; grid-template-columns:1.2fr 1fr; gap:55px; align-items:end; margin-bottom:33px; }
.guide-heading h2 { font-size:clamp(30px,3.2vw,43px); line-height:1.1; margin-bottom:0; }
.guide-heading > p { font-size:16px; line-height:1.75; color:var(--secondary); margin:0; max-width:45ch; }
.feature-guide-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.guide-card { padding:30px 32px; background:#fcfaf6; border:1px solid var(--border); border-radius:13px; }
.guide-card-top { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:23px; }
.guide-card-top > span { color:var(--accent); font-size:10px; letter-spacing:.09em; font-weight:650; }
.guide-card-top button { border:0; color:var(--accent); background:#eee6d9; border-radius:5px; font:500 11px system-ui,sans-serif; padding:8px 12px; cursor:pointer; }
.guide-card-top button:hover { background:#e3d4c0; }
.guide-card h3 { font-size:28px; line-height:1.13; margin-bottom:17px; }
.guide-card p,.guide-card li { color:var(--secondary); font-size:14px; line-height:1.75; }
.guide-card ul { padding-left:18px; margin:20px 0 0; }
.guide-card li { margin:8px 0; }
.guide-card li::marker { color:#aa8769; }
.guide-card .guide-note { font-size:12px; margin:19px 0 0; }
.guide-wide { grid-column:1/-1; }
.guide-wide > p { max-width:80ch; }
.format-guide { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; margin:27px 0 0; }
.format-guide b { font-size:13px; font-weight:600; color:var(--accent); }
.format-guide p { font-size:13px; line-height:1.7; margin:8px 0 0; }
.rmi-details { border:1px solid var(--border); border-radius:9px; margin-top:22px; padding:20px 28px; }
.rmi-details summary { cursor:pointer; font-size:14px; font-weight:550; }
.rmi-details > div { max-width:85ch; font-size:14px; color:var(--secondary); margin-top:20px; }
.release-timing { margin-top:20px; }
.independence { margin-top:10px !important; }
@media (max-width:1240px) {
  .demo-windowbar #demo-zoom { display:block; }
  .mobile-demo-hint { display:block; }
}
@media (max-width:800px) {
  .workspace-label a { display:none; }
  .guide-heading { gap:25px; }
  .guide-card { padding:25px; }
  .guide-card h3 { font-size:25px; }
}
@media (max-width:590px) {
  .demo-fallback-card { margin:10px; padding:14px; }
  .demo-fallback-card h3 { font-size:18px; margin-bottom:8px; }
  .demo-fallback-card p { font-size:12px; line-height:1.45; }
  .demo-fallback-actions { margin-top:12px; }
  .demo-fallback-actions a,.demo-fallback-actions button { padding:8px 12px; font-size:12px; }
  .tour-hero { padding:38px 0 30px; }
  .tour-hero h1 { font-size:clamp(38px,9.4vw,54px); }
  .wide-only { display:none; }
  .workspace-label h2 { font-size:13px; }
  .demo-windowbar { padding:9px 10px; gap:6px; }
  .demo-windowbar > div { gap:5px; }
  .demo-windowbar strong { font-size:10px; }
  .demo-badge { display:none; }
  .demo-windowbar button { padding:6px; font-size:10px; min-height:38px; }
  .demo-windowbar #expand-demo { padding:4px 6px; }
  .guide-heading { grid-template-columns:1fr; gap:20px; }
  .guide-heading h2 { font-size:32px; }
  .feature-guide-grid { grid-template-columns:1fr; }
  .guide-wide { grid-column:auto; }
  .format-guide { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
  .guide-card-top button { min-height:44px; }
  .rmi-details { padding:18px; }
  .rmi-details summary { font-size:13px; }
}
@media (prefers-reduced-motion:reduce) { .bushel-showcase *, .bushel-showcase *::before, .bushel-showcase *::after { scroll-behavior:auto !important; animation:none !important; transition:none !important; } }

/* The narration stays above the workspace; controls do not move between chapters. */
.tour-narration { border-top:1px solid var(--border); padding:20px 0 12px; min-height:145px; }
.tour-narration h2 { font-size:clamp(24px,3vw,34px); letter-spacing:-.035em; line-height:1.15; margin:0 0 7px; }
.tour-narration #coach-copy { font-size:16px; color:var(--secondary); line-height:1.5; margin:0; }
.tour-narration #tour-detail { font-size:12px; color:#756b5f; line-height:1.5; min-height:18px; margin:8px 0 0; }
.tour-playback { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:0 0 16px; }
.tour-playback button,.tour-playback a { border:1px solid #d5c6b4; border-radius:6px; background:#fcfaf6; color:#62472f; padding:9px 13px; min-height:40px; font:500 12px system-ui,sans-serif; cursor:pointer; text-decoration:none; }
.tour-playback #tour-toggle { min-width:115px; background:#7c3a16; border-color:#7c3a16; color:#fff9ee; }
.tour-playback button:disabled { opacity:.45; cursor:default; }
.tour-playback button:hover:not(:disabled),.tour-playback a:hover { filter:brightness(.94); }
.tour-playback button:focus-visible,.tour-playback a:focus-visible { outline:2px solid #7c3a16; outline-offset:3px; }
#tour-progress { font:500 11px system-ui,sans-serif; color:#756b5f; margin-left:5px; white-space:nowrap; }
.tour-chapters { display:flex; gap:5px; margin-left:2px; }
.tour-chapters i { width:20px; height:3px; border-radius:2px; background:#ddd2c5; }
.tour-chapters .current { background:#843e18; }
.tour-chapters .complete { background:#ad896b; }
.tour-playback [hidden] { display:none; }
@media(max-width:590px){
  .tour-narration { min-height:184px; padding-top:15px; }
  .tour-narration #coach-copy { font-size:14px; }
  .tour-playback { gap:6px; }
  .tour-playback button { padding:8px 10px; min-height:44px; }
  .tour-playback #tour-toggle { min-width:105px; }
  .tour-chapters { display:none; }
}

/* The tour's annotations sit above both iframe layers and never intercept input. */
.tour-overlay { position:absolute; inset:0 auto auto 0; z-index:3; overflow:hidden; pointer-events:none; }
.tour-overlay[hidden] { display:none; }
.tour-overlay * { pointer-events:none; }
.tour-overlay svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.tour-overlay path { fill:none; stroke:#ffe4a8; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.tour-overlay marker path { stroke-width:1.5; }
#tour-arrow { filter:drop-shadow(0 1px 2px #000b); }
#tour-callout { position:absolute; padding:12px 15px; background:#fff3d9; color:#59361e; border:1px solid #e6c992; border-radius:9px; box-shadow:0 3px 14px #0003; font:600 14px/1.35 system-ui,sans-serif; }
#tour-callout span { display:block; font-size:8px; letter-spacing:.13em; margin-bottom:4px; color:#92622f; }
#tour-callout strong { font-weight:600; }
@media(max-width:590px){ #tour-callout { padding:8px 10px; font-size:11px; } #tour-callout span { font-size:7px; margin-bottom:3px; } }
