/* CAX customer experience: shared marketing and public registry visual language. */
.shell{max-width:1240px;padding:0 40px}
.header{height:88px;gap:28px}
.header .brand small{font-size:.6875rem;letter-spacing:.07em;color:var(--ink-soft)}
.test-pill{font-size:.6875rem;letter-spacing:.05em;padding:8px 12px;border:1px solid #e8d9b3;border-radius:5px;white-space:normal}
.hero{padding:56px 0 12px}
.hero h1{font-size:clamp(2.7rem,4.1vw,3.65rem);letter-spacing:-.05em;line-height:1.08;max-width:850px;margin-bottom:28px}
.lede{font-size:1.125rem;line-height:1.7;max-width:700px}
.panel{border-radius:8px;padding:36px;margin:24px 0 48px;box-shadow:0 10px 24px rgba(20,34,56,.035)}
.panel h2{font-size:1.5rem;letter-spacing:-.035em}
.grid{gap:12px 32px}
.field{margin:14px 0;gap:9px}
.field label{font-size:.875rem;font-weight:650}
.field input,.field select,.field textarea{border-color:#b5c2cc;border-radius:6px;padding:13px 14px;line-height:1.5}
.field input:not([aria-invalid=true]):hover,.field select:hover,.field textarea:hover{border-color:var(--blue)}
.field input[aria-invalid=true]{border-color:var(--danger)}
.field-help,.field-subtext{font-size:.8125rem;line-height:1.65}
.password-control input{padding-right:74px}
.password-toggle{top:5px}
.actions{margin-top:28px;gap:16px}
.progress-nav{margin-top:36px}
.steps{gap:20px}
.step{padding:16px 0;gap:10px}
.step.current{color:var(--blue);border-bottom-width:3px}
.step-number{width:28px;height:28px;background:white}
.current .step-number{background:var(--ink)}
.complete .step-number{color:var(--blue);background:#eaf0f4;border-color:#c9d5df}
.portal-nav{padding:12px 0;margin-bottom:12px;flex-wrap:wrap}
.portal-nav .item-links{flex-wrap:wrap;gap:10px}
.portal-nav .button{background:transparent;border-color:var(--line);border-radius:5px;padding:10px 14px;font-size:.8125rem}
.portal-nav .button:hover{background:#eaf0f4}
.two-col{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;align-items:start}
.two-col .panel{margin-top:24px}
.item{padding:24px 0}
.item small{font-size:.8125rem;line-height:1.65}
.total{font-size:1.6rem;letter-spacing:-.03em;border-top:1px solid var(--line);margin-top:16px}
.submission-id{font-family:inherit;letter-spacing:.02em;font-size:1.25rem}
.submission-history-card{padding:28px;border-radius:8px;box-shadow:0 10px 24px rgba(20,34,56,.035)}
.submission-history-card .serial{font-family:inherit}
.optional-details summary,.terms-details summary{position:relative;list-style:none;padding:20px 32px 20px 0;font-weight:600;color:var(--ink)}
.optional-details summary::-webkit-details-marker,.terms-details summary::-webkit-details-marker{display:none}
.optional-details summary::after,.terms-details summary::after{content:'+';position:absolute;right:2px;top:18px;font-size:1.25rem;font-weight:400;color:var(--blue)}
.optional-details[open]>summary::after,.terms-details[open]>summary::after{content:'−'}
.optional-details summary span{font-size:.8125rem}
.notice{border-radius:0 6px 6px 0}
.footer{padding:32px 0;margin-top:24px;line-height:1.7}
.footer a{text-decoration:none}
.footer a:hover{text-decoration:underline}
/* Account screens use the same editorial title and a compact form card. */
.auth-screen{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);column-gap:72px;align-items:start;padding:64px 0 72px}
.auth-screen .hero{padding:32px 0 0;text-align:left}
.auth-screen .hero h1{font-size:clamp(2.7rem,4.1vw,3.65rem);letter-spacing:-.05em;line-height:1.08;margin-bottom:24px}
.auth-screen .hero .kicker{font-size:.75rem;letter-spacing:.13em;margin-bottom:20px}
.auth-screen .auth-card{padding:32px 36px;margin:0;box-shadow:0 10px 24px rgba(20,34,56,.04);width:100%}
.auth-card .lede{font-size:1rem;line-height:1.7;color:var(--muted)}
.auth-progress{padding-bottom:22px;margin-bottom:22px}
.auth-progress .current{color:var(--blue)}
.auth-progress .complete>span{background:#eaf0f4;color:var(--blue);border-color:#c9d5df}
.auth-card .field{margin:20px 0}
.auth-primary{min-height:48px;font-size:.9375rem}
.auth-assurance{font-size:.8125rem}
.auth-ready h2{font-size:1.6rem}
@media(max-width:900px){
 .shell{padding:0 28px}.auth-screen{gap:36px;padding:48px 0}.auth-screen .auth-card{padding:28px}.auth-screen .hero h1{font-size:2.7rem}.panel{padding:28px}.steps{gap:12px}
}
@media(max-width:760px){
 .two-col{grid-template-columns:1fr;gap:0}.auth-screen{display:block;max-width:560px;padding:36px 0 48px}.auth-screen .hero{padding:0 0 20px}.auth-screen .hero h1{font-size:2.65rem;margin-bottom:8px}.hero{padding-top:36px}.hero h1{font-size:2.65rem}.panel{margin-bottom:32px}.grid{grid-template-columns:1fr;gap:8px}.steps{gap:6px}.step{padding:14px 4px;gap:8px}.footer{display:block}
}
@media(max-width:600px){
 .shell{padding:0 20px}.header{height:auto;min-height:88px;padding:18px 0;gap:16px;flex-wrap:wrap}.header .brand small{max-width:155px;font-size:.625rem;line-height:1.4}.test-pill{max-width:none;font-size:.625rem}.panel,.auth-screen .auth-card{padding:24px 20px}.auth-screen .hero h1,.hero h1{font-size:2.5rem}.auth-screen .hero .kicker{margin-bottom:14px}.portal-nav{gap:8px}.portal-nav .item-links{width:100%;justify-content:flex-start}.portal-nav .button{padding:8px 12px}.optional-details summary span{float:none;display:block;margin-top:5px}.submission-history-card{padding:20px}.field input,.field select,.field textarea{font-size:1rem}.auth-progress{gap:8px}.actions{gap:12px}.footer{margin-top:12px}
}
@media(max-width:360px){.shell{padding:0 16px}.hero h1,.auth-screen .hero h1{font-size:2.25rem}.panel,.auth-screen .auth-card{padding:20px 16px}}
