.ab-hero { padding-top: 50px; background: radial-gradient(at 90% 80%, rgb(18, 45, 83) 0px, transparent 55%), rgb(8, 11, 14); }
.ab-logo-window { width: min(680px, 100%); aspect-ratio: 1536 / 590; position: relative; overflow: hidden; background: white; margin-bottom: 64px; }
.ab-logo-window img { position: absolute; left: 0px; top: -14%; width: 100%; height: auto; object-fit: contain; }
.ab-hero-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 8%; align-items: end; }
.ab-hero h1 { font-size: clamp(3.2rem, 5.8vw, 6.2rem); letter-spacing: -0.06em; line-height: 1.02; font-weight: 500; margin: 22px 0px 0px; }
.ab-hero h1 span { color: rgb(113, 165, 255); }
.ab-hero-copy p:first-child { font-size: 1.35rem; color: white; }
.ab-hero-copy p { max-width: 540px; }
.ab-hero-copy .button { margin-top: 12px; }
.ab-strip { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid rgb(66, 82, 103); padding-top: 24px; margin-top: 64px; font: 0.75rem "Courier New", monospace; letter-spacing: 0.09em; color: rgb(188, 209, 239); }
.ab-experience, .ab-materials { background: rgb(237, 240, 243); color: rgb(20, 25, 30); }
.ab-experience p, .ab-materials p { color: rgb(85, 98, 117); }
.ab-experience .eyebrow, .ab-materials .eyebrow { color: rgb(34, 91, 204); }
.ab-experience .small { color: rgb(85, 98, 117); }
.ab-cards { display: grid; grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 28px; margin-top: 40px; }
.ab-cards article { border-top: 2px solid rgb(20, 84, 220); padding-top: 24px; }
.ab-cards article > span { font: 0.8rem "Courier New", monospace; color: rgb(34, 91, 204); }
.ab-page h3 { font-size: 1.45rem; line-height: 1.2; font-weight: 500; letter-spacing: -0.025em; }
.ab-cards p, .ab-three p, .ab-finish-grid p, .ab-steps p { font-size: 1rem; }
.ab-steps { list-style: none; padding: 0px; margin: 48px 0px 0px; }
.ab-steps li { display: grid; grid-template-columns: 50px 1fr 1.6fr; gap: 30px; border-top: 1px solid var(--line); padding: 30px 0px; }
.ab-steps li > span { color: rgb(113, 165, 255); font: 1rem "Courier New", monospace; padding-top: 5px; }
.ab-steps h3, .ab-steps p { margin: 0px; }
.ab-production { background: rgb(16, 27, 42); }
.ab-three { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 40px; margin-top: 32px; }
.ab-three article { border-top: 1px solid rgb(82, 102, 129); padding-top: 18px; }
.ab-finish-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 60px; margin-top: 40px; }
.ab-finish-grid article { border-top: 1px solid rgb(172, 185, 202); padding-top: 15px; }
.ab-economics .eyebrow { margin-bottom: 36px; }
.ab-page .contact .text-link { margin-top: 20px; }
@media (max-width: 900px){.ab-hero-grid { grid-template-columns: 1fr; gap: 30px; }
.ab-logo-window { margin-bottom: 40px; }
.ab-cards { grid-template-columns: 1fr 1fr; }
.ab-steps li { grid-template-columns: 35px 1fr; gap: 16px; }
.ab-steps p { grid-column: 2; }
.ab-three { grid-template-columns: 1fr; gap: 12px; }
}
@media (max-width: 650px){.ab-logo-window { margin-bottom: 35px; }
.ab-hero h1 { font-size: clamp(2.7rem, 10vw, 4rem); }
.ab-hero-copy p:first-child { font-size: 1.2rem; }
.ab-strip { flex-direction: column; gap: 16px; margin-top: 40px; }
.ab-cards, .ab-finish-grid { grid-template-columns: 1fr; gap: 20px; }
.ab-page h3 { font-size: 1.4rem; }
.ab-steps li { padding: 24px 0px; }
.ab-hero .eyebrow { font-size: 0.65rem; line-height: 1.6; }
}
.career-hero { background: linear-gradient(120deg, rgb(8, 11, 14), rgb(16, 40, 73)); }
.career-hero h1, .net-entry h1 { font-size: clamp(3rem, 6vw, 6.5rem); font-weight: 500; letter-spacing: -0.06em; line-height: 1.02; margin: 25px 0px; }
.career-hero > p:not(.eyebrow) { max-width: 640px; margin-bottom: 30px; }
.career-roles .ab-three { margin-top: 45px; }
.career-tag { font: 0.72rem / 1.6 "Courier New", monospace; color: rgb(158, 193, 255); }
.career-application { background: rgb(237, 240, 243); color: rgb(23, 35, 54); }
.career-application p { color: rgb(82, 97, 117); max-width: 900px; }
.career-application a { text-decoration: underline; }
.career-application .eyebrow { color: rgb(34, 91, 204); }
.career-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 23px; }
#job-application .career-consent { display: flex; align-items: flex-start; gap: 12px; }
.career-actions { display: flex; flex-wrap: wrap; gap: 15px; margin-top: 28px; }
.career-actions .button { cursor: pointer; border-color: rgb(20, 84, 220); color: rgb(20, 84, 220); background: transparent; }
.career-actions .career-primary { background: rgb(20, 84, 220); color: white; }
.career-help { font-size: 0.9rem; line-height: 1.6; margin-top: 20px; }
@media (max-width: 650px){.career-fields { grid-template-columns: 1fr; }
.career-actions { flex-direction: column; }
.career-actions .button { width: 100%; }
}
.form-downloads { display: flex; flex-wrap: wrap; gap: 16px 28px; margin: 24px 0px; }
.career-fields .wide { grid-column: 1 / -1; }
.career-primary:disabled { opacity: 0.65; cursor: wait; }
@media (max-width: 800px){.career-fields .wide { grid-column: auto; }
}
.timeline-family-photo { margin: 30px 0px 0px; max-width: 645px; }
.timeline-family-photo img { display: block; width: 100%; height: auto; object-fit: contain; }
.timeline-family-photo figcaption { padding: 18px 0px 20px; border-bottom: 1px solid var(--line); line-height: 1.6; }
.timeline-family-photo figcaption strong { display: block; font-size: 1rem; font-weight: 500; color: var(--text,#fff); margin-bottom: 6px; }
.timeline-family-photo figcaption span { display: block; font-size: 0.9375rem; color: var(--muted); }

/* New-page additions do not replace the current website or employee styles. */
.ab-page,.career-page{letter-spacing:0}
.ab-page h1,.career-hero h1{font-size:72px;letter-spacing:0}
.ab-page h2,.ab-page h3,.career-page h2,.career-page h3,.career-tag,.ab-strip{letter-spacing:0}
.ab-hero{background:#080b0e}
.career-hero{position:relative;background:linear-gradient(#080b0ec9,#080b0ee0),url('assets/production-render-no-tote.png') center/cover}
.career-application .form-downloads a{color:#174899;border-color:#174899;text-decoration:none;white-space:normal}
.career-roles .role-select{display:inline-block;line-height:1.5}
.ab-page .ab-hero-grid{grid-template-columns:1fr;gap:24px}
.ab-page .ab-hero-copy{max-width:800px}
.ab-page .ab-hero-copy p{max-width:760px}
.timeline-family-photo{width:100%}
@media(max-width:1480px){
 header{padding:22px 6%}.menu{display:flex;align-items:center;gap:25px;border:1px solid #79818b;background:transparent;color:white;padding:10px 14px;font-size:14px}
 header nav{display:none;position:absolute;left:0;right:0;top:100%;background:#0c1118;padding:20px 6%;align-items:stretch;gap:0;border-bottom:1px solid #536277;max-height:calc(100svh - 100px);overflow-y:auto}
 header nav.open{display:flex;flex-direction:column}header nav a{padding:14px 0;font-size:16px}.nav-cta{padding:16px!important;margin-top:12px}
 header .portal-nav summary{padding:14px 0;font-size:16px}.portal-nav-links{position:static;width:100%;padding:0 0 10px 15px;border:0;border-left:2px solid #4387ff;box-shadow:none}.portal-nav-links a{font-size:16px!important}
 header .header-actions{display:flex}
}
@media(max-width:900px){.ab-page h1,.career-hero h1{font-size:56px}}
@media(max-width:650px){.ab-page h1,.career-hero h1{font-size:40px}.form-downloads{flex-direction:column}.form-downloads .button{max-width:100%;font-size:14px;padding:18px}.ab-logo-window{margin-bottom:28px}}
