/* careers — page styles */

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Roboto','Helvetica Neue',system-ui,-apple-system,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:#F3F6FA;color:#022345;}
h1,h2,h3,h4,h5,h6,[data-display]{font-family:'Manrope','Helvetica Neue',system-ui,sans-serif;font-weight:500;}
[data-eyebrow]{font-family:'Manrope','Helvetica Neue',system-ui,sans-serif;}
a{color:inherit;text-decoration:none;transition:color .42s ease;}
a:hover{color:#0BC1EC;}
::selection{background:#0BC1EC;color:#022345;}
/* Motion system — ease cubic-bezier(.16,1,.3,1); hover 420ms, card 560ms, reveal 900ms. */
[data-arrow]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em;line-height:1;vertical-align:middle;flex-shrink:0;overflow:hidden;visibility:hidden;}
[data-arrow]::before,[data-arrow]::after{content:"\2197";visibility:visible;position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:transform .52s cubic-bezier(.16,1,.3,1),opacity .32s ease;}
[data-arrow]::after{transform:translate(-115%,115%);opacity:0;}
[data-arrow="right"]::before,[data-arrow="right"]::after{content:"\2192";}
[data-arrow="right"]::after{transform:translateX(-125%);}
a:hover [data-arrow]::before,button:hover [data-arrow]::before,[data-card]:hover [data-arrow]::before{transform:translate(115%,-115%);opacity:0;}
a:hover [data-arrow]::after,button:hover [data-arrow]::after,[data-card]:hover [data-arrow]::after{transform:none;opacity:1;}
a:hover [data-arrow="right"]::before,[data-card]:hover [data-arrow="right"]::before{transform:translateX(125%);opacity:0;}
[data-card]{transition:background .56s cubic-bezier(.16,1,.3,1),border-color .56s ease,color .56s ease;}
[data-card]:hover{background:#D9E6F2;border-color:rgba(2,35,69,.2);color:#022345;}
[data-card] [data-badge]{transition:background .45s ease,border-color .45s ease,color .45s ease;}
[data-card]:hover [data-badge]{background:#0BC1EC;border-color:#0BC1EC;color:#FFFFFF;}
[data-title]{transition:color .42s ease;}
[data-tile]:hover [data-title],[data-card]:hover [data-title],[data-row]:hover [data-title]{color:#0BC1EC;}
[data-tile] [data-badge],[data-card] [data-badge]{transition:background .45s ease,border-color .45s ease,color .45s ease;}
[data-tile]:hover [data-badge]{background:#FBFCFD;border-color:#FBFCFD;color:#022345;}
[data-row]{transition:background .56s cubic-bezier(.16,1,.3,1),color .42s ease,padding-left .56s cubic-bezier(.16,1,.3,1);}
[data-row]:hover [data-arrow]::before,[data-row]:hover [data-arrow]::after{transition:transform .52s cubic-bezier(.16,1,.3,1),opacity .32s ease;}
[data-zoom]{overflow:hidden;}
@media (prefers-reduced-motion:reduce){[data-arrow]::before,[data-arrow]::after,[data-card],[data-zoom]>*{transition:none!important;}}

/* ── Greenhouse live board (site.js careersBoard) ──────────────────────────────
   Ported from the static build. Fonts changed from Montserrat (not loaded here) to
   the theme's Roboto/Manrope; dept/region headings inherit Manrope from the base
   rules above. The #app_body / #submit_app rules only take effect if the Greenhouse
   application is ever embedded locally — apply links currently open Greenhouse's
   hosted application in a new tab. */
#wrapper {
  overflow-x: hidden;
  overflow-y: hidden;
  font-family: 'Roboto','Helvetica Neue',system-ui,sans-serif;
  width: 70%;
  margin: 0 auto;
  padding: 0px 10px;
  min-height: 100%;
}

#wrapper > h1 {
    color: #fff;
    padding: 0;
    margin: 0;
    display: none !important;
}

#main {
  max-width: 100%;
  padding-top: 20px;
  padding-bottom: 100px;
}

div#main > div#wrapper > div.filter-container {
    display: none
}

#board_title {
    margin-top: -30px;
    font-size: 0rem;
}

.app-title {
    font-size: 2rem;
    font-weight: 700;
    text-transform: uppercase;
}

section.level-0 h3 {
  font-size: 1.1rem;
  margin-block-start: 1em;
  margin-block-end: 0.3em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  unicode-bidi: isolate;
  font-weight: 700;
  text-transform: uppercase;      /* match the site's eyebrow labels */
  letter-spacing: .14em;
}

section.level-0 {
  margin-bottom: 3px;
  font-size: 1.7rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
}

div.level-1 h4 {
  display: block;
  font-size: 0.9em;
  width: 200px;
  margin: 0;
  unicode-bidi: isolate;
  font-weight: unset;
  letter-spacing: initial;
}

div.level-1 {
  margin-bottom: 3px;
  font-size: 1.7rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  margin-left: 60px;
}

.flow-block {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.opening {
  color: #ffffff;
  padding-top: 12px;
  display: inline-flex;
  position: relative;
  background-color: #022345;
  border-radius: 13px;
  min-height: 140px;
  min-width: 320px;
  max-width: 320px;
  font-family: 'Manrope','Helvetica Neue',system-ui,sans-serif;
  font-size: 1.4rem !important;
  letter-spacing: normal;
}

.opening a {
  color: unset;
  text-decoration: none;
  text-transform: none;
  padding: 0px 16px !important;
  text-align: left;
  position: absolute;
  height: 140px;
}

.opening:hover {
  background-color: #0bc1ec !important;
}

.location {
  font-size: 13px;
  position: absolute;
  bottom: 18px;
  padding-right: 10px;
}

@media (max-width: 576px) {
  #wrapper {
    width: 75%;
  }
}

input#submit_app {
    background: transparent !important;
    background-image: none !important;
    border: 3px solid #022345;
    border-radius: 30px !important;
    text-decoration: none;
    padding: 10px 16px !important;
    font-family: 'Roboto','Helvetica Neue',system-ui,sans-serif;
    text-transform: uppercase;
    font-size: 1.2rem !important;
    font-weight: 400 !important;
    color: #022345 !important;
}

input#submit_app:hover {
    background-image: none !important;
    color: #fff !important;
    background-color: #0BC1EC !important;
    border-color: #0BC1EC;
    border-radius: 30px;
}

#app_body, #application {
    font-family: 'Roboto','Helvetica Neue',system-ui,sans-serif;
    font-weight: 100;
    font-size: 1.3rem;
    min-width: 100%;
    padding: 0px 5px !important;
    background-color: #fff;
}

.accordion-button-content {
    width: 6rem;
    border-radius: 30px;
    font-size: 0.7rem;
    padding: 4px;
}

.accordion-button-content[aria-expanded="false"]:before {
    content: "SHOW";
}

.accordion-button-content[aria-expanded="false"] {
    color: white;
    background-color: #0BC1EC;
    border: 2px solid #0BC1EC !important;
}

.accordion-button-content[aria-expanded="true"]:before {
    content: "HIDE";
}

.accordion-button-content[aria-expanded="true"] {
    color: black;
    background-color: white;
    border: 2px solid black !important;
}

@media (hover: hover) {
    .accordion-button-content[aria-expanded="true"]:hover {
        color: white;
        background-color: #0BC1EC;
        border: 2px solid #0BC1EC !important;
    }

    .accordion-button-content[aria-expanded="false"]:hover {
        color: black;
        background-color: white;
        border: 2px solid black !important;
    }
}

.region-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 1.3rem 0 0.7rem 0;
    width: 100%;
}

/* Portrait mode */
@media screen and (max-aspect-ratio: 4/5) {
    div.level-1 h4 {
      width: initial;
    }

    .accordion-button-content {
        font-size: 0.5rem !important;
        width: 4.0rem;
        min-width: 4.0rem;
        max-width: 4.0rem;
    }

    .accordion-button-content[aria-expanded="false"]:before {
        content: "SHOW";
        font-size: 0.6rem;
    }

    .accordion-button-content[aria-expanded="true"]:before {
        content: "HIDE";
        font-size: 0.6rem;
    }

    .region-header {
        width: 100%;
        justify-content: space-between;
    }
}
