.about-page {
  --ab-ink: #173447;
  --ab-muted: #5c727e;
  --ab-paper: #f2f1ec;
  --ab-line: #d6dfe1;
  --ab-accent: #b9512e;
  color: var(--ab-ink);
  background: #fff;
}
.about-page * { box-sizing: border-box; }
.about-page [id] { scroll-margin-top: 76px; }
.about-page [hidden] { display: none !important; }
.about-page h1, .about-page h2, .about-page h3 {
  margin: 0;
  color: inherit;
  font-weight: 650;
  letter-spacing: -.025em;
  line-height: 1.2;
}
.about-page h2 { font-size: clamp(29px, 3.2vw, 40px); }
.about-page h3 { font-size: 20px; }
.about-page p { margin: 0 0 16px; color: var(--ab-muted); font-size: 15px; line-height: 1.8; }
.about-page a { text-underline-offset: 4px; }
.ab-hero { padding: 0 0 52px; background: var(--ab-paper); }
.ab-breadcrumb { padding: 25px 0 35px; color: var(--muted); }
.ab-hero-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 60px; }
.about-page .ab-hero h1 { margin-bottom: 24px; font-size: clamp(38px, 4vw, 54px); }
.ab-hero-copy p { max-width: 550px; }
.ab-hero-copy p:last-child { margin-bottom: 0; }
.ab-hero-photo { margin: 0; }
.ab-hero-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
.ab-section-nav { position: sticky; top: 0; z-index: 60; color: #d3e0e7; background: #0b2b40; border-bottom: 1px solid #ffffff24; }
.ab-section-nav > .container { display: flex; align-items: center; gap: 34px; min-height: 52px; overflow-x: auto; scrollbar-width: none; }
.ab-section-nav a { flex-shrink: 0; padding: 17px 0; color: inherit; font-size: 12px; line-height: 18px; text-decoration: none; white-space: nowrap; }
.ab-section-nav a:hover, .ab-section-nav a:focus-visible { color: white; }
.ab-section { padding: 66px 0; }
.ab-section > .container > h2 { margin-bottom: 34px; }
.ab-heading { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 48px; margin-bottom: 34px; }
.ab-heading p:last-child { margin-bottom: 0; }
.ab-manufacturing { background: #f3f6f7; }
.ab-capabilities-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 45px; align-items: start; }
.ab-process-tabs { position: sticky; top: 76px; display: flex; flex-direction: column; align-self: start; border-left: 1px solid #c7d5db; }
.ab-process-tabs button { width: 100%; min-height: 56px; padding: 16px 20px; border: 0; border-left: 3px solid transparent; margin-left: -1px; color: #5c7583; background: transparent; font: inherit; font-size: 13px; line-height: 1.5; text-align: left; cursor: pointer; }
.ab-process-tabs button:hover { color: #173447; background: #e8eff2; }
.ab-process-tabs button[aria-selected=true] { border-left-color: var(--ab-accent); color: #173447; background: #e4edf1; font-weight: 650; }
.ab-capability-content { min-width: 0; }
.ab-process-panel { padding: 2px 0 0; }
.ab-process-copy h3 { margin-bottom: 16px; font-size: 26px; }
.ab-process-copy > p { max-width: 720px; }
.ab-process-copy dl { margin: 24px 0 30px; }
.ab-process-copy dl > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 20px; padding: 15px 0; border-top: 1px solid #d0dce1; }
.ab-process-copy dt { font-size: 13px; font-weight: 650; line-height: 1.7; }
.ab-process-copy dd { margin: 0; color: var(--ab-muted); font-size: 13px; line-height: 1.7; }
.ab-process-images { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ab-process-images figure { position: relative; margin: 0; }
.ab-process-main { grid-column: 1/-1; }
.ab-process-images img { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: cover; }
.ab-process-images figcaption { position: absolute; inset: auto 0 0; padding: 9px 12px; color: white; background: #0b2b40d9; font-size: 10px; }
.ab-quality { color: #fff; background: #0b2b40; }
.ab-quality p { color: #b1c5d1; }
.ab-quality-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 45px; align-items: start; }
.ab-quality-layout figure { margin: 0; }
.ab-quality-layout img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
.ab-quality-layout figcaption { margin-top: 12px; color: #89a5b5; font-size: 11px; line-height: 1.7; }
.ab-checks article { padding: 18px 0; border-top: 1px solid #ffffff26; }
.ab-checks h3 { margin-bottom: 9px; font-size: 17px; }
.ab-checks p { margin: 0; font-size: 13px; line-height: 1.75; }
.ab-records { display: grid; grid-template-columns: 1fr 1fr; gap: 45px; padding-top: 28px; margin-top: 28px; border-top: 1px solid #ffffff26; }
.ab-records h3 { margin-bottom: 14px; font-size: 18px; }
.ab-records p, .ab-records li { color: #b1c5d1; font-size: 13px; line-height: 1.8; }
.ab-records ul { padding-left: 18px; margin: 0; }
.ab-credentials { background: #faf9f6; }
.ab-text-link, .ab-credential-group a, .ab-certificate-copy > a { color: #315c72; font-size: 12px; font-weight: 650; text-decoration: none; }
.ab-holder { display: flex; gap: 30px; align-items: baseline; padding: 20px 0 26px; border-top: 1px solid var(--ab-line); }
.ab-holder > span { color: #708895; font-size: 11px; flex-shrink: 0; }
.ab-holder p { margin: 0; font-size: 12px; }
.ab-holder p > span { color: #80949d; font-size: 11px; }
.ab-certificate-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ab-certificate { min-width: 0; }
.ab-certificate-image { display: block; width: 100%; padding: 24px 25px 0; border: 1px solid #dbe0dd; background: #eeeee8; cursor: zoom-in; }
.ab-certificate-image img { display: block; width: 100%; height: 225px; object-fit: contain; }
.ab-certificate-image > span { display: block; padding: 17px 0; color: #59747f; font-size: 10px; }
.ab-certificate-copy { padding: 23px 0; }
.ab-certificate-copy h3 { font-size: 23px; }
.ab-certificate-copy .ab-certificate-name { margin: 8px 0 13px; font-size: 12px; font-weight: 650; }
.ab-certificate-copy p { font-size: 12px; }
.ab-certificate-copy dl { margin: 20px 0; }
.ab-certificate-copy dl > div { margin-top: 10px; }
.ab-certificate-copy dt { margin-bottom: 4px; color: #7b8d94; font-size: 10px; }
.ab-certificate-copy dd { margin: 0; font-size: 11px; line-height: 1.7; overflow-wrap: anywhere; }
.about-page .ab-note { margin: 8px 0 30px; color: #7c8f98; font-size: 11px; }
.ab-details { margin-top: 20px; border-top: 1px solid var(--ab-line); border-bottom: 1px solid var(--ab-line); }
.ab-details + .ab-details { margin-top: 0; border-top: 0; }
.ab-details summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0; font-size: 14px; font-weight: 650; cursor: pointer; list-style: none; }
.ab-details summary::-webkit-details-marker { display: none; }
.ab-details summary > span { color: #6c8593; font-size: 12px; font-weight: 400; }
.ab-details summary b { padding-left: 12px; font-size: 18px; font-weight: 400; }
.ab-patent-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; padding: 15px 0 30px; }
.ab-patent-grid article { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 22px; }
.ab-patent-image { align-self: start; padding: 8px; border: 1px solid #dbe0dd; background: #eeeee8; cursor: zoom-in; }
.ab-patent-image img { display: block; width: 100%; height: auto; }
.ab-patent-grid h4 { margin: 8px 0 12px; font-size: 16px; }
.ab-patent-grid p { margin-bottom: 10px; font-size: 11px; }
.ab-patent-type { color: #718891; font-size: 10px; }
.ab-recognition { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 35px; padding-bottom: 30px; }
.ab-recognition img { display: block; width: 100%; height: auto; max-height: 260px; object-fit: contain; }
.ab-recognition h4 { margin-bottom: 16px; font-size: 22px; }
.ab-recognition p { font-size: 13px; }
body:has(.about-page) .site-floating-contact-actions { display: none; }
.ab-process-tabs button:focus-visible, .ab-section-nav a:focus-visible { outline: 2px solid #79b9c8; outline-offset: 3px; }
@media (max-width: 1000px) {
  .ab-hero-grid { gap: 32px; }
  .ab-capabilities-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 28px; }
  .ab-process-copy dl > div { grid-template-columns: 125px minmax(0, 1fr); gap: 14px; }
  .ab-quality-layout, .ab-records { gap: 30px; }
  .ab-certificate-grid { gap: 18px; }
  .ab-certificate-image { padding: 20px 16px 0; }
  .ab-certificate-image img { height: 185px; }
  .ab-patent-grid { grid-template-columns: 1fr; }
}
@media (max-width: 800px) {
  .ab-hero-grid { gap: 25px; }
  .ab-hero-copy p { font-size: 14px; }
  .ab-hero-photo img { aspect-ratio: 1; }
  .ab-heading { grid-template-columns: 1fr; gap: 20px; }
  .ab-section { padding: 50px 0; }
  .ab-process-tabs button { padding: 14px 15px; font-size: 12px; }
  .ab-process-copy dl > div { display: block; }
  .ab-process-copy dt { margin-bottom: 6px; }
  .ab-quality-layout { grid-template-columns: 1fr; }
  .ab-quality-layout img { max-height: 350px; }
  .ab-section-nav > .container { gap: 26px; }
}
@media (max-width: 600px) {
  .ab-hero { padding-bottom: 32px; }
  .ab-breadcrumb { padding: 20px 0 26px; }
  .ab-hero-grid { grid-template-columns: 1fr; gap: 25px; }
  .about-page .ab-hero h1 { margin-bottom: 20px; font-size: 38px; }
  .ab-hero-copy p { font-size: 15px; }
  .ab-hero-photo img { aspect-ratio: 16/10; }
  .ab-section-nav a { padding: 15px 0; font-size: 11px; }
  .ab-capabilities-layout { grid-template-columns: 1fr; gap: 26px; }
  .ab-process-tabs { position: static; display: grid; grid-template-columns: 1fr 1fr; border-left: 0; }
  .ab-process-tabs button { min-height: 52px; padding: 12px; border-left-width: 2px; margin: 0; }
  .ab-process-copy h3 { font-size: 24px; }
  .ab-records { grid-template-columns: 1fr; gap: 22px; }
  .ab-holder { display: block; padding: 17px 0 23px; }
  .ab-holder > span { display: block; margin-bottom: 8px; }
  .ab-certificate-grid { grid-template-columns: 1fr; gap: 0; }
  .ab-certificate { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 22px; padding: 23px 0; border-top: 1px solid var(--ab-line); }
  .ab-certificate-image { padding: 10px 8px 0; align-self: start; }
  .ab-certificate-image img { height: 135px; }
  .ab-certificate-image > span { padding: 10px 0; font-size: 8px; }
  .ab-certificate-copy { padding: 0; }
  .ab-certificate-copy h3 { font-size: 21px; }
  .ab-certificate-copy p { font-size: 11px; }
  .ab-certificate-copy dl { margin: 14px 0; }
  .ab-patent-grid article { grid-template-columns: 90px minmax(0, 1fr); gap: 20px; }
  .ab-recognition { grid-template-columns: 1fr; gap: 22px; }
  .ab-details summary { font-size: 13px; }
  .ab-details summary > span { font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) { .about-page, .about-page * { scroll-behavior: auto !important; } }

.ab-credential-group { margin-top: 28px; padding-top: 26px; border-top: 1px solid var(--ab-line); }
.ab-credential-group > h3 { margin-bottom: 24px; }
.ab-credential-group h4 { color: inherit; font-weight: 650; line-height: 1.3; letter-spacing: -.02em; }
