/* Informational release only; all styles are scoped to this new page. */
.careers-page main { overflow: clip; }
.careers-welcome,.careers-roles { margin-top:14px; border:1px solid var(--line); border-radius:12px; background:var(--white); }
.careers-welcome { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; }
.careers-welcome-copy { min-width:0; padding:clamp(2rem,4vw,4rem) var(--pad); }
.careers-welcome h1 { font-size:clamp(3rem,5.6vw,5.5rem); font-weight:800; letter-spacing:-.065em; line-height:1.04; margin:1.5rem 0; }
.careers-welcome-lead { font-size:clamp(1.1rem,1.7vw,1.55rem); font-weight:700; letter-spacing:-.025em; margin-bottom:.7rem; }
.careers-welcome-description { color:var(--gray); line-height:1.6; max-width:47ch; margin-bottom:1.6rem; }
.careers-opening-note { color:var(--gray); font-size:.8rem; line-height:1.5; margin:.85rem 0 0; }
.careers-profile-drawing { display:flex; align-self:stretch; align-items:center; min-width:0; margin:0; padding:1rem clamp(1.25rem,2.8vw,2.5rem); border-left:1px solid var(--line); border-radius:0 12px 12px 0; background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px); background-size:30px 30px; }
.careers-profile-drawing svg { display:block; width:100%; max-width:560px; margin:1rem auto; overflow:visible; }
.career-profile-details { opacity:.58; }
.career-profile-detail { stroke-dasharray:1; animation:career-profile-review 6s cubic-bezier(.22,1,.36,1) infinite; animation-delay:var(--detail-delay); }
.career-profile-seal { transform-box:fill-box; transform-origin:center; animation:career-profile-stamp 6s cubic-bezier(.22,1,.36,1) infinite; }
.career-profile-seal-ring { stroke-dasharray:1; animation:career-profile-ring 6s cubic-bezier(.22,1,.36,1) infinite; }
.career-profile-seal-mark { animation:career-profile-mark 6s cubic-bezier(.22,1,.36,1) infinite; }
.careers-profile-drawing svg * { animation-play-state:paused; }
.careers-profile-drawing.is-in-view svg * { animation-play-state:running; }
@keyframes career-profile-review { 0%,8%{stroke-dashoffset:1;opacity:.2}26%,85%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:.2} }
@keyframes career-profile-stamp { 0%,25%{opacity:0;transform:scale(1.07)}36%,87%{opacity:1;transform:scale(1)}98%,100%{opacity:0;transform:scale(1)} }
@keyframes career-profile-ring { 0%,28%{stroke-dashoffset:1}47%,100%{stroke-dashoffset:0} }
@keyframes career-profile-mark { 0%,36%{clip-path:inset(0 100% 0 0)}51%,100%{clip-path:inset(0)} }
.careers-roles { scroll-margin-top:100px; overflow:hidden; }
.careers-roles-header { display:grid; grid-template-columns:1fr 3fr; gap:2rem; align-items:start; padding:2.5rem var(--pad); border-bottom:1px solid var(--line); }
.careers-roles-header h2 { font-size:clamp(2.3rem,4vw,3.9rem); line-height:1.08; max-width:none; margin:0 0 .8rem; }
.careers-roles-header p:last-child { color:var(--gray); margin-bottom:0; }
.careers-role-content { display:grid; grid-template-columns:1fr 2fr; }
.careers-role-picker { min-width:0; padding:2rem var(--pad); border-right:1px solid var(--line); }
.careers-role-picker label { display:block; font-size:.68rem; text-transform:uppercase; font-weight:700; letter-spacing:.04em; margin-bottom:.75rem; }
.careers-role-picker select { color:var(--ink); background:var(--white); font:inherit; line-height:1.5; width:100%; max-width:100%; min-height:48px; border:1px solid var(--line); padding:.7rem 2rem .7rem .7rem; }
.careers-role-picker nav a { display:block; margin-top:1rem; }
.career-role { min-width:0; padding:2rem var(--pad); }
.career-role-meta { color:var(--red); font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; margin-bottom:1rem; }
.career-role h3 { font-size:clamp(1.6rem,2.6vw,2.5rem); line-height:1.15; letter-spacing:-.035em; margin:0 0 1rem; }
.career-role p:not(.career-role-meta),.career-role li { line-height:1.6; }
.career-role ul { padding-left:1.15rem; margin-bottom:0; }
.career-role li + li { margin-top:.4rem; }
.careers-intake-note { border-top:1px solid var(--line); padding:1.75rem var(--pad); background:color-mix(in srgb,var(--red) 4%,var(--white)); }
.careers-intake-note h3 { font-size:1.15rem; letter-spacing:-.02em; line-height:1.4; margin:0 0 .4rem; }
.careers-intake-note p { color:var(--gray); font-size:.9rem; line-height:1.6; margin:0; }
.careers-page .button { isolation:isolate; position:relative; overflow:hidden; transition:color 260ms ease,border-color 260ms ease; }
.careers-page .button-red::before { content:""; position:absolute; inset:0; background:#11110f; transform:scaleX(0); transform-origin:left; transition:transform 450ms cubic-bezier(.16,1,.3,1); z-index:-1; }
.careers-page .button-red:is(:hover,:focus-visible)::before { transform:scaleX(1); }
.careers-page .button-red:is(:hover,:focus-visible) { background:var(--red); color:#fff; }
.careers-page .button .arrow { transition:transform 400ms cubic-bezier(.16,1,.3,1); }
.careers-page .button:is(:hover,:focus-visible) .arrow { transform:translateX(5px); }
@media(max-width:1000px) { .careers-role-content{grid-template-columns:1fr 1.5fr} }
@media(max-width:820px) {
    .careers-welcome{grid-template-columns:1fr}
    .careers-profile-drawing{border-left:0;border-top:1px solid var(--line);border-radius:0 0 12px 12px;padding:.5rem 1rem}
    .careers-profile-drawing svg{max-width:320px;margin:.25rem auto}
    .careers-roles-header{grid-template-columns:1fr;gap:1rem;padding-block:2rem}
    .careers-role-content{grid-template-columns:1fr}
    .careers-role-picker{border-right:0;border-bottom:1px solid var(--line);padding-block:1.5rem}
    .careers-roles{scroll-margin-top:140px}
}
@media(prefers-reduced-motion:reduce) { .careers-profile-drawing svg *{animation:none}.careers-page .button::before,.careers-page .button .arrow{transition:none} }
