/* One shared presentation header and footer, including the product slides. */
.presentation,.presentation.product-slide{
 --site-header-height:76px;
 --site-footer-height:64px;
 --demo-gap:clamp(24px,3.2svh,40px);
 max-width:1440px;
 min-height:100svh;
 padding:0 clamp(18px,4vw,60px);
}
.presentation .masthead{
 display:flex;
 height:var(--site-header-height);
 max-width:1280px;
 margin:0 auto;
}
.presentation .logo{width:118px}
.presentation #scene{min-height:calc(100svh - var(--site-header-height) - var(--site-footer-height))}
.presentation.product-slide #scene{height:calc(100svh - var(--site-header-height) - var(--site-footer-height));min-height:0}
.product-frame{
 width:min(100%,1280px,calc((100svh - var(--site-header-height) - var(--site-footer-height) - var(--demo-gap) * 2) * 16 / 9));
}
.presentation .controls{
 height:var(--site-footer-height);
 min-height:var(--site-footer-height);
 max-width:1280px;
 margin:0 auto;
 padding:0;
 gap:20px;
 flex-wrap:nowrap;
}
.presentation .controls nav{margin-left:auto;gap:18px}
.presentation .tools,.investigation-controls{gap:16px}
.investigation-controls{padding:0;border:0}
.quiet,.arrow-button,.position{font-size:14px;min-height:44px}
.primary:focus-visible,.arrow-button:focus-visible,.position:focus-visible{outline:2px solid #0d75ff;outline-offset:4px}
.ticket-asset{width:min(100%,1000px)}
.ticket-asset .ticket-meta{font-size:max(14px,1.53333cqw)}
.ticket-asset .ticket-status{font-size:max(14px,1.46667cqw)}
.ticket-asset .author-identity strong{font-size:max(16px,1.8cqw)}
.ticket-asset .request-text{font-size:clamp(18px,2.6cqw,27px)}
.ticket-asset .attachment{font-size:max(14px,1.33333cqw)}
.narrative-layout{width:min(100%,1000px);margin:0 auto}
.slide.ticket-stage,.slide.orientation-slide{padding:20px 0 12px}
.slide .narrative-title{max-width:none;font-size:32px;font-weight:500;line-height:1.12;letter-spacing:-.4px;margin:0 0 28px;text-align:left}
@media(max-width:800px){
 .presentation,.presentation.product-slide{padding:0 18px}
 .presentation .logo{width:100px}
 .presentation.product-slide{--site-footer-height:108px}
 .presentation.product-slide #scene{height:auto;min-height:calc(100svh - var(--site-header-height) - var(--site-footer-height));align-items:flex-start;padding:20px 0}
 .product-frame{width:100%;aspect-ratio:auto;height:var(--frame-height,600px)}
 .presentation .controls{height:auto;position:sticky;bottom:0;background:#fff;z-index:5;gap:0}
 .presentation.product-slide .controls{padding:8px 0;flex-direction:column;align-items:stretch}
 .presentation.product-slide .tools{justify-content:flex-start;gap:16px}
 .presentation .controls nav{width:100%;justify-content:space-between;gap:12px}
 .presentation .investigation-controls{gap:16px;padding:0}
 .presentation .tools .quiet{font-size:14px}
 .ticket-asset .ticket-header{padding:24px}
 .ticket-asset h2{font-size:24px;margin-top:16px}
 .ticket-asset .ticket-body{margin:0 24px}
 .ticket-asset .initial-message{padding:24px 0}
 .ticket-asset .message-author{gap:12px}
 .ticket-asset .avatar{width:36px;height:36px;font-size:16px}
 .ticket-asset .request-text,.ticket-asset .request-text+.request-text{margin-top:16px}
 .ticket-asset .attachment{padding:8px 10px;gap:8px;margin-top:16px}
 .ticket-asset .attachment svg{width:20px;height:20px}
 .slide .narrative-title{font-size:28px;margin-bottom:24px}
 .slide.ticket-stage,.slide.orientation-slide{align-self:flex-start;padding:24px 0 30px}
}
@media(max-width:440px){
 .primary{padding:10px 16px}
 .ticket-asset .ticket-header{padding:20px}
 .ticket-asset .ticket-body{margin:0 20px}
 .ticket-asset .ticket-meta{gap:8px}
 .ticket-asset h2{font-size:23px}
}
