/* JetBrains Mono from the TypeSafe Framer site. */
@font-face {
  font-family: "TS JetBrains Mono";
  src: url("https://framerusercontent.com/third-party-assets/fontshare/wf/TZ2PMVPWEVHUPJWOPNSWLOXAF6QPOEMZ/O4OZKA7ZLZGT4JOGT5IEKURK6U3RXYGM/EO5MKE3BUDOZN44BP4HDPXAJAC2BIMCD.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Hide only the count's parentheses; keep Ashby's live number and accessible text. */
@font-face {
  font-family: "TS Count Punctuation";
  src: url("https://framerusercontent.com/assets/4w6Hg5DeDzuWT6PSthKEwbacV0g.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0028-0029;
  size-adjust: 0%;
}

/* Die Grotesk C webfonts hosted by the TypeSafe website. */
@font-face {
  font-family: "TS Die Grotesk";
  src: url("https://framerusercontent.com/assets/AjH8uNDZvXKC9xfhOZo8jIJKVss.woff2")
    format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "TS Die Grotesk";
  src: url("https://framerusercontent.com/assets/4w6Hg5DeDzuWT6PSthKEwbacV0g.woff2")
    format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@media all {
/* TypeSafe AI / Fuzzco careers theme â€” 2026-09-11.
   Public Ashby styling hooks are preferred. Prefix selectors cover layout
   wrappers for which Ashby provides no stable public class. */
:root{--ts-ink:#1e1e1e;--ts-text:#1e1e1edb;--ts-muted:#1e1e1e99;--ts-paper:#fefefe;--ts-pink:#e551ba;--ts-soft:#f386a1;--ts-line:#d8d8d8;--ts-font:'TS Die Grotesk',Arial,sans-serif}
body:has(.ashby-job-board-heading),body:has(.ashby-job-posting-heading){--fontFamily:var(--ts-font);--fontSizeNormal:1.0625rem;--widthMaxContent:70rem;--widthMaxJobBoard:70rem;--borderRadiusContainer:0;--borderRadiusControl:0;--borderRadiusButton:0;--colorAppBackground:var(--ts-paper);--colorPrimary600:var(--ts-ink);--colorPrimary900:#000;--colorNeutral000:var(--ts-paper);background:var(--ts-paper);color:var(--ts-text);font-family:var(--ts-font);font-synthesis:none}
body:has(.ashby-job-board-heading) #root,body:has(.ashby-job-posting-heading) #root{min-width:0;overflow-x:clip}
::selection{color:var(--ts-text);background:var(--ts-pink)}
/* Header */
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navRoot_']{position:relative;top:auto;background:var(--ts-ink);color:var(--ts-paper);padding:0;box-shadow:none;border:0}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navContainer_']{position:relative;width:min(70rem,calc(100% - 7rem));max-width:70rem;height:6.625rem;margin:0 auto;padding:0;display:flex;justify-content:flex-end;gap:1.5rem;border:0;border-bottom:0}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navContainer_']>li:first-child{position:absolute;left:0;top:50%;transform:translateY(-50%);margin:0;text-align:left}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navLogoLink_']{display:flex;align-items:center;justify-content:flex-start}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navLogoWordmarkImage_']{display:block!important;width:8.625rem;height:1.875rem;max-width:8.625rem;max-height:1.875rem;object-fit:contain}
.ashby-job-board-back-to-all-jobs-button{color:var(--ts-paper)!important;font:1rem/1.4 var(--ts-font);text-decoration:none;display:flex;align-items:center;gap:0.625rem}
.ashby-job-board-back-to-all-jobs-button::after{content:'All open roles'}
.ashby-job-board-back-to-all-jobs-button:hover{color:var(--ts-pink)!important}
/* Remove Ashby's outer width constraints; width is owned by each section. */
#root>div:has(> [class*='_titles_']):has(.ashby-job-board-heading),#root>div:has(> [class*='_titles_']):has(.ashby-job-posting-heading){max-width:none;width:100%;margin:0}
#root>div>[class*='_titles_']:has(.ashby-job-board-heading),#root>div>[class*='_titles_']:has(.ashby-job-posting-heading){margin:0;max-width:none}
/* The native introduction and live job count share the dark hero. */
#root>div>[class*='_titles_']:has(.ashby-job-board-heading){display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:end;gap:0 4rem;background:var(--ts-ink);color:var(--ts-paper);padding:6.875rem max(3.5rem,calc((100% - 70rem)/2)) 6.5rem}
body:has(.ashby-job-board-heading) [class*='_navContainer_']{height:5.875rem;border-bottom:0}
[class*='_topDescription_']{grid-column:1;grid-row:1;min-width:0;margin:0;padding:0;background:transparent;color:var(--ts-paper);display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-content:start}
/* Continuous intro rule, spanning the description and location text. */
[class*='_topDescription_']::after{content:'';grid-column:1;grid-row:3/5;justify-self:start;align-self:stretch;width:0.0625rem;background:#ffffff;pointer-events:none}
[class*='_topDescription_']>p{margin:0!important;min-height:0!important;padding-left:0.6875rem;box-sizing:border-box}
[class*='_topDescription_']>p:first-of-type{display:none}
[class*='_topDescription_']::before{content:'Careers at TypeSafe';display:block;grid-column:1;grid-row:1;color:var(--ts-paper);font:400 0.75rem/1.6 "TS JetBrains Mono",monospace;letter-spacing:0.04em;margin:0 0 1.5rem;padding:0}
[class*='_topDescription_']>h1{grid-column:1;grid-row:2;align-self:start;color:#ffffff;font-family:var(--ts-font);font-size:clamp(4.5rem,8.6vw,6.875rem);font-weight:500;letter-spacing:0;line-height:.95;margin:0 0 2.25rem!important}
[class*='_topDescription_']>h1::before{display:none!important}
[class*='_topDescription_']>p:nth-of-type(2){grid-column:1;grid-row:3;align-self:start;font:1.4375rem/1.35 var(--ts-font);letter-spacing:0.04em;max-width:30rem}
[class*='_topDescription_']>p:last-of-type{grid-column:1;grid-row:4;border-top:0;padding-top:0;margin-top:3.5rem!important;color:#c1c1c1;font:0.875rem/1.6 var(--ts-font)}
.ashby-job-board-heading{grid-column:2;grid-row:1;align-self:end;justify-self:end;max-width:none;width:auto;margin:0!important;font:400 1.4375rem/1.35 var(--ts-font);letter-spacing:0.04em;color:var(--ts-paper);display:block;text-align:left;white-space:nowrap;text-transform:lowercase}
.ashby-job-board-heading::first-letter{text-transform:uppercase}
.ashby-job-board-heading-count{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;flex:0 0 auto;box-sizing:border-box;min-width:1.75rem;height:2rem;margin:0 0 0.3rem 0.375rem;padding:1.1rem 0.5rem 1rem 0.55rem;border:0.0625rem solid currentColor;border-radius:0;background:transparent;font:400 1.4rem/1 "TS Count Punctuation","TS JetBrains Mono",monospace;color:inherit;letter-spacing:0.04em;white-space:nowrap}
#root>div>[class*='_content_']:has(.ashby-job-posting-brief-list){width:min(70rem,calc(100% - 7rem));max-width:70rem;margin:0 auto;padding:5rem 0 4.75rem}
[class*='_departments_']:has(.ashby-department-heading){display:block}
.ashby-department-heading{display:block;margin:0 0 0.8125rem!important;padding:1rem 0 0;border-top:0;max-width:none;color:var(--ts-muted);font:400 0.75rem/1.6 "TS JetBrains Mono",monospace;letter-spacing:0.04em;text-transform:lowercase}
.ashby-department-heading-level{display:inline;font:inherit;color:inherit;text-transform:inherit}
.ashby-department-heading::first-letter{text-transform:uppercase}
.ashby-job-posting-brief-list{display:block;margin:0 0 2.25rem;max-width:none;border-top:0}
.ashby-job-posting-brief-list>a{display:block;position:relative;text-decoration:none;border-bottom:0;color:var(--ts-text);transition:background .15s}
.ashby-job-posting-brief-list>a::after{content:none;display:none}
.ashby-job-posting-brief{padding:1.375rem 3.125rem 1.5625rem 0!important;margin:0!important;box-shadow:none!important;background:transparent!important;border:0!important;border-radius:0;color:var(--ts-text)}
.ashby-job-posting-brief-title{font:500 1.25rem/1.12 var(--ts-font);letter-spacing:0.04em;color:var(--ts-text);margin:0 0 0.5rem!important}
.ashby-job-posting-brief-details,.ashby-job-posting-brief-details p{font:0.875rem/1.6 var(--ts-font);color:var(--ts-muted);margin:0}
.ashby-job-posting-brief-list>a:hover{background:transparent!important;text-decoration:none!important}
.ashby-job-posting-brief-list>a:hover .ashby-job-posting-brief-title,
.ashby-job-posting-brief-list>a:hover .ashby-job-posting-brief-details,
.ashby-job-posting-brief-list>a:hover .ashby-job-posting-brief-details p{color:#E551BA!important;text-decoration:none!important}
/* Job overview and application shell */
/* Stack the logo and native back link above the job title. */
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navContainer_']{height:auto;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:7rem;padding:0}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navContainer_']>li{margin:0}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navContainer_']>li:first-child{position:static;transform:none;align-self:flex-start;width:auto;flex:none;display:flex;align-items:center;min-height:5.875rem}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navLogoLink_']{width:max-content;margin:0;justify-content:flex-start}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header .ashby-job-board-back-to-all-jobs-button{padding:0;min-height:0}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header .ashby-job-board-back-to-all-jobs-button svg{fill:currentColor;flex:none}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navContainer_']>li:empty{display:none}
#root>div>[class*='_titles_']:has(.ashby-job-posting-heading){background:var(--ts-ink);color:var(--ts-paper);padding:1.5rem max(3.5rem,calc((100% - 70rem)/2)) 6.5rem}
.ashby-job-posting-heading{color:var(--ts-paper);font:500 clamp(2.625rem,5.2vw,4.375rem)/1 var(--ts-font);letter-spacing:0.04em;margin:0;max-width:58.125rem}
#root>div>[class*='_content_']:has(.ashby-job-posting-left-pane){width:min(70rem,calc(100% - 7rem));max-width:70rem;margin:0 auto;display:grid;grid-template-columns:21.09375rem minmax(0,1fr);gap:4.25rem;padding:5rem 0 5rem;align-items:start}
.ashby-job-posting-left-pane{background:transparent!important;color:var(--ts-text);border:0!important;box-shadow:none!important;border-radius:0;padding:0.5rem 0 0!important;margin:0!important;font:1rem/1.35 var(--ts-font)}
.ashby-job-posting-left-pane>[class*='_section_']{border:0;padding:0;margin:0 0 3rem}
.ashby-job-posting-left-pane h2{display:block;color:var(--ts-muted);font:400 0.75rem/1.6 "TS JetBrains Mono",monospace;text-transform:lowercase;letter-spacing:0.04em;margin:0 0 0.4375rem}
.ashby-job-posting-left-pane h2::before{content:none;display:none}
.ashby-job-posting-left-pane h2::first-letter{text-transform:uppercase}
.ashby-job-posting-left-pane p,.ashby-job-posting-left-pane ul,.ashby-job-posting-left-pane li{font:1rem/1.35 var(--ts-font);margin:0;color:var(--ts-text);padding:0}
.ashby-job-posting-right-pane{min-width:0;background:transparent!important;color:var(--ts-text);border:0!important;box-shadow:none!important;border-radius:0;margin:0;padding:0}
.ashby-job-posting-right-pane>[role=tablist]{display:flex;position:relative;top:auto;gap:2.125rem;background:transparent;box-shadow:none;border:0;border-bottom:0;margin:0 0 2.25rem;padding:0;text-align:left}
.ashby-job-posting-right-pane [role=tab]{width:auto;margin:0;padding:0rem 0 0.5rem;border:0;border-bottom:0.1875rem solid transparent;color:var(--ts-text);font:400 1rem/1.6 var(--ts-font)}
.ashby-job-posting-right-pane [role=tab][aria-selected=true]{border-bottom-color:var(--ts-pink);font-weight:500}
.ashby-job-posting-right-pane [role=tab]:hover{color:#E551BA!important;text-decoration:none!important}
.ashby-job-posting-right-pane [role=tab][aria-selected=false]:hover{border-bottom-color:transparent!important}
.ashby-job-posting-right-pane [role=tab][aria-selected=true]:hover{border-bottom-color:var(--ts-pink)!important}
.ashby-job-posting-right-pane-overview-tab,.ashby-job-posting-right-pane-application-tab{color:inherit;font:inherit;background:transparent}
.ashby-job-posting-right-pane-tab-slider{display:none}
.ashby-job-posting-right-pane [role=tabpanel]{background:transparent;color:var(--ts-text);padding:0;margin:0;border:0;font:1.0625rem/1.55 var(--ts-font)}
.ashby-job-posting-right-pane [role=tabpanel]:focus{outline:none!important;box-shadow:none!important}
.ashby-job-posting-right-pane [role=tabpanel]>[class*='_description_']{padding:0!important;background:transparent;border:0;box-shadow:none!important}
.ashby-job-posting-description-container{box-shadow:none!important}
.ashby-job-posting-right-pane #overview :is(h1,h2){color:var(--ts-text);font:500 1.6875rem/1.15 var(--ts-font);letter-spacing:0.04em;margin:3.166667rem 0 1rem}
.ashby-job-posting-right-pane #overview h1:first-child{margin-top:0.75rem}
.ashby-job-posting-right-pane #overview p{font:1.0625rem/1.55 var(--ts-font);margin:0 0 1.125rem;color:var(--ts-text)}
.ashby-job-posting-right-pane #overview ul{padding-left:1.3125rem;margin:1.125rem 0 1.5rem}
.ashby-job-posting-right-pane #overview li{margin:0 0 0.416667rem;padding-left:0.25rem;color:var(--ts-text)}
.ashby-job-posting-right-pane #overview li>p:last-child{margin-bottom:0.75rem}
/* Tighten the empty paragraph before the bold cross-discipline introduction. */
.ashby-job-posting-right-pane #overview .ashby-job-posting-description>h1+p:has(+p:empty+p>strong:only-child){margin-bottom:0.5625rem}
.ashby-job-posting-right-pane #overview .ashby-job-posting-description>h1+p+p:empty:has(+p>strong:only-child){min-height:0!important;height:0.9828125rem;margin-bottom:0.5625rem}

.ashby-job-posting-right-pane #overview strong{font-weight:500;color:var(--ts-text)}
/* Native application controls; behavior, validation and uploads remain Ashby's. */
.ashby-application-form-container{background:transparent!important;color:var(--ts-text);border:0!important;border-radius:0;padding:0!important;box-shadow:none!important;margin:0!important}
.ashby-application-form-section-container{display:grid;grid-template-columns:1fr 1fr;gap:0 1.25rem;margin:0 0 2.5rem;padding:0;border:0;background:transparent}
.ashby-application-form-section-container:has(>[data-field-path='_systemfield_name']){padding-top:3rem}
.ashby-application-form-section-container>*{grid-column:1/-1;min-width:0}
.ashby-application-form-section-container>[data-field-path='_systemfield_name']{grid-column:1}
.ashby-application-form-section-container>[data-field-path='_systemfield_email']{grid-column:2}
.ashby-application-form-section-header{margin:0 0 2rem;padding:0;border:0}
.ashby-application-form-section-header-title{font:500 1.6875rem/1.15 var(--ts-font);letter-spacing:0.04em;color:var(--ts-text);margin:0}
.ashby-application-form-field-entry,.ashby-application-form-input-radio-group{margin:0 0 3rem!important;padding:0;border:0;min-width:0}
.ashby-application-form-question-title{display:block;font:400 1rem/1.35 var(--ts-font);color:var(--ts-text);margin:0 0 0.5625rem;text-transform:lowercase}
.ashby-application-form-question-title::before{content:none;display:none}
.ashby-application-form-question-title::first-letter{text-transform:uppercase}
.ashby-application-form-question-title[for="_systemfield_resume"]{text-transform:none}
.ashby-application-form-question-title[for="eb95f250-29a4-47a2-8e4c-51f9c379bf9f"]{text-transform:none}
.ashby-application-form-question-title:is([for="73e04e98-ad6c-422b-a324-8d005d59320c"],[for="e624c31d-c7be-4dd0-88de-acea7b8c73c3"]){text-transform:none}
.ashby-application-form-question-title[for="6cacb669-3644-416b-b2d7-dbfe1bdf08a9"]{text-transform:none;margin-bottom:1rem}
.ashby-application-form-question-title:is([for="889c1fea-362a-4af7-bc39-26251dbf0b19"],[for="84081756-24c3-46a7-bc91-89badb8ee544"]){font-size:0;line-height:0;text-transform:none}
.ashby-application-form-question-title:is([for="889c1fea-362a-4af7-bc39-26251dbf0b19"],[for="84081756-24c3-46a7-bc91-89badb8ee544"])::before{content:"LinkedIn profile";display:inline;font:400 1rem/1.35 var(--ts-font);text-transform:none;margin:0}
.ashby-application-form-question-title:is([for="889c1fea-362a-4af7-bc39-26251dbf0b19"],[for="84081756-24c3-46a7-bc91-89badb8ee544"])::after{font-size:1rem}
.ashby-application-form-question-title[for="f3452d7b-3545-4e2e-9f23-a69fffb5b071"]{font-size:0;line-height:0;text-transform:none}
.ashby-application-form-question-title[for="f3452d7b-3545-4e2e-9f23-a69fffb5b071"]::before{content:"GitHub profile or equivalent";display:inline;font:400 1rem/1.35 var(--ts-font);text-transform:none;margin:0}
.ashby-application-form-question-title[for="f3452d7b-3545-4e2e-9f23-a69fffb5b071"]::after{font-size:1rem}
.ashby-application-form-question-description,.ashby-application-form-question-description p{font:0.875rem/1.45 var(--ts-font);color:var(--ts-muted);margin:0}
.ashby-application-form-question-description{margin-bottom:1rem!important}
.ashby-application-form-question-description:has(>p:empty){display:none}
.ashby-application-form-input-text,.ashby-application-form-input-textarea,.ashby-application-form-input-autocomplete{font:1rem/1.4 var(--ts-font)!important;color:var(--ts-text)!important;background:var(--ts-paper)!important;border:0.0625rem solid #aaa!important;border-radius:0!important;padding:0.8125rem 0.875rem!important;box-shadow:none!important;min-width:0;caret-color:var(--ts-ink)}
.ashby-application-form-input-textarea{resize:vertical;min-height:8rem}
.ashby-application-form-container [class*='_validationError_']{margin-top:0.125rem}
.ashby-application-form-field-entry [class*='_inputContainer_']{background:var(--ts-paper);border:0.0625rem solid #aaa;border-radius:0;display:flex;align-items:stretch}
.ashby-application-form-field-entry [class*='_inputContainer_'] .ashby-application-form-input-autocomplete{border:0!important;min-width:0;flex:1}
.ashby-application-form-field-entry [class*='_inputContainer_'] button{border:0;background:transparent;color:var(--ts-text);width:2.625rem;flex:0 0 2.625rem}
.ashby-application-form-input-text::placeholder,.ashby-application-form-input-textarea::placeholder,.ashby-application-form-input-autocomplete::placeholder{color:var(--ts-muted)!important;opacity:1}
.ashby-application-form-input-radio-group{display:flex;gap:0 0.625rem;flex-wrap:wrap;align-items:flex-start;align-content:flex-start}
.ashby-application-form-input-radio-group>.ashby-application-form-question-title,.ashby-application-form-input-radio-group>.ashby-application-form-question-description{width:100%;flex:0 0 100%}
.ashby-application-form-input-radio-group>.ashby-application-form-question-title{margin:0 0 0.5rem!important;padding:0}
.ashby-application-form-input-radio-group>.ashby-application-form-question-description{margin:0 0 1rem!important;padding:0}
.ashby-application-form-input-radio-group>.ashby-application-form-question-description p{margin:0!important;padding:0}
.ashby-application-form-input-radio-group-option{border:0.0625rem solid #aaa;padding:0.6875rem 0.9375rem;min-height:2.875rem;margin:0!important;display:flex;align-items:center;gap:0.5625rem;background:var(--ts-paper);border-radius:0}
.ashby-application-form-input-radio-group-option-label{font:1rem/1.4 var(--ts-font);color:var(--ts-text);margin:0}
.ashby-application-form-input-radio-group-option,.ashby-application-form-input-radio-group-option *{cursor:pointer!important}
.ashby-application-form-input-radio-group-option{position:relative}
.ashby-application-form-input-radio-group-option-label{position:static}
.ashby-application-form-input-radio-group-option:not(:has(input:disabled))>.ashby-application-form-input-radio-group-option-label::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer}
.ashby-application-form-input-radio-group-option:has(input:checked){border-color:#E551BA!important;color:#E551BA!important;background:#fbe4f4}
.ashby-application-form-input-radio-group-option:has(input:checked) label{color:#E551BA!important}
.ashby-application-form-input-yesno{display:flex;flex-direction:row;gap:0.625rem;flex-wrap:nowrap}
.ashby-application-form-input-yesno>.ashby-application-form-input-yesno-option{flex:1 1 0;width:0;min-width:0}
.ashby-application-form-input-yesno-option{border:0.0625rem solid #aaa!important;padding:0.6875rem 0.9375rem;min-height:2.875rem;margin:0;box-shadow:none;border-radius:0!important;font:1rem/1.4 var(--ts-font);color:var(--ts-text)!important;background:var(--ts-paper)!important}
.ashby-application-form-input-yesno-option[aria-pressed=true]{border-color:#E551BA!important;color:#E551BA!important;background:#fbe4f4!important}

/* Compact radio indicators; keep the full option as the click target. */
.ashby-application-form-input-radio-group-option>[class*='_container_']{width:1rem!important;height:1rem!important;min-width:1rem;flex:0 0 1rem;box-sizing:border-box;border-width:0.083333rem!important}
.ashby-application-form-input-radio-group-option [class*='_circle_']{width:0.5rem!important;height:0.5rem!important;margin:0!important}
.ashby-application-form-input-radio-group-option-radio{width:100%!important;height:100%!important;margin:0!important;accent-color:#E551BA}
.ashby-application-form-input-radio-group-option:has(input:checked)>[class*='_container_']{border-color:#E551BA!important}
.ashby-application-form-input-radio-group-option:has(input:checked) [class*='_circle_']{background:#E551BA!important}
.ashby-application-form-input-radio-group-option:hover,
.ashby-application-form-input-yesno-option:hover{background:#f5f5f5!important}
.ashby-application-form-input-radio-group-option:has(input:checked):hover,
.ashby-application-form-input-yesno-option[aria-pressed=true]:hover{background:#FFCCF0!important}

.ashby-application-form-input-file{background:#f5f5f5;border:0.0625rem dashed #aaa;border-radius:0;padding:1.25rem}
.ashby-application-form-input-file{position:relative;transition:none!important}
.ashby-application-form-input-file:has(.ashby-application-form-input-file-dropzone-upload:not(:disabled)){cursor:pointer}
.ashby-application-form-input-file:has(.ashby-application-form-input-file-dropzone-upload:not(:disabled)):hover{background:#eeeeee;border-color:#000}
.ashby-application-form-input-file .ashby-application-form-input-file-dropzone-upload{position:static}
.ashby-application-form-input-file .ashby-application-form-input-file-dropzone-upload:not(:disabled)::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer}

.ashby-application-form-input-file-dropzone{display:flex;align-items:center;gap:1.25rem;min-height:3.75rem;padding:0}
.ashby-application-form-input-file-dropzone-instructions{font:1rem/1.5 var(--ts-font);color:var(--ts-muted);margin:0}
.ashby-application-form-input-file-dropzone-upload,.ashby-application-form-autofill-input-base-layer button{background:#E0E0E0!important;color:var(--ts-text)!important;border:0!important;border-radius:0;font:1rem/1.5 var(--ts-font);padding:0.625rem 0.875rem;box-shadow:none}
.ashby-application-form-submit-button,.ashby-job-posting-apply-button,.ashby-job-posting-right-pane #overview a>button{background:#1e1e1e!important;color:#ffffff!important;border:0.0625rem solid #1e1e1e!important;border-radius:0!important;font:1.2rem/1.5 var(--ts-font);padding:0.9375rem 1.25rem;min-height:3.125rem;box-shadow:none;text-transform:none;letter-spacing:0}
.ashby-application-form-submit-button:hover,.ashby-job-posting-apply-button:hover,.ashby-job-posting-right-pane #overview a>button:hover{background:#3F3F46!important;border-color:#3F3F46!important}
.ashby-application-form-submit-button{display:flex!important;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;gap:0.75rem}
.ashby-application-form-submit-button svg{display:block;flex:0 0 auto;width:1.2rem;height:1.2rem;margin:0!important;color:inherit!important;fill:currentColor!important}
.ashby-job-posting-right-pane #overview a>button{display:block;text-transform:lowercase}
.ashby-job-posting-right-pane #overview a>button::first-letter{text-transform:uppercase}
.ashby-application-form-submit-button>span{display:block;flex:0 1 auto;width:auto;margin:0;text-transform:lowercase}
.ashby-application-form-submit-button>span::first-letter{text-transform:uppercase}
.ashby-application-form-input-file-dropzone-upload svg,.ashby-application-form-autofill-input-base-layer button svg{display:none!important}
.ashby-application-form-input-file-dropzone-upload,.ashby-application-form-autofill-input-base-layer button{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem}
.ashby-application-form-input-file-dropzone-upload::before,.ashby-application-form-autofill-input-base-layer button::before{content:"";display:block;position:static;width:1rem;height:1rem;flex:0 0 1rem;background:currentColor;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m21.44%2011.05-9.19%209.19a6%206%200%200%201-8.49-8.49l9.19-9.19a4%204%200%200%201%205.66%205.66l-9.2%209.19a2%202%200%200%201-2.83-2.83l8.49-8.48%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m21.44%2011.05-9.19%209.19a6%206%200%200%201-8.49-8.49l9.19-9.19a4%204%200%200%201%205.66%205.66l-9.2%209.19a2%202%200%200%201-2.83-2.83l8.49-8.48%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat}

.ashby-application-form-input-file-dropzone-upload,.ashby-application-form-input-file-dropzone-upload *,.ashby-application-form-autofill-input-base-layer button,.ashby-application-form-autofill-input-base-layer button *{transition:none!important}
.ashby-application-form-input-file-dropzone-upload:hover,.ashby-application-form-autofill-input-base-layer button:hover{background:#D7D7D7!important;border:0!important}

.ashby-application-form-autofill-pane{background:transparent!important;border:0!important;padding:0!important;margin:0 0 1.875rem!important;box-shadow:none;border-radius:0}
.ashby-application-form-autofill-input-root{background:#f5f5f5;border:0.0625rem dashed #aaa;padding:1.25rem;border-radius:0;min-height:0;box-shadow:none}
.ashby-application-form-autofill-input-base-layer{padding:0}
/* Extend the native upload button across the idle resume drop area. */
.ashby-application-form-autofill-input-root{position:relative}
.ashby-application-form-autofill-input-root[data-state=default]{cursor:pointer;transition:none!important}
.ashby-application-form-autofill-input-root[data-state=default]:hover{background:#eeeeee;border-color:#000}
.ashby-application-form-autofill-input-root[data-state=default] .ashby-application-form-autofill-input-base-layer button{position:static}
.ashby-application-form-autofill-input-root[data-state=default] .ashby-application-form-autofill-input-base-layer button:not(:disabled)::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer}

.ashby-application-form-autofill-input-base-layer>[class*='_content_']{display:grid;grid-template-columns:1fr auto;gap:0.1875rem 1.125rem}
.ashby-application-form-autofill-input-base-layer [class*='_header_']{grid-column:1;grid-row:1;display:block}
.ashby-application-form-autofill-input-base-layer [class*='_iconContainer_']{display:none}
.ashby-application-form-autofill-input-title{font:400 1rem/1.4 var(--ts-font);color:var(--ts-text);margin:0}
.ashby-application-form-autofill-input-description{font:0.875rem/1.5 var(--ts-font);color:var(--ts-muted);margin:0;grid-column:1;grid-row:2;max-width:none}
.ashby-application-form-autofill-input-base-layer [class*='_cta_']{grid-column:2;grid-row:1/3;align-self:center;margin:0}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) :is(a,button,input,textarea,[role=combobox]):focus-visible{outline:0.125rem solid var(--ts-pink)!important;outline-offset:0.25rem}
.ashby-application-form-container :is(.ashby-application-form-input-text,.ashby-application-form-input-textarea,.ashby-application-form-input-autocomplete),.ashby-application-form-field-entry [class*='_inputContainer_']{transition:none!important}
/* Black hover borders for editable fields; focused fields keep their pink state. */
.ashby-application-form-container :is(.ashby-application-form-input-text,.ashby-application-form-input-textarea,.ashby-application-form-input-autocomplete):hover:not(:focus){border-color:#000!important}
.ashby-application-form-field-entry [class*='_inputContainer_']:hover:not(:focus-within){border-color:#000!important}
/* One-pixel pink focus edge with a solid pale-pink outer ring. */
body:has(.ashby-job-posting-heading) .ashby-application-form-container :is(.ashby-application-form-input-text,.ashby-application-form-input-textarea,.ashby-application-form-input-autocomplete):focus,
body:has(.ashby-job-posting-heading) .ashby-application-form-field-entry [class*='_inputContainer_']:focus-within{border-color:var(--ts-pink)!important;outline:0.0625rem solid var(--ts-pink)!important;outline-offset:-0.0625rem!important;box-shadow:0 0 0 0.1875rem #e551ba33!important}
body:has(.ashby-job-posting-heading) .ashby-application-form-field-entry [class*='_inputContainer_'] .ashby-application-form-input-autocomplete:focus{outline:none!important;box-shadow:none!important}
/* Suppress native button hover shadows, including decorative pseudo-elements. */
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) :is(button,[role=button],input[type=button],input[type=submit],input[type=reset],.ashby-job-posting-apply-button,.ashby-application-form-submit-button,.ashby-application-form-input-file-dropzone-upload,.ashby-job-board-back-to-all-jobs-button):hover,
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) :is(button,[role=button],input[type=button],input[type=submit],input[type=reset],.ashby-job-posting-apply-button,.ashby-application-form-submit-button,.ashby-application-form-input-file-dropzone-upload,.ashby-job-board-back-to-all-jobs-button):hover::before,
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) :is(button,[role=button],input[type=button],input[type=submit],input[type=reset],.ashby-job-posting-apply-button,.ashby-application-form-submit-button,.ashby-application-form-input-file-dropzone-upload,.ashby-job-board-back-to-all-jobs-button):hover::after{box-shadow:none!important;filter:none!important}
/* Footer keeps all original Ashby security/privacy links. */
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer{width:100%;max-width:none;border:0!important;background:#ffffff;color:var(--ts-text);font:0.75rem/1.5 var(--ts-font);margin:0;padding:2.25rem max(3.5rem,calc((100% - 70rem)/2));display:flex;align-items:center;justify-content:space-between;gap:1.875rem}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer a{color:var(--ts-muted);font:0.75rem/1.5 var(--ts-font);text-decoration:none}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer a:hover{color:var(--ts-pink)}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer svg{fill:currentColor;color:var(--ts-text)}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer p{margin:0;font-size:0.75rem}
@media(max-width:62.5rem){
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navContainer_'],#root>div>[class*='_content_']:has(.ashby-job-posting-brief-list),#root>div>[class*='_content_']:has(.ashby-job-posting-left-pane){width:calc(100% - 4rem)}
#root>div>[class*='_titles_']:has(.ashby-job-board-heading){padding:4.5rem 2rem;column-gap:2rem}
#root>div>[class*='_titles_']:has(.ashby-job-posting-heading){padding-bottom:4.5rem}
[class*='_topDescription_']>p:nth-of-type(2),.ashby-job-board-heading{font-size:1.3125rem}
[class*='_departments_']:has(.ashby-department-heading){grid-template-columns:11.25rem minmax(0,1fr);column-gap:1.875rem}
#root>div>[class*='_titles_']:has(.ashby-job-posting-heading){padding-inline:2rem}
#root>div>[class*='_content_']:has(.ashby-job-posting-left-pane){grid-template-columns:16.875rem minmax(0,1fr);gap:2.5rem}
.ashby-application-form-section-container{grid-template-columns:1fr}
.ashby-application-form-section-container>[data-field-path='_systemfield_email']{grid-column:1}
}
@media(max-width:50rem){
#root>div>[class*='_titles_']:has(.ashby-job-board-heading){grid-template-columns:minmax(0,1fr);gap:3rem}
.ashby-job-board-heading{grid-column:1;grid-row:2;justify-self:start}
}
@media(max-width:40rem){
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navContainer_']{gap:3rem;padding:0}
body:has(.ashby-job-posting-heading) .ashby-job-posting-header [class*='_navContainer_']>li:first-child{min-height:5.375rem}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navContainer_'],#root>div>[class*='_content_']:has(.ashby-job-posting-brief-list),#root>div>[class*='_content_']:has(.ashby-job-posting-left-pane){width:calc(100% - 2.5rem)}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navContainer_']{height:5.375rem;gap:1rem}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) [class*='_navLogoWordmarkImage_']{width:7.03125rem;max-width:7.03125rem;height:auto;max-height:1.6875rem}
.ashby-job-board-back-to-all-jobs-button{font-size:1rem;gap:0.375rem;white-space:nowrap}
#root>div>[class*='_titles_']:has(.ashby-job-board-heading){padding:2.3125rem 1.25rem 4rem}
[class*='_topDescription_']>h1{grid-column:1;grid-row:2;font-size:clamp(3.5rem,14vw,5rem);letter-spacing:0;margin-bottom:2.25rem!important}
[class*='_topDescription_']>p:nth-of-type(2){grid-column:1;grid-row:3;font-size:1.3125rem;line-height:1.36;max-width:none;margin-bottom:0!important}
[class*='_topDescription_']>p:last-of-type{grid-column:1;grid-row:4;font-size:0.875rem;margin-top:3.5rem!important;padding-top:0}
.ashby-job-board-heading{font-size:1.3125rem;line-height:1.36}
.ashby-job-board-heading-count{font-size:1.4rem}
[class*='_departments_']:has(.ashby-department-heading){display:block}
.ashby-department-heading{max-width:none;padding:1rem 0 0;margin:0 0 0.8125rem!important;font-size:0.75rem}
.ashby-job-posting-brief-list{margin-bottom:1.875rem}
.ashby-job-posting-brief{padding:1.3125rem 2.25rem 1.3125rem 0!important}
.ashby-job-posting-brief-title{font-size:1.25rem;line-height:1.15}
#root>div>[class*='_content_']:has(.ashby-job-posting-brief-list){padding-top:2rem;padding-bottom:2.5rem}
#root>div>[class*='_titles_']:has(.ashby-job-posting-heading){padding:1.5rem 1.25rem 4rem}
.ashby-job-posting-heading{font-size:clamp(1.875rem,8.8vw,2.6875rem);line-height:1}
#root>div>[class*='_content_']:has(.ashby-job-posting-left-pane){display:block;padding:3rem 0 2.8125rem}
.ashby-job-posting-left-pane{display:grid;grid-template-columns:1fr 1fr;gap:0 1.25rem;padding:0 0 1.8125rem!important;border-bottom:0!important;margin-bottom:1.25rem!important}
.ashby-job-posting-left-pane>[class*='_section_']:last-child{grid-column:1/-1}
.ashby-job-posting-left-pane h2{font-size:0.75rem}
.ashby-job-posting-left-pane :is(p,ul,li){font-size:1rem}
.ashby-job-posting-right-pane>[role=tablist]{margin-bottom:1.75rem}
.ashby-job-posting-right-pane #overview :is(h1,h2){font-size:1.5625rem;margin-top:2.5rem}
.ashby-job-posting-right-pane #overview h1:first-child{margin-top:0.583333rem}
.ashby-application-form-section-header-title{font-size:1.5625rem}
.ashby-job-posting-right-pane #overview p{font-size:1rem}
.ashby-job-posting-right-pane #overview .ashby-job-posting-description>h1+p+p:empty:has(+p>strong:only-child){height:0.925rem}
.ashby-application-form-autofill-input-base-layer>[class*='_content_']{display:block}
.ashby-application-form-autofill-input-base-layer [class*='_cta_']{margin-top:0.9375rem;width:100%}
.ashby-application-form-input-file-dropzone-upload,.ashby-application-form-autofill-input-base-layer button{width:100%;box-sizing:border-box;justify-content:center}
.ashby-application-form-input-file-dropzone{flex-wrap:wrap;gap:0.75rem}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer{padding:1.875rem 1.25rem;flex-wrap:wrap;gap:1.5rem}
body:is(:has(.ashby-job-board-heading),:has(.ashby-job-posting-heading)) footer a{font-size:0.75rem}
}
@media(prefers-reduced-motion:reduce){.ashby-job-posting-brief-list>a{transition:none}}


.ashby-job-board-heading::before{display:none!important;content:none!important}

}

/* Keep the page-wide spacing rule inside an at-rule, like the rest of the theme. */
@media all {
  *,
  *::before,
  *::after {
    letter-spacing:0.04em !important;
  }
  [class*='_topDescription_'] > h1,
  [class*='_topDescription_'] > h1 * {
    letter-spacing:0 !important;
  }
}
