/* Native modal top layer keeps the page inert and constrains keyboard focus. */
.fullscreen-menu{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#052578;color:var(--paper);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.fullscreen-menu::backdrop{background:#052578}
.fullscreen-menu[open]{display:flex;flex-direction:column}
.fullscreen-menu-top{flex:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:max(26px,env(safe-area-inset-top)) max(44px,env(safe-area-inset-right)) 26px max(44px,env(safe-area-inset-left));position:sticky;top:0;background:#052578;z-index:1}
.fullscreen-menu-top img{width:145px;height:auto}
.fullscreen-menu-close{display:flex;align-items:center;gap:14px;min-height:44px;padding:0 0 0 12px;background:none;border:0;color:var(--paper);font-size:13px}
.menu-close-mark{font-size:36px;line-height:1;font-weight:300;width:44px}
.fullscreen-menu-content{display:flex;flex:1;flex-direction:column;padding:28px max(8vw,env(safe-area-inset-right)) max(96px,env(safe-area-inset-bottom)) max(8vw,env(safe-area-inset-left))}
.fullscreen-menu-stage{display:grid;width:min(100%,1100px);margin:auto;flex:none}
.fullscreen-menu-view{grid-area:1/1;min-width:0;align-self:center}
.fullscreen-menu-view[aria-hidden=true]{visibility:hidden;pointer-events:none}
.fullscreen-menu-view>.eyebrow,.fullscreen-menu-back{display:flex;align-items:center;min-height:44px;margin:0 0 18px;font-size:12px;letter-spacing:1.8px;color:var(--paper)}
.fullscreen-menu-back{border:0;padding:0;background:none;letter-spacing:.02em;font-size:15px}
.fullscreen-menu-links{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(12px,2vh,24px)}
.fullscreen-menu-links>a,.fullscreen-menu-links>button{display:flex;align-items:center;min-height:48px;max-width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;font-size:clamp(30px,4.5vw,66px);font-weight:400;line-height:1.14;letter-spacing:-.045em;overflow-wrap:anywhere;text-decoration:none}
.fullscreen-menu-stage[data-services=true] .fullscreen-menu-links>a{font-size:clamp(25px,3.6vw,52px)}
.fullscreen-menu .career-count{margin-left:10px;letter-spacing:0;min-width:23px;height:23px;font-size:12px}
.menu-forward{margin-left:24px;font-size:.65em;color:var(--acid)}
.fullscreen-menu a:hover,.fullscreen-menu button:hover,.fullscreen-menu a[aria-current=page]{color:var(--acid)}
.fullscreen-menu :focus-visible{outline:2px solid var(--acid);outline-offset:6px}
@media(max-width:600px){.fullscreen-menu-top{padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 20px max(20px,env(safe-area-inset-left))}.fullscreen-menu-top img{width:125px}.fullscreen-menu-close{gap:4px}.fullscreen-menu-content{padding:24px max(24px,env(safe-area-inset-right)) max(84px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}.fullscreen-menu-links{gap:16px}.fullscreen-menu-links>a,.fullscreen-menu-links>button{font-size:clamp(28px,8vw,42px)}.fullscreen-menu-stage[data-services=true] .fullscreen-menu-links>a{font-size:clamp(24px,6.8vw,36px)}}
@media(prefers-reduced-motion:no-preference){.fullscreen-menu[open]{animation:fullscreen-menu-enter .22s ease-out}.fullscreen-menu-view{transition:opacity .2s ease,transform .25s ease;opacity:1;transform:translateY(0)}.fullscreen-menu-view[aria-hidden=true]{opacity:0;transform:translateY(8px)}.fullscreen-menu a,.fullscreen-menu button{transition:color .18s ease}@keyframes fullscreen-menu-enter{from{opacity:0}to{opacity:1}}}

/* PHP application page mirrors the shared sticky navigation shell. */
:root{--header-rest-height:96px;--header-compact-height:72px}
.application-header.sticky-header{height:var(--header-rest-height);position:relative;z-index:30}
.application-header.sticky-header>.header{position:absolute;inset:0 0 auto;height:var(--header-rest-height);padding-top:0;padding-bottom:0;background:var(--blue);color:var(--paper)}
.application-header.sticky-header.is-compact>.header{position:fixed;grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr);height:var(--header-compact-height);animation:sticky-header-enter .42s cubic-bezier(.22,1,.36,1) both}
.application-header.sticky-header.is-compact.over-blue>.header::after{content:"";position:absolute;top:100%;left:0;right:0;height:4px;background:#fff;pointer-events:none}
.application-header .header-lion{position:relative;left:15px}
.application-header .back-to-top{display:none;width:39.6px;height:39.6px;flex:0 0 39.6px;align-items:center;justify-content:center;border:0;border-radius:50%;padding:9px;background:var(--acid);color:var(--blue)}
.application-header.is-compact .back-to-top{display:inline-flex}
.application-header.is-compact .header-actions{gap:12px}
.application-header .back-to-top svg{display:block;width:21.6px;height:21.6px;transform:rotate(-90deg)}
.application-header .back-to-top:hover{background:#f3ff78;transform:translateY(-2px)}
.application-header .career-nav-link{display:inline-flex;align-items:center;gap:3px}
.application-header .career-count{position:static;flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:23px;height:23px;margin-left:10px;padding:0 5px;border-radius:999px;background:var(--acid);color:#102354;font-size:12px;font-weight:700;line-height:1;letter-spacing:0}
@keyframes sticky-header-enter{from{transform:translateY(-100%)}to{transform:translateY(0)}}
@media(max-width:900px){:root{--header-rest-height:92px}}
@media(max-width:600px){:root{--header-rest-height:88px;--header-compact-height:64px}.application-header.sticky-header.is-compact>.header{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);gap:16px}.application-header.is-compact .header-actions{gap:8px}.application-header.is-compact .brand{width:min(110px,100%)}}
@media(prefers-reduced-motion:reduce){.application-header.sticky-header.is-compact>.header{animation:none}}

/* Same blue-section atmosphere as the React pages; no animal silhouette. */
.blue:has(>.application-particles){position:relative}
.application-particles{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.application-particles span{position:absolute;width:var(--dot-size);height:var(--dot-size);border-radius:50%;background:#d8eaff;opacity:var(--dot-opacity);animation:application-particle-drift var(--dot-duration) ease-in-out var(--dot-delay) infinite alternate;animation-play-state:paused}
.application-particles.is-active span{animation-play-state:running}
.blue:has(>.application-particles)>.application-header,.blue:has(>.application-particles)>.apply-hero{position:relative;z-index:1}
.blue:has(>.application-particles)>.application-header{z-index:30}
body:has(.fullscreen-menu[open]) .application-particles span{animation-play-state:paused}
@keyframes application-particle-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--dot-x),var(--dot-y),0)}}
@media(max-width:600px){.application-particles span:nth-child(n+81){display:none}}
@media(prefers-reduced-motion:reduce){.application-particles span{animation:none}}
