:root{--ustcp-navy:#052b59;--ustcp-deep:#031d3f;--ustcp-gold:#fbb323;--ustcp-ink:#072451;--ustcp-blue:#edf6ff;--ustcp-line:#cbd6e6}
html.ustcp-modal-open{overflow:hidden}
.ustcp-signup-shell[hidden]{display:none!important}
.ustcp-signup-shell{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:26px;font-family:Roboto,Arial,sans-serif;color:var(--ustcp-ink)}
.ustcp-signup-backdrop{position:absolute;inset:0;background:rgba(2,20,45,.76);backdrop-filter:blur(5px)}
.ustcp-signup-modal{position:relative;width:min(1120px,96vw);max-height:94vh;min-height:860px;display:grid;grid-template-columns:36% 64%;overflow:auto;background:#fff;border:2px solid rgba(255,255,255,.9);border-radius:16px;box-shadow:0 28px 80px rgba(0,0,0,.45);font-family:Roboto,Arial,sans-serif}
.ustcp-signup-modal *{box-sizing:border-box}
.ustcp-signup-close{position:absolute;z-index:4;right:17px;top:16px;width:50px;height:50px;border:0;border-radius:50%;background:#e2e6ee;color:#062651;font:300 42px/46px Arial;cursor:pointer}
.ustcp-signup-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:860px;padding:330px 34px 42px;color:#fff;background-image:linear-gradient(180deg,rgba(2,29,63,.04) 0%,rgba(3,35,72,.16) 27%,rgba(3,32,67,.92) 53%,rgba(2,40,82,.98) 100%),var(--ustcp-courthouse);background-size:cover;background-position:58% center}
.ustcp-story-copy h2{margin:0;font-family:Roboto,Arial,sans-serif!important;font-size:37px;line-height:1.16;letter-spacing:-.8px;font-weight:800!important;color:#fff}.ustcp-story-copy h2 em{color:var(--ustcp-gold);font:italic 600 40px/1.1 "Segoe Print","Comic Sans MS",cursive}
.ustcp-gold-rule{display:block;width:102px;height:5px;background:var(--ustcp-gold);margin:16px 0 15px}
.ustcp-feature-list{margin:0;padding:0;list-style:none;border-bottom:1px solid rgba(255,255,255,.55)}.ustcp-feature-list li{min-height:41px;display:flex;align-items:center;justify-content:flex-start;gap:13px;border-top:1px solid rgba(255,255,255,.55);font-size:18px;font-weight:600}.ustcp-feature-list strong{padding:5px 12px;border-radius:18px;background:linear-gradient(180deg,#8b43ff,#6520d8);font-size:12px;white-space:nowrap}
.ustcp-tagline{margin:26px 0 0 8px;color:white;font:600 31px/1.14 "Segoe Print","Comic Sans MS",cursive;transform:rotate(-4deg);text-align:center}.ustcp-tagline span{display:block;width:180px;height:6px;margin:10px auto 0;background:var(--ustcp-gold);transform:rotate(-7deg)}
.ustcp-signup-content{padding:36px 36px 28px;background:linear-gradient(115deg,#fff 0%,#fff 72%,#f7faff 100%)}
.ustcp-signup-logo{display:block;width:375px;max-width:65%;height:auto;margin:0 auto 24px}
.ustcp-signup-content>h2{margin:0;text-align:center;font-family:Roboto,Arial,sans-serif!important;font-size:38px;line-height:1.12;letter-spacing:-1px;font-weight:800!important;color:var(--ustcp-deep)}
.ustcp-signup-intro{margin:13px auto 20px;max-width:650px;text-align:center;font-size:18px;line-height:1.45;color:#304b72}
.ustcp-login-panel{display:flex;justify-content:center;gap:14px;margin:0 0 25px;padding:17px 15px;border-radius:8px;background:#e8f4ff;font-size:17px}.ustcp-login-panel a{color:#0566e8;text-decoration:underline;font-weight:600}
#ustcp-stage1-form{display:grid;gap:17px}#ustcp-stage1-form label{display:block;font-family:Roboto,Arial,sans-serif;font-size:15px;font-weight:700;color:var(--ustcp-deep)}#ustcp-stage1-form label b{display:inline;color:#e31e24}
.ustcp-field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#ustcp-stage1-form input[type=text],#ustcp-stage1-form input[type=email],#ustcp-stage1-form input[type=tel],#ustcp-stage1-form select{display:block;width:100%;height:56px;box-sizing:border-box;margin-top:7px;border:1.5px solid #bdc9dc;border-radius:7px;background:#fff;padding:0 16px;color:var(--ustcp-ink);font:400 17px Roboto,Arial,sans-serif;box-shadow:inset 0 1px 2px rgba(3,31,66,.03)}#ustcp-stage1-form input::placeholder{color:#95a2b9}#ustcp-stage1-form input:focus,#ustcp-stage1-form select:focus{outline:3px solid rgba(20,112,220,.18);border-color:#176fd0}
#ustcp-stage1-form .ustcp-consent{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;font-size:15px;font-weight:400;line-height:1.45;color:#344e74}.ustcp-consent input{appearance:none;width:26px;height:26px;margin:1px 0 0;border:2px solid #687997;border-radius:3px;background:#fff}.ustcp-consent input:checked{background:var(--ustcp-navy);box-shadow:inset 0 0 0 5px white}.ustcp-consent b{font-size:18px}
.ustcp-submit{height:64px;border:0;border-radius:7px;background:linear-gradient(180deg,#ffc53d,#f9ae17);color:var(--ustcp-deep);font:800 21px/1 Roboto,Arial,sans-serif;box-shadow:0 8px 18px rgba(240,166,20,.18);cursor:pointer}.ustcp-submit span{font-size:30px;vertical-align:-2px;margin-left:10px}.ustcp-submit:disabled{opacity:.65;cursor:wait}
.ustcp-legal{margin:2px 0 0!important;text-align:center;font-size:14px!important;color:#344e74!important}.ustcp-legal a{color:#0566e8;text-decoration:underline}
.ustcp-form-message{padding:13px 15px;border-radius:7px;font-size:15px;line-height:1.4}.ustcp-form-message.is-error{background:#fff1f1;border:1px solid #e6a7a7;color:#792020}.ustcp-form-message.is-success{background:#eef8f0;border:1px solid #9bc7a5;color:#194f2a}.ustcp-form-message a{font-weight:700;color:inherit;text-decoration:underline}
.ustcp-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:900px){.ustcp-signup-shell{padding:14px}.ustcp-signup-modal{width:min(690px,97vw);grid-template-columns:1fr;min-height:0}.ustcp-signup-story{min-height:310px;padding:110px 28px 24px;background-position:center 34%}.ustcp-story-copy h2{font-size:30px}.ustcp-feature-list{display:none}.ustcp-tagline{font-size:24px;margin-top:18px}.ustcp-signup-content{padding:28px}.ustcp-signup-logo{width:290px;margin-bottom:18px}.ustcp-signup-content>h2{font-size:31px}}
@media(max-width:600px){
  .ustcp-signup-shell{padding:6px}
  .ustcp-signup-modal{display:flex;flex-direction:column;width:min(390px,calc(100vw - 12px));max-height:98vh;min-height:0;border-radius:10px;background:#fff}
  .ustcp-signup-close{width:40px;height:40px;right:10px;top:10px;font-size:32px;line-height:36px}
  .ustcp-signup-content{display:contents}
  .ustcp-signup-logo{order:1;width:300px;max-width:none;margin:7px 0 -2px -38px;clip-path:inset(0 0 35px 78px)}
  .ustcp-signup-story{order:2;display:block;min-height:280px;margin:0 3px;padding:28px 20px 15px;background-position:center 30%;background-image:linear-gradient(90deg,rgba(2,32,68,.96) 0%,rgba(2,35,73,.78) 48%,rgba(2,35,73,.32) 100%),var(--ustcp-courthouse)}
  .ustcp-story-copy h2{font-size:23px;line-height:1.17;letter-spacing:-.35px}
  .ustcp-story-copy h2 em{font-size:25px}
  .ustcp-exam-break{display:none}
  .ustcp-gold-rule{width:64px;height:4px;margin:10px 0 12px}
  .ustcp-feature-list{display:flex;flex-wrap:wrap;align-items:center;gap:5px 0;border:0;margin:0;padding:0 0 9px;border-bottom:1px solid rgba(255,255,255,.55)}
  .ustcp-feature-list li{display:flex;min-height:0;border:0;font-size:10.5px;font-weight:500;line-height:1.25;white-space:nowrap}
  .ustcp-feature-list li:not(:last-child)::after{content:'|';margin:0 7px;color:rgba(255,255,255,.7)}
  .ustcp-feature-list strong{padding:3px 8px;font-size:8px}
  .ustcp-tagline{margin:9px 2px 0;text-align:left;font-size:12.5px;line-height:1.25;transform:none;white-space:nowrap}
  .ustcp-tagline br{display:none}
  .ustcp-tagline span{width:102px;height:3px;margin:4px 7px 0 auto;transform:rotate(-4deg)}
  .ustcp-signup-content>h2{order:3;margin:15px 16px 0;text-align:center;font-size:21.5px;line-height:1.08;white-space:nowrap}
  .ustcp-signup-intro{order:4;margin:7px 22px 10px;max-width:none;font-size:14px;line-height:1.3}
  .ustcp-login-panel{order:5;display:block;margin:0 16px 11px;padding:11px 8px;text-align:center;font-size:13px;line-height:1.3}
  .ustcp-login-panel a{white-space:nowrap}
  #ustcp-stage1-form{order:6;gap:11px;padding:0 17px 18px}
  #ustcp-stage1-form label{font-size:13px}
  .ustcp-field-row{grid-template-columns:1fr 1fr;gap:10px}
  #ustcp-stage1-form input[type=text],#ustcp-stage1-form input[type=email],#ustcp-stage1-form input[type=tel],#ustcp-stage1-form select{height:46px;margin-top:4px;padding:0 11px;font-size:14px}
  #ustcp-stage1-form .ustcp-consent{grid-template-columns:28px 1fr;gap:7px;font-size:12.5px;line-height:1.3}
  .ustcp-consent input{width:23px;height:23px}
  .ustcp-submit{height:auto;min-height:55px;padding:11px 8px;font-size:17px}
  .ustcp-submit span{font-size:25px;margin-left:5px}
  .ustcp-legal{font-size:11.5px!important;line-height:1.35}
}
@media(prefers-reduced-motion:reduce){.ustcp-signup-backdrop{backdrop-filter:none}}
.ustcp-recovery-action{display:inline-block;margin:12px 12px 0 0;padding:9px 14px;border:1px solid #0b67c7;border-radius:7px;background:#fff;color:#07529a;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}
.ustcp-recovery-action:hover,.ustcp-recovery-action:focus-visible{background:#eaf4ff}
.ustcp-recovery-action:disabled{opacity:.6;cursor:wait}
