.swb-private-sourcing-page{max-width:1180px;margin:0 auto;padding:clamp(64px,8vw,110px) 32px 100px;color:var(--swb-text,#111)}
.swb-private-sourcing-page .swb-account-page-header{max-width:720px;margin:0 0 58px}
.swb-private-sourcing-page .swb-account-page-eyebrow{margin:0 0 16px;font:500 9px/1.3 var(--swb-type-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--swb-muted,#777)}
.swb-private-sourcing-page .swb-account-page-header h1{margin:0 0 18px;font:400 clamp(45px,5.3vw,73px)/1.02 var(--swb-type-display);letter-spacing:-.025em}
.swb-private-sourcing-page .swb-account-page-header>p:last-child{max-width:620px;margin:0;color:var(--swb-muted,#777);font:400 14px/1.75 var(--swb-type-body)}
.swb-private-sourcing-form{max-width:980px}
.swb-private-sourcing-chapter{padding:0;margin:0 0 clamp(60px,6vw,82px)}
.swb-private-sourcing-chapter-head{display:grid;grid-template-columns:34px minmax(0,1fr);gap:15px;margin:0 0 34px}
.swb-private-sourcing-chapter-head>span{font:400 10px/1.3 var(--swb-type-ui);letter-spacing:.12em;color:#9a9188;padding-top:5px}
.swb-private-sourcing-chapter-head h2{margin:0;font:400 clamp(28px,2.7vw,38px)/1.05 var(--swb-type-display);letter-spacing:-.02em;color:var(--swb-text)}
.swb-private-sourcing-chapter-head p{max-width:560px;margin:9px 0 0;font:400 11px/1.7 var(--swb-type-ui);color:var(--swb-muted)}
.swb-private-sourcing-fields{display:grid;gap:28px 38px;padding-left:49px}
.swb-private-sourcing-fields--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.swb-private-sourcing-fields--stack{grid-template-columns:1fr}
.swb-private-sourcing-fields p{margin:0}
.swb-private-sourcing-page label,.swb-private-sourcing-field-label{display:block;font:500 9px/1.4 var(--swb-type-ui);letter-spacing:.10em;text-transform:uppercase;color:var(--swb-muted,#777)}
.swb-private-sourcing-page input:not([type=checkbox]):not([type=radio]),.swb-private-sourcing-page select,.swb-private-sourcing-page textarea{display:block;width:100%;margin-top:9px;padding:11px 0;border:0;border-bottom:1px solid rgba(17,16,14,.22);border-radius:0;background:transparent;color:var(--swb-text);font:400 14px/1.55 var(--swb-type-body);outline:0;box-shadow:none}
.swb-private-sourcing-page textarea{min-height:110px;resize:vertical}
.swb-private-sourcing-page input:focus,.swb-private-sourcing-page select:focus,.swb-private-sourcing-page textarea:focus{border-bottom-color:var(--swb-text,#111)}
.swb-private-sourcing-field--wide{grid-column:1/-1}
.swb-private-sourcing-choice{grid-column:1/-1;border:0;margin:0;padding:0;min-width:0}
.swb-private-sourcing-choice legend{margin:0 0 14px;padding:0;font:500 9px/1.4 var(--swb-type-ui);letter-spacing:.10em;text-transform:uppercase;color:var(--swb-muted,#777)}
.swb-private-sourcing-choice label{display:inline-flex;align-items:center;gap:9px;margin:0 24px 8px 0;font:400 12px/1.4 var(--swb-type-ui);letter-spacing:.02em;text-transform:none;color:var(--swb-text,#111);cursor:pointer}
.swb-private-sourcing-choice input[type=radio]{appearance:none;width:15px!important;height:15px;margin:0!important;padding:0!important;border:1px solid rgba(17,16,14,.40)!important;border-radius:50%!important;background:transparent!important;position:relative;cursor:pointer}
.swb-private-sourcing-choice input[type=radio]:checked:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--swb-text,#111)}
.swb-private-sourcing-contact-choice{grid-column:1/-1}.swb-private-sourcing-contact-choice .swb-private-sourcing-field-label{margin:0 0 28px}
.swb-private-sourcing-budget{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0 24px;grid-column:1/-1}
.swb-private-sourcing-brand-other{margin-top:0}
.swb-private-sourcing-contact-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:0 18px;margin:0 0 22px;align-items:baseline}
.swb-private-sourcing-contact-option{appearance:none;-webkit-appearance:none;position:relative;border:0;border-radius:0;background:transparent;padding:0 0 6px;font:500 9px/1.3 var(--swb-type-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--swb-muted);cursor:pointer;transition:color var(--swb-motion-micro,.18s) ease}.swb-private-sourcing-contact-option:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;opacity:.7;transition:transform var(--swb-motion-hover,.52s) var(--swb-ease-live,cubic-bezier(.22,1,.36,1)),opacity var(--swb-motion-micro,.18s) ease}.swb-private-sourcing-contact-option:hover,.swb-private-sourcing-contact-option:focus-visible,.swb-private-sourcing-contact-option.is-selected{color:var(--swb-text);background:transparent}.swb-private-sourcing-contact-option:hover:after,.swb-private-sourcing-contact-option:focus-visible:after,.swb-private-sourcing-contact-option.is-selected:after{transform:scaleX(1);opacity:.7}
.swb-private-sourcing-contact-field{max-width:470px}
.swb-private-sourcing-upload{max-width:620px}
.swb-private-sourcing-upload-control{display:flex!important;align-items:center;justify-content:space-between;width:100%;margin-top:12px;padding:15px 0;border:0;border-bottom:1px solid rgba(17,16,14,.22);cursor:pointer;color:var(--swb-text,#111)}
.swb-private-sourcing-upload-control span{font:500 10px/1 var(--swb-type-ui);letter-spacing:.14em}
.swb-private-sourcing-upload-control:after{content:"+";font:300 20px/1 var(--swb-type-body)}
.swb-private-sourcing-upload-control input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.swb-private-sourcing-upload small{display:block;margin-top:10px;color:var(--swb-muted,#777);font:400 11px/1.65 var(--swb-type-ui)}
.swb-private-sourcing-submit{max-width:760px}
.swb-private-sourcing-submit p{max-width:620px;margin:0 0 22px;color:var(--swb-muted,#777);font:400 12px/1.7 var(--swb-type-body)}
.swb-private-sourcing-submit .swb-button{min-width:235px;min-height:52px;padding:0 23px;border-radius:0;font:500 10px/1 var(--swb-type-ui);letter-spacing:.15em;text-transform:uppercase}
.swb-private-sourcing-page .swb-account-highlight{margin:0 0 44px;border:0;border-top:1px solid rgba(17,16,14,.12);border-bottom:1px solid rgba(17,16,14,.12);padding:18px 0}
.swb-private-sourcing-page .swb-account-highlight strong{display:block;font:400 22px/1.2 var(--swb-type-display)}
.swb-private-sourcing-page .swb-account-highlight span{display:block;margin-top:5px;color:var(--swb-muted,#777);font:400 12px/1.6 var(--swb-type-body)}
.swb-private-sourcing-select{position:relative;display:block;margin-top:9px}
.swb-private-sourcing-select-trigger{box-sizing:border-box;width:100%;height:46px;min-height:46px;padding:10px 24px 10px 0;border:0;border-bottom:1px solid rgba(17,16,14,.22);border-radius:0;background:transparent;color:#201e1b;text-align:left;font:400 14px/1.45 var(--swb-type-body);cursor:pointer;position:relative}
.swb-private-sourcing-select-trigger:after{content:"";position:absolute;right:1px;top:50%;width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-65%) rotate(45deg);opacity:.62}
.swb-private-sourcing-select-panel{display:none;position:absolute;z-index:60;left:-10px;right:-10px;top:calc(100% + 8px);max-height:320px;overflow:auto;background:#fbfaf7;border:1px solid rgba(23,21,18,.13);padding:5px;box-shadow:0 16px 36px rgba(23,21,18,.08)}
.swb-private-sourcing-select-panel.is-open{display:block}
.swb-private-sourcing-country-search{box-sizing:border-box;width:100%;height:40px;margin:0 0 4px;padding:0 10px;border:0;border-bottom:1px solid rgba(23,21,18,.14);border-radius:0;background:transparent;color:#201e1b;outline:none;font:400 12px/1.35 var(--swb-type-ui)}
.swb-private-sourcing-country-search::placeholder{color:#8b8178}
.swb-private-sourcing-country-search:focus{border-bottom-color:rgba(23,21,18,.36)}
.swb-private-sourcing-select-option{display:block;width:100%;padding:9px 10px;border:0;border-radius:0;background:transparent;text-align:left;font:400 12px/1.35 var(--swb-type-ui);color:#201e1b;cursor:pointer}
.swb-private-sourcing-select-option:hover,.swb-private-sourcing-select-option:focus-visible,.swb-private-sourcing-select-option[aria-selected=true]{background:#f0ece5;outline:none}
.swb-private-sourcing-native-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:900px){.swb-private-sourcing-contact-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 18px}}
@media(max-width:700px){.swb-private-sourcing-page{padding:52px 20px 72px}.swb-private-sourcing-contact-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px}.swb-private-sourcing-page .swb-account-page-header{margin-bottom:42px}.swb-private-sourcing-page .swb-account-page-header h1{font-size:42px}.swb-private-sourcing-fields--two{grid-template-columns:1fr;gap:24px}.swb-private-sourcing-fields{padding-left:0}.swb-private-sourcing-field--wide,.swb-private-sourcing-choice,.swb-private-sourcing-contact-choice,.swb-private-sourcing-budget{grid-column:auto}.swb-private-sourcing-budget{grid-template-columns:1fr;gap:24px}.swb-private-sourcing-chapter{padding-bottom:44px;margin-bottom:44px}.swb-private-sourcing-chapter-head{grid-template-columns:34px minmax(0,1fr);gap:12px}.swb-private-sourcing-chapter-head h2{font-size:28px}.swb-private-sourcing-submit .swb-button{width:100%}}
.swb-private-sourcing-contact-options{max-width:760px!important;margin:18px 0 38px!important;gap:0 16px!important}.swb-private-sourcing-contact-option{padding-bottom:7px!important}.swb-private-sourcing-contact-field input::placeholder{font-size:13px!important;color:#8a837c!important}@media(max-width:900px){.swb-private-sourcing-contact-options{max-width:100%!important}}
/* CP-N15 root-cause fix: the broad form-input rule overrode the upload control's 1px sizing, adding 800px to the document width. Keep the native file input visually hidden without affecting drawer/widget fixed positioning. */
.swb-private-sourcing-page .swb-private-sourcing-upload-control input[type="file"]{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;max-width:1px!important;margin:0!important;padding:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}

/* WCAG contrast: audited Private Sourcing chapter numerals. */
html body .swb-private-sourcing-chapter-head>span{color:#746d64!important}

/* Shared SWB preferred-contact selector: identical type scale, underline, and control dimensions across service pages. */
.swb-private-sourcing-contact-options{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:0 16px!important;width:100%!important;max-width:100%!important;margin:18px 0 28px!important;align-items:baseline!important}
.swb-private-sourcing-contact-option{box-sizing:border-box!important;display:block!important;min-width:0!important;min-height:0!important;width:100%!important;padding:0 0 7px!important;border:0!important;border-radius:0!important;background:transparent!important;text-align:center!important;white-space:nowrap!important;font:500 9px/1.3 var(--swb-type-ui,Jost,sans-serif)!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--swb-muted,#777)!important}
.swb-private-sourcing-contact-option:after{content:""!important;position:absolute!important;left:0!important;bottom:0!important;width:100%!important;height:1px!important;background:currentColor!important;transform:scaleX(0)!important;transform-origin:left!important;opacity:.7!important;transition:transform var(--swb-motion-hover,.52s) var(--swb-ease-live,cubic-bezier(.22,1,.36,1)),opacity var(--swb-motion-micro,.18s) ease!important}
.swb-private-sourcing-contact-option:hover,.swb-private-sourcing-contact-option:focus-visible,.swb-private-sourcing-contact-option.is-selected{color:var(--swb-text,#111)!important;background:transparent!important}
.swb-private-sourcing-contact-option:hover:after,.swb-private-sourcing-contact-option:focus-visible:after,.swb-private-sourcing-contact-option.is-selected:after{transform:scaleX(1)!important;opacity:.7!important}
@media(max-width:900px){.swb-private-sourcing-contact-options{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px 18px!important}}
@media(max-width:700px){.swb-private-sourcing-contact-options{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px 16px!important}.swb-private-sourcing-contact-option{white-space:normal!important;font-size:9px!important}}
