/* Only the two portfolio intake pages opt in. No shared design-system changes. */
body.fpr-intake{--intake-ink:#183b4e;--intake-muted:#48616e;--intake-line:#c7d3d8;--intake-paper:#f5f7f5}
.fpr-intake main{font-size:18px;line-height:1.6}
.fpr-intake main p{line-height:1.6}
.fpr-intake main a:not(.button){text-underline-offset:4px}
.fpr-intake main :focus-visible{outline:3px solid #a87722;outline-offset:4px}
.fpr-intake main [hidden]{display:none!important}
.fpr-intake .header{padding-inline:clamp(20px,4vw,56px)}
.fpr-intake .header nav a,.fpr-intake .header nav summary{font-size:15px;min-height:44px;align-content:center}
.fpr-intake .menu-toggle{min-width:48px;min-height:48px;font-size:16px}
.fpr-intake .fpr-hero{padding:48px max(24px,calc((100vw - 1200px)/2));gap:56px;grid-template-columns:1.1fr 1fr}
.fpr-intake .fpr-page h1{font-size:clamp(36px,4.2vw,64px);margin:14px 0 20px;letter-spacing:-.025em}
.fpr-intake .fpr-page h2{font-size:clamp(28px,3vw,38px)}
.fpr-intake .fpr-page h3{font-size:23px}
.fpr-intake .fpr-lead{font-size:22px}
.fpr-intake .fpr-intro p{font-size:18px}
.fpr-intake .fpr-hero-note,.fpr-intake .fpr-page .eyebrow{font-size:15px}
.fpr-intake .fpr-section{padding:48px max(24px,calc((100vw - 1200px)/2))}
.fpr-intake .fpr-form-section{gap:48px;background:#edf3f4}
.fpr-intake .fpr-form-section>div:first-child{position:static}
.fpr-intake #portfolio-review{background:#fff;border:1px solid var(--intake-line);padding:28px;border-radius:12px;color:var(--intake-ink)}
.fpr-intake .fpr-page label,.fpr-intake .fpr-page legend{font-size:17px}
.fpr-intake .fpr-page .button{font-size:17px;min-height:50px;letter-spacing:.015em}
.fpr-intake .fpr-page input:not([type=checkbox]),.fpr-intake .fpr-page textarea{font-size:18px;min-height:52px;border-radius:6px}
.fpr-intake .fpr-field{margin-bottom:22px}
.fpr-intake .fpr-form-section p+p{margin-top:16px}
.fpr-intake #holdings-help,.fpr-intake #fpr-sensitive{font-size:16px;line-height:1.6}
.fpr-intake #fpr-sensitive{margin:12px 0 22px}
.fpr-intake .fpr-error{font-size:16px}
.fpr-intake .fpr-steps{gap:28px}
.fpr-intake .fpr-handling{margin-top:28px}
.fpr-intake .fpr-disclosure{font-size:16px}
.fpr-intake .fpr-page summary{font-size:20px;line-height:1.4;padding:8px 0}
.fpr-intake .fpr-page details p{margin-top:16px}
/* Statement upload: one clear task, generous touch targets, readable disclosures. */
.fpr-intake .fpu{box-sizing:border-box;width:100%;max-width:1000px;margin:0 auto;padding:40px 32px 64px;color:var(--intake-ink)}
.fpu .eyebrow{font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--intake-muted)}
.fpu .upload-lead{font-size:19px;max-width:48em}
.fpu .upload-availability{margin:24px 0 12px;border-left:3px solid #688b94;padding:12px 16px;background:#edf3f4;font-size:17px;line-height:1.5}
.fpu .upload-availability[data-state=available]{border-color:#3d755f;background:#edf5ef}
.fpu .upload-alternative{font-size:16px;margin:0 0 26px;color:var(--intake-muted)}
.fpu #f{border:1px solid var(--intake-line);background:#fff;border-radius:14px;padding:28px;margin-top:24px}
.fpu fieldset{min-width:0;border:0;padding:0;margin:0 0 30px}
.fpu legend{font-size:20px;font-weight:400;letter-spacing:.06em;line-height:1.35;margin:0 0 16px;padding:0}
.fpu .choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}
.fpu .choice{display:flex;gap:12px;align-items:flex-start;padding:20px;border:1px solid var(--intake-line);border-radius:10px;cursor:pointer;min-width:0;line-height:1.45}
.fpu .choice.on{border:2px solid #24526a;padding:19px;background:#f0f6f8}
.fpu .choice input{width:22px;height:22px;flex-shrink:0;margin:3px 0 0;accent-color:#24526a}
.fpu .choice b{display:block;font-size:19px;font-weight:400;letter-spacing:.04em;margin-bottom:6px}
.fpu .choice small{display:block;font-size:16px;color:var(--intake-muted)}
.fpu .pane{margin:0 0 30px}
.fpu .picker{display:flex;flex-wrap:wrap;gap:12px}
.fpu .picker label,.fpu button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:50px;padding:12px 22px;border:1px solid #24526a;border-radius:6px;background:#fff;color:#183b4e;font:inherit;font-size:17px;font-weight:400;letter-spacing:.06em;cursor:pointer}
.fpu .picker label.primary,.fpu #go{background:#183f54;color:#fff}
.fpu .picker input{position:absolute;width:1px;height:1px;opacity:0}
.fpu .picker:focus-within{outline:3px solid #a87722;outline-offset:5px;border-radius:6px}
.fpu .tips{font-size:16px;color:var(--intake-muted);margin:0 0 16px}
.fpu .filename{font-size:16px;margin:12px 0 0;overflow-wrap:anywhere}
.fpu .pages{padding-left:26px;margin-top:20px}
.fpu .pages li{padding:12px 0;overflow-wrap:anywhere;border-bottom:1px solid var(--intake-line)}
.fpu .pages li span{display:block;margin-bottom:8px}
.fpu .pages button{font-size:16px;min-height:44px;margin:4px 8px 4px 0;padding:8px 12px}
.fpu input[type=text],.fpu input[type=email],.fpu textarea{width:100%;box-sizing:border-box;min-width:0;min-height:52px;border:1px solid #718c9b;border-radius:6px;background:#fff;color:#183b4e;padding:12px;font:inherit;font-size:18px}
.fpu .upload-permissions>p{font-size:16px;margin-bottom:16px;color:var(--intake-muted)}
.fpu .consent{display:flex;gap:14px;align-items:flex-start;padding:20px 0;border-top:1px solid var(--intake-line);font-size:16px;line-height:1.65;cursor:pointer}
.fpu .consent input{flex-shrink:0;width:24px;height:24px;margin:3px 0;accent-color:#24526a}
.fpu #go{min-width:220px;min-height:54px}
.fpu button:disabled{opacity:.55;cursor:default}
.fpu .status:not(:empty){margin-top:20px;padding:16px;background:#edf3f4;border-radius:6px;font-size:17px;overflow-wrap:anywhere}
.fpu .upload-help{margin-top:30px;font-size:16px;color:var(--intake-muted)}
.fpu .upload-help>p{margin-bottom:20px}
.fpu details{padding:16px 0;border-top:1px solid var(--intake-line)}
.fpu summary{font-size:18px;min-height:44px;line-height:1.5;align-content:center;cursor:pointer;color:var(--intake-ink)}
.fpu details p{font-size:16px;line-height:1.65;margin:12px 0}
@media(max-width:1100px){
 .fpr-intake .fpr-hero,.fpr-intake .fpr-form-section,.fpr-intake .fpr-deliverables{grid-template-columns:1fr;gap:28px}
 .fpr-intake .fpr-intro{border-left:0;padding-left:0;max-width:60em}
 .fpr-intake .fpr-intro p{font-size:18px}
 .fpr-intake .fpr-steps{grid-template-columns:1fr;gap:20px}
 .fpr-intake .fpr-steps li{display:grid;grid-template-columns:48px 1fr;gap:0 12px}
 .fpr-intake .fpr-steps span{grid-row:1/3;padding-top:5px}.fpr-intake .fpr-steps h3{margin:0 0 8px}.fpr-intake .fpr-steps p{grid-column:2}
 .fpr-intake .fpr-form-section>div:first-child p{max-width:50em}
 .fpr-intake .fpu{max-width:960px;padding-inline:32px}
}
@media(max-width:600px){
 .fpr-intake main{font-size:17px}
 .fpr-intake .header{padding-inline:18px}
 .fpr-intake .fpr-hero,.fpr-intake .fpr-section{padding:32px 20px}
 .fpr-intake .fpr-page h1{font-size:38px}.fpr-intake .fpr-lead{font-size:20px}
 .fpr-intake .fpr-fields{grid-template-columns:1fr;gap:0}
 .fpr-intake #portfolio-review{padding:20px 16px}
 .fpr-intake #fpr-submit{width:100%}
 .fpr-intake .fpu{padding:28px 18px 48px}
 .fpu #f{padding:22px 16px;border-radius:10px}
 .fpu .choices{grid-template-columns:1fr;gap:12px}
 .fpu .choice{padding:16px}.fpu .choice.on{padding:15px}
 .fpu .picker label{flex:1 1 auto}.fpu #go{width:100%}
 .fpu .consent{padding:18px 0}.fpu .upload-availability{margin-top:20px}
}
@media(prefers-reduced-motion:reduce){.fpr-intake *{scroll-behavior:auto!important}}
.fpu #availabilityRetry{margin:0 0 16px;min-height:48px}
.fpu .upload-availability[data-state=error],.fpu .upload-availability[data-state=unavailable]{border-color:#8a7449;background:#f7f2e8}
/* Keep the existing dark theme readable inside the scoped form surfaces. */
html[data-theme=dark] .fpr-intake .fpr-form-section{background:#122d3d}
html[data-theme=dark] .fpr-intake #portfolio-review{background:#0b1d2a;color:#e6edf2;border-color:#496371}
html[data-theme=dark] .fpr-intake .fpu{--intake-ink:#e6edf2;--intake-muted:#bfced7;--intake-line:#496371;color:var(--intake-ink)}
html[data-theme=dark] .fpu #f,html[data-theme=dark] .fpu input[type=text],html[data-theme=dark] .fpu input[type=email],html[data-theme=dark] .fpu textarea{background:#0b1d2a;color:#e6edf2;border-color:#78909f}
html[data-theme=dark] .fpu .choice.on,html[data-theme=dark] .fpu .upload-availability,html[data-theme=dark] .fpu .status:not(:empty){background:#173648;color:#e6edf2}
html[data-theme=dark] .fpu .upload-availability[data-state=error],html[data-theme=dark] .fpu .upload-availability[data-state=unavailable]{background:#363226}
html[data-theme=dark] .fpu .picker label,html[data-theme=dark] .fpu button{border-color:#78909f}
/* Keep readable navigation at tablet/compact-desktop widths: wrap groups into
   two rows instead of squeezing the site's nowrap desktop header. The existing
   1024px menu behavior and all navigation destinations stay intact. */
@media(min-width:1024px) and (max-width:1550px){
 .fpr-intake .header{height:auto;min-height:108px;padding-block:12px;gap:20px}
 .fpr-intake .header #navigation{flex:1 1 auto;min-width:0;flex-wrap:wrap;gap:8px 16px;justify-content:flex-end}
 .fpr-intake .header .nav-primary{flex:1 1 100%;flex-wrap:wrap;justify-content:flex-end;gap:4px 16px}
 .fpr-intake .header .nav-utilities{margin-left:auto;border-left:0;padding-left:0}
 .fpr-intake .header #navigation .fpr-nav{margin-left:0;font-size:15px;min-height:44px}
}

/* One review page: step 1 (details), step 2 (statement), confirmation. Light, airy, fine lines; Open Sans Regular via the site face. */
.fpr-intake .fpr-page label,.fpr-intake .fpr-page legend{font-weight:400;letter-spacing:.03em}
.fpr-intake .fpr-flow{display:grid;gap:28px;min-width:0}
.fpr-intake .fpr-form-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}
.fpr-step-label{font-variant:small-caps;text-transform:lowercase;letter-spacing:.16em;font-size:17px;color:var(--intake-muted);margin:0 0 16px}
.fpr-intake .fpr-page .fpr-step-label{line-height:1.4}
.fpr-intake .fpr-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:26px}
.fpr-intake .fpr-actions .button{font-weight:400;letter-spacing:.08em}
.fpr-edit{background:none;border:0;padding:8px 2px;min-height:44px;font:inherit;font-size:16px;letter-spacing:.05em;color:var(--intake-ink);text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.fpr-intake #fpr-status{margin-top:16px;font-size:16px;color:var(--intake-muted)}
.fpr-intake #fpr-status:empty{display:none}
.fpr-intake .fpu-embedded{max-width:none;margin:0;padding:28px;border:1px solid var(--intake-line);border-radius:12px;background:#fff;color:var(--intake-ink)}
.fpu-embedded h3{font-size:clamp(26px,2.6vw,32px);font-weight:400;letter-spacing:-.01em;line-height:1.2;margin:0 0 14px}
.fpu-embedded .upload-lead{font-size:18px;margin:0 0 6px;max-width:44em}
.fpu-embedded .upload-availability{margin:22px 0 10px}
.fpu-embedded #f{border:0;padding:0;margin-top:18px;border-radius:0;background:transparent}
.fpu-embedded .upload-alternative{margin:0 0 16px;font-size:18px;color:var(--intake-ink)}
.fpu-embedded .upload-help{margin-top:6px}
.fpr-fallback{margin-top:30px;padding-top:6px}
.fpr-fallback label{display:block;font-size:17px;margin:14px 0 4px}
.fpr-fallback #holdings-help,.fpr-fallback #fpr-fallback-sensitive{font-size:16px;line-height:1.6;color:var(--intake-muted);margin:0 0 10px}
.fpr-fallback textarea{display:block;width:100%;box-sizing:border-box;min-height:104px;border:1px solid #718c9b;border-radius:6px;background:#fff;color:#183b4e;padding:12px;font:inherit;font-size:18px;resize:vertical}
.fpu .fpr-quiet{margin-top:14px;background:#fff;color:#183b4e;border:1px solid #24526a}
.fpr-fallback #fpr-fallback-status{margin-top:12px;font-size:16px}
.fpr-fallback #fpr-fallback-status:empty{display:none}
.fpr-intake .fpr-confirm{padding:30px 28px;border:1px solid var(--intake-line);border-radius:12px;background:#fff;color:var(--intake-ink)}
.fpr-confirm h3{font-weight:400;letter-spacing:-.01em;margin:0 0 14px}
.fpr-confirm h4{font-variant:small-caps;text-transform:lowercase;letter-spacing:.16em;font-weight:400;font-size:18px;margin:26px 0 8px}
.fpr-confirm .fpr-next{padding-left:24px;margin:0 0 20px}.fpr-confirm .fpr-next li{margin:6px 0;line-height:1.6}
.fpr-confirm .fpr-edit{font-size:17px}
@media(max-width:1100px){.fpr-intake .fpr-form-section{grid-template-columns:1fr}}
@media(max-width:600px){.fpr-intake .fpu-embedded{padding:22px 16px;border-radius:10px}.fpr-intake .fpr-confirm{padding:24px 16px}.fpr-intake .fpr-actions .button{width:100%}.fpr-fallback .fpr-quiet{width:100%}}
html[data-theme=dark] .fpr-intake .fpu-embedded,html[data-theme=dark] .fpr-intake .fpr-confirm{background:#0b1d2a;color:#e6edf2;border-color:#496371}
html[data-theme=dark] .fpr-intake .fpr-step-label{color:#bfced7}
html[data-theme=dark] .fpr-intake .fpr-edit{color:#e6edf2}
html[data-theme=dark] .fpr-intake #fpr-status{color:#bfced7}
html[data-theme=dark] .fpr-fallback textarea{background:#0b1d2a;color:#e6edf2;border-color:#78909f}
html[data-theme=dark] .fpu .fpr-quiet{background:#0b1d2a;color:#e6edf2;border-color:#78909f}
html[data-theme=dark] .fpu-embedded .upload-alternative{color:#e6edf2}
html[data-theme=dark] .fpr-fallback #holdings-help,html[data-theme=dark] .fpr-fallback #fpr-fallback-sensitive{color:#bfced7}
.fpu .choice>span{min-width:0}
.fpu .choices{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.fpu .choices{grid-template-columns:minmax(0,1fr)}}
.fpu .picker{position:relative}
/* The shared review-page input rule must not stretch the radio buttons or hidden file inputs of the statement step. */
.fpr-intake .fpr-page .fpu .choice input[type=radio]{width:22px;height:22px;min-height:0;margin:3px 0 0;padding:0;border:0}
.fpr-intake .fpr-page .fpu .picker input{width:1px;height:1px;min-height:0;margin:0;padding:0;border:0}
.fpr-intake .fpr-page .fpu #pdfPane,.fpr-intake .fpr-page .fpu #photoPane{margin-top:0}
.fpr-intake .fpr-page .fpu fieldset{border:0;padding:0;margin:0 0 30px}
.fpr-intake .fpr-page .fpu legend{padding:0}
.fpr-intake #fpr-submit:disabled{opacity:.6;cursor:default}
