/* Landing-only film canvas. The app and groups routes keep their own surfaces. */
.landing-cinema{background:#0e0d0c;color:#faf8f3;isolation:isolate;--muted:#d4d1ca;--rule:#ffffff30;--red:#ffada0}
.landing-cinema>.hero-media{position:fixed;inset:0;z-index:-1;pointer-events:none;height:100%;background-color:#0e0d0c}
.landing-cinema>.hero-media:after{background:linear-gradient(180deg,#0002,#0000 35%,#0003),#0008}
.landing-cinema>.hero-media video{height:100%;width:100%;object-fit:cover}
.landing-cinema .hero.cinema-hero{background:transparent;isolation:auto;overflow:visible}
.landing-cinema .hero-bottom{bottom:48px}
.landing-cinema .nav-shell.scrolled{background:#0e0d0ccc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.landing-cinema main>section:not(.cinema-hero){width:min(1200px,calc(100% - 96px));margin:0 auto 64px;padding:clamp(28px,4.5vw,64px);background:#0e0d0ca8;border:1px solid #ffffff30;border-radius:12px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.landing-cinema main>section:not(.cinema-hero)>.wrap{width:100%;margin:0}
.landing-cinema main>[id]{scroll-margin-top:24px}
.landing-cinema h2{font-size:clamp(32px,4.3vw,58px);line-height:1.08;font-weight:400;letter-spacing:-.035em}
.landing-cinema h3{font-weight:400;letter-spacing:-.025em;line-height:1.15}
.landing-cinema .split{gap:clamp(30px,5vw,72px)}
.landing-cinema .section-head{gap:32px;margin-bottom:44px}
.landing-cinema .section-head p,.landing-cinema .lead{color:var(--muted);font-size:18px;line-height:1.6}
.landing-cinema .eyebrow{font-size:11px;letter-spacing:.09em}
.landing-cinema .chapter-line{width:min(1100px,calc(100% - 128px));margin:0 auto 64px;padding:20px 0;color:#eeeae3;border-color:#ffffff40}
.landing-cinema .product-pair{padding:32px 0 0;background:transparent;gap:64px;border-top:1px solid var(--rule)}
.landing-cinema main>section.group-hero{margin-top:140px}
.landing-cinema .group-hero h1{font-size:clamp(40px,5.5vw,76px);font-weight:400;line-height:1.06}
.landing-cinema .group-demo{padding:0;background:transparent}
.landing-cinema .group-types{gap:32px}
.landing-cinema .group-types h3{font-size:27px}
.landing-cinema .phone-frame{box-shadow:0 24px 48px #0005;border-color:#252422;max-width:264px}
.landing-cinema .product-pair figcaption{max-width:300px}
.landing-cinema .interaction{border:0;gap:32px;min-height:380px}
.landing-cinema .step-buttons button{color:inherit;padding:26px 32px 26px 0}
.landing-cinema .step-buttons button strong{font-size:24px;line-height:1.2;font-weight:400}
.landing-cinema .step-buttons button[aria-pressed=true] span{color:#fff}
.landing-cinema .step-buttons button[aria-pressed=true]:after{color:#fff}
.landing-cinema .stage{background:#ffffff0c;border:1px solid var(--rule);border-radius:8px;padding:32px;min-width:0}
.landing-cinema .filed-row{border-color:var(--rule);font-size:19px}
.landing-cinema .filed-row small{font-size:10px;white-space:nowrap}
.landing-cinema .spoken{font-size:clamp(25px,3vw,36px);line-height:1.3}
.landing-cinema .identity h2{margin-top:20px}
.landing-cinema .dark .lead{color:var(--muted)}
.landing-cinema .context-row{border-color:var(--rule)}
.landing-cinema .context-row span{color:var(--muted)}
.landing-cinema .challenge-list{gap:0 40px}
.landing-cinema .challenge-list h3{font-size:28px}
.landing-cinema .challenge-list p{font-size:16px}
.landing-cinema .crew-record{background:#ffffff0a;border:1px solid var(--rule);border-radius:8px}
.landing-cinema .crew-record strong{font-weight:500}
.landing-cinema .crew-record small{font-size:13px;line-height:1.5}
.landing-cinema .crew-record>div>span:last-child:not(.avatar){margin-left:auto}
.landing-cinema .crew-note{color:#f4f2ed}
.landing-cinema .button{background:#f4f2ed;color:#171614;border-color:#f4f2ed;font-weight:500}
.landing-cinema .button:hover{background:#fff;border-color:#fff}
.landing-cinema .state-buttons button{color:inherit;border-color:#ffffff70;min-height:44px;border-radius:4px}
.landing-cinema .state-buttons button[aria-pressed=true]{background:#f4f2ed;color:#171614;border-color:#f4f2ed}
/* Paper remains paper: reset inherited dark-page tokens inside the artifacts. */
.landing-cinema .reward-paper,.landing-cinema .receipt{--muted:#625f59;--rule:#dbd9d4;--red:#b3261e;color:#0e0d0c;background:#fefdfb;box-shadow:0 24px 50px #0003}
.landing-cinema .reward-paper{border-radius:2px;border-top:0;padding:32px;transform:rotate(1deg)}
.landing-cinema .reward-paper h3{font-size:30px;font-weight:500}
.landing-cinema .artifact-label{color:var(--muted);font-size:10px!important}
.landing-cinema .print-slot{background:#090909;box-shadow:none}
.landing-cinema .flow-grid{gap:24px}
.landing-cinema .flow-grid h3{font-size:24px;line-height:1.25}
.landing-cinema .field{font-weight:400;color:#fff}
.landing-cinema .field input,.landing-cinema .field textarea{color:#fff;background:#ffffff0b;border-color:#ffffff70;border-radius:4px}
.landing-cinema .field input::placeholder,.landing-cinema .field textarea::placeholder{color:#c4c0b9;opacity:1}
.landing-cinema .field input:focus,.landing-cinema .field textarea:focus{background:#0e0d0c99}
.landing-cinema :focus-visible{outline-color:#fff}
.landing-cinema .form-message.bad{color:#ffb3a8}
.landing-cinema .footer{color:#eeeae3;padding-bottom:120px;gap:24px}
.landing-cinema .footer .wordmark{color:#fff}
.landing-cinema .footer .wordmark img{filter:brightness(0) invert(1)}
.film-control{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:30}
.landing-cinema #filmToggle{background:#0e0d0cd9;border-color:#ffffff80;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:24px;min-width:110px}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:800px){
 html:has(.landing-cinema){scroll-padding-top:132px}
 .landing-cinema main>section:not(.cinema-hero){width:calc(100% - 32px);padding:32px 24px;margin-bottom:32px;border-radius:10px}
 .landing-cinema .chapter-line{width:calc(100% - 48px);margin-bottom:32px;font-size:9px}
 .landing-cinema .section-head{margin-bottom:32px}
 .landing-cinema .section-head p,.landing-cinema .lead{font-size:17px}
 .landing-cinema .product-pair{gap:48px}
 .landing-cinema .interaction{gap:20px}
 .landing-cinema .step-buttons{gap:12px}
 .landing-cinema .step-buttons button{padding:16px 0}
 .landing-cinema .step-buttons button strong{font-size:18px}
 .landing-cinema .step-buttons button span{font-size:9px;letter-spacing:0}
 .landing-cinema .stage{padding:24px;min-height:330px}
 .landing-cinema .hero-bottom{bottom:40px}
 .landing-cinema .hero-bottom .text-link{max-width:30ch}
 .landing-cinema .challenge-list{column-gap:24px}
 .landing-cinema .challenge-list h3{font-size:25px}
 .landing-cinema .crew-record{padding:22px}
 .landing-cinema .field-row{grid-template-columns:1fr;gap:0}
 .landing-cinema .receipt-chapter .hero-receipt{transform:none}
 .landing-cinema .hero-art{padding-top:0}
 .landing-cinema .receipt-chapter .hero-art{width:100%}
 .landing-cinema .footer{padding-bottom:110px}
 .film-control{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}
}
@media(max-width:400px){
 .landing-cinema main>section:not(.cinema-hero){padding:28px 20px}
 .landing-cinema .challenge-list{grid-template-columns:1fr}
 .landing-cinema .stage{padding:18px}
 .landing-cinema .filed-row{flex-wrap:wrap;gap:4px}
 .landing-cinema .crew-record{padding:18px}
 .landing-cinema .reward-paper{padding:24px;transform:none}
 .landing-cinema .receipt{padding:22px}
 .landing-cinema .hero-bottom .text-link{max-width:24ch}
 .landing-cinema .flow-grid h3{font-size:21px}
}
@supports not (backdrop-filter:blur(12px)){.landing-cinema main>section:not(.cinema-hero){background:#0e0d0cdd}}
@media(prefers-reduced-transparency:reduce){.landing-cinema main>section:not(.cinema-hero){background:#191816}.landing-cinema .nav-shell.scrolled{background:#0e0d0c}}
@media print{.landing-cinema{background:white;color:black}.landing-cinema>.hero-media,.film-control{display:none!important}}
