@import url('https://api.fontshare.com/v2/css?f[]=switzer@400,500,600,700&display=swap');
@font-face{font-family:'XBuildCTA';src:url('https://x.build/xbuild-brand/fonts/Obviously-NarrowBlack.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap;}

:root{
  --fontFamily:'Switzer', Arial, sans-serif;
  --colorAppBackground:#F0ECE8;
  --borderRadiusContainer:20px;
  --borderRadiusControl:12px;
  --borderRadiusButton:999px;
  --widthMaxJobBoard:960px;
  --xb-ink:#0F0F0F;
  --xb-body:#3A352F;
  --xb-muted:#5B574F;
  --xb-brown:#A57C45;
  --xb-gold:#FCC03F;
  --xb-sand:#F0ECE8;
  --xb-line:rgba(15,15,15,0.10);
}

html,body{background:var(--xb-sand) !important;}
body{color:var(--xb-ink);font-family:'Switzer', Arial, sans-serif;-webkit-font-smoothing:antialiased;}
body p,body li{font-size:17px;line-height:1.6;color:var(--xb-body);}
body strong{color:var(--xb-ink);font-weight:600;}
a{color:var(--xb-ink);}

/* ---------- Header ---------- */
[class*="_navRoot_"]{background:var(--xb-sand) !important;padding-bottom:10px;border-bottom:1px solid transparent;}
.ashby-job-posting-header{padding-top:12px;}
[class*="_filtersContainer_"]{display:none !important;}
.ashby-job-board-back-to-all-jobs-button,
.ashby-job-board-back-to-all-jobs-button svg{color:var(--xb-ink) !important;fill:currentColor;}

/* ---------- Board intro ---------- */
[class*="_topDescription_"]{text-align:center;max-width:760px;margin:24px auto 8px;}
[class*="_topDescription_"] h2{font-size:64px !important;line-height:1.04 !important;font-weight:600 !important;letter-spacing:-0.035em !important;color:var(--xb-ink) !important;margin:24px 0 24px !important;}
[class*="_topDescription_"] h2 em{font-style:normal;color:var(--xb-brown);display:block;}
[class*="_topDescription_"] p{font-size:19px;line-height:1.55;color:var(--xb-muted);max-width:680px;margin:0 auto 10px;}
[class*="_topDescription_"] p strong{color:var(--xb-ink);}
[class*="_bottomDescription_"]{display:none !important;}

/* ---------- Open roles list ---------- */
.ashby-job-board-heading{font-size:13px !important;font-weight:600 !important;letter-spacing:0.16em !important;text-transform:uppercase;color:var(--xb-muted) !important;margin:72px 0 20px !important;display:flex;align-items:center;gap:14px;}
.ashby-job-board-heading::before{content:"";display:inline-block;width:32px;height:1px;background:var(--xb-brown);}
.ashby-job-board-heading-count{color:var(--xb-brown) !important;}
.ashby-department-heading,.ashby-job-posting-brief-department-heading{display:none !important;}

.ashby-job-posting-brief-list{border-top:1px solid var(--xb-line);}
.ashby-job-posting-brief{position:relative;background:transparent !important;border:0 !important;border-bottom:1px solid var(--xb-line) !important;border-radius:0 !important;box-shadow:none !important;padding:28px 72px 28px 4px !important;margin:0 !important;transition:padding 0.2s ease, background 0.2s ease;}
.ashby-job-posting-brief::after{content:"\2192";position:absolute;right:8px;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:999px;border:1px solid var(--xb-line);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--xb-ink);transition:all 0.2s ease;}
.ashby-job-posting-brief:hover{padding-left:16px !important;}
.ashby-job-posting-brief:hover::after{background:var(--xb-gold);border-color:var(--xb-gold);}
.ashby-job-posting-brief-title{font-size:28px !important;font-weight:600 !important;letter-spacing:-0.02em;color:var(--xb-ink) !important;margin-bottom:6px;}
.ashby-job-posting-brief-details,.ashby-job-posting-brief-details p{color:var(--xb-muted) !important;font-size:15px !important;}

/* ---------- Job page ---------- */
.ashby-job-posting-heading{font-size:56px !important;line-height:1.05 !important;font-weight:600 !important;letter-spacing:-0.035em !important;color:var(--xb-ink) !important;margin:24px 0 32px !important;}

.ashby-job-posting-left-pane{background:transparent !important;padding:8px 32px 0 0 !important;}
.ashby-job-posting-left-pane [class*="_section_"]{border-color:var(--xb-line) !important;padding:18px 0 !important;}
.ashby-job-posting-left-pane h2{font-size:12px !important;line-height:1.4 !important;font-weight:600 !important;letter-spacing:0.16em !important;text-transform:uppercase;color:var(--xb-muted) !important;margin:0 0 6px !important;}
.ashby-job-posting-left-pane p,.ashby-job-posting-left-pane span,.ashby-job-posting-left-pane li{font-size:16px !important;color:var(--xb-ink) !important;}

.ashby-job-posting-right-pane{background:#FFFFFF !important;border-radius:20px !important;padding:8px 40px 40px !important;}
.ashby-job-posting-right-pane-overview-tab,.ashby-job-posting-right-pane-application-tab{color:var(--xb-muted) !important;font-weight:600 !important;font-size:15px !important;}
[class*="_active_"] .ashby-job-posting-right-pane-overview-tab,[class*="_active_"] .ashby-job-posting-right-pane-application-tab{color:var(--xb-ink) !important;}
.ashby-job-posting-right-pane-tab-slider{background:var(--xb-ink) !important;height:2px !important;}

.ashby-job-posting-right-pane h3,.ashby-job-posting-right-pane h2{font-size:22px !important;font-weight:600 !important;letter-spacing:-0.015em;line-height:1.3 !important;margin:32px 0 10px !important;color:var(--xb-ink) !important;}
.ashby-job-posting-right-pane [class*="_descriptionText_"] > h3:first-child{margin-top:8px !important;}
.ashby-job-posting-right-pane ul li::marker{color:var(--xb-brown);}

/* ---------- Application form ---------- */
.ashby-application-form-question-title{font-size:15px !important;font-weight:600 !important;color:var(--xb-ink) !important;}
.ashby-application-form-input-text,
.ashby-application-form-container input[type="text"],
.ashby-application-form-container input[type="email"],
.ashby-application-form-container input[type="tel"],
.ashby-application-form-container textarea{background:var(--xb-sand) !important;border:1px solid transparent !important;border-radius:12px !important;font-size:16px !important;color:var(--xb-ink) !important;padding:14px 16px !important;transition:border-color 0.15s ease, background 0.15s ease;}
.ashby-application-form-container input:focus,
.ashby-application-form-container textarea:focus{background:#FFFFFF !important;border-color:var(--xb-ink) !important;box-shadow:none !important;outline:none !important;}

.ashby-application-form-autofill-input-root,
.ashby-application-form-input-file{background:var(--xb-sand) !important;border:1px dashed rgba(15,15,15,0.22) !important;border-radius:16px !important;}
.ashby-application-form-input-file-dropzone,
.ashby-application-form-input-file-dropzone *:not(button):not(svg):not(path){background:transparent !important;border:0 !important;}
.ashby-application-form-autofill-input-icon{color:var(--xb-brown) !important;}
.ashby-application-form-autofill-pane button,
.ashby-application-form-input-file-dropzone-upload{background:var(--xb-ink) !important;color:#FFFFFF !important;border:0 !important;border-radius:999px !important;box-shadow:none !important;font-weight:600 !important;}
.ashby-application-form-autofill-pane button *,
.ashby-application-form-input-file-dropzone-upload *{color:#FFFFFF !important;fill:#FFFFFF !important;}

.ashby-application-form-input-yesno-option{border-radius:999px !important;border:1px solid rgba(15,15,15,0.18) !important;background:#FFFFFF !important;color:var(--xb-ink) !important;margin-right:8px;min-width:96px;height:44px !important;font-weight:600 !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;padding:0 24px !important;line-height:1 !important;}
.ashby-application-form-input-radio-group-option-radio{accent-color:var(--xb-ink);}

.ashby-application-form-submit-button{font-family:'XBuildCTA','Switzer',Arial,sans-serif !important;font-weight:900 !important;font-size:22px !important;letter-spacing:0.02em !important;text-transform:uppercase;background:var(--xb-gold) !important;color:var(--xb-ink) !important;border:0 !important;border-radius:999px !important;box-shadow:none !important;height:60px !important;margin:16px 16px 0 !important;width:calc(100% - 32px) !important;opacity:1 !important;}
.ashby-application-form-submit-button:hover{background:var(--xb-ink) !important;color:#FFFFFF !important;}
.ashby-application-form-submit-button svg{display:none !important;}

@media (max-width: 720px){
  [class*="_topDescription_"] h2{font-size:42px !important;}
  .ashby-job-posting-heading{font-size:38px !important;}
  .ashby-job-posting-brief-title{font-size:22px !important;}
  .ashby-job-posting-right-pane{padding:8px 20px 28px !important;}
  .ashby-job-posting-left-pane{padding-right:0 !important;}
}

/* ---------- v6: header, alignment, apply button ---------- */
[class*="_navContainer_"]{display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:20px !important;}
[class*="_navContainer_"] > li:has(.ashby-job-board-back-to-all-jobs-button){order:-1;}
[class*="_navContainer_"] > li:empty{display:none !important;}
[class*="_navLogoWordmarkImage_"]{height:34px !important;width:auto !important;max-height:34px !important;}
[class*="_navRoot_"]{padding-top:12px;}
.ashby-job-board-back-to-all-jobs-button{width:40px;height:40px;border-radius:999px;border:1px solid var(--xb-line);display:inline-flex !important;align-items:center;justify-content:center;}
.ashby-job-board-back-to-all-jobs-button:hover{background:var(--xb-gold);border-color:var(--xb-gold);}
[class*="_titles_"]{padding-left:0 !important;margin-left:0 !important;}
.ashby-job-posting-heading{margin-left:0 !important;padding-left:0 !important;}
.ashby-job-posting-left-pane{padding-left:0 !important;}

.ashby-job-posting-description-container a[href$="/application"] button,
a[href$="/application"] > button[class*="_primary_"]{font-size:0 !important;background:var(--xb-gold) !important;border:0 !important;border-radius:999px !important;box-shadow:none !important;height:60px !important;}
.ashby-job-posting-description-container a[href$="/application"] button *,
a[href$="/application"] > button[class*="_primary_"] *{display:none !important;}
.ashby-job-posting-description-container a[href$="/application"] button::after,
a[href$="/application"] > button[class*="_primary_"]::after{content:"Apply";font-family:'XBuildCTA','Switzer',Arial,sans-serif;font-weight:900;font-size:24px;letter-spacing:0.02em;text-transform:uppercase;color:var(--xb-ink);}
a[href$="/application"] > button[class*="_primary_"]:hover{background:var(--xb-ink) !important;}
a[href$="/application"] > button[class*="_primary_"]:hover::after{color:#FFFFFF;}
[class*="_titles_"]{padding-left:12px !important;}
.ashby-job-posting-left-pane{padding-top:0 !important;}
.ashby-job-posting-left-pane > [class*="_section_"]:first-child{padding-top:0 !important;}

/* ---------- v7: left-aligned board, flipped job layout, centered Apply ---------- */
body:has(.ashby-job-posting-brief-list) [class*="_navContainer_"]{padding-left:44px !important;}
[class*="_topDescription_"]{text-align:left !important;max-width:800px !important;margin:40px 0 8px !important;}
[class*="_topDescription_"] h2{margin:16px 0 24px !important;}
[class*="_topDescription_"] p{margin:0 0 10px !important;max-width:720px !important;}
.ashby-job-board-heading{margin-top:64px !important;}
.ashby-job-board-heading::before{display:none !important;}
.ashby-job-posting-brief{padding-left:0 !important;}
.ashby-job-posting-brief:hover{padding-left:12px !important;}
@media (min-width: 900px){
[class*="_details_"]:has(> .ashby-job-posting-left-pane){grid-template-columns:minmax(0,1fr) 300px !important;column-gap:40px !important;}
.ashby-job-posting-right-pane{grid-column:1 !important;grid-row:1 !important;}
.ashby-job-posting-left-pane{grid-column:2 !important;grid-row:1 !important;padding:36px 0 0 0 !important;margin-top:0 !important;position:sticky !important;top:136px !important;align-self:start !important;}
}
a[href$="/application"] > button[class*="_primary_"]{display:flex !important;align-items:center !important;justify-content:center !important;padding:0 !important;line-height:1 !important;}
a[href$="/application"] > button[class*="_primary_"]::after{line-height:1 !important;display:block;padding-top:3px;}

/* ---------- v8: "Careers" lockup ---------- */
[class*="_navLogoLink_"]{display:inline-flex !important;align-items:center !important;text-decoration:none !important;}
[class*="_navLogoLink_"]::after{content:"Careers";display:inline-block;margin-left:16px;padding-left:16px;border-left:1px solid rgba(15,15,15,0.25);height:22px;line-height:22px;font-family:'Switzer',Arial,sans-serif;font-size:13px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:#5B574F;}
