
/* GNB submenus — current navy/white/cyan system */
header .desktop-nav{height:100%;align-self:stretch;display:flex;align-items:center;gap:48px}header .gnb-group{height:100%;display:flex;align-items:center;position:relative}header .gnb-trigger{height:100%;display:flex;align-items:center;gap:9px;padding:0;border:0;background:transparent;color:white;font:inherit;font-weight:600;line-height:1.3;white-space:nowrap;cursor:pointer;position:relative}header .gnb-trigger svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.2;transition:transform .18s}header .gnb-trigger[aria-expanded=true]{color:#00cccd}header .gnb-trigger[aria-expanded=true] svg{transform:rotate(180deg)}header .gnb-trigger:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:#00cccd;transform:scaleX(0);transition:transform .18s}header .gnb-trigger[aria-expanded=true]:after{transform:scaleX(1)}header .gnb-direct{height:100%;display:flex;align-items:center;white-space:nowrap}header .gnb-panel{position:absolute;top:calc(100% - 4px);left:-18px;right:auto;width:264px;background:#fff;color:#173b5c;border:1px solid #e3e9ee;border-radius:10px;box-shadow:0 12px 36px #001c351a,0 2px 6px #001c3508;z-index:30;padding:0;overflow:hidden}header .gnb-panel[hidden]{display:none!important}header .gnb-panel-inner{max-width:none;margin:0;padding:8px;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;justify-content:stretch;gap:2px}header .gnb-panel a{display:flex;align-items:center;justify-content:flex-start;padding:11px 10px;border-radius:5px;font-size:16px;font-weight:500;line-height:1.45;letter-spacing:-.015em;white-space:normal;text-align:left;border:0;transition:background .16s,color .16s}header .gnb-panel a:hover,header .gnb-panel a:focus-visible{color:#006fbd;background:#f0f6fa;outline-offset:-2px}.lang-en header .gnb-panel a{font-size:15px;letter-spacing:0}header #submenu-company{width:220px}header .mobile-nav.open{left:auto;right:var(--gutter);width:min(440px,calc(100vw - 2 * var(--gutter)));padding:12px 26px 22px;gap:0;max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 16px 28px #00182b33;z-index:40;scrollbar-width:thin}header .mobile-group{width:100%;border-bottom:1px solid #ffffff24}header .mobile-group summary{list-style:none;cursor:pointer;padding:22px 28px 22px 0;position:relative;font-size:17px;font-weight:600;line-height:1.4}header .mobile-group summary::-webkit-details-marker{display:none}header .mobile-group summary:after{content:'';width:8px;height:8px;border:solid currentColor;border-width:0 1px 1px 0;transform:rotate(45deg);position:absolute;right:4px;top:28px}header .mobile-group[open] summary{color:#00cccd}header .mobile-group[open] summary:after{transform:rotate(225deg);top:32px}header .mobile-submenu{display:grid;gap:4px;padding:0 0 18px 14px}header .mobile-submenu a{font-size:15px;font-weight:400;line-height:1.5;padding:10px 12px;min-height:44px;color:#e0ebf5;border-left:1px solid #ffffff26;overflow-wrap:break-word}header .mobile-submenu a:hover{color:#00cccd;background:#ffffff08}header .mobile-direct{padding:22px 0;border-bottom:1px solid #ffffff24;font-size:17px;font-weight:600;line-height:1.4}header .menu[aria-expanded=true]{color:#00cccd}header .gnb-trigger:focus-visible,header summary:focus-visible{outline:2px solid #00cccd;outline-offset:4px}
/* A(7) editorial details */
.hero .eyebrow,.manufacturing>.eyebrow,.company-card>.eyebrow{text-transform:uppercase}.ai-copy>.eyebrow{text-transform:uppercase}.ai-copy>p:last-child{font-size:18px;font-weight:400;line-height:1.5}.ear h3{margin-bottom:12px}.ear .ear-subtitle{font-size:18px;font-weight:200;line-height:1.2;margin:0 0 28px;width:auto;max-width:90%}.ear strong{max-width:86%;line-height:1.5}.ear .ear-description{width:86%;max-width:544px;font-size:18px;line-height:1.5;margin:16px 0 36px;flex-shrink:0}.ear{height:auto}.lang-en .ear .ear-description{font-size:16px;line-height:1.55;width:84%;max-width:530px}.lang-en .ear .ear-subtitle{font-size:17px;line-height:1.3;margin-bottom:24px}.lang-en .ai-copy>p:last-child{font-size:18px}.manufacturing>.intro{max-width:1120px;line-height:1.5}
@media(max-width:1200px){header .desktop-nav{gap:28px}header .gnb-panel-inner{gap:2px}header .gnb-panel a{font-size:15px;padding:11px 10px}.ear .ear-description{font-size:16px;width:86%;margin-bottom:26px}.ear .ear-subtitle{font-size:16px;margin-bottom:20px}.ear strong{font-size:16px}.lang-en .ear .ear-description{font-size:14px}.lang-en .ear .ear-subtitle{font-size:15px}}
@media(max-width:960px){header .desktop-nav{gap:24px}.ear .ear-description{font-size:18px}.ear .ear-subtitle{font-size:18px}.ear strong{font-size:18px}.lang-en .ear .ear-description{font-size:17px}.lang-en .ear .ear-subtitle{font-size:17px}}
@media(max-width:850px){header .desktop-nav{display:none!important}header .mobile-nav.open{left:0;right:0;width:100%;border-top:1px solid #ffffff24;padding-inline:var(--gutter)}header .gnb-panel{display:none!important}}
@media(max-width:700px){header .mobile-nav.open{top:64px;max-height:calc(100dvh - 64px)}.hero .eyebrow{font-size:clamp(16px,4.7vw,20px)}.manufacturing>.eyebrow{font-size:clamp(15px,4.1vw,20px);line-height:1.45}.ai-copy>.eyebrow{font-size:20px;line-height:1.4}.ai-copy>p:last-child,.lang-en .ai-copy>p:last-child{font-size:14px}.ear,.lang-en .ear{min-height:460px;aspect-ratio:auto;padding-block:48px;overflow:hidden}.ear h3,.lang-en .ear h3{font-size:27px;margin-bottom:12px;flex-shrink:0}.ear .ear-subtitle,.lang-en .ear .ear-subtitle{font-size:14px;line-height:1.4;margin-bottom:22px;width:auto;max-width:88%;flex-shrink:0}.ear strong,.lang-en .ear strong{font-size:14px;line-height:1.6;max-width:88%;width:88%;flex-shrink:0}.ear .ear-description,.lang-en .ear .ear-description{font-size:14px;line-height:1.65;width:88%;max-width:440px;margin:14px 0 26px;flex-shrink:0}.ear .button{flex-shrink:0}.lang-en .ear .ear-description{font-size:13px}.ear .particle-video,.ear .particle-fallback{width:180%;max-width:none;left:-40%;object-fit:fill}.company-card>.eyebrow{font-size:21px}}
@media(max-width:380px){.ai-copy>.eyebrow{font-size:18px}.ear .ear-description{font-size:13px}.ear strong{font-size:13px}.lang-en .ear .ear-description{font-size:12px}.ear,.lang-en .ear{padding-block:44px;min-height:480px}.ear .ear-subtitle,.lang-en .ear .ear-subtitle{font-size:13px}.mobile-submenu a{font-size:14px}}
@media(prefers-reduced-motion:reduce){header .gnb-trigger svg,header .gnb-trigger:after{transition:none}}

/* Shared GNB origin for desktop dropdowns and page breadcrumbs. */
:root{--gnb-start:calc(max(var(--gutter), (100vw - 1480px)/2) + 202px)}
.page-trail{display:none}
@media(min-width:851px){
 header .gnb-group{position:static}
 header .gnb-group:has(.gnb-panel a[aria-current=page]) .gnb-trigger:after{transform:scaleX(1)}
 header .gnb-panel,header #submenu-company{top:100%;left:0;right:0;width:100%;border:0;border-top:1px solid #e6ebef;border-bottom:1px solid #e6ebef;border-radius:0;background:#fff;box-shadow:0 7px 16px #001c3506;overflow:visible}
 header .gnb-panel-inner,header #submenu-company .gnb-panel-inner{width:min(840px,calc(100% - var(--gnb-start) - var(--gutter)));max-width:none;margin:0 0 0 var(--gnb-start);padding:16px 0 18px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;min-height:76px}
 header .gnb-panel a,.lang-en header .gnb-panel a{align-items:flex-start;justify-content:flex-start;padding:6px 18px;min-height:42px;border-radius:0;border-left:1px solid #e9edf0;font-size:13px;font-weight:600;line-height:1.5;letter-spacing:-.01em;color:#344c60;white-space:normal;transition:color .16s}
 header .gnb-panel a:first-child{border-left:0;padding-left:0}
 header .gnb-panel a:hover,header .gnb-panel a:focus-visible{color:#008ba4;background:transparent}
 header .gnb-panel a:focus-visible{outline:none;text-decoration:underline;text-underline-offset:4px}
 header .gnb-panel a[aria-current=page]{color:#008ba4}
 .lang-en header .gnb-panel a{font-size:12px;letter-spacing:0}
 .subpage .subnav{display:none}
 .subpage .page-trail{display:block;background:#fff;border:0}
 .subpage .page-trail .breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-height:48px;width:calc(100% - var(--gnb-start) - var(--gutter));max-width:none;margin:0 0 0 var(--gnb-start);padding:12px 0;color:#76828b;font-size:12px;font-weight:400;line-height:1.5;letter-spacing:0}
 .subpage .page-trail .breadcrumb>span:last-child{color:#334c60}
 .subpage .page-trail .trail-separator{font-size:0;width:5px;height:5px;border-top:1px solid #a8b2ba;border-right:1px solid #a8b2ba;transform:rotate(45deg);margin-inline:2px;flex-shrink:0}
 .subpage .subhero .breadcrumb{display:none}
}
@media(min-width:851px) and (max-width:1200px){:root{--gnb-start:calc(var(--gutter) + 178px)}header .gnb-panel a,.lang-en header .gnb-panel a{padding-inline:12px}header .gnb-panel a:first-child{padding-left:0}}
@media(min-width:851px) and (max-width:960px){:root{--gnb-start:calc(var(--gutter) + 155px)}}

/* Header geometry is shared by home and every subpage. */
html{overflow-y:scroll}
header,.subpage header{--gutter:clamp(24px,5.55vw,88px);height:70px;padding-inline:max(var(--gutter),calc((100vw - 1480px)/2));gap:60px;border-bottom:1px solid #ffffff20}
@media(max-width:1200px){header,.subpage header{gap:36px}}
@media(max-width:960px){header,.subpage header{--gutter:36px;gap:30px}}
@media(max-width:700px){header,.subpage header{--gutter:24px;height:64px}}
@media(max-width:380px){header,.subpage header{--gutter:20px}}
