/* Ramp Careers opening with the complete user-supplied photo archive.
   The PE Partnerships-style principle and culture scenes live in motion.css. */
.careers-page{
  --career-ink:#1b1b18;
  --career-muted:#65645f;
  --career-line:#dddcd7;
  --career-wash:#f3f2ef;
  --paper:#fff;
  background:#fff;color:var(--career-ink);
}
.careers-page .site-header{background:rgba(255,255,255,.94)}
.careers-page main{overflow:clip}
.career-shell{width:min(1440px,calc(100% - 128px));margin-inline:auto}
.career-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 23px;border:1px solid transparent;border-radius:6px;background:var(--brand);color:#fff;font-size:15px;font-weight:500;line-height:1.3;transition:background .2s}
.career-button:hover{background:var(--brand-deep)}
.mobile-break{display:none}
.career-intro{padding:80px 0 58px;text-align:center}
.career-intro h1{margin:0;font-size:clamp(52px,6.8vw,104px);font-weight:500;line-height:1.1;letter-spacing:-.068em;text-wrap:balance}
.career-intro p{max-width:600px;margin:36px auto 28px;color:var(--career-muted);font-size:18px;line-height:1.6;letter-spacing:-.018em}

/* Supplied photos retain their full composition, including the wider group shot. */
.career-gallery{--photo-height:360px;max-width:1664px;margin-inline:auto;padding-bottom:34px}
.career-gallery-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.career-gallery-track{display:flex;align-items:center;gap:24px;height:calc(var(--photo-height) + 44px);padding-block:16px;padding-left:max(24px,calc((100% - var(--photo-height)*1.3333)/2));padding-right:max(24px,calc((100% - var(--photo-height)*1.7778)/2));overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab}
.career-gallery-track::-webkit-scrollbar{display:none}
.career-gallery-track:active{cursor:grabbing}
.career-gallery-track:focus-visible{outline-offset:-5px}
.career-photo{position:relative;flex:0 0 calc(var(--photo-height)*var(--photo-ratio));width:calc(var(--photo-height)*var(--photo-ratio));margin:0;scroll-snap-align:center;transform-origin:50% 50%;user-select:none}
.career-photo img{display:block;width:100%;height:var(--photo-height);border-radius:10px;object-fit:contain;pointer-events:none}
.career-gallery-controls{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:12px}
.career-gallery-controls[hidden]{display:none}
.career-icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:11px;border:1px solid var(--career-line);border-radius:50%;background:#fff;color:var(--career-ink);cursor:pointer;transition:border-color .2s,background .2s}
.career-icon-button:hover{border-color:#99988f;background:#f6f5f2}
.career-icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.career-gallery-play{margin-left:10px}
.career-gallery-play .pause-mark,.career-gallery-play[aria-pressed="true"] .play-mark{display:none}
.career-gallery-play[aria-pressed="true"] .pause-mark{display:block}

.career-section-heading{text-align:center}
.career-section-heading h2{margin:0;font-size:clamp(34px,3.4vw,48px);font-weight:500;line-height:1.16;letter-spacing:-.05em;text-wrap:balance}
.career-section-heading>p{max-width:560px;margin:25px auto 0;color:var(--career-muted);font-size:17px;line-height:1.65;letter-spacing:-.014em}
.career-about{padding:86px 0 96px}
.career-eyebrow,.career-section-heading>.career-eyebrow{margin:0 0 20px;color:var(--career-muted);font-size:14px;font-weight:400;line-height:1.4}
.career-section-heading>.career-eyebrow{margin-inline:auto}
.career-text-link{display:inline-flex;align-items:center;gap:8px;min-height:40px;margin-top:2px;color:var(--career-ink);font-size:14px;text-underline-offset:5px}
.career-text-link:hover{text-decoration:underline}

.roles-board{padding:124px 0 120px;scroll-margin-top:20px}
.roles-list{margin-top:65px;border-top:1px solid var(--career-line);border-bottom:1px solid var(--career-line)}
.roles-list-heading{display:flex;align-items:center;justify-content:space-between;padding:24px 0;border-bottom:1px solid var(--career-line)}
.roles-list-heading h3{margin:0;font-size:16px;font-weight:500}
.roles-list-heading>span{color:var(--career-muted);font-size:14px}
.roles-empty{padding:50px 0 54px}
.roles-empty p{margin:0;color:var(--career-ink);font-size:18px;font-weight:400;line-height:1.6}
.roles-empty p+p{margin-top:10px;color:var(--career-muted);font-size:15px}

@media(min-width:1600px){.career-gallery{--photo-height:400px}}
@media(max-width:1100px){.career-shell{width:calc(100% - 64px)}.career-intro{padding-top:64px}.career-gallery{--photo-height:300px}.career-work-layout{column-gap:42px}}
@media(max-width:760px){
  .career-shell{width:calc(100% - 40px)}
  .mobile-break{display:block}.desktop-break{display:none}
  .career-intro{padding:48px 0 44px}
  .career-intro h1{font-size:clamp(40px,10.8vw,72px);line-height:1.14;letter-spacing:-.058em}
  .career-intro p{max-width:470px;margin:26px auto 26px;font-size:17px;line-height:1.6}
  .career-gallery{--photo-height:min(260px,calc((100vw - 48px)/1.8868));padding-bottom:15px}
  .career-gallery-track{gap:16px;padding-block:8px}
  .career-gallery-controls{margin-top:4px;gap:9px}
  .career-section-heading h2{font-size:clamp(30px,6.8vw,40px);line-height:1.22;letter-spacing:-.047em}
  .career-section-heading>p{margin-top:20px;font-size:16px}
  .career-about{padding:64px 0 65px}
  .roles-board{padding:82px 0 74px}
  .roles-list{margin-top:42px}
  .roles-empty{padding:34px 0 38px}
  .roles-empty p{font-size:17px}.roles-empty p+p{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .career-photo{transform:none!important}
}
