/* Ace's existing wordmark and three ribbons, cleaned for a navy background. */
.site-header{background:#091827f5;backdrop-filter:blur(18px)}
.logo .brand-logo{width:258px;height:86px;border:0;border-radius:0;background:transparent;object-fit:contain}
.footer .brand-logo{width:276px;height:92px;border:0;background:transparent;border-radius:0}
.footer .logo{width:fit-content;background:#091827;border-radius:5px;padding:10px 8px}
/* Detailed industry paths, with the material remaining the visual focus. */
.specializations{padding:100px 0 80px;background:radial-gradient(ellipse at 5% 50%,#174b6430,transparent 52%),radial-gradient(ellipse at 95% 85%,#2a17311f,transparent 48%),#08131f;border-top:1px solid #abd8ed12}
.specializations-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end;margin-bottom:44px}
.specializations-heading h2{font-family:var(--headline);font-size:clamp(36px,3.5vw,53px);line-height:1.1;letter-spacing:-.045em;color:#f0f6fa;margin:22px 0 0}
.specializations-intro{max-width:440px;padding-bottom:4px;justify-self:end}
.specializations-intro p{font-size:16px;line-height:1.85;color:#afc4d3;margin:0 0 22px}
.specializations-intro .text-link{color:#d4e8f5;font-size:13px;min-height:44px}
.specializations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.specialty-card{--accent:#86b3ff;display:flex;position:relative;isolation:isolate;overflow:hidden;flex-direction:column;min-height:414px;padding:30px 32px 0;border:1px solid #bddced24;border-radius:14px;background:linear-gradient(140deg,#132b40c7,#0a1929 72%);text-decoration:none;color:#edf5fa;transition:border-color .2s,transform .2s,box-shadow .2s}
.specialty-card::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#a3d5ee05 1px,transparent 1px),linear-gradient(90deg,#a3d5ee05 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(90deg,transparent,#000)}
.specialty-card:hover{transform:translateY(-4px);border-color:#9ecfff75;box-shadow:0 20px 40px #0003}
.specialty-green{--accent:#73d9b1;background:linear-gradient(140deg,#10302ec7,#0a1929 72%)}
.specialty-red{--accent:#efa1ad;background:linear-gradient(140deg,#322438b3,#0a1929 72%)}
.specialty-top{display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--accent);font-size:10px;letter-spacing:.09em;margin-bottom:27px}
.specialty-indicator{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 15px color-mix(in srgb,var(--accent),transparent 55%)}
.specialty-art{position:absolute;right:-9px;top:49px;width:225px;height:140px;color:var(--accent);opacity:.38;z-index:-1;transition:transform .4s,opacity .4s}
.specialty-card:hover .specialty-art{transform:translate(-4px,-3px);opacity:.57}
.specialty-copy{position:relative;z-index:1}
.specialty-copy h3{font-family:var(--headline);font-size:42px;line-height:1.1;letter-spacing:-.035em;margin:0 0 15px;color:#f3f7fb}
.specialty-subtitle{font-size:16px;font-weight:600;line-height:1.6;color:#d7e8f3;max-width:340px;margin:0 0 12px}
.specialty-description{font-size:14px;line-height:1.85;color:#adc1d0;max-width:470px;margin:0 0 25px}
.specialty-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 28px}
.specialty-tags li{font-size:11px;line-height:1.6;border:1px solid #9bc5df26;border-radius:5px;padding:6px 10px;color:#c0d5e3;background:#06152160}
.specialty-link{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:64px;border-top:1px solid #b5d7ed26;margin-top:auto;font-size:12px;font-weight:600;color:var(--accent)}
.specialty-link>span:last-child{font-size:25px;font-weight:400;line-height:1}
.specializations-custom{position:relative;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;padding:37px 40px;margin-top:26px;border:1px solid #b2d8ec22;border-radius:12px;background:linear-gradient(105deg,#142b3ec7,#0c1d2d)}
.specializations-custom::before{content:'';position:absolute;left:0;top:22px;bottom:22px;width:3px;background:linear-gradient(#406cff 0 33%,#ee4d5b 33% 66%,#35c58b 66%);border-radius:2px}
.specializations-custom .mono{font-size:10px;color:#a1bfd4;letter-spacing:.09em}
.specializations-custom h3{font-family:var(--headline);font-size:29px;letter-spacing:-.03em;line-height:1.3;color:#e5f0f7;margin:15px 0 0}
.specializations-custom p{font-size:14px;line-height:1.8;color:#adc1d0;margin:0 0 20px;max-width:400px}
.specializations-custom .button{font-size:12px;min-height:48px}
@media(max-width:1180px){.specializations-heading{gap:40px}.specialty-card{padding:26px 27px 0}.specialty-art{width:185px;opacity:.29}.specializations-custom{gap:40px}}
@media(max-width:900px){.specializations{padding:70px 0 60px}.specializations-heading{grid-template-columns:1fr;gap:25px}.specializations-intro{justify-self:start;max-width:570px}.specialty-copy h3{font-size:34px}.specialty-art{width:156px;opacity:.23;top:65px}.specialty-card{padding:24px 23px 0}.specialty-description{font-size:13px}.specializations-custom{padding:30px;gap:30px;grid-template-columns:1fr 1fr}.specializations-custom h3{font-size:26px}}
@media(max-width:680px){.logo .brand-logo{width:180px;height:60px}.footer .brand-logo{width:246px;height:82px}.specializations{padding:58px 0}.specializations-heading{gap:20px;margin-bottom:30px}.specializations-heading h2{font-size:36px;line-height:1.14}.specializations-intro p{font-size:15px;margin-bottom:12px}.specializations-grid{grid-template-columns:1fr;gap:18px}.specialty-card{min-height:0;padding:24px 24px 0}.specialty-top{margin-bottom:24px;font-size:9px}.specialty-copy h3{font-size:36px}.specialty-subtitle{font-size:15px;max-width:265px}.specialty-description{font-size:14px}.specialty-art{width:185px;top:51px;opacity:.25}.specialty-tags{margin-bottom:22px}.specialty-link{min-height:62px;font-size:12px}.specializations-custom{grid-template-columns:1fr;gap:20px;padding:26px}.specializations-custom h3{font-size:27px}.specializations-custom p{font-size:14px}.specializations-custom .mono{font-size:9px}}
@media(max-width:370px){.logo .brand-logo{width:160px;height:54px}.specialty-card{padding:22px 20px 0}.specialty-top{font-size:8px}.specialty-copy h3{font-size:32px}.specialty-art{right:-20px;opacity:.18}.specialty-description{font-size:13px}.specializations-heading h2{font-size:32px}.specializations-custom{padding:25px 22px}.specialty-tags li{font-size:10px}}
@media(prefers-reduced-motion:reduce){.specialty-card,.specialty-art{transition:none!important}.specialty-card:hover,.specialty-card:hover .specialty-art{transform:none}}
/* The document already offsets anchors below the fixed header. */
section[id],.technical-section{scroll-margin-top:0}
/* Long material/industry headings must wrap inside technical panels. */
.original-copy h2,.original-copy h3{overflow-wrap:anywhere}
.delivery-status{background:#1b3348;color:#d7e7f3;border:1px solid #436079}
.delivery-status[data-state="error"]{background:#3c1f2a;color:#ffd4dd;border-color:#9d5266}
.delivery-status[data-state="success"]{background:#143c34;color:#bdf4d9;border-color:#3a826c}
.noscript-note{background:#1b3348;color:#d7e7f3}
.facility-section{background:radial-gradient(ellipse at 16% 52%,#1c817117,transparent 58%),linear-gradient(125deg,#0d1c27,#0c1722 65%);padding:96px 0}
.facility-section>.wrap>.section-label{margin-bottom:34px}
.facility-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:64px;align-items:center}
.facility-photo{margin:0;border:1px solid #6aa6b747;border-radius:15px;overflow:hidden;background:#10232d;box-shadow:0 24px 70px #020b1547}
.facility-photo-image{line-height:0;background:#10232d}
.facility-photo img{display:block;width:100%;height:auto;aspect-ratio:1586/992;object-fit:contain}
.facility-photo figcaption{display:flex;flex-direction:column;gap:8px;padding:22px 24px;border-top:1px solid #67b8b34d;background:linear-gradient(110deg,#143432,#112331 80%);color:#c4d7de;font:12px/1.7 Manrope,sans-serif}
.facility-caption-label{font-size:10px;color:#9ee0d1;letter-spacing:1.4px}
.facility-caption-divider{display:inline-block;padding:0 7px;color:#799ea5}
.facility-eyebrow{color:#9ee0d1;font-size:10px;margin-bottom:20px}
.facility-layout .about-copy h2{font-size:clamp(34px,3.3vw,48px);line-height:1.14;letter-spacing:-1.7px}
.facility-layout .about-copy>p{font-size:14px;line-height:1.85;margin:22px 0 0;max-width:520px}
.facility-actions{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px}
.facility-actions .text-link{font-size:12px;gap:17px}
.facility-about-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.facility-gallery{min-width:0}
@media(max-width:1050px){.facility-layout{gap:34px}.facility-about-layout{gap:32px}.facility-layout .about-copy h2{font-size:38px}}
@media(max-width:800px){.facility-section{padding:64px 0}.facility-layout,.facility-about-layout{display:grid;grid-template-columns:1fr;gap:32px}.facility-layout .about-copy>p{max-width:none}.facility-gallery{grid-row:1}.facility-layout .about-copy h2{font-size:clamp(32px,6vw,42px)}.facility-photo figcaption{padding:18px 20px}.facility-section>.wrap>.section-label{margin-bottom:26px}}
@media(max-width:390px){.facility-photo figcaption{padding:16px}.facility-caption-divider{display:none}.facility-photo figcaption>span:last-child{max-width:230px}.facility-actions{gap:20px}.facility-actions .text-link{gap:11px}}

.facility-city::before{content:" / ";padding:0 7px;color:#799ea5}
@media(max-width:680px){.facility-city{display:block}.facility-city::before{content:none}}
