:root{--bg: #000000;--fg: #ffffff;--muted: #9a9a9a;--muted-dark: #5e5e5e;--border: #2a2a2a;--border-strong: #444;--card: #0d0d0d;--accent: #ffffff;--error: #ff6b6b;--success: #7dcea0;--chip: #1a1a1a;--chip-active: #ffffff;--chip-active-fg: #000000;--focus: #ffffff;--radius: 6px;--header-h: 72px;--font-display: "League Spartan", Helvetica, Arial, sans-serif;--font-body: Helvetica, Arial, sans-serif;--max: 760px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}a:hover{opacity:.85}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{position:sticky;top:0;z-index:100;height:var(--header-h);display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;background:#000000eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.logo-link{display:flex;align-items:center;gap:.75rem;text-decoration:none}.logo-link img{height:36px;width:auto}.logo-wordmark{font-family:var(--font-display);font-weight:600;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;color:var(--fg)}.header-tag{display:none;font-family:var(--font-display);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}@media (min-width: 720px){.header-tag{display:block}.site-header{padding:0 2rem}.logo-link img{height:42px}}.progress-wrap{position:sticky;top:var(--header-h);z-index:90;background:var(--bg);border-bottom:1px solid var(--border);padding:.65rem 1.25rem .75rem}.progress-meta{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.45rem;font-size:.8rem;color:var(--muted);font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase}.progress-bar{height:3px;background:var(--border);border-radius:2px;overflow:hidden}.progress-fill{height:100%;width:0%;background:var(--fg);transition:width .25s ease}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border)}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000008c,#000000eb 70%,#000),url(/getty-skyline.jpg) center/cover no-repeat;opacity:.55;pointer-events:none}.hero-inner{position:relative;max-width:var(--max);margin:0 auto;padding:2.5rem 1.25rem 2rem}.tagline{font-family:var(--font-display);font-weight:500;font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 1rem;line-height:1.8}.tagline span{display:block}.hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,4vw,2.35rem);line-height:1.15;letter-spacing:-.01em;margin:0 0 1rem;max-width:18ch}.hero-sub{color:var(--muted);max-width:48ch;margin:0 0 .75rem;font-size:1rem}.hero-meta{color:var(--muted-dark);font-size:.9rem;margin:0}.main{max-width:var(--max);margin:0 auto;padding:1.5rem 1.25rem 4rem}@media (min-width: 720px){.hero-inner,.main,.progress-wrap{padding-left:2rem;padding-right:2rem}.progress-wrap{max-width:none}}.static-block{margin:0 0 1.75rem;padding:1.25rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.static-block h2,.section-card h2{font-family:var(--font-display);font-weight:600;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem}.static-block p{margin:0 0 .65rem;color:var(--muted);font-size:.95rem}.static-block p:last-child{margin-bottom:0}.section-card{margin:0 0 2rem;padding:1.5rem 1.25rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.section-intro{color:var(--muted);font-size:.9rem;margin:-.25rem 0 1.25rem}.field{margin-bottom:1.5rem}.field:last-child{margin-bottom:0}.field-label{display:block;font-family:var(--font-display);font-weight:500;font-size:.95rem;line-height:1.4;margin-bottom:.55rem}.req{color:var(--muted);font-weight:400;margin-left:.25rem}.field-error{display:none;color:var(--error);font-size:.85rem;margin-top:.4rem}.field.has-error .field-error{display:block}.field.has-error input,.field.has-error textarea,.field.has-error select{border-color:var(--error)}input[type=text],textarea,select{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#111;color:var(--fg);border:1px solid var(--border-strong);border-radius:var(--radius);padding:.85rem 1rem;font-family:var(--font-body);font-size:1rem;line-height:1.4;min-height:48px;transition:border-color .15s ease}textarea{min-height:120px;resize:vertical}select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%239a9a9a' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 1px var(--focus)}input::placeholder,textarea::placeholder{color:#555}.chip-group{display:flex;flex-wrap:wrap;gap:.5rem}.chip{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:.55rem .9rem;background:var(--chip);border:1px solid var(--border-strong);border-radius:999px;color:var(--fg);font-size:.9rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s ease,color .12s ease,border-color .12s ease}.chip input{position:absolute;opacity:0;pointer-events:none}.chip:hover{border-color:#777}.chip:has(input:focus-visible){outline:2px solid var(--fg);outline-offset:2px}.chip:has(input:checked){background:var(--chip-active);color:var(--chip-active-fg);border-color:var(--chip-active)}.form-actions{position:sticky;bottom:0;margin:2rem -1.25rem -1rem;padding:1rem 1.25rem calc(1rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,rgba(0,0,0,.95) 30%);display:flex;flex-direction:column;gap:.75rem;border-top:1px solid var(--border)}@media (min-width: 720px){.form-actions{margin-left:0;margin-right:0;flex-direction:row;align-items:center;justify-content:space-between}}.privacy-note{font-size:.85rem;color:var(--muted);margin:0;max-width:42ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.85rem 1.75rem;border:none;border-radius:var(--radius);font-family:var(--font-display);font-weight:600;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:opacity .15s ease,transform .1s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--fg);color:var(--bg);min-width:180px}.btn-primary:hover:not(:disabled){opacity:.9}.btn-ghost{background:transparent;color:var(--fg);border:1px solid var(--border-strong)}.form-status{min-height:1.25rem;font-size:.9rem;color:var(--error);margin:.5rem 0 0}.form-status.ok{color:var(--success)}.spinner{width:1rem;height:1rem;border:2px solid rgba(0,0,0,.2);border-top-color:#000;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.site-footer{border-top:1px solid var(--border);padding:2rem 1.25rem 3rem;text-align:center;color:var(--muted);font-size:.85rem}.site-footer .company{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--fg);margin-bottom:.5rem}.site-footer a{color:var(--muted)}.thankyou{max-width:560px;margin:0 auto;padding:3rem 1.25rem 4rem;text-align:left}.thankyou h1{font-family:var(--font-display);font-size:clamp(1.6rem,4vw,2.2rem);margin:0 0 1rem;line-height:1.2}.thankyou p{color:var(--muted);margin:0 0 1rem}.thankyou .actions{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.75rem}
