.ra-theme .ra-dark { background:var(--ra-dark); color:var(--ra-on-dark); }
.ra-theme .ra-dark :focus-visible { outline-color:var(--ra-on-dark); }
.ra-theme .ra-dark a { color:var(--ra-on-dark); }
.ra-theme .ra-dark .ra-brand { color:var(--ra-on-dark); }
.ra-theme .ra-marketing-hero { display:grid; grid-template-columns:minmax(0,.43fr) minmax(0,.57fr); align-items:center; gap:32px; padding-block:48px; }
.ra-theme .ra-marketing-hero h1 { font:700 clamp(36px,4.5vw,64px)/1.08 var(--ra-font-display); letter-spacing:-.035em; max-width:13ch; text-wrap:balance; }
.ra-theme .ra-marketing-hero .ra-kicker { color:var(--ra-sage); }
.ra-theme .ra-marketing-hero .ra-lead { color:var(--ra-muted-on-dark); font-size:18px; max-width:38ch; }
.ra-theme .ra-marketing-hero .ra-button--primary { color:var(--ra-dark); background:var(--ra-canvas); }
.ra-theme .ra-marketing-hero .ra-button--primary:hover { background:var(--ra-sage); }
.ra-theme .ra-motion { min-width:0; }
.ra-theme .ra-motion-stage { position:relative; isolation:isolate; aspect-ratio:600/520; background:radial-gradient(ellipse at 50% 58%, #47423455, transparent 66%); }
.ra-theme .ra-ribbons { position:absolute; width:91%; height:100%; left:4.5%; top:0; object-fit:contain; transform:rotate(-3deg) scale(.96); transition:transform 700ms var(--ra-ease); }
.ra-theme .ra-motion[data-stage="1"] .ra-ribbons { transform:rotate(4deg) scale(1); }
.ra-theme .ra-motion[data-stage="2"] .ra-ribbons { transform:rotate(0) scale(.97); }
.ra-theme .ra-voice-dot { position:absolute; z-index:2; left:50%; top:50%; width:clamp(30px,5vw,64px); aspect-ratio:1; transform:translate(-50%,-50%); border-radius:50%; background:#FFF9ED; box-shadow:0 0 36px #F6C77B66; }
.ra-theme .ra-sound-path { position:absolute; inset:0; width:100%; height:100%; z-index:1; fill:none; stroke:#FFF9ED; stroke-width:1.8; opacity:.7; }
.ra-theme .ra-sound-path path { stroke-dasharray:1000; stroke-dashoffset:1000; transition:stroke-dashoffset 1000ms ease; }
.ra-theme .ra-motion[data-stage="1"] .ra-sound-path path, .ra-theme .ra-motion[data-stage="2"] .ra-sound-path path { stroke-dashoffset:0; }
.ra-theme .ra-motion-source { position:absolute; left:1%; top:1%; z-index:3; font:700 clamp(32px,4.5vw,68px)/1.7 var(--ra-font-indic); color:var(--ra-on-dark); }
.ra-theme .ra-motion-output { position:absolute; right:0; bottom:8%; z-index:3; font:400 clamp(30px,4.2vw,64px)/1.4 var(--ra-font-code); color:var(--ra-on-dark); text-transform:none; font-variant-ligatures:none; }
.ra-theme .ra-motion-output span { color:var(--ra-accent-on-dark); }
.ra-theme .ra-motion-caption { position:absolute; left:60%; top:45%; z-index:3; color:var(--ra-on-dark); font-size:14px; padding:4px 8px; background:var(--ra-dark); border-radius:4px; }
.ra-theme .ra-motion-sound { position:absolute; z-index:4; top:20%; left:49%; padding:4px 16px; border-radius:12px; font:400 36px/1.7 var(--ra-font-indic); color:var(--ra-dark); background:var(--ra-canvas); opacity:0; transition:opacity 180ms; }
.ra-theme .ra-motion[data-stage="1"] .ra-motion-sound { opacity:1; }
.ra-theme .ra-transport { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:12px; }
.ra-theme .ra-transport-stages { display:inline-flex; border:1px solid var(--ra-dark-border); border-radius:999px; overflow:hidden; background:rgba(255,249,237,.04); max-width:100%; }
.ra-theme .ra-transport-stages button { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 16px; border:0; border-right:1px solid var(--ra-dark-border); color:var(--ra-muted-on-dark); background:transparent; cursor:pointer; font:600 14px/1.2 var(--ra-font-ui,inherit); }
.ra-theme .ra-transport-stages button:last-child { border-right:0; }
.ra-theme .ra-transport-stages button[aria-pressed="true"] { background:var(--ra-canvas); color:var(--ra-dark); }
.ra-theme .ra-transport-play { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 16px; border:1px solid var(--ra-dark-border); border-radius:999px; color:var(--ra-on-dark); background:transparent; cursor:pointer; font:600 14px/1.2 var(--ra-font-ui,inherit); }
.ra-theme .ra-transport-play:hover { background:rgba(255,249,237,.08); }
.ra-theme .ra-transport-icon { display:inline-flex; width:18px; height:18px; flex-shrink:0; }
.ra-theme .ra-transport-icon img,.ra-theme .ra-transport-icon svg { width:18px; height:18px; display:block; }
.ra-theme .ra-transport-play .ra-transport-icon img { filter:brightness(0) invert(1); }
@media(max-width:480px){
 .ra-theme .ra-transport-stages button span:not(.ra-transport-icon),.ra-theme .ra-transport-play span:not(.ra-transport-icon){ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
 .ra-theme .ra-transport-stages button,.ra-theme .ra-transport-play { justify-content:center; padding-inline:14px; }
}
.ra-theme .ra-motion-description { min-height:2em; text-align:center; color:var(--ra-muted-on-dark); font-size:14px; }
.ra-theme .ra-comparison { padding-block:48px; display:grid; grid-template-columns:1fr 1.3fr; gap:48px; align-items:center; }
.ra-theme .ra-comparison h2 { font:700 32px/1.15 var(--ra-font-display); letter-spacing:-.025em; }
.ra-theme .ra-comparison-examples { display:flex; gap:32px; flex-wrap:wrap; align-items:center; }
.ra-theme .ra-comparison-examples code { font:400 32px/1.5 var(--ra-font-code); }
.ra-theme .ra-comparison-examples mark { background:transparent; color:var(--ra-accent); }
.ra-theme .ra-auth-layout { display:grid; grid-template-columns:.46fr .54fr; min-height:calc(100svh - 72px); }
.ra-theme .ra-auth-story { position:relative; overflow:hidden; padding:48px; background:var(--ra-dark); color:var(--ra-on-dark); }
.ra-theme .ra-auth-story h2 { font-size:clamp(32px,4vw,52px); line-height:1.12; letter-spacing:-.025em; }
.ra-theme .ra-auth-art { width:100%; max-height:440px; object-fit:contain; }
.ra-theme .ra-auth-content { padding:48px 24px; display:flex; align-items:center; justify-content:center; }
.ra-theme .ra-auth-content .ra-auth { width:100%; max-width:440px; padding:0; }
@media(max-width:767px){
 .ra-theme .ra-marketing-hero,.ra-theme .ra-comparison,.ra-theme .ra-auth-layout { grid-template-columns:1fr; }
 .ra-theme .ra-marketing-hero { padding-block:32px; gap:16px; }
 .ra-theme .ra-marketing-hero h1 { max-width:18ch; }
 .ra-theme .ra-motion-stage { min-height:300px; }
 .ra-theme .ra-motion-caption { left:58%; top:48%; font-size:12px; }
 .ra-theme .ra-motion-source { font-size:40px; }
 .ra-theme .ra-motion-output { font-size:36px; }
 .ra-theme .ra-auth-layout { min-height:auto; }
 .ra-theme .ra-auth-story { padding:24px; gap:16px; }
 .ra-theme .ra-auth-story h2 { margin-bottom:0; font-size:28px; }
 .ra-theme .ra-auth-art-wrap { min-height:200px; }
 .ra-theme .ra-auth-art { display:block; width:min(100%,280px); max-height:240px; margin-inline:auto; object-fit:contain; }
 .ra-theme .ra-auth-content { padding:24px 20px 40px; }
}
@media(prefers-reduced-motion:reduce){.ra-theme .ra-motion *{transition:none!important;animation:none!important;}}
