:root{--bg:#fff;--surface:#f2f3f7;--line:#e1e3ea;--ink:#23232f;--muted:#6b6b7e;--primary:#3e3ea8;--primary-deep:#2e2e82;--accent:#2fa38a;--accent-deep:#247a67;--font:"Source Sans 3", "Source Sans Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--radius-card:12px;--radius-input:8px;--z-header:30;--z-nav:40;--z-badge:10;--z-skip:100;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1)}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65}h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0}ul{padding:0;list-style:none}img{max-width:100%;display:block}a{color:var(--primary)}::selection{background:var(--primary);color:#fff}:focus-visible{outline-offset:2px;border-radius:4px;outline:3px solid #2fa38a8c}.skip-link{z-index:var(--z-skip);background:var(--primary);color:#fff;transition:top .2s var(--ease-out);border-radius:999px;padding:10px 18px;font-weight:700;text-decoration:none;position:absolute;top:-60px;left:16px}.skip-link:focus{top:12px}.wrap{width:min(1180px,100% - 40px);margin-inline:auto}.site-header{z-index:var(--z-header);border-bottom:1px solid var(--line);background:#fffffffa;position:sticky;top:0}.header-inner{align-items:center;gap:28px;padding-block:12px;display:flex}.brand{flex-shrink:0;align-items:center;text-decoration:none;display:inline-flex}.brand img{width:148px;height:auto}.primary-nav{margin-inline:auto}.primary-nav ul{align-items:center;gap:30px;display:flex}.primary-nav a{color:var(--ink);border-bottom:2px solid #0000;padding:6px 2px;font-size:.95rem;font-weight:600;text-decoration:none}.primary-nav a:hover{color:var(--primary)}.primary-nav a[aria-current=page]{color:var(--primary);border-bottom-color:var(--primary)}.menu-button{background:var(--bg);border:1px solid var(--line);font:inherit;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:.9rem;font-weight:700;display:none}.btn{font:inherit;cursor:pointer;transition:background-color .2s var(--ease-out), transform .2s var(--ease-out);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:14px 28px;font-size:.95rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.btn svg{transition:transform .2s var(--ease-out);flex-shrink:0}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-deep);color:#fff;transform:translateY(-1px)}.btn-primary:hover svg{transform:translate(3px)}.btn:active{transform:scale(.97)}.btn-secondary{background:var(--bg);color:var(--ink);border-color:var(--line)}.btn-secondary:hover{background:var(--surface);transform:translateY(-1px)}.header-cta{padding:12px 22px}.hero{background:var(--bg);position:relative;overflow:hidden}.hero-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:stretch;min-height:560px;display:grid}.hero-copy{flex-direction:column;justify-content:center;max-width:560px;padding:clamp(48px,7vw,96px) 48px clamp(48px,7vw,96px) 0;display:flex}.hero-copy h1{animation:rise .65s var(--ease-out-expo) 50ms both}.hero-copy .lede{animation:rise .65s var(--ease-out-expo) .16s both}.hero-actions{animation:rise .65s var(--ease-out-expo) .27s both}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes wipe-x{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes wipe-y{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes settle{0%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:none}}@keyframes card-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes menu-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes note-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.hero-copy h1{letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2.25rem,5vw,3.75rem);font-weight:700;line-height:1.05}.hero-copy .lede{color:var(--ink);text-wrap:pretty;max-width:44ch;margin-top:18px;font-size:1.1rem}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.hero-media{min-height:420px;animation:wipe-x .9s var(--ease-out-expo) .1s both;position:relative}.hero-media img{object-fit:cover;object-position:center 60%;width:100%;height:100%;animation:settle 1.8s var(--ease-out-expo) .1s both;position:absolute;inset:0;mask-image:linear-gradient(90deg,#0000 0,#000 16%)}.hero-badge{z-index:var(--z-badge);border:1px solid var(--line);border-radius:var(--radius-card);animation:pop .55s var(--ease-out-expo) .55s both;background:#fff;align-items:center;gap:12px;padding:14px 20px 14px 16px;display:flex;position:absolute;bottom:28px;right:28px}.hero-badge .pin{background:var(--surface);width:36px;height:36px;color:var(--primary);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.hero-badge strong{font-size:1rem;line-height:1.25;display:block}.hero-badge span{color:var(--muted);font-size:.8rem;line-height:1.4;display:block}section{padding-block:clamp(56px,7vw,88px)}.section-grey{background:var(--surface)}.section-title{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.5rem,3vw,2.125rem);font-weight:700;line-height:1.15}.section-sub{text-wrap:pretty;max-width:68ch;margin-top:10px}.section-sub a{font-weight:600}.vacancy-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:36px;display:grid}.vacancy-card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-card);transition:transform .22s var(--ease-out), box-shadow .22s var(--ease-out);animation:card-in .55s var(--ease-out-expo) both;animation-delay:calc(var(--i,0) * 90ms);flex-direction:column;gap:14px;padding:28px 26px;display:flex}.vacancy-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #14142d1a}.vacancy-card h3{letter-spacing:-.01em;text-wrap:balance;overflow-wrap:break-word;font-size:1.35rem;font-weight:700;line-height:1.25}.hours-pill{background:var(--accent-deep);color:#fff;letter-spacing:.01em;border-radius:999px;align-self:flex-start;padding:6px 14px;font-size:.875rem;font-weight:700;line-height:1.4}.demo-pill{border:1px dashed var(--muted);color:var(--muted);border-radius:999px;align-self:flex-start;padding:4px 12px;font-size:.78rem;font-weight:700}.vacancy-card .summary{color:var(--ink);max-width:60ch;font-size:1rem}.vacancy-meta{gap:12px;margin-top:4px;display:grid}.vacancy-meta li{align-items:center;gap:12px;font-size:.98rem;display:flex}.vacancy-meta .mi{border-radius:var(--radius-input);background:var(--surface);width:32px;height:32px;color:var(--ink);flex-shrink:0;place-items:center;display:grid}.card-link{color:var(--primary);align-items:center;gap:8px;margin-top:auto;padding-top:8px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.card-link:hover{color:var(--primary-deep);text-underline-offset:3px;text-decoration:underline}.card-link svg{transition:transform .2s var(--ease-out)}.card-link:hover svg{transform:translate(4px)}.vacancy-status{margin-top:28px}.vacancy-status .status-box{animation:card-in .4s var(--ease-out) both}.status-box{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-card);flex-wrap:wrap;align-items:center;gap:16px 20px;padding:24px;display:flex}.status-box p{flex:240px}.spinner{border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.team-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,72px);display:grid}.team-photo{border-radius:var(--radius-card);border:1px solid var(--line);overflow:hidden}.team-photo img{aspect-ratio:1;object-fit:cover;width:100%;height:auto}.team-copy p.body{text-wrap:pretty;max-width:62ch;margin-top:16px}.quote-card{background:var(--surface);border-radius:var(--radius-card);margin-top:24px;padding:24px 26px 22px;position:relative}.quote-card blockquote{max-width:56ch;font-size:1.05rem;line-height:1.6}.quote-card .qmark{color:var(--primary);margin-right:8px;font-size:2rem;font-weight:700;line-height:1}.quote-card cite{color:var(--muted);margin-top:12px;font-size:.95rem;font-style:normal;display:block}.team-copy .card-link{margin-top:20px}.why-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:40px;display:grid}.why-item svg{color:var(--primary)}.why-item h3{margin-top:14px;font-size:1.05rem;font-weight:700}.why-item p{color:var(--ink);max-width:34ch;margin-top:6px;font-size:.96rem}.banner{padding:0;position:relative;overflow:hidden}.banner-bg{position:absolute;inset:0}.banner-bg img{object-fit:cover;object-position:center 30%;width:100%;height:100%}.banner-inner{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:40px;padding-block:clamp(64px,8vw,110px);display:grid;position:relative}.banner-card{background:var(--bg);border-radius:var(--radius-card);max-width:560px;padding:clamp(28px,4vw,48px)}.banner-card h2{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.5rem,3vw,2.125rem);font-weight:700;line-height:1.15}.banner-card p{text-wrap:pretty;max-width:56ch;margin-top:14px}.banner-card .btn{margin-top:26px}.banner-side{color:#fff;text-align:left;justify-self:end;max-width:260px}.banner-side p{text-wrap:pretty;text-shadow:0 1px 14px #0a0a1e73;font-size:1.5rem;font-weight:400;line-height:1.45}.banner-side hr{border:0;border-top:2px solid #fff;width:56px;margin:22px 0 0}.newsletter .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;display:grid}.newsletter h2{letter-spacing:-.015em;font-size:clamp(1.4rem,2.6vw,1.8rem);font-weight:700}.newsletter p{max-width:52ch;margin-top:8px}.newsletter-form{justify-content:flex-end;align-items:center;gap:12px;display:flex}.newsletter-form label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.newsletter-form input[type=email]{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-input);width:min(320px,100%);padding:12px 16px;font-size:1rem}.newsletter-form input[type=email]::placeholder{color:var(--muted);opacity:1}.newsletter-form input[type=email]:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2fa38a59}.newsletter-note{color:var(--accent-deep);animation:note-in .3s var(--ease-out) both;margin-top:10px;font-size:.95rem;font-weight:600}.newsletter-note .check-draw{vertical-align:-3px;margin-right:6px;display:inline-block}.newsletter-note .check-draw path{stroke-dasharray:26;stroke-dashoffset:26px;animation:draw .45s var(--ease-out-expo) 50ms forwards}@keyframes draw{to{stroke-dashoffset:0}}@keyframes nudge{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.shake{animation:nudge .18s var(--ease-out) 2}.menu-button .icon-close,.menu-button[aria-expanded=true] .icon-open{display:none}.menu-button[aria-expanded=true] .icon-close{display:block}.vacancy-card .hours-pill{transition:transform .2s var(--ease-out-expo)}.vacancy-card:hover .hours-pill{transform:scale(1.05)}.btn-secondary[disabled]{opacity:.7;cursor:wait;transform:none}footer{border-top:1px solid var(--line);background:#fff}.footer-grid{grid-template-columns:5fr 3fr 4fr;gap:40px;padding-block:56px 40px;display:grid}.footer-brand img{width:172px;height:auto}.footer-brand p{max-width:38ch;margin-top:16px;font-size:.98rem}.socials{gap:14px;margin-top:20px;display:flex}.socials a{border-radius:var(--radius-input);background:var(--ink);color:#fff;width:44px;height:44px;transition:background-color .2s var(--ease-out);place-items:center;display:grid}.socials a:hover{background:var(--primary)}footer h3{font-size:1rem;font-weight:700}.footer-links{gap:10px;margin-top:14px;display:grid}.footer-links a{color:var(--ink);font-size:.98rem;text-decoration:none}.footer-links a:hover{color:var(--primary);text-underline-offset:3px;text-decoration:underline}address{gap:6px;margin-top:14px;font-size:.98rem;font-style:normal;display:grid}address a{color:var(--ink);text-decoration:none}address a:hover{color:var(--primary);text-underline-offset:3px;text-decoration:underline}.legal-bar{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 22px;padding-block:20px;font-size:.88rem;display:flex}.legal-bar nav ul{flex-wrap:wrap;gap:4px 18px;display:flex}.legal-bar a{color:var(--muted);text-decoration:none}.legal-bar a:hover{color:var(--primary);text-decoration:underline}.legal-bar .tagline{color:var(--ink);margin-left:auto;font-weight:600}@supports (animation-timeline:view()){.rv-rise{animation:rise .7s var(--ease-out-expo) both;animation-timeline:view();animation-range:entry entry 85%}.rv-wipe{animation:wipe-y .8s var(--ease-out-expo) both;animation-timeline:view();animation-range:entry entry 70%}.rv-item{animation:rise .6s var(--ease-out-expo) both;animation-timeline:view();animation-range:entry entry 85%;animation-delay:calc(var(--i,0) * 80ms)}}@supports (animation-timeline:view()) and (scale:1.05){.hero-media img{animation:settle 1.8s var(--ease-out-expo) .1s both, hero-focus linear both;animation-timeline:auto,view();animation-range:normal,exit}.hero-copy{animation:linear both hero-drift view();animation-range:exit exit 95%}.hero-badge{animation:pop .55s var(--ease-out-expo) .55s both, hero-badge-drift linear both;animation-timeline:auto,view();animation-range:normal,exit}@keyframes hero-focus{to{scale:1.12}}@keyframes hero-drift{to{opacity:.15;transform:translateY(-48px)}}@keyframes hero-badge-drift{to{translate:0 36px}}}@media (width<=960px){.primary-nav{display:none}.primary-nav.open{animation:menu-in .25s var(--ease-out) both;display:block}.menu-button{margin-left:auto;display:inline-flex}.header-cta{margin-left:0}.header-inner{flex-wrap:wrap;gap:12px 16px}.primary-nav.open{flex-basis:100%;order:3}.primary-nav.open ul{flex-direction:column;align-items:stretch;gap:0}.primary-nav.open a{border-bottom:1px solid var(--line);padding:12px 4px;font-size:1rem;display:block}.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{max-width:40rem;padding:48px 0 40px}.hero-media{min-height:300px}.hero-media img{aspect-ratio:4/3;position:relative;mask-image:none}.hero-badge{bottom:16px;right:16px}.team-grid{grid-template-columns:1fr}.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.banner-inner{grid-template-columns:1fr}.banner-side{justify-self:start}.newsletter .wrap{grid-template-columns:1fr}.newsletter-form{flex-wrap:wrap;justify-content:flex-start}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.why-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:32px}.btn{justify-content:center;width:100%}.hero-actions .btn{flex:100%}.header-cta{padding:10px 16px;font-size:.85rem}.brand img{width:122px}.vacancy-card{padding:22px 20px}.legal-bar .tagline{margin-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.hero-copy h1,.hero-copy .lede,.hero-actions,.hero-copy,.hero-media,.hero-media img,.hero-badge,.vacancy-card,.rv-rise,.rv-wipe,.rv-item,.newsletter-note .check-draw,.shake,.vacancy-card:hover .hours-pill,.spinner{animation:none!important}}
