.landing-home{background:var(--navy-deep);font-family:var(--font-display);font-optical-sizing:auto}
.landing-home input,.landing-home button,.landing-home .btn{font-family:var(--font-display)}
.landing-home main{background:var(--paper-tint)}
.landing-home footer{margin:0;background:var(--navy-deep);color:var(--on-navy-muted);border-top:1px solid var(--navy-rule)}
.landing-home footer .simple-copyright{color:var(--on-navy-muted)}

.home-hero{background:radial-gradient(900px 520px at 78% 18%,var(--navy-glow),transparent 70%),linear-gradient(180deg,var(--navy-deep),var(--ink));color:var(--on-navy);overflow:hidden}
.home-hero :focus-visible,.home-wall :focus-visible,.landing-home footer :focus-visible{outline-color:var(--sky)}
.home-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-4);padding-bottom:var(--space-4)}
.home-brand{display:inline-flex;align-items:center;gap:10px;min-height:var(--target);color:var(--on-navy);text-decoration:none;font:var(--weight-heading) var(--text-title)/1 var(--font);font-stretch:108%;letter-spacing:-.01em}
.home-navlink{display:inline-flex;align-items:center;min-height:var(--target);color:var(--sky);font-weight:600;font-size:var(--text-small);text-decoration:none}
.home-navlink:hover{text-decoration:underline}

.home-hero-grid{display:grid;grid-template-columns:1fr;align-items:center;padding-top:56px;padding-bottom:96px}
.home-eyebrow{margin:0 0 20px;color:var(--sky);font-size:var(--text-caption);font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.home-copy h1{margin:0;max-width:15em;font-family:var(--font-display);font-size:var(--text-hero);font-weight:800;font-stretch:100%;line-height:1.03;letter-spacing:-.028em;color:var(--on-navy)}
.home-subhead{margin:24px 0 0;max-width:30em;color:var(--on-navy-muted);font-size:var(--text-title);line-height:1.45;font-weight:400}
.home-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-4);margin:36px 0 0}
.home-cta{padding:0 28px;box-shadow:0 10px 30px var(--shadow-deep)}
.home-cta:hover{background:var(--copper-deep)}
.home-live{display:inline-flex;align-items:center;gap:10px;color:var(--on-navy-muted);font-size:var(--text-small);font-weight:500}
.home-live::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sky)}

.home-demo{scroll-margin-top:var(--space-3)}
.home-demo-grid{display:grid;grid-template-columns:minmax(0,480px);justify-content:center;padding-top:96px;padding-bottom:96px}
.home-form{width:min(100%,480px);padding:36px;border:1px solid var(--rule);border-radius:12px;background:var(--paper);box-shadow:0 24px 60px var(--shadow-soft)}
.home-form h2{margin:0;font-family:var(--font-display);font-size:var(--text-title);font-weight:700;font-stretch:100%;letter-spacing:-.015em}
.home-form:has(.access-done:not([hidden]))>h2{display:none}
.home-form .access-form{max-width:none;margin:var(--space-4) 0 0}
.home-form .access-done{margin:0}
.home-form .access-done h2{line-height:1.3}

.home-wall{background:var(--navy-deep);color:var(--on-navy-muted);padding:72px 0 56px}
.home-wall h2{margin:0 0 32px;text-align:center;font-family:var(--font-display);font-size:var(--text-caption);font-weight:600;font-stretch:100%;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}
.wall{overflow:hidden}
.wall-track{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:36px 56px;margin:0;padding:0;list-style:none}
.wall-track li{flex:none;display:flex;align-items:center}
.wall-track img{display:block;max-width:none;opacity:.88}
.wall-name{color:var(--on-navy);opacity:.82;font-size:var(--text-small);font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.wall[data-moving]{-webkit-mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent);mask-image:linear-gradient(90deg,transparent,black 6%,black 94%,transparent)}
.wall[data-moving] .wall-track{flex-wrap:nowrap;justify-content:flex-start;width:max-content;padding:0 56px 0 112px;animation:wall-scroll 70s linear infinite}
.wall[data-moving]:hover .wall-track,.wall[data-moving]:focus-within .wall-track,.wall[data-paused] .wall-track{animation-play-state:paused}
@keyframes wall-scroll{to{transform:translateX(calc(56px - 50%))}}
.wall-controls{margin:28px 0 0;text-align:center}
.wall-toggle{min-height:var(--target);padding:0 var(--space-3);border:1px solid var(--navy-rule);border-radius:999px;background:transparent;color:var(--on-navy-muted);font-size:var(--text-caption);font-weight:600;cursor:pointer}
.wall-toggle:hover{color:var(--on-navy);border-color:var(--on-navy-muted)}
.wall[data-moving]{cursor:pointer}
.wall-toggle{opacity:0;transition:opacity var(--exit)}
.home-wall:hover .wall-toggle,.wall-toggle:focus-visible,.wall[data-paused]+.wall-controls .wall-toggle{opacity:1}

@media (max-width:980px){
  .home-hero-grid{grid-template-columns:1fr;gap:56px;padding-top:32px;padding-bottom:72px}
  .home-demo-grid{padding-top:64px;padding-bottom:64px}
}
@media (max-width:640px){
  .home-nav{padding-top:var(--space-3);padding-bottom:var(--space-3)}
  .home-brand{font-size:var(--text-body)}
  .home-brand svg{width:26px;height:26px}
  .home-copy h1{font-size:calc(2 * var(--text-hero) / 3)}
  .home-subhead{font-size:var(--text-body)}
  .home-actions .btn{flex:1 1 100%}
  .home-form{padding:var(--space-4)}
  .home-wall{padding:56px 0 40px}
  .wall-track{zoom:.8}
}
