:root {
    --blue: #087cf0; --blue-strong: #0665d2; --navy: #061c38; --navy-soft: #0b2d55;
    --ink: #10233a; --muted: #68788a; --paper: #f5f8fb; --white: #fff; --line: #dce5ed;
    --display: "Space Grotesk", sans-serif; --body: "DM Sans", sans-serif;
    --text-caption: .75rem; --text-small: .8125rem; --text-body: .9375rem; --text-control: 1rem;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--body); overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
.site-header { position: fixed; inset: 0 0 auto; z-index: 50; height: 88px; padding: 0 5vw; display: flex; align-items: center; border-bottom: 1px solid rgba(255,255,255,.14); color: #fff; transition: .25s; }
.site-header.scrolled { height: 72px; background: rgba(6,28,56,.94); backdrop-filter: blur(16px); }
.brand { width: 180px; height: 55px; overflow: hidden; display: flex; align-items: center; }
.brand img { width: 174px; height: 174px; object-fit: contain; mix-blend-mode: screen; filter: brightness(0) invert(1); }
.main-nav { display: flex; gap: 28px; margin: auto; color: #c3d3e3; font-size: 13px; }
.main-nav a:hover { color: #fff; }
.header-actions { display: flex; align-items: center; gap: 20px; }
.portal-link { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.portal-link span { color: #54acff; }
.mini-cta { padding: 12px 16px; background: #fff; color: var(--navy); font-size: 11px; text-transform: uppercase; font-weight: 700; letter-spacing: .06em; }
.menu-button { display: none; border: 0; background: none; width: 40px; height: 40px; }
.menu-button i { display: block; width: 24px; height: 1px; background: #fff; margin: 7px auto; }
.hero { min-height: 760px; height: 100vh; max-height: 950px; position: relative; padding: 130px 7vw 70px; display: flex; align-items: center; color: #fff; overflow: hidden; background: radial-gradient(circle at 76% 44%, #0e4f91 0, #082c53 25%, var(--navy) 59%); }
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,28,56,.96) 0%, rgba(6,28,56,.65) 48%, transparent 76%); }
.circuit-lines { position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(82,169,255,.25) 1px, transparent 1px), linear-gradient(90deg, rgba(82,169,255,.25) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(90deg, transparent, #000 45%, #000); }
.hero-copy { width: 58%; max-width: 760px; position: relative; z-index: 3; }
.eyebrow, .section-code { margin: 0 0 26px; color: var(--blue); font-size: 10px; letter-spacing: .2em; font-weight: 700; }
.eyebrow { color: #b9cee0; }
.eyebrow span { display: inline-block; width: 30px; height: 2px; margin-right: 10px; background: #2f9bff; vertical-align: middle; }
.hero h1, h2 { margin: 0; font: 600 clamp(54px, 6.1vw, 90px)/.98 var(--display); letter-spacing: -.055em; }
.hero h1 em, h2 em { color: #51aaff; font-style: normal; }
.hero-lead { max-width: 630px; margin: 30px 0 35px; color: #b8cadb; font-size: 18px; line-height: 1.65; }
.hero-actions { display: flex; align-items: center; gap: 30px; }
.button { min-height: 54px; padding: 0 22px; border: 0; display: inline-flex; align-items: center; justify-content: space-between; gap: 38px; cursor: pointer; text-transform: uppercase; letter-spacing: .09em; font-size: 11px; font-weight: 700; }
.button.primary { background: var(--blue); color: #fff; box-shadow: 0 15px 35px rgba(8,124,240,.25); }
.button.primary:hover { background: #2090fa; }
.button-link { display: flex; align-items: center; gap: 10px; font-size: 13px; }
.button-link i { width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; color: #51aaff; font-style: normal; }
.hero-engineering { position: absolute; z-index: 2; right: 3vw; width: min(47vw, 650px); aspect-ratio: 1; display: grid; place-items: center; }
.board { position: relative; width: 74%; aspect-ratio: 1; border: 1px solid rgba(100,184,255,.25); border-radius: 50%; display: grid; place-items: center; box-shadow: 0 0 0 80px rgba(72,161,238,.035), 0 0 0 160px rgba(72,161,238,.025); }
.board::before, .board::after { content: ""; position: absolute; inset: 14%; border: 1px dashed rgba(108,190,255,.32); border-radius: 50%; animation: rotate 30s linear infinite; }
.board::after { inset: 29%; animation-direction: reverse; animation-duration: 18s; }
.chip { position: relative; z-index: 2; width: 28%; aspect-ratio: 1; border-radius: 15%; display: grid; place-items: center; background: linear-gradient(145deg, #0d3964, #06182d); box-shadow: 0 0 45px rgba(8,124,240,.5); border: 1px solid #2d75af; }
.chip b { font: 700 58px var(--display); color: #48a6ff; }
.chip i { position: absolute; background: #4da8f7; width: 20px; height: 2px; }
.chip i:nth-child(2) { left: -20px; top: 25%; }.chip i:nth-child(3) { right: -20px; top: 25%; }.chip i:nth-child(4) { left: -20px; bottom: 25%; }.chip i:nth-child(5) { right: -20px; bottom: 25%; }
.board-label, .board small { position: absolute; color: #6a9dc7; font-size: 8px; letter-spacing: .2em; }.board-label { top: 4%; }.board small { bottom: 4%; }
.trace { position: absolute; height: 1px; background: linear-gradient(90deg, transparent, #2f92e7, transparent); }.t1 { width: 95%; transform: rotate(26deg); }.t2 { width: 88%; transform: rotate(-40deg); }.t3 { width: 72%; transform: rotate(90deg); }
.node { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: #55b1ff; box-shadow: 0 0 16px #2c9cff; }.n1 { left: 4%; top: 43%; }.n2 { right: 12%; top: 25%; }.n3 { right: 25%; bottom: 12%; }
.signal-card { position: absolute; right: 0; bottom: 5%; width: 245px; padding: 16px; background: rgba(5,22,42,.8); border: 1px solid rgba(88,175,247,.24); backdrop-filter: blur(10px); font-size: 8px; letter-spacing: .12em; }
.signal-card { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.signal-card b { color: #55b1ff; text-align: right; }.signal-card b i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: #55b1ff; }.wave { grid-column: 1/-1; height: 22px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='22' viewBox='0 0 220 22'%3E%3Cpath d='M0 12h30l8-8 12 16 10-8h25l7-5 10 8 8-3h110' fill='none' stroke='%23087cf0'/%3E%3C/svg%3E") center/100% 100%; }
.hero-foot { position: absolute; z-index: 3; left: 7vw; right: 7vw; bottom: 27px; display: flex; justify-content: space-between; color: #64819c; font-size: 8px; letter-spacing: .18em; }
@keyframes rotate { to { transform: rotate(360deg); } }
.section { padding: 120px 7vw; }
.statement { display: grid; grid-template-columns: 1fr 4fr; gap: 4vw; background: #fff; }
.statement>div { display: grid; grid-template-columns: 2.2fr 1fr; gap: 6vw; align-items: end; }
.statement h2, .section-heading h2, .about h2, .careers h2, .contact h2 { font-size: clamp(39px,4.5vw,65px); color: var(--ink); }
.statement h2 em, .section-heading h2 em { color: var(--blue); }
.statement>div>p, .section-heading>p { color: var(--muted); line-height: 1.75; font-size: 15px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; margin-bottom: 65px; }.section-heading>p { width: 380px; }
.service-grid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); background: #fff; }
.service-card { min-height: 440px; padding: 30px; border-right: 1px solid var(--line); display: flex; flex-direction: column; transition: .3s; }.service-card:last-child { border: 0; }.service-card:hover { transform: translateY(-7px); box-shadow: 0 20px 50px rgba(4,33,62,.12); position: relative; z-index: 2; }.service-card:nth-child(2) { background: var(--blue); color: #fff; }.service-top { display: flex; justify-content: space-between; color: #8391a0; font-size: 10px; }.service-top i { width: 11px; height: 11px; border: 2px solid var(--blue); border-radius: 2px; box-shadow: 0 0 0 5px rgba(8,124,240,.1); }.service-card:nth-child(2) .service-top { color: #b8dcff; }.service-card:nth-child(2) .service-top i { border-color: #fff; box-shadow: 0 0 0 5px rgba(255,255,255,.15); }.service-card h3 { margin: 90px 0 18px; font: 600 24px/1.15 var(--display); }.service-card>p { color: var(--muted); line-height: 1.7; font-size: 14px; }.service-card:nth-child(2)>p { color: #d2e7fc; }.service-card ul { list-style: none; padding: 22px 0 0; margin: auto 0 0; border-top: 1px solid var(--line); color: #738190; font-size: 11px; line-height: 2; }.service-card li::before { content: "+"; color: var(--blue); margin-right: 8px; }.service-card:nth-child(2) ul { color: #d2e7fc; border-color: rgba(255,255,255,.25); }.service-card:nth-child(2) li::before { color: #fff; }
.loading { grid-column: 1/-1; padding: 40px; color: var(--muted); }
.brand-banner { padding: 28px 7vw; background: #fff; }
.brand-banner img { display: block; width: 100%; height: auto; border: 1px solid var(--line); }
.about { display: grid; grid-template-columns: 1.05fr .95fr; min-height: 720px; background: var(--navy); color: #fff; }.about-visual { position: relative; min-height: 600px; overflow: hidden; background: radial-gradient(circle, #135796 0, #08294b 40%, #05182e 72%); }.about-visual::after { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(90,170,240,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(90,170,240,.1) 1px,transparent 1px); background-size: 35px 35px; }.product-frame { position: absolute; z-index: 2; inset: 11%; display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 20px; border: 1px solid rgba(93,179,252,.25); color: #73a3cb; font-size: 8px; letter-spacing: .2em; }.product-shape { position: relative; width: 62%; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(89,175,248,.45); border-radius: 50%; box-shadow: 0 0 0 50px rgba(43,136,215,.06), 0 0 0 100px rgba(43,136,215,.03); }.product-shape::before, .product-shape::after { content: ""; position: absolute; width: 70%; height: 70%; border: 1px dashed rgba(105,190,255,.35); transform: rotate(45deg); }.product-shape::after { width: 42%; height: 42%; transform: rotate(22deg); }.product-shape b { font: 600 55px var(--display); color: #4ba8fa; }.about-content { padding: 110px 7vw; }.section-code.light { color: #5db1fb; }.about h2, .careers h2, .contact h2 { color: #fff; }.about h2 em, .careers h2 em, .contact h2 em { color: #55adfb; }.about-lead { margin-top: 40px; font: 500 20px/1.55 var(--display); color: #fff!important; }.about-content>p { color: #9eb4c7; line-height: 1.75; font-size: 14px; }.about-facts { display: flex; gap: 55px; padding: 32px 0; margin: 35px 0; border-block: 1px solid rgba(255,255,255,.15); }.about-facts>div { display: flex; align-items: center; gap: 13px; }.about-facts strong { color: #58b1ff; font: 600 36px var(--display); }.about-facts span { font-size: 9px; line-height: 1.5; letter-spacing: .08em; color: #9eb4c7; }.inline-link { display: inline-flex; gap: 15px; padding-bottom: 8px; border-bottom: 1px solid #4ca8f6; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }
.process-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--line); }.process-list li { min-height: 112px; padding: 24px 15px; display: grid; grid-template-columns: 90px 1fr 35px; align-items: center; border-bottom: 1px solid var(--line); transition: .25s; }.process-list li:hover { padding-left: 28px; background: #fff; }.process-list>li>span { color: var(--blue); font-size: 10px; }.process-list li>div { display: flex; align-items: baseline; gap: 60px; }.process-list h3 { width: 190px; margin: 0; font: 600 23px var(--display); }.process-list p { margin: 0; color: var(--muted); font-size: 13px; }.process-list li>i { color: var(--blue); font-style: normal; }
.news { background: #fff; }.news-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }.empty-state { grid-column: 1/-1; min-height: 260px; padding: 55px; display: flex; flex-direction: column; justify-content: end; background: linear-gradient(120deg,#e8f3fc,#f6f9fb); border: 1px solid var(--line); }.empty-state span,.empty-job span { color: var(--blue); font-size: 9px; letter-spacing: .16em; font-weight: 700; }.empty-state p { margin: 12px 0 0; font: 500 22px var(--display); }.news-image { aspect-ratio: 1.7; background: #dfeaf3 center/cover; }.news-card>span,.news-card time { display: inline-block; margin: 18px 12px 8px 0; color: var(--blue); font-size: 9px; text-transform: uppercase; }.news-card h3 { font: 600 21px var(--display); }.news-card p { color: var(--muted); font-size: 13px; line-height: 1.6; }.news-card a { font-size: 10px; text-transform: uppercase; font-weight: 700; }
.careers { padding: 110px 7vw; display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; background: linear-gradient(120deg,#063466,var(--blue)); color: #fff; }.careers>div>p:not(.section-code) { color: #c9e1f8; max-width: 520px; line-height: 1.7; }.careers h2 em { color: #fff; }.jobs-list { align-self: end; }.empty-job { padding: 35px; border: 1px solid rgba(255,255,255,.25); background: rgba(3,30,57,.2); }.empty-job span { color: #fff; }.empty-job p { color: #c9e1f8; font-size: 13px; line-height: 1.6; }.job-card { padding: 20px 0; display: flex; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.25); }.job-card h3 { margin: 0 0 6px; }.job-card p { margin: 0; color: #c9e1f8; font-size: 12px; }
.contact { display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; background: var(--navy); color: #fff; }.contact-copy>p:not(.section-code) { max-width: 530px; color: #a4bad0; line-height: 1.7; }.contact-form { padding: 38px; background: #fff; color: var(--ink); }.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }.contact-form label { display: block; margin-bottom: 25px; font-size: 9px; text-transform: uppercase; letter-spacing: .12em; font-weight: 700; }.contact-form input,.contact-form textarea { width: 100%; display: block; padding: 12px 0; border: 0; border-bottom: 1px solid #ccd7df; border-radius: 0; outline: 0; resize: vertical; color: var(--ink); background: transparent; font-size: 14px; text-transform: none; letter-spacing: 0; }.contact-form input:focus,.contact-form textarea:focus { border-color: var(--blue); }.contact-form .button { width: 100%; }.contact-form .button:disabled { opacity: .6; cursor: wait; }.honeypot { position: absolute; left: -10000px; }.form-status { min-height: 18px; margin: 14px 0 0; color: var(--blue); font-size: 12px; }
.site-footer { position: relative; padding: 65px 7vw 30px; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 5vw; background: #031326; color: #91a7bb; }.footer-brand img { width: 210px; height: 80px; object-fit: cover; object-position: center; filter: brightness(0) invert(1); mix-blend-mode: screen; }.footer-brand p { max-width: 330px; font-size: 12px; line-height: 1.6; }.site-footer>div:not(.footer-brand) { display: flex; flex-direction: column; gap: 12px; font-size: 12px; }.site-footer strong { margin-bottom: 8px; color: #fff; font-size: 9px; letter-spacing: .15em; }.copyright { grid-column: 1/-1; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.1); font-size: 9px; }
.portal-page { min-height: 100vh; background: radial-gradient(circle at 80% 20%,#0c4b87,var(--navy) 50%); }.portal-shell { min-height: 100vh; padding: 6vw; display: flex; flex-direction: column; color: #fff; background-image: linear-gradient(rgba(93,175,245,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(93,175,245,.08) 1px,transparent 1px); background-size: 50px 50px; }.portal-brand img { width: 210px; height: 80px; object-fit: cover; filter: brightness(0) invert(1); mix-blend-mode: screen; }.portal-panel { width: min(680px,100%); margin: auto; padding: 50px; border: 1px solid rgba(255,255,255,.2); background: rgba(3,20,38,.72); backdrop-filter: blur(15px); }.portal-panel>span { color: #5bb2ff; font-size: 9px; letter-spacing: .2em; }.portal-panel h1 { margin: 22px 0; font: 600 clamp(38px,5vw,65px)/1 var(--display); letter-spacing: -.05em; }.portal-panel p { color: #a9bfd3; line-height: 1.7; }.portal-status { margin: 30px 0; padding: 17px; border: 1px solid rgba(255,255,255,.15); font-size: 9px; letter-spacing: .15em; }.portal-status i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: #f2b84b; }
@media (max-width: 1050px) { .main-nav { gap: 16px; }.main-nav a:nth-last-child(-n+2) { display: none; }.service-grid { grid-template-columns: repeat(2,1fr); }.service-card:nth-child(2) { border: 0; }.service-card { border-bottom: 1px solid var(--line); }.statement>div { grid-template-columns: 1fr; }.about { grid-template-columns: 1fr; }.about-visual { min-height: 570px; }.about-content { padding: 90px 7vw; } }
@media (max-width: 800px) { .site-header { height: 74px; padding: 0 5vw; }.brand { width: 155px; }.brand img { width: 150px; height: 150px; }.header-actions { margin-left: auto; }.portal-link { display: none; }.mini-cta { display: none; }.menu-button { display: block; }.main-nav { display: none; position: absolute; top: 74px; left: 0; right: 0; padding: 28px 5vw; flex-direction: column; background: var(--navy); }.main-nav.open { display: flex; }.main-nav a:nth-last-child(-n+2) { display: block; }.hero { min-height: 720px; height: auto; padding: 130px 6vw 80px; }.hero-copy { width: 100%; }.hero-engineering { opacity: .35; width: 80vw; right: -34vw; }.section { padding: 85px 6vw; }.statement { grid-template-columns: 1fr; }.section-heading { display: block; }.section-heading>p { width: auto; max-width: 500px; }.about-visual { min-height: 460px; }.careers,.contact { grid-template-columns: 1fr; padding: 85px 6vw; }.site-footer { grid-template-columns: 1fr 1fr; }.footer-brand { grid-column: 1/-1; } }
@media (max-width: 540px) { .hero h1 { font-size: 48px; }.hero-lead { font-size: 16px; }.hero-actions { align-items: flex-start; flex-direction: column; }.hero-foot span:last-child { display: none; }.service-grid { grid-template-columns: 1fr; }.service-card { min-height: 380px; border-right: 0; }.service-card:nth-child(2) { border-bottom: 1px solid var(--line); }.brand-banner { padding: 18px 0; overflow: hidden; }.brand-banner img { width: 100%; height: 250px; object-fit: cover; object-position: left center; border-inline: 0; }.about-visual { min-height: 350px; }.about-facts { gap: 25px; }.process-list li { grid-template-columns: 40px 1fr 20px; }.process-list li>div { display: block; }.process-list h3 { width: auto; margin-bottom: 8px; }.field-row { grid-template-columns: 1fr; gap: 0; }.contact-form { padding: 25px 20px; }.site-footer { grid-template-columns: 1fr; }.portal-panel { padding: 32px 24px; } }
.brand img,.footer-brand img,.portal-brand img { height: auto; object-fit: contain; mix-blend-mode: normal; }
.career-page { background: var(--navy); }
.career-header { position: relative; justify-content: space-between; }
.career-main { display: grid; grid-template-columns: .82fr 1.18fr; min-height: calc(100vh - 88px); }
.career-intro { position: relative; padding: 10vw 7vw 8vw; overflow: hidden; color: #fff; background: radial-gradient(circle at 90% 20%,#125b9d,var(--navy) 58%); }
.career-intro::after { content: ""; position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(82,169,255,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(82,169,255,.25) 1px,transparent 1px); background-size: 48px 48px; }
.career-intro>* { position: relative; z-index: 1; }
.career-intro h1 { margin: 0; font: 600 clamp(48px,5.3vw,78px)/1 var(--display); letter-spacing: -.055em; }
.career-intro h1 em { color: #55adfb; font-style: normal; }
.career-intro>p:not(.section-code) { max-width: 560px; margin-top: 32px; color: #b5cadc; line-height: 1.75; }
.career-points { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 45px; }.career-points span { padding: 9px 12px; border: 1px solid rgba(255,255,255,.2); color: #bcd7ee; font-size: 9px; letter-spacing: .12em; }
.application-panel { padding: 7vw; background: var(--paper); }.application-panel h2 { font-size: clamp(35px,4vw,58px); }.application-panel>div>p:last-child { color: var(--muted); }
.application-form { margin-top: 48px; padding: 42px; background: #fff; border: 1px solid var(--line); }
.application-form label { display: block; margin-bottom: 27px; font-size: 9px; text-transform: uppercase; letter-spacing: .12em; font-weight: 700; }
.application-form input,.application-form textarea,.application-form select { width: 100%; display: block; padding: 12px 0; border: 0; border-bottom: 1px solid #ccd7df; border-radius: 0; outline: 0; resize: vertical; color: var(--ink); background: transparent; font-size: 14px; text-transform: none; letter-spacing: 0; }
.application-form input:focus,.application-form textarea:focus,.application-form select:focus { border-color: var(--blue); }.application-form .button { width: 100%; }.application-form .button:disabled { opacity: .6; cursor: wait; }
.file-field input { padding: 16px; margin-top: 8px; border: 1px dashed #a9bac9; background: var(--paper); }.file-field small { display: block; margin-top: 8px; color: var(--muted); font-size: 10px; text-transform: none; letter-spacing: 0; font-weight: 400; }
.application-form .consent-field { display: flex; align-items: flex-start; gap: 12px; color: var(--muted); font-size: 11px; line-height: 1.5; text-transform: none; letter-spacing: 0; font-weight: 400; }.consent-field input { flex: 0 0 auto; width: 16px; margin-top: 2px; }
.career-footer { padding: 24px 7vw; color: #829bb2; background: #031326; font-size: 9px; }
@media (max-width: 900px) { .career-main { grid-template-columns: 1fr; }.career-intro,.application-panel { padding: 100px 6vw 70px; } }
@media (max-width: 540px) { .application-form { padding: 28px 20px; }.career-header { padding-inline: 6vw; }.career-header .portal-link { display: block; } }
.login-panel{width:min(560px,100%)}.login-form{margin-top:32px}.login-form label{display:block;margin-bottom:22px;color:#b8ccde;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.login-form input{display:block;width:100%;padding:13px 0;color:#fff;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.25);outline:0;font-size:15px}.login-form input:focus{border-color:#55adfb}.login-form .button{width:100%}.login-form .form-status{color:#77bcfa}.login-back{display:inline-block;margin-top:18px;color:#8fa9bf;font-size:11px}.dashboard-shell{padding-top:3vw}.dashboard-header{display:flex;align-items:center;justify-content:space-between}.dashboard-header>div{display:flex;align-items:center;gap:20px;color:#b8ccde;font-size:12px}.dashboard-header button{padding:8px 13px;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.25);cursor:pointer}.dashboard{width:min(1000px,100%);margin:auto}.dashboard h1{margin:0;font:600 clamp(45px,6vw,75px)/1 var(--display);letter-spacing:-.05em}.dashboard>p{color:#a9bfd3}.dashboard-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:45px}.dashboard-cards article{padding:32px;border:1px solid rgba(255,255,255,.18);background:rgba(3,20,38,.65)}.dashboard-cards span,.dashboard-cards small{display:block;color:#99b1c7;font-size:9px;letter-spacing:.12em}.dashboard-cards strong{display:block;margin:18px 0;color:#55adfb;font:600 54px var(--display)}.dashboard-note{margin-top:30px;font-size:12px}@media(max-width:540px){.dashboard-cards{grid-template-columns:1fr}.dashboard-header>div>span{display:none}}
.account-shell{padding-top:3vw}.dashboard-header nav{display:flex;align-items:center;gap:20px}.account-page{width:min(1050px,100%);margin:55px auto}.account-heading h1{margin:0;font:600 clamp(45px,6vw,74px)/1 var(--display);letter-spacing:-.05em}.account-heading>p:last-child{color:#a9bfd3}.security-alert{margin:30px 0;padding:17px 20px;border:1px solid #e9ab4c;background:rgba(233,171,76,.12);color:#ffd899;font-size:12px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:38px}.account-card{padding:36px;background:#fff;color:var(--ink)}.account-card h2{margin-bottom:30px;font-size:31px}.profile-photo{width:112px;height:112px;margin-bottom:16px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#dcecff;color:var(--blue);font:600 42px var(--display)}.profile-photo img{width:100%;height:100%;object-fit:cover}.file-button,.text-button{display:inline-block;margin:0 10px 8px 0;padding:9px 12px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:10px;cursor:pointer}.text-button.danger{color:#a22}.account-card small{display:block;color:var(--muted);font-size:10px}.account-form{margin-top:30px}.account-form label{display:block;margin-bottom:22px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.account-form input{display:block;width:100%;padding:12px 0;border:0;border-bottom:1px solid #ccd7df;outline:0}.account-form input:disabled{color:#7d8994;background:transparent}.account-form .button{width:100%}.strength{height:4px;margin-top:-16px;margin-bottom:8px;background:#e2e9ef}.strength i{display:block;width:0;height:100%;background:var(--blue);transition:.2s}.security-facts{margin-top:35px}.security-facts div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:11px}.security-facts dt{color:var(--muted)}.security-facts dd{margin:0}.dashboard-header a:hover{color:#55adfb}@media(max-width:800px){.account-grid{grid-template-columns:1fr}.account-card{padding:28px 22px}}@media(max-width:540px){.dashboard-header nav a{display:none}}
.photo-editor{display:grid;justify-items:start;gap:14px;margin-bottom:12px}.photo-editor .profile-photo{width:120px;height:120px;margin:0;border:1px solid #c9d8ef;border-radius:24px;background:linear-gradient(135deg,#f4f8ff,#edf4ff);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.photo-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.photo-action{position:relative;width:44px;min-height:44px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid #c6d7ee;border-radius:12px;background:linear-gradient(180deg,#fff,#edf4ff);color:#163862;box-shadow:0 10px 24px rgba(24,57,102,.08);cursor:pointer;transition:transform .16s,box-shadow .16s,background .16s}.photo-action:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(24,57,102,.12)}.photo-action:first-child{border-color:#b8cfee;background:linear-gradient(180deg,#fff,#edf5ff)}.photo-action:nth-child(2){border-color:#c8d8ea;background:linear-gradient(180deg,#fdfefe,#eef3f8);color:#234a75}.photo-action.danger{border-color:#e4b5b5;background:linear-gradient(180deg,#fff7f7,#ffe6e6);color:#8a1f1f}.photo-action[hidden],.camera-dialog [hidden]{display:none!important}.photo-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.camera-modal[hidden]{display:none}.modal-open{overflow:hidden}.camera-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px}.camera-backdrop{position:absolute;inset:0;background:rgba(1,12,25,.82);backdrop-filter:blur(8px)}.camera-dialog{position:relative;width:min(600px,100%);padding:28px;background:#fff;color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.35)}.camera-dialog header{display:flex;justify-content:space-between;align-items:start}.camera-dialog h2{font-size:28px}.camera-dialog header p{margin:6px 0 20px;color:var(--muted);font-size:12px}.camera-dialog header button{border:0;background:none;font-size:28px;cursor:pointer}.camera-stage{position:relative;aspect-ratio:1.35;display:grid;place-items:center;overflow:hidden;background:#071b31;color:#9bb3c8}.camera-stage video,.camera-stage canvas{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.camera-status{min-height:20px;color:var(--blue);font-size:11px}.camera-dialog footer{display:flex;justify-content:flex-end;gap:10px}.camera-dialog footer .button{min-height:45px}@media(max-width:540px){.camera-dialog{padding:20px}.camera-dialog footer{flex-wrap:wrap}}
.portal-app-shell{display:block;padding:0}.portal-content{width:min(1050px,calc(100% - 12vw));margin:0 auto;padding-top:80px;padding-bottom:90px}.portal-topbar{position:relative;z-index:20;border-bottom:1px solid #c9d8ef;background:radial-gradient(circle at 8% 10%,rgba(87,152,255,.26),transparent 40%),linear-gradient(120deg,#f7fbff,#eef5ff 52%,#e4efff);box-shadow:0 8px 20px rgba(17,53,109,.08);color:#103764}.portal-topbar-inner{min-height:72px;padding:8px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px}.portal-topbar-brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.portal-topbar-brand>img{width:154px;height:48px;object-fit:contain}.portal-topbar-brand>span{display:grid;gap:2px;padding-left:12px;border-left:1px solid #bfd0e6;line-height:1.1}.portal-topbar-brand strong{font:700 15px var(--display)}.portal-topbar-brand small{color:#4b6790;font-size:10px;font-weight:600}.portal-user-area{display:flex;align-items:center;gap:8px}.portal-user-identity{display:inline-flex;align-items:center;gap:10px;padding:7px 12px;border:1px solid #c5d7f1;border-radius:12px;background:rgba(255,255,255,.78);box-shadow:0 10px 20px rgba(19,79,156,.08);color:#143862}.portal-user-identity>img,.portal-user-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:10px}.portal-user-identity>img{object-fit:cover;border:1px solid #9ebce5}.portal-user-avatar{display:grid;place-items:center;background:linear-gradient(135deg,#2b8cff,#1a5ba8);color:#fff;font-size:14px;font-weight:800;box-shadow:0 8px 16px rgba(19,79,156,.2)}.portal-user-text{display:grid;gap:2px;line-height:1.1}.portal-user-text strong{font-size:12px;font-weight:800}.portal-user-text small{color:#50709b;font-size:10px;font-weight:700}.portal-logout{width:48px;height:48px;padding:0;display:grid;place-items:center;border:1px solid rgba(181,205,236,.92);border-radius:999px;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.92),transparent 42%),linear-gradient(135deg,#fff,#eef5ff 54%,#e2edff);box-shadow:0 12px 24px rgba(19,79,156,.1);color:#143b67;cursor:pointer}.portal-logout:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(19,79,156,.14)}.portal-logout svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.portal-topbar+.dashboard{margin-top:0}.portal-app-shell .account-page{margin-top:0}.portal-app-shell .dashboard-header{display:none}@media(max-width:700px){.portal-topbar-inner{min-height:64px;padding-inline:4vw}.portal-topbar-brand>img{width:125px}.portal-topbar-brand>span,.portal-user-text{display:none}.portal-user-identity{padding:6px}.portal-logout{width:42px;height:42px}.portal-content{width:calc(100% - 10vw);padding-top:60px}}
.login-form{margin-top:34px}.login-form label{margin-bottom:24px;color:#8fb7da;font:600 10px/1.2 var(--display);letter-spacing:.18em}.login-form input{margin-top:9px;padding:15px 3px 13px;color:#f7fbff;border-bottom-color:rgba(160,198,231,.38);font:500 18px/1.35 var(--body);letter-spacing:.015em;transition:border-color .2s,box-shadow .2s}.login-form input::placeholder{color:#6f8da8;font-weight:400;letter-spacing:0}.login-form input:focus{border-color:#55adfb;box-shadow:0 1px 0 #55adfb}.login-form label:focus-within{color:#69b8ff}.login-form .button{position:relative;min-height:58px;margin-top:7px;justify-content:center;border:1px solid rgba(120,193,255,.2);font:700 14px/1 var(--display);letter-spacing:.18em}.login-form .button span{position:absolute;right:24px;font-size:18px}.login-form .form-status{font:500 12px/1.5 var(--body);letter-spacing:.01em}.login-back{font:500 11px var(--body)}
.portal-app-shell{--portal-header-height:72px;min-height:100dvh;overflow:visible}.portal-topbar{position:sticky;top:0;z-index:50}.portal-topbar-inner{height:var(--portal-header-height);min-height:var(--portal-header-height)}.portal-app-shell .portal-content{min-height:calc(100dvh - var(--portal-header-height));padding-top:clamp(36px,5vh,56px);padding-bottom:clamp(36px,5vh,56px)}.portal-page{min-height:100dvh}.portal-page:has(.portal-app-shell){overflow-x:hidden}@media(max-width:700px){.portal-app-shell{--portal-header-height:64px}.portal-app-shell .portal-content{padding-top:36px;padding-bottom:40px}}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; }.board::before,.board::after { animation: none; } }
.dashboard-cards>a{display:block;color:inherit}.dashboard-cards article b{display:block;margin-top:20px;color:#55adfb;font-size:10px;letter-spacing:.1em}.dashboard-cards>a article{height:100%;transition:transform .18s,border-color .18s}.dashboard-cards>a:hover article{transform:translateY(-3px);border-color:#55adfb}
.application-filters{display:grid;grid-template-columns:1.4fr repeat(3,1fr) repeat(2,.75fr) auto;align-items:end;gap:12px;margin:34px 0 22px;padding:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.application-filters label{color:#9fb8cf;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.application-filters input,.application-filters select{display:block;width:100%;margin-top:8px;padding:12px 9px;border:1px solid #c9d7e5;background:#fff;color:var(--ink);font-size:12px}.application-filters .button{min-height:42px}.resume-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:25px 0;padding:20px;border:1px solid #cbdced;background:#f2f7fd}.resume-card>div{display:grid;gap:5px;min-width:0}.resume-card span{color:var(--blue);font-size:8px;font-weight:800;letter-spacing:.12em}.resume-card strong{overflow:hidden;text-overflow:ellipsis;font-size:13px}.resume-card small{color:var(--muted);font-size:10px}.resume-card .button{flex:0 0 auto;min-height:42px}@media(max-width:1150px){.application-filters{grid-template-columns:repeat(3,1fr)}.application-filters .button{grid-column:1/-1}}@media(max-width:650px){.application-filters{grid-template-columns:1fr}.application-filters .button{grid-column:auto}.resume-card{align-items:stretch;flex-direction:column}.resume-card .button{justify-content:center}}
@media(min-width:901px){.portal-app-shell .contacts-page{height:calc(100dvh - var(--portal-header-height));min-height:0;display:flex;flex-direction:column;overflow:hidden}.contacts-page>.module-heading,.contacts-page>.contact-filters,.contacts-page>.application-filters{flex:0 0 auto}.contacts-page>.contact-workspace{flex:1 1 auto;min-height:0;overflow:hidden}.contact-list-panel{display:flex;min-height:0;flex-direction:column}.contact-list-panel>.contact-list{min-height:0;overflow-y:auto;overscroll-behavior:contain}.contact-list-panel>.list-summary,.contact-list-panel>.contact-pagination{flex:0 0 auto}.contacts-page .contact-detail{min-height:0;overflow-y:auto;overscroll-behavior:contain}}
.password-field{position:relative;display:block;width:100%}.password-field>input{padding-right:46px!important}.password-toggle{position:absolute;right:0;top:50%;width:40px;height:40px;padding:0;display:grid;place-items:center;transform:translateY(-50%);border:0;background:transparent;color:#61758a;cursor:pointer;border-radius:8px}.password-toggle:hover{color:var(--blue);background:rgba(8,124,240,.08)}.password-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.password-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-toggle .password-toggle-slash{display:none}.password-toggle.is-visible .password-toggle-slash{display:block}.login-form .password-toggle{top:calc(50% + 4px);color:#91b3d1}.login-form .password-toggle:hover{color:#fff;background:rgba(85,173,251,.14)}.login-form .password-toggle:focus-visible{outline-color:#69b8ff}
.users-page{width:min(1180px,calc(100% - 10vw))!important}.users-layout{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(440px,1.28fr);gap:24px;margin-top:38px}.invite-card,.users-card{background:#fff;color:var(--ink);border:1px solid #d9e4ef}.invite-card{padding:32px}.invite-card h2{font-size:30px}.invite-card>p{color:var(--muted);font-size:12px;line-height:1.6}.invite-result{margin-top:25px;padding:18px;background:var(--paper);border:1px solid var(--line)}.invite-result[hidden]{display:none}.invite-result label{display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.invite-result input{width:100%;margin:8px 0 12px;padding:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:11px}.user-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:15px;padding:19px 22px;border-bottom:1px solid var(--line)}.user-row>.portal-user-avatar{width:42px;height:42px;border-radius:12px}.user-row>div:nth-child(2){display:grid;grid-template-columns:1fr auto;gap:4px 12px;min-width:0}.user-row strong,.user-row small{overflow:hidden;text-overflow:ellipsis}.user-row small{grid-column:1;color:var(--muted);font-size:10px}.user-row .status-badge{grid-column:2;grid-row:1/3;align-self:center}.user-active{background:#dff5e8;color:#176b3a}.user-invited{background:#fff0c9;color:#835b00}.user-blocked{background:#f5dddd;color:#8d2929}.user-actions button{padding:8px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:10px;cursor:pointer}.user-actions button:hover{border-color:var(--blue);color:var(--blue)}.invitation-panel strong{color:#fff}.invitation-panel .login-form>small{display:block;margin:-8px 0 22px;color:#87a5bf;font-size:10px;line-height:1.5}.dashboard-cards{grid-template-columns:repeat(3,1fr)}@media(max-width:900px){.users-layout{grid-template-columns:1fr}.dashboard-cards{grid-template-columns:1fr 1fr}}@media(max-width:600px){.users-page{width:calc(100% - 10vw)!important}.dashboard-cards{grid-template-columns:1fr}.user-row{grid-template-columns:42px 1fr}.user-actions{grid-column:2}.user-row>div:nth-child(2){grid-template-columns:1fr}.user-row .status-badge{grid-column:1;grid-row:auto;justify-self:start}}
.section-code,.eyebrow,.portal-link,.inline-link,.portal-panel>span,.portal-status,.login-form label,.account-form label,.contact-filters label,.application-filters label,.status-control,.invite-result label{font-size:var(--text-caption)}.login-back,.portal-topbar-brand small,.portal-user-text small,.dashboard-cards span,.dashboard-cards small,.dashboard-cards article b,.account-card small,.file-button,.text-button,.camera-status,.contact-list-item time,.detail-header p,.contact-facts dt,.contact-message span,.contact-pagination,.resume-card span,.resume-card small,.user-row small,.user-actions button,.invitation-panel .login-form>small{font-size:var(--text-small)}.dashboard-note,.security-alert,.security-facts div,.list-summary,.empty-list,.invite-card>p{font-size:var(--text-small)}.contact-form label,.application-form label{font-size:var(--text-caption)}.contact-form input,.contact-form textarea,.application-form input,.application-form textarea,.application-form select,.contact-filters input,.contact-filters select,.application-filters input,.application-filters select,.status-control select,.account-form input,.invite-result input{font-size:var(--text-body)}.contact-facts dd,.contact-message p,.form-status,.login-form .form-status{font-size:var(--text-body)}.application-form .consent-field,.file-field small{font-size:var(--text-small)}
.button,.mini-cta,.service-top,.process-list>li>span,.empty-state span,.empty-job span,.news-card>span,.news-card time,.news-card a,.career-points span,.site-footer strong,.copyright,.hero-foot{font-size:var(--text-caption)}.service-card ul,.job-card p,.footer-brand p,.site-footer>div:not(.footer-brand){font-size:var(--text-small)}
.contacts-page{width:min(1280px,calc(100% - 8vw))!important}.module-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.module-heading h1{margin:0;font:600 clamp(42px,5vw,68px)/1 var(--display);letter-spacing:-.05em}.module-heading p:last-child{max-width:650px;color:#a9bfd3}.module-back{flex:0 0 auto;padding-bottom:7px;border-bottom:1px solid #55adfb;color:#b8d9f5;font-size:11px}.contact-filters{display:grid;grid-template-columns:1fr 230px auto;align-items:end;gap:18px;margin:34px 0 22px;padding:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.contact-filters label,.status-control{color:#9fb8cf;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.contact-filters input,.contact-filters select,.status-control select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #c9d7e5;background:#fff;color:var(--ink);font-size:13px}.contact-filters .button{min-height:42px}.contact-workspace{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(420px,1.18fr);min-height:500px;border:1px solid rgba(255,255,255,.16);background:#fff}.contact-list-panel{min-width:0;border-right:1px solid var(--line);color:var(--ink)}.list-summary{display:flex;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line);font-size:11px}.list-summary span{color:var(--blue)}.contact-list-item{width:100%;padding:20px 22px;display:grid;grid-template-columns:1fr auto;gap:5px 15px;text-align:left;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}.contact-list-item:hover,.contact-list-item.active{background:#eef6ff}.contact-list-item.active{box-shadow:inset 3px 0 var(--blue)}.contact-list-item .status-badge{justify-self:start}.contact-list-item strong{grid-column:1;font-size:15px}.contact-list-item small{grid-column:1;color:var(--muted)}.contact-list-item time{grid-column:2;grid-row:2/4;color:#718293;font-size:10px}.status-badge{display:inline-flex;padding:5px 8px;border-radius:99px;font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.status-received{background:#dceeff;color:#075aa5}.status-in_progress{background:#fff0c9;color:#835b00}.status-answered{background:#dff5e8;color:#176b3a}.status-archived{background:#e9edf1;color:#526170}.contact-detail{padding:34px;color:var(--ink)}.empty-detail{min-height:360px;display:grid;place-content:center;text-align:center;color:var(--muted)}.empty-detail span{color:var(--blue);font-size:32px}.empty-detail h2{margin:10px 0;font-size:28px}.detail-header{padding-bottom:25px;border-bottom:1px solid var(--line)}.detail-header h2{margin:15px 0 5px;font-size:36px}.detail-header p{margin:0;color:var(--muted);font-size:11px}.contact-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin:24px 0}.contact-facts div{padding:12px 0;border-bottom:1px solid var(--line)}.contact-facts dt{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.contact-facts dd{margin:6px 0 0;font-size:13px}.contact-facts a{color:var(--blue)}.contact-message{margin:25px 0;padding:22px;background:var(--paper)}.contact-message span{font-size:9px;font-weight:700;letter-spacing:.12em}.contact-message p{margin-bottom:0;line-height:1.65}.status-control{display:block;max-width:260px}.contact-pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:18px;color:var(--muted);font-size:10px}.contact-pagination button{width:34px;height:34px;border:1px solid var(--line);background:#fff;cursor:pointer}.contact-pagination button:disabled{opacity:.35}.empty-list{padding:45px 22px;text-align:center;color:var(--muted);font-size:12px}@media(max-width:900px){.contact-workspace{grid-template-columns:1fr}.contact-list-panel{border-right:0;border-bottom:1px solid var(--line)}.contact-filters{grid-template-columns:1fr 1fr}.contact-filters .button{grid-column:1/-1}.contact-detail{min-height:420px}}@media(max-width:600px){.module-heading{display:block}.module-back{display:inline-block;margin-top:15px}.contact-filters{grid-template-columns:1fr}.contact-filters .button{grid-column:auto}.contacts-page{width:calc(100% - 8vw)!important}.contact-list-item{padding:17px}.contact-detail{padding:24px 18px}.contact-facts{grid-template-columns:1fr}.detail-header h2{font-size:30px}}
