.profile-page,.profile-page *,.profile-footer,.profile-footer *{box-sizing:border-box}
.profile-page{min-height:calc(100svh - 160px);display:grid;align-items:start;padding:18px 20px 22px;background:var(--color-page-background);font-family:Arial,"Noto Sans",sans-serif}
.profile-shell{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:stretch}
.profile-intro{padding:26px 24px;color:var(--color-text-on-dark);background:var(--color-brand-primary);border-top:5px solid var(--color-accent)}
.profile-eyebrow{margin:0 0 8px;color:var(--color-accent);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.profile-intro h1{margin:0 0 10px;font-size:34px;font-weight:400;line-height:1.08;letter-spacing:-.03em}
.profile-intro>p:not(.profile-eyebrow){margin:0;color:var(--color-text-on-dark-muted);font-size:14px;line-height:1.5}
.profile-points{margin:22px 0 0;padding:0;list-style:none}
.profile-points li{position:relative;padding:9px 0 9px 23px;border-top:1px solid var(--color-border-on-dark);font-size:13px;line-height:1.35}
.profile-points li::before{content:"✓";position:absolute;left:0;color:var(--color-accent);font-weight:700}
.form-card{min-width:0;background:var(--color-surface);border:1px solid var(--color-border-default);box-shadow:0 10px 28px var(--color-brand-shadow)}
.form-step{display:block;padding:18px 24px 8px}
.form-step h2{margin:0 0 3px;color:var(--color-brand-primary);font-size:22px;font-weight:400;line-height:1.15}
.step-intro{margin:0 0 13px;color:var(--color-text-secondary);font-size:13px}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}
.field{min-width:0;margin:0 0 9px;padding:0;border:0}
label,.legend{display:block;margin:0 0 3px;color:var(--color-text-primary);font-size:13px;font-weight:700}
.required{color:#a92b24}
input,select{width:100%;min-width:0;height:38px;min-height:38px;padding:7px 10px;color:var(--color-text-primary);background:var(--color-surface);border:1px solid #aeb6c0;border-radius:3px;font:inherit;font-size:14px;line-height:20px}
input:hover,select:hover{border-color:#75818d}
input[aria-invalid=true],select[aria-invalid=true]{border-color:#a92b24}
.hint,.hint-inline{color:var(--color-text-secondary);font-size:11px;font-weight:400}
.hint{display:block;margin-top:2px}
.choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.choice{position:relative;min-width:0}
.choice input{position:absolute;width:1px;height:1px;opacity:0}
.choice label{min-height:34px;margin:0;padding:5px 7px;display:flex;align-items:center;gap:6px;border:1px solid #bcc4cd;border-radius:3px;cursor:pointer;font-size:12px;font-weight:400;line-height:1.15}
.choice label::before{content:"";width:14px;height:14px;flex:none;border:1px solid #87919b;background:var(--color-surface)}
.choice input:focus-visible+label{outline:3px solid var(--color-focus);outline-offset:2px}
.choice input:checked+label{color:var(--color-brand-primary);background:var(--color-surface-muted);border-color:var(--color-brand-secondary);font-weight:700}
.choice input:checked+label::before{border:4px solid var(--color-brand-secondary)}
.consent{padding:9px 11px;background:var(--color-surface-muted);border-left:3px solid var(--color-brand-secondary)}
.consent label{margin:0;display:flex;align-items:flex-start;gap:8px;font-size:11px;font-weight:400;line-height:1.35}
.consent input{width:16px;height:16px;min-height:0;margin:0;flex:none}
.privacy-note{margin:5px 0 0;color:var(--color-text-secondary);font-size:11px;line-height:1.35}
.error{margin:4px 0 0;color:#a92b24;font-size:11px}
.form-actions{min-height:55px;padding:8px 24px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--color-border-default)}
.form-actions button{min-height:36px;padding:0 17px;border:2px solid transparent;border-radius:3px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.submit{margin-left:auto;color:var(--color-brand-primary);background:var(--color-accent);border-color:var(--color-accent)!important}
.form-reassurance{color:var(--color-text-secondary);font-size:12px;font-weight:700}
.profile-footer{padding:10px 20px;color:var(--color-text-on-dark-muted);background:var(--color-brand-primary);font-family:Arial,"Noto Sans",sans-serif;font-size:12px}
.profile-footer-inner{width:min(1180px,100%);margin:auto;display:flex;justify-content:space-between;gap:18px}
.profile-footer a{color:var(--color-text-on-dark)}
@media(max-width:850px){.profile-page{min-height:auto;padding:18px 20px 30px}.profile-shell{grid-template-columns:1fr}.profile-intro{padding:20px 22px}.profile-intro h1{font-size:30px}.profile-points{margin-top:14px;display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.profile-intro>p:not(.profile-eyebrow){max-width:650px}}
@media(max-width:600px){.profile-page{padding:12px 14px 24px}.profile-shell{gap:12px}.profile-intro{padding:16px 18px}.profile-intro h1{font-size:27px}.profile-points{display:none}.form-step{padding:15px 14px 6px}.form-step h2{font-size:20px}.field-grid{grid-template-columns:1fr;gap:7px}.choices{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{padding:10px 14px;align-items:stretch;flex-direction:column}.submit{width:100%;margin-left:0}.profile-footer-inner{flex-direction:column;gap:3px}}
@media(max-height:720px) and (min-width:851px){.profile-page{align-items:start;padding-block:12px}.profile-intro{padding-block:20px}.profile-points{margin-top:14px}.profile-points li{padding-block:7px}.form-step{padding-top:13px}.form-actions{min-height:48px;padding-block:5px}}
