/* Creative signup uses the homepage's flat navy surfaces and blue accents. */
:root {
  --g-black:#020617; --g-surface:#0f172a; --g-surface-2:#111c31;
  --g-surface-3:#17233a; --g-surface-4:#20304a;
  --g-border:rgba(255,255,255,.13); --g-border-light:rgba(255,255,255,.2);
  --g-text:#f8fafc; --g-white:#f8fafc; --g-text-muted:#cbd5e1;
  --g-text-dim:#94a3b8; --g-accent:#00BFFF; --g-accent-dim:#00BFFF;
  --g-accent-light:rgba(14,165,233,.1); --g-focus:#00BFFF;
  --g-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --g-serif:var(--g-font);
}
body{background:#020617;color:#f8fafc}
.join-nav{height:78px;background:#020617;border-bottom:1px solid rgba(255,255,255,.1);position:relative;z-index:30}
.join-nav-inner{width:min(1120px,calc(100% - 40px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.join-home img{height:42px;width:auto;max-width:130px;object-fit:contain}
.join-links{display:flex;align-items:center;gap:22px;margin-left:auto}
.join-links a{font-size:14px;color:#cbd5e1;text-decoration:none}
.join-links a:hover,.join-links a[aria-current]{color:#fff}
.join-links .join-signin{padding:14px 20px;border-radius:11px;background:#00BFFF;color:#fff;font-size:15px;font-weight:750}
.join-menu-button{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#fff;font-size:23px;cursor:pointer}
.join-mobile-menu[hidden]{display:none}
.signup-page{width:min(1120px,calc(100% - 40px));min-height:calc(100svh - 78px);margin:auto;padding:68px 0 90px;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,480px);gap:56px;align-items:center;overflow:visible}
.signup-page::before{display:none}
.join-intro{min-height:620px;align-self:stretch;display:flex;align-items:flex-end;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:24px;background:#0f172a url('/assets/images/creatives-at-work.webp') center / cover no-repeat;isolation:isolate}
.join-intro::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(2,6,23,.66)}
.join-intro-copy{padding:46px;position:relative;z-index:1}
.join-eyebrow{display:block;color:#00BFFF;font-size:12px;font-weight:800;letter-spacing:1.7px;margin-bottom:18px}
.join-intro h1{color:#f8fafc;font-size:clamp(42px,4.2vw,62px);font-weight:800;line-height:1.04;letter-spacing:-.055em;max-width:520px;margin:0 0 22px}
.join-intro h1 span{color:#00BFFF}
.join-intro p{color:#e2e8f0;font-size:17px;line-height:1.65;max-width:470px}
.signup-card{max-width:none;background:#0f172a;border:1px solid rgba(255,255,255,.13);border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.2)}
.signup-badge{font-weight:700;color:#00BFFF}
.step-hero h2,.success-area h2{font-family:var(--g-font);font-style:normal;font-weight:800;letter-spacing:-.04em}
.step-hero h2 em{font-style:normal;color:#00BFFF}
.step-hero h2{font-size:26px;line-height:1.15;color:#f8fafc}
.step-hero p{color:#cbd5e1}
.field-label{color:#e2e8f0;font-weight:650}
.field-input,.field-select,.social-btn,.skill-chip,.mastery-note{background:#020617;border:1px solid rgba(255,255,255,.17);color:#f8fafc}
.field-input::placeholder{color:#94a3b8}
.field-select option{background:#0f172a}
.skill-chip{padding:7px 10px;min-height:44px;height:auto;line-height:1.25;white-space:normal}
.skill-chip.selected{background:rgba(14,165,233,.13);border-color:#00BFFF;color:#e0f2fe}
.btn-signup{background:#00BFFF;color:#fff;font-weight:750}
.btn-signup:hover{background:#0284c7;opacity:1}
.terms-text,.signin-link{color:#cbd5e1}
.terms-text a,.signin-link a{color:#00BFFF}
.signup-error{color:#fca5a5}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #00BFFF!important;outline-offset:3px}
.join-footer{margin-top:0!important;background:#020617;border-top:1px solid rgba(255,255,255,.1)}
@media(max-width:900px){
  .join-links{display:none}.join-menu-button{display:flex}
  .join-mobile-menu{position:absolute;right:14px;top:70px;width:min(280px,calc(100vw - 28px));padding:10px;background:#0f172a;border:1px solid rgba(255,255,255,.13);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
  .join-mobile-menu a{display:block;padding:14px 12px;color:#e2e8f0;text-decoration:none;border-radius:10px}
  .join-mobile-menu a:last-child{background:#00BFFF;color:#fff;text-align:center;font-weight:750;margin-top:4px}
  .signup-page{grid-template-columns:1fr;gap:24px;padding:36px 0 70px;max-width:620px}
  .join-intro{min-height:240px;background-position:center 42%}
  .join-intro-copy{padding:30px}.join-intro h1{font-size:clamp(34px,7vw,48px);margin-bottom:12px}.join-intro p{font-size:15px}
}
@media(max-width:520px){
  .join-nav{height:70px}.join-nav-inner,.signup-page{width:calc(100% - 28px)}.join-home img{height:36px}
  .join-intro{min-height:230px}.join-intro::before{background:rgba(2,6,23,.75)}
  .signup-header{padding:24px 22px 0}.signup-progress{padding:20px 22px 0}.step-hero{padding:24px 22px 0}.step-form{padding:20px 22px 26px}
  .field-row{grid-template-columns:1fr;gap:0}.skills-grid{grid-template-columns:1fr 1fr}
}

/* A consistent menu button on desktop and mobile. */
.join-links{display:none}.join-menu-button{display:flex;margin-left:auto}
.join-mobile-menu{position:absolute;right:14px;top:70px;width:min(300px,calc(100vw - 28px));max-height:calc(100svh - 90px);overflow-y:auto;padding:10px;background:#0f172a;border:1px solid rgba(255,255,255,.13);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.join-mobile-menu a{display:block;padding:14px 12px;color:#e2e8f0;text-decoration:none;border-radius:10px}
.join-mobile-menu a:hover{background:rgba(255,255,255,.06)}
