/* Access and legal routes share the marketing site's Film surfaces and type. */
.waitlist-layout{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(48px,7vw,104px);align-items:start;padding-top:80px}
.waitlist-intro.secondary-hero{padding:0;position:sticky;top:calc(var(--header-height) + 48px)}
.waitlist-intro h1{max-width:390px}
.waitlist-intro>p{max-width:380px}
.waitlist-intro>p+p{font-size:16px;line-height:1.55;margin-top:32px}
.waitlist-intro .text-link{margin-top:28px}
.waitlist-panel{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:32px}
.waitlist-page p{font-size:16px}
.waitlist-requirements{margin-bottom:24px}
.waitlist-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.waitlist-field{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:16px;color:var(--ink)}
.waitlist-wide{grid-column:1/-1}
.waitlist-field input,.waitlist-field select,.waitlist-field textarea{width:100%;min-height:48px;padding:11px 12px;border:1px solid #B7B5AE;border-radius:6px;background:var(--panel);color:var(--ink);font:400 17px/1.4 var(--font-reading);box-shadow:none}
.waitlist-field input::placeholder,.waitlist-field textarea::placeholder{color:#747871;opacity:1}
.waitlist-field input:focus-visible,.waitlist-field select:focus-visible,.waitlist-field textarea:focus-visible,.waitlist-consent input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.waitlist-field [aria-invalid=true],.waitlist-consent [aria-invalid=true]{border-color:var(--action);outline-color:var(--action)}
.waitlist-field textarea{resize:vertical;min-height:114px}
.waitlist-goal{margin-top:20px}
.waitlist-summary{margin-bottom:28px;padding:20px;background:var(--tint-blue);border:1px solid var(--line);border-radius:6px;overflow-wrap:anywhere}
.waitlist-summary .waitlist-summary-label{font-weight:600;color:var(--ink);margin-bottom:8px}
.waitlist-summary p{font-size:15px;line-height:1.5}
.waitlist-summary .waitlist-summary-note{margin-top:12px}
.waitlist-agreement{margin-top:24px}
.waitlist-consent{display:flex;gap:12px;align-items:flex-start;min-height:44px;cursor:pointer;color:var(--muted);font-size:15px;line-height:1.5}
.waitlist-consent input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--teal);cursor:pointer}
.waitlist-legal-links{display:flex;flex-wrap:wrap;gap:4px 24px;padding-left:32px}
.waitlist-legal-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--border-strong);font-size:15px;color:var(--ink)}
.waitlist-legal-links a:hover{color:var(--action)}
.waitlist-action{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.waitlist-plan{margin-bottom:16px;display:flex;gap:16px;flex-wrap:wrap}
.waitlist-plan strong{color:var(--ink);font-weight:600}
.waitlist-submit.button{width:100%;justify-content:space-between;background:var(--action);color:var(--on-action);border-color:transparent;box-shadow:inset 0 1px 0 rgb(255 255 255 / .12);backdrop-filter:none;-webkit-backdrop-filter:none}
.waitlist-submit.button:hover{background:color-mix(in srgb,var(--action) 88%,var(--deep));border-color:transparent}
.waitlist-submit .button-arrow{background:var(--cream);border-color:transparent;box-shadow:none;color:var(--deep)}
.waitlist-submit:disabled{cursor:wait;opacity:.7}
.waitlist-note:not(:empty),.waitlist-failure,.waitlist-pending,.waitlist-draft-receipt{margin-top:16px}
.waitlist-note.is-error,.waitlist-failure{color:var(--action);font-weight:600}
.waitlist-draft-receipt{color:var(--success)}
.waitlist-done{padding:32px 0}
.waitlist-done h2{font-size:32px;line-height:1.15;margin-bottom:16px}
.waitlist-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.legal-page article{max-width:920px;margin-inline:auto}
.legal-page .secondary-hero{padding-bottom:48px}
.legal-page .secondary-hero>p{max-width:760px}
.legal-page .legal-date{font-size:15px;margin-top:24px}
.legal-section{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;border-top:1px solid var(--line);padding:32px 0}
.legal-section h2{font-size:24px;line-height:1.2;text-wrap:wrap}
.legal-section p{font-size:18px;line-height:1.6}
.legal-section p+p{margin-top:20px}
.legal-contact{display:inline-flex;min-height:44px;align-items:center;margin-top:8px;text-decoration:underline;text-underline-offset:5px;font-size:18px;overflow-wrap:anywhere}
.legal-contact:hover{color:var(--action)}
@media(max-width:1023px){.waitlist-layout{gap:40px;grid-template-columns:minmax(0,3fr) minmax(0,5fr);padding-top:64px}.waitlist-panel{padding:24px}.waitlist-fields{gap:20px 16px}.waitlist-intro h1{font-size:40px}.legal-section{grid-template-columns:180px minmax(0,1fr);gap:32px}}
@media(max-width:767px){.waitlist-layout{display:block;padding-top:48px}.waitlist-intro.secondary-hero{position:static;padding-bottom:40px}.waitlist-intro h1{max-width:none;font-size:36px}.waitlist-intro>p{max-width:560px}.waitlist-intro>p+p{margin-top:20px}.waitlist-intro .text-link{margin-top:16px}.waitlist-panel{padding:24px 20px}.waitlist-fields{grid-template-columns:1fr}.waitlist-summary{padding:16px}.legal-page .secondary-hero{padding-top:48px;padding-bottom:32px}.legal-section{display:block;padding:24px 0}.legal-section h2{margin-bottom:16px}.legal-section p{font-size:17px}.legal-contact{font-size:16px}}
@media(prefers-reduced-motion:reduce){.waitlist-submit{transition:none}}
