:root { --teal:#83b8b5; --amber:#d3ab72; --olive:#afbc90; --section-radius:clamp(28px,4vw,60px); }
.button { border-radius:999px; transition:background .2s,border-color .2s,transform .2s; }
.button:hover { transform:translateY(-2px); }
dialog { border-radius:28px; }
.cinema { position:relative; height:100svh; background:var(--bg); }
.cinema.film-ready { height:420svh; }
.cinema-stage.hero { position:sticky; top:0; height:100svh; min-height:0; aspect-ratio:auto; display:flex; align-items:center; padding:0 6%; overflow:hidden; }
.cinema .header { position:absolute; top:0; left:0; width:100%; z-index:4; background:linear-gradient(#090a09a6,transparent); border:0; opacity:var(--copy-opacity,1); }
.cinema .hero-image,.cinema-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; mask-image:none; }
.cinema-video { opacity:0; }
.cinema.has-frame .cinema-video { opacity:1; }
.cinema-stage.hero:before { display:block; background:linear-gradient(0deg,#090a09a6,transparent 20%),linear-gradient(90deg,#090a09d9,#090a0980 28%,transparent 55%); opacity:var(--shade-opacity,1); }
.cinema .hero-copy { width:36%; max-width:460px; padding:0; background:transparent; opacity:var(--copy-opacity,1); transform:translateY(calc(var(--intro-offset,0) * -1px)); }
.cinema .hero-description { max-width:350px; }
.cinema-navigation { position:absolute; bottom:34px; left:6%; right:6%; display:flex; align-items:center; justify-content:space-between; gap:20px; color:var(--ink); text-shadow:0 1px 10px #000; }
.scroll-cue { display:flex; gap:18px; align-items:center; font-size:13px; }
.scroll-cue>span { font-size:20px; }
.cinema-skip { font-size:13px; padding:10px 16px; border:1px solid #e7e2d447; border-radius:999px; background:#090a0966; backdrop-filter:blur(10px); }
.cinema-skip:hover { background:#20261bcc; }
.cinema-progress { height:2px; background:#e7e2d426; position:absolute; left:6%; right:6%; bottom:20px; overflow:hidden; border-radius:2px; }
.cinema-progress span { display:block; height:100%; background:var(--amber); transform:scaleX(var(--film-progress,0)); transform-origin:left; }
.post-cinema { position:relative; z-index:2; margin-top:-36px; background:var(--bg); border-radius:var(--section-radius) var(--section-radius) 0 0; overflow:clip; border-top:1px solid #69735a55; }
.audience { border-top:0; padding-top:32px; padding-bottom:30px; color:#bcc3ae; }
.section { position:relative; }
.features,.purchase { margin:0 3%; padding-left:4%; padding-right:4%; border:1px solid var(--line); border-radius:var(--section-radius); background:linear-gradient(125deg,#191e16,#10130f 70%); }
.workflow { border:0; }
.details { margin-top:30px; border-radius:var(--section-radius) var(--section-radius) 0 0; background:#0d100e; }
.feature-grid { border-top:0; }
.feature-grid article { grid-template-columns:52px 1fr; column-gap:24px; padding:30px 0; align-items:start; }
.feature-icon { display:flex; align-items:center; justify-content:center; width:50px; height:50px; border-radius:15px; color:var(--icon-color); border:1px solid color-mix(in srgb,var(--icon-color) 32%,transparent); background:color-mix(in srgb,var(--icon-color) 7%,transparent); grid-row:1/4; }
.feature-icon svg { width:25px; height:25px; stroke-width:1.5; }
.amber { --icon-color:var(--amber); }
.teal { --icon-color:var(--teal); }
.olive { --icon-color:var(--olive); }
.feature-grid article:nth-child(1) .feature-label { color:var(--amber); }
.feature-grid article:nth-child(2) .feature-label { color:var(--teal); }
.feature-grid article:nth-child(3) .feature-label { color:var(--olive); }
.feature-grid h3 { padding-top:8px; }
.feature-grid p { margin-top:14px; }
.product-figure img { border-radius:16px; }
.workflow-note { color:var(--teal); }
.offer { border-color:#697357; }
.purchase-button { background:#c0c9aa; border-color:#c0c9aa; }
.motion-ready [data-reveal] { opacity:0; transform:translateY(26px); transition:opacity .75s ease,transform .75s cubic-bezier(.22,1,.36,1); transition-delay:var(--reveal-delay,0ms); }
.motion-ready [data-reveal].is-visible { opacity:1; transform:none; }
@media(min-width:761px) and (max-height:650px) { .cinema .hero-copy{padding-top:40px}.cinema .hero h1{font-size:46px}.cinema .hero-description{margin:16px 0;font-size:15px}.cinema .hero-price{margin-top:12px} }
@media(max-width:760px) {
  .cinema.film-ready { height:360svh; }
  .cinema-stage.hero { padding:0; display:block; }
  .cinema .header { height:78px; }
  .cinema .hero-image,.cinema-video { object-fit:contain; object-position:center 33%; }
  .cinema .hero-image { filter:brightness(.8); }
  .cinema.has-frame .hero-image { visibility:hidden; }
  .cinema .hero-copy { position:absolute; left:7%; right:7%; width:auto; bottom:100px; max-width:460px; }
  .cinema .hero h1 { font-size:42px; }
  .cinema .hero-description { font-size:15px; line-height:1.65; margin:16px 0; max-width:400px; }
  .cinema .hero .eyebrow { margin-bottom:14px; }
  .cinema .hero-price { margin-top:16px; }
  .cinema .hero-actions { gap:18px; }
  .cinema .hero-actions .text-link { display:none; }
  .cinema-stage.hero:before { background:linear-gradient(0deg,#090a09 8%,#090a09bd 30%,transparent 68%); }
  .cinema-navigation { left:7%; right:7%; bottom:30px; }
  .cinema-progress { left:7%; right:7%; bottom:18px; }
  .scroll-cue,.cinema-skip { font-size:12px; }
  .cinema-skip { padding:8px 12px; }
  .features,.purchase { margin:0 4%; padding:46px 6%; }
  .feature-grid article { grid-template-columns:40px 1fr; gap:0 16px; }
  .feature-icon { width:40px; height:40px; border-radius:12px; }
  .feature-icon svg { width:22px;height:22px; }
  .feature-grid h3 { padding-top:5px; }
  .feature-grid p { font-size:16px; }
  .audience { padding-top:28px; }
}
@media(max-width:760px) and (max-height:700px) { .cinema .hero-copy{bottom:85px}.cinema .hero h1{font-size:34px}.cinema .hero-description{font-size:14px;line-height:1.45;margin:10px 0}.cinema .hero .eyebrow{margin-bottom:10px}.cinema .hero-price{margin-top:10px}.cinema .hero-image,.cinema-video{object-position:center 26%} }
@media(prefers-reduced-motion:reduce) {
  .cinema.film-ready { height:100svh; }
  .cinema .hero-copy,.cinema .header { opacity:1!important; transform:none!important; }
  .cinema-progress { display:none; }
  .motion-ready [data-reveal] { opacity:1;transform:none;transition:none; }
  .button:hover { transform:none; }
}

/* Let the product imagery carry the character; supporting type stays natural. */
.eyebrow,.mono { font-family:var(--body); letter-spacing:0; text-transform:none; }
.eyebrow,.hero .eyebrow { font-size:14px; }
.audience { font-family:var(--body); font-size:14px; color:var(--muted); }
.intro-heading .eyebrow { display:none; }
.product-disclosure { grid-column:1/-1; color:var(--muted); font-size:14px; line-height:1.75; max-width:780px; margin:0; padding-top:28px; border-top:1px solid var(--line); }
.product-disclosure strong { color:var(--ink); font-weight:500; }
.feature-label,.workflow-note,.product-figure figcaption { font-size:14px; }
@media(min-width:761px) and (max-width:1150px) { .intro-heading h2 { grid-column:1; }.intro-heading>p:last-child { grid-column:2; } }

[hidden] { display:none!important; }
.demo-gallery { padding-top:20px; }
.demo-heading { display:flex; align-items:end; justify-content:space-between; gap:48px; margin-bottom:34px; }
.demo-heading p { max-width:390px; color:var(--muted); margin:0; }
.demo-screen { background:#050605; border:1px solid var(--line); border-radius:24px; overflow:hidden; }
.demo-screen video { width:100%; aspect-ratio:16/9; display:block; object-fit:contain; }
.demo-caption { display:flex; align-items:baseline; gap:30px; margin:24px 0; }
.demo-caption p { color:var(--muted); margin:0; max-width:650px; }
.demo-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.demo-choice { text-align:left; padding:8px; border:1px solid var(--line); border-radius:18px; background:#11140f; color:var(--ink); }
.demo-choice img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:11px; display:block; }
.demo-choice span { display:block; padding:14px 8px 10px; font-size:16px; }
.demo-choice[aria-pressed=true] { border-color:var(--teal); background:#17211c; }
.demo-choice:hover { border-color:var(--ink); }
[data-demo-status]:not(:empty) { margin:18px 0 0; color:var(--amber); }
@media(max-width:760px) { .demo-heading,.demo-caption { display:block; }.demo-heading p,.demo-caption p{margin-top:18px}.demo-choices{grid-template-columns:1fr;gap:12px}.demo-choice{display:flex;align-items:center;gap:10px}.demo-choice img{width:34%}.demo-screen{border-radius:16px} }

.demo-choices { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.demo-choice { cursor:pointer; font-family:var(--body); }
.demo-choice span { padding-bottom:6px; }
.demo-choice small { display:block; padding:0 8px 10px; font-size:14px; color:var(--muted); }
.demo-caption { justify-content:space-between; align-items:center; }
.demo-caption h3 { margin:6px 0 0; }
.demo-caption .demo-meta { font-size:14px; color:var(--teal); margin:0; }
.demo-caption>p { max-width:520px; font-size:16px; }
.inspirations { display:grid; grid-template-columns:1fr 1fr; column-gap:8%; row-gap:42px; }
.inspiration-heading .eyebrow { color:var(--teal); margin-bottom:24px; }
.inspiration-copy p { color:var(--muted); margin:0 0 24px; }
.inspiration-copy p:first-child { color:var(--ink); }
.inspiration-copy p:last-child { margin-bottom:0; }
@media(min-width:761px) and (max-width:1100px) { .demo-choices { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
  .demo-choices { grid-template-columns:1fr; }
  .demo-choice span { padding:2px 8px 6px; }
  .demo-choice small { padding-bottom:0; }
  .demo-caption .demo-meta { margin-top:0; }
  .demo-caption>p { margin-top:12px; }
  .inspirations { grid-template-columns:1fr; gap:26px; }
}


/* Visible buying information, integrated into the offer rather than an alert. */
.product-disclosure a { display:inline-block; color:var(--teal); text-decoration:underline; text-underline-offset:4px; margin-top:8px; }
.purchase { align-items:start; }
.purchase-context>p { margin-bottom:0; }
.compatibility { margin-top:32px; padding-top:26px; border-top:1px solid var(--line); scroll-margin-top:32px; }
.compatibility h3 { font-size:24px; margin:0 0 20px; }
.system-list { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:0 0 20px; }
.system-list dt { color:var(--ink); font-size:16px; font-weight:500; margin-bottom:6px; }
.system-list dd { margin:0; color:var(--muted); font-size:14px; line-height:1.7; }
.purchase .compatibility p { font-size:14px; line-height:1.7; margin:0 0 12px; max-width:440px; color:var(--muted); }
.purchase .compatibility .platform-note { margin:0; }
.installation-note { padding:20px; margin:24px 0; border:1px solid var(--line); border-radius:18px; background:#0b0e0b; }
.installation-note h3 { font-family:var(--body); color:var(--amber); font-size:16px; font-weight:500; margin:0 0 10px; }
.purchase .installation-note p { font-size:14px; line-height:1.75; color:var(--muted); margin:0; }
@media(max-width:760px) {
  .compatibility { margin-top:28px; }
  .installation-note { padding:18px; margin:20px 0; }
}
@media(max-width:380px) { .system-list { grid-template-columns:1fr; gap:16px; } }
