.join-section{padding:3.5rem 0}.join-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.join-intro h1{font-size:clamp(2.8rem,5vw,4.5rem);line-height:1.12;margin:1.4rem 0}.join-lead{font-size:1.15rem;color:#b8cbd8}.join-benefits{display:grid;gap:1.5rem;margin:2rem 0}.join-benefits>div{border-left:3px solid var(--cyan);padding-left:1rem}.join-benefits strong{font-size:1.05rem}.join-benefits p,.join-help{color:#b8cbd8}.join-panel{padding:2rem;min-width:0}.join-panel h2,.join-app-panel h2{font-family:var(--font-display);font-size:2rem}.join-panel fieldset{padding:0;border:0;min-width:0}.join-panel label{display:block;margin:1rem 0 .4rem;font-size:1rem}.join-panel input,.join-panel select{font-size:1rem;min-height:48px;max-width:100%}.join-panel .join-check{display:flex;align-items:flex-start;gap:.75rem;margin:1.3rem 0}.join-check input{flex:0 0 20px;width:20px;min-height:20px;margin-top:.3rem;accent-color:var(--cyan);appearance:auto;-webkit-appearance:auto;background:none;border:0;padding:0}.join-help{font-size:.875rem;margin-top:.35rem}.join-notice{padding:1rem;margin:1rem 0;background:var(--cyan-dim);border:1px solid var(--cyan-glow);border-radius:8px;color:var(--text)}.join-submit{width:100%;min-height:48px;font-size:1rem}.join-panel fieldset:disabled .join-submit{opacity:.5;cursor:not-allowed}.join-app-section{padding:0 0 3rem}.join-app-panel{display:flex;gap:2rem;justify-content:space-between;align-items:center;border-top:1px solid var(--border-hi);padding-top:2rem}.join-app-links{display:flex;flex-wrap:wrap;gap:.75rem}.join-app-links a{min-height:48px}.join-text-link,.join-panel p a{color:var(--cyan);text-decoration:underline}.join-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}#signup-status:not(:empty){margin-top:1rem;color:#ffcf92}#signup-success{margin-top:1rem}#signup-success p{margin-top:1rem}.join-panel [hidden]{display:none!important}.join-panel :focus-visible,.join-app-links a:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}@media(max-width:900px){.join-layout{grid-template-columns:1fr;gap:2rem}.join-section{padding-top:2rem}.join-intro h1{max-width:650px}.join-app-panel{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.join-panel{padding:1.25rem}.join-panel .form-grid{grid-template-columns:1fr;gap:0}.join-app-links,.join-app-links a{width:100%}}
