:root{--c-navy: #0A1F44;--c-deep: #071630;--c-ink: #0B2447;--c-brand2:#002C5D;--c-cyan: #07CCEC;--c-mist: #F4F7FA;--c-teal: #007F7C;--c-teal-ink: #00625F;--c-teal-bg: #E8F5F4;--c-danger: #DC2626;--c-danger-bg: #FEF2F2;--c-danger-soft: #FFF7F7;--c-line: #E4EAF1;--c-line-strong: #CBD5E1;--c-line-soft: #EEF2F6;--c-tint: #EAF6F7;--c-tint-2: #E2EDF5;--c-text: #334155;--c-text-mute: #5A6B7C;--dur: .2s;--ease: ease;--dur-enter: .35s;--ease-enter: cubic-bezier(.22, 1, .36, 1);--dur-spin: .7s;--dur-deco: .9s;--dur-stagger: .08s;--c-navy-rgb: 10, 31, 68;--c-ink-rgb: 11, 36, 71;--c-brand2-rgb: 0, 44, 93;--c-cyan-rgb: 7, 204, 236;--c-teal-rgb: 0, 127, 124;--c-danger-rgb: 220, 38, 38;--c-shadow-rgb: 2, 12, 28;--sh-1: 0 1px 3px rgba(2, 12, 28, .06), 0 2px 12px -4px rgba(2, 12, 28, .06);--sh-2: 0 12px 28px -16px rgba(2, 12, 28, .28);--sh-3: 0 24px 48px -24px rgba(2, 12, 28, .36);--sh-4: 0 34px 60px -30px rgba(2, 12, 28, .42);--sh-brand-1: 0 4px 10px -4px rgba(0, 44, 93, .6);--sh-brand-2: 0 12px 24px -14px rgba(0, 44, 93, .55);--r-xs: .35rem;--r-sm: .5rem;--r-md: 1rem;--r-lg: 1.5rem;--r-pill: 9999px;--focus: #002C5D;--focus-light: #07CCEC;--w-page:100rem}.max-w-7xl{max-width:var(--w-page)}img,svg,video{display:block;max-width:100%;height:auto}html{scroll-behavior:smooth;scroll-padding-top:6rem;-webkit-text-size-adjust:100%}.eyebrow{letter-spacing:0.24em;text-transform:uppercase}li.group{position:relative}li.group::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}.nav-dropdown-panel{position:absolute;top:100%;z-index:40;opacity:0;pointer-events:none;transition:opacity var(--dur) var(--ease);will-change:opacity}.nav-main{max-width:88rem;margin-inline:auto}.nav-mega{width:min(100rem,calc(100vw - 2rem))}li.group:hover>.nav-dropdown-panel,li.group:focus-within>.nav-dropdown-panel,li.group[data-open]>.nav-dropdown-panel{opacity:1;pointer-events:auto}.nav-dropdown-panel a{transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease), box-shadow var(--dur) var(--ease)}.nav-dropdown-panel a:hover,.nav-dropdown-panel a:focus-visible{background-color:var(--c-mist);color:var(--c-navy);box-shadow:inset 3px 0 0 var(--c-cyan)}.nav-dropdown-panel .grid>div>a:hover,.nav-dropdown-panel .grid>div>a:focus-visible{color:var(--c-brand2);box-shadow:none}@media (min-width:1024px) and (max-width:1279px){header nav ul{gap:0.25rem}header nav a{padding-left:0.75rem;padding-right:0.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.01ms!important}button:active{transform:none}}@media (prefers-reduced-motion:reduce){.np-track-slider{animation-duration:60s!important;animation-iteration-count:infinite!important}}.page-hero{position:relative;overflow:hidden;background:linear-gradient(180deg, #fff 0%, var(--c-mist) 52%, #fff 100%)}.page-hero-glow{position:absolute;top:-140px;right:-90px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle, rgba(var(--c-cyan-rgb), 0.20), rgba(var(--c-cyan-rgb), 0) 70%);filter:blur(6px);pointer-events:none}.page-hero-glow::after{content:"";position:absolute;bottom:-300px;left:-180px;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle, rgba(var(--c-brand2-rgb), 0.12), transparent 70%)}.page-hero-inner{position:relative;z-index:1}.page-eyebrow{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.75rem;font-weight:600;letter-spacing:0.24em;text-transform:uppercase;color:var(--c-brand2)}.page-eyebrow::before{content:"";width:1.6rem;height:2px;border-radius:2px;background:linear-gradient(90deg, var(--c-cyan), var(--c-brand2))}.page-h1{font-size:clamp(2rem, 5vw, 3.25rem);font-weight:800;letter-spacing:-0.02em;line-height:1.1;color:var(--c-navy)}.page-eyebrow-light{color:var(--c-cyan)}.page-h1-light{color:#fff}.skip-link{position:absolute;left:1rem;top:-3.5rem;z-index:100;display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1rem;border-radius:var(--r-pill);background-color:var(--c-brand2);color:#fff;font-size:0.875rem;font-weight:600;transition:top var(--dur) var(--ease)}.skip-link:focus{top:1rem}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}nav[aria-label="Breadcrumb"] a{display:inline-block;padding:0.25rem 0.125rem}.cat-item{padding-top:0.3rem;padding-bottom:0.3rem}h1,h2,h3,h4,p,li,a{overflow-wrap:break-word}button:active{transform:translateY(1px)}.page-eyebrow-light::before,.home-hero .page-eyebrow::before,.home-hero .hero-eyebrow::before{background:linear-gradient(90deg, var(--c-cyan), rgba(255, 255, 255, .55))}.home-hero .hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem}.home-hero .hero-eyebrow::before{content:"";width:1.6rem;height:2px;border-radius:2px}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a,button,[role="button"],summary{transition:color var(--dur) var(--ease), background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease)}::selection{background:rgba(var(--c-cyan-rgb), .28);color:var(--c-navy)}[tabindex="0"][role="region"]{overscroll-behavior-x:contain}.np-card:focus-visible,.news-card2:focus-visible,.p-card:focus-visible,.tree-l2:focus-visible,.gallery-thumb:focus-visible,.cat-head:focus-visible,.cat-item:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.cat-head:active,.cat-item:active{transform:translateY(1px)}.bg-navy a:focus-visible,.bg-navy button:focus-visible,.bg-navy [tabindex]:focus-visible,.home-hero a:focus-visible,.home-hero button:focus-visible,.home-hero [tabindex]:focus-visible{outline-color:var(--focus-light)}@media (max-width:640px){.page-hero-inner,.hero-inner{padding-top:2rem;padding-bottom:2.5rem}h1,.page-h1{text-wrap:balance}}[class*="text-[#00A9A6]"]{color:var(--c-teal)}[class*="tracking-[0.22em]"]{letter-spacing:.24em}@media (prefers-reduced-motion:reduce){.cat-head:active,.cat-item:active{transform:none}[tabindex="0"][role="region"]{scroll-behavior:auto}}.tp-grid{display:grid;grid-template-columns:1fr;gap:1.75rem}@media (min-width:768px){.tp-grid{grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.75rem}}@media (min-width:1024px){.tp-grid{grid-template-columns:repeat(3, minmax(0, 1fr));gap:2.25rem}}.news-grid{display:grid;grid-template-columns:1fr;gap:1.75rem}@media (min-width:768px){.news-grid{grid-template-columns:repeat(3, minmax(0, 1fr));gap:2rem}}.section-head{margin-bottom:4rem}.section-head .page-h1{margin-top:0.85rem}.section-head .page-eyebrow{display:inline-flex}.section-pad{padding-top:4.5rem;padding-bottom:4.5rem}@media (min-width:1024px){.section-pad{padding-top:6rem;padding-bottom:6rem}}.np-track-slider{display:flex;flex-wrap:nowrap;width:max-content;padding-block:0.25rem;will-change:transform;animation:npMarquee 40s linear infinite}@keyframes npMarquee{from{transform:translate3d(0, 0, 0)}to{transform:translate3d(-50%, 0, 0)}}.np-viewport:hover .np-track-slider,.np-viewport:focus-within .np-track-slider{animation-play-state:paused}.np-track-slider .np-card[aria-hidden="true"]{pointer-events:none}.np-track-slider .np-card{flex:0 0 auto;width:78vw;max-width:320px;margin-right:1rem}@media (min-width:768px){.np-track-slider .np-card{width:240px;max-width:240px;margin-right:1.15rem}}@media (min-width:1024px){.np-track-slider .np-card{width:clamp(280px, calc(min(100vw, var(--w-page)) / 4 - 1.25rem), 380px);max-width:380px;margin-right:1.25rem}}.np-viewport-fade{position:relative}.np-viewport-fade::before,.np-viewport-fade::after{content:"";position:absolute;top:0;bottom:1rem;width:3rem;z-index:3;pointer-events:none}.np-viewport-fade::before{left:0;background:linear-gradient(90deg, var(--c-mist), rgba(244, 247, 250, 0))}.np-viewport-fade::after{right:0;background:linear-gradient(-90deg, var(--c-mist), rgba(244, 247, 250, 0))}.video-player{order:-1;min-width:0}.video-aside{min-width:0;background:var(--c-line-soft);border-radius:var(--r-lg);padding:1rem}@media (min-width:1024px){.video-layout{grid-template-columns:350px minmax(0, 1fr)}.video-player{order:0}.video-aside{position:sticky;top:7rem}.video-tree .cat-sub{display:none!important}.video-tree .cat-sub.cat-sub-open{display:block!important}.video-tree .cat-chevron{display:none}}.video-tree{border-radius:var(--r-lg);border:1px solid var(--c-line);background:#fff;padding:1.25rem;box-shadow:0 1px 3px rgba(var(--c-shadow-rgb), .06)}.video-tree-list{margin:0;padding:0;list-style:none}.video-tree-item+.video-tree-item{margin-top:.625rem}.video-tree .cat-head{display:flex;align-items:center;gap:.5rem;width:100%;border-radius:var(--r-md);padding:.875rem 1.25rem;font-size:.875rem;font-weight:600;line-height:1.375;text-align:left;color:var(--c-text);background:#fff;border:1px solid var(--c-line);transition:background-color var(--dur) ease, color var(--dur) ease, border-color var(--dur) ease, box-shadow var(--dur) ease}.video-tree .cat-head:hover{background:var(--c-mist);color:var(--c-brand2);border-color:var(--c-line)}.video-tree .cat-head-active,.video-tree .cat-head-active:hover{background:var(--c-brand2);border-color:var(--c-brand2);color:#fff;box-shadow:0 4px 14px rgba(var(--c-brand2-rgb), .18)}.video-tree .cat-head-label{flex:1;min-width:0}.video-tree .cat-chevron{flex:none;width:1rem;height:1rem;margin-left:-.25rem;transition:transform var(--dur) ease}.video-tree .cat-head[aria-expanded="true"] .cat-chevron{transform:rotate(180deg)}.video-tree .cat-sub{margin:.75rem 0 0;padding:0;list-style:none;display:none}.video-tree .cat-sub.mobile-open{display:block}.video-tree .cat-sub li+li{margin-top:.125rem}.video-tree .cat-item{display:flex;align-items:center;min-height:2.5rem;padding:.5rem .75rem;border-radius:var(--r-sm);font-size:.8125rem;line-height:1.45;color:var(--c-text-mute);overflow-wrap:anywhere;transition:background-color var(--dur) ease, color var(--dur) ease}.video-tree .cat-item:hover{background:var(--c-mist);color:var(--c-brand2)}.video-tree .cat-item-active,.video-tree .cat-item-active:hover{background:var(--c-mist);color:var(--c-brand2);font-weight:600}@media (max-width:1023.98px){.video-tree .cat-head{min-height:3rem}.video-tree .cat-item{min-height:2.75rem}}.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:0.4rem;font-size:0.78rem;color:#5A6B7C}.crumb a{color:#5A6B7C;transition:color 0.2s ease}.crumb a:hover{color:#007F7C}.crumb .sep{color:#CBD5E1}.crumb .current{font-weight:600;color:#0B2447}.msg-card{border:1px solid var(--c-line);border-radius:var(--r-lg);background:#fff;padding:1.6rem;box-shadow:var(--sh-2)}@media (min-width:1024px){.msg-card{padding:2rem}}.msg-grid-2{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:640px){.msg-grid-2{grid-template-columns:1fr 1fr}}.msg-field{display:flex;flex-direction:column;gap:0.4rem}.msg-card>.msg-field+.msg-field,.msg-grid-2+.msg-field{margin-top:1rem}.msg-label{font-size:0.82rem;font-weight:600;color:var(--c-ink)}.msg-req{color:var(--c-danger)}.msg-input{width:100%;height:3rem;padding:0 1rem;border:1px solid var(--c-line-strong);border-radius:var(--r-sm);background:#fff;font-size:0.9rem;color:var(--c-text);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease)}textarea.msg-input{height:auto;min-height:8.5rem;padding:0.8rem 1rem;resize:vertical}.msg-input::placeholder{color:#64748B}.msg-input:focus{outline:none;border-color:var(--c-brand2);box-shadow:0 0 0 3px rgba(var(--c-brand2-rgb), 0.12)}.msg-err{font-size:0.75rem;line-height:1.5;color:var(--c-danger);min-height:1rem}.msg-card>.msg-err{margin-top:0.5rem}.msg-consent{display:flex;align-items:flex-start;gap:0.6rem;margin-top:1rem}.msg-consent input{flex:0 0 auto;margin-top:0.2rem;width:1rem;height:1rem;accent-color:var(--c-brand2)}.msg-consent label{font-size:0.8rem;line-height:1.55;color:#64748B}.msg-submit{margin-top:1.2rem;width:100%;min-height:3.2rem;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--r-pill);background-color:var(--c-brand2);color:#fff;font-size:0.95rem;font-weight:700;cursor:pointer;box-shadow:var(--sh-brand-2);transition:background-color var(--dur) var(--ease)}.msg-submit:hover{background-color:var(--c-navy)}.msg-submit:focus-visible{outline:2px solid var(--c-cyan);outline-offset:3px}.msg-submit[disabled]{opacity:0.75;cursor:default}.msg-ok{display:none;margin-top:1rem;border-radius:var(--r-sm);background:var(--c-tint);padding:0.9rem 1.1rem;font-size:0.88rem;line-height:1.6;color:var(--c-teal-ink)}.msg-ok.show{display:block}@media (max-width:480px){header .flex.h-20>a>img{max-width:min(254px,calc(100vw - 168px));height:auto}}/* 富文本兜底（2026-09-16）：CMS 录入的超宽表格 / nowrap 长句会撑破容器并推出文档横向溢出。容器横滚兜住任意残留溢出（不改表格 display，宽屏外观零变化）；nowrap 覆盖 CMS 编辑器带入的 text-wrap:nowrap / text-wrap-mode:nowrap 行内样式。*/.rich-content{overflow-x:auto;overflow-wrap:break-word}.rich-content [style*="nowrap"]{white-space:normal!important;text-wrap:wrap!important}

/* === News card (shared by index homepage & newslist) === */
.news-card2{display:flex;flex-direction:column;height:100%;border-radius:var(--r-lg);border:1px solid var(--c-line-soft);background-color:#fff;box-shadow:0 12px 32px -20px rgba(var(--c-shadow-rgb),.3);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color var(--dur) ease}
.news-card2:hover{transform:translateY(-6px);box-shadow:0 28px 56px -22px rgba(var(--c-shadow-rgb),.4);border-color:rgba(7,204,236,.45)}
.news-media{position:relative;aspect-ratio:16/10;overflow:hidden}
.news-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.news-card2:hover .news-media img{transform:scale(1.04)}
.news-pills{position:absolute;left:1rem;top:1rem;z-index:1;display:flex;flex-wrap:wrap;gap:.4rem}
.news-date-pill{padding:.42rem .9rem;border-radius:var(--r-pill);background-color:rgba(255,255,255,.95);color:var(--c-brand2);font-size:.72rem;font-weight:700;letter-spacing:.04em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 6px 14px -8px rgba(0,44,93,.25)}
.news-date-pill.news-loc{background-color:rgba(7,204,236,.16);color:var(--c-brand2)}
.news-body .news-loc{align-self:flex-start;margin-top:.1rem}
.news-body{display:flex;flex-direction:column;flex:1;gap:.65rem;padding:1.4rem 1.5rem 1.6rem}
.news-title2{font-size:1rem;font-weight:700;line-height:1.4;color:var(--c-ink)}
.news-title2 a:hover{color:var(--c-teal)}
.news-more{display:inline-flex;align-items:center;gap:.45rem;align-self:flex-end;margin-top:auto;padding:.5rem .95rem .5rem 1.05rem;border-radius:999px;background:linear-gradient(135deg,rgba(7,204,236,.1),rgba(0,44,93,.06));border:1px solid rgba(7,204,236,.18);font-size:.82rem;font-weight:700;color:var(--c-brand2);transition:background-color var(--dur) ease,color var(--dur) ease,border-color var(--dur) ease,transform var(--dur) ease,padding var(--dur) ease}
.news-card2:hover .news-more{background:var(--c-brand2);border-color:var(--c-brand2);color:#fff}
.news-more svg{width:.85rem;height:.85rem;transition:transform var(--dur) ease;border-radius:999px;background:rgba(7,204,236,.18);padding:.18rem;margin-left:-.05rem}
.news-card2:hover .news-more svg{transform:translateX(2px);background:rgba(255,255,255,.18)}
.news-meta{display:flex;align-items:center;justify-content:flex-start;gap:1rem;width:100%}
.news-meta .news-loc{flex:0 0 auto}
/* === Environment "What We Do" list (custom grid; Tailwind lg:grid-cols-2 is absent from the compiled subset) === */
.wwd-list{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media (min-width:768px){.wwd-list{grid-template-columns:1fr 1fr}}
.wwd-media{display:block;max-width:460px}

/* === Responsive content images — fix inline px-height distortion === */
/* Editor-inserted images (e.g. /static/upload/...) carry inline
   style="width:1000px;height:731px". The global `img{height:auto}` reset
   cannot override an inline style, so when max-width:100% shrinks the width
   on narrow viewports the fixed inline height stays put and the image is
   squashed. Re-assert proportional scaling with !important, scoped to
   content containers only — NOT .news-media (object-fit:cover fill) and NOT
   the header/footer logo (fixed height). */
.rich-content img,
p img{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
}
p img{margin-inline:auto}
