@font-face{font-family:"Inter";src:url(/assets/fonts/font-inter-var-latin-subset.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Archivo";src:url(/assets/fonts/font-archivo-var-latin-subset.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/font-sourceserif-var-latin-subset.woff2) format("woff2");font-weight:200 900;font-display:swap}
:root{
  color-scheme:light;
  accent-color:#201F1C;
  scrollbar-color:#5C5850 #EAE6DA;
  caret-color:#201F1C;
  --bone:#F4F2EC; --bone2:#EAE6DA; --white:#FFFFFF;
  --char:#201F1C; --char2:#32302A;
  --char-rgb:32,31,28;
  --gold:#A89D6F; --gold2:#918860;
  --muted:#5C5850; --on-dark:#F4F2EC; --on-dark-muted:#D2CDC0;
  --ok:#557F4D; --bad:#B0574B;
  --line:rgba(32,31,28,.1); --line-strong:rgba(32,31,28,.22); --line-dark:rgba(244,242,236,.16);
  --line-field:rgba(32,31,28,.55);
  --r-s:9px; --r:12px; --r-l:16px;
  --gap:24px; --band:64px; --side:40px; --pad:28px;
  --fs-micro:12.5px; --fs-small:14px; --fs-body:15.5px; --fs-lede:17.5px;
  --fs-sub:20px; --fs-head:22.5px; --fs-title:27px; --fs-display:34px;
  --sh:0 1px 2px rgba(32,31,28,.07),0 4px 14px rgba(32,31,28,.07);
  --sh-up:0 3px 6px rgba(32,31,28,.09),0 14px 32px rgba(32,31,28,.13);
  --in-light:inset 0 0 8px rgba(32,31,28,.05);
  --rim:inset 0 0 8px rgba(0,0,0,.35);
  --rim-up:var(--rim),inset 0 0 0 200px rgba(244,242,236,.07);
  --sh-in:inset 0 0 6px rgba(32,31,28,.1);
  --band-in:inset 0 32px 32px -32px rgba(32,31,28,.06);
  --ease:cubic-bezier(.16,1,.3,1);
  --t:.15s; --t-img:.4s;
  --lift:-4px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:128px}
body{margin:0;background:var(--bone);color:var(--char);font:450 var(--fs-body)/1.6 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--char);color:var(--white)}
:is(.nav,.foot,.hero,.page-head,.cta-box,.bd.dark,.cs,.route,.form-status.err,.tile)::selection,:is(.nav,.foot,.hero,.page-head,.cta-box,.bd.dark,.cs,.route,.form-status.err,.tile) ::selection{background:var(--white);color:var(--char)}
img,video,svg{display:block;max-width:100%}
h1,h2,h3,p,ul,ol,dl,dd,figure,address{margin:0;padding:0}
ul,ol{list-style:none}
address{font-style:normal}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--char);outline-offset:3px;border-radius:var(--r-s)}
.nav :focus-visible,.foot :focus-visible,.hero :focus-visible,.page-head :focus-visible,.cta-box :focus-visible,.bd.dark :focus-visible{outline-color:var(--white)}
main:focus{outline:none}
h1,h2,h3{font-family:Archivo,Inter,system-ui,sans-serif;font-weight:700;text-wrap:balance}
h1{font-size:var(--fs-display);line-height:1.08;letter-spacing:-.01em}
h2{font-size:var(--fs-sub);line-height:1.15;letter-spacing:-.005em}
h3{font-size:var(--fs-lede);line-height:1.25}
p{text-wrap:pretty;max-width:68ch}
.lede{font-size:var(--fs-lede);line-height:1.5;color:var(--muted)}
.small{font-size:var(--fs-small)}
.nb{white-space:nowrap}
.wrap{width:min(100% - 2*var(--side),1200px);margin-inline:auto}
.skip{position:absolute;left:12px;top:12px;z-index:60;padding:10px 16px;border-radius:var(--r);background:var(--white);color:var(--char);font-weight:600;box-shadow:var(--sh);transform:translateY(-80px)}
.skip:focus{transform:none}
.btn,.route,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:42px;padding:0 24px;border-radius:var(--r);font:600 var(--fs-body)/1 Inter,system-ui,sans-serif;white-space:nowrap;transition:background-color var(--t) ease-in-out,transform var(--t) var(--ease),box-shadow var(--t) ease-in-out}
.btn{background:var(--gold);color:var(--white);box-shadow:var(--sh),var(--sh-in)}
.btn:hover,.btn:focus-visible{background-color:var(--gold2);transform:translateY(var(--lift));box-shadow:var(--sh-up),var(--sh-in)}
.route{background:var(--char);color:var(--on-dark);box-shadow:var(--sh),var(--rim)}
.route:hover,.route:focus-visible{transform:translateY(var(--lift));box-shadow:var(--sh-up),var(--rim-up)}
.bd.dark .route{background:var(--bone);color:var(--char);box-shadow:var(--sh),var(--sh-in)}
.bd.dark .route:hover,.bd.dark .route:focus-visible{background:var(--bone2);box-shadow:var(--sh-up),var(--sh-in)}
.btn-ghost{color:var(--white);background:rgba(var(--char-rgb),.5);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--sh)}
.btn-ghost:hover,.btn-ghost:focus-visible{transform:translateY(var(--lift));box-shadow:var(--sh-up),var(--rim-up)}
.arr,.mtoggle svg,.ic,.green svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.arr{flex:none;width:16px;height:16px;stroke-width:2}
.ic{width:24px;height:24px;stroke-width:1.8}
.mark,.go{display:grid;place-items:center;flex:none;border-radius:var(--r-s);background:var(--char);color:var(--on-dark);box-shadow:var(--rim);transition:box-shadow var(--t) ease-in-out}
.mark{width:44px;height:44px}
.go{width:32px;height:32px}
.nav{position:sticky;top:0;z-index:20;background:var(--char);color:var(--on-dark)}
.nav .wrap{display:flex;align-items:center;gap:32px;height:112px;reading-flow:flex-visual}
.nav .logo{flex:0 1 auto;min-width:0}
.nav .logo img{height:88px;width:auto;object-fit:contain;object-position:left center}
.nav ul{display:flex;gap:30px;margin-left:auto}
.nav ul a{display:block;padding:10px 0;font-weight:500;background:linear-gradient(var(--gold),var(--gold)) 100% 100%/0 2px no-repeat;transition:background-size .3s var(--ease),color .3s}
.nav ul a:hover,.nav ul a[aria-current]{color:var(--white);background-position:0 100%;background-size:100% 2px}
.mnav-t,.mtoggle{display:none}
@media (min-width:901px) and (max-width:1000px){.nav .wrap{gap:24px}.nav ul{gap:20px}}
@media (max-width:900px){
  .nav ul{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;margin:0;padding:8px var(--side) 20px;background:var(--char);box-shadow:var(--sh-up);max-height:calc(100dvh - 100%);overflow-y:auto;overscroll-behavior:contain}
  .nav ul a{padding:14px 0;font-size:var(--fs-lede)}
  .nav .wrap>.btn{margin-left:auto;padding:0 16px}
  .mnav-t{display:block;position:absolute;opacity:0;width:44px;height:44px;right:var(--side);margin:0}
  .mtoggle{display:grid;place-items:center;order:3;flex:none;width:44px;height:44px;border-radius:var(--r);color:var(--white);cursor:pointer}
  .mtoggle svg{width:26px;height:26px;stroke-width:2}
  .mtoggle .x,.mnav-t:checked~.mtoggle .b{display:none}
  .mnav-t:checked~.mtoggle .x{display:block}
  .mnav-t:checked~ul{display:flex}
  .mnav-t:focus-visible~.mtoggle{outline:2px solid var(--white);outline-offset:2px}
}
@media (max-width:760px){
  :root{--side:24px}
  .nav .wrap{height:84px;gap:16px}
  .nav .logo img{height:64px}
  html{scroll-padding-top:100px}
}
@media (max-width:440px){
  .nav .logo img{height:56px}
  .nav .wrap{gap:12px}
  .nav .wrap>.btn{height:36px;padding:0 12px;font-size:var(--fs-micro)}
}
@media (max-width:360px){
  :root{--side:16px}
  .nav .logo img{height:40px}
  .nav .wrap{gap:8px}
}
.hero{position:relative;display:grid;place-items:center;min-height:520px;padding-block:80px;background:var(--char);color:var(--white);overflow:hidden;isolation:isolate}
.hero-media{position:absolute;inset:0;z-index:-2}
.hero-media img,.hero-media video{width:100%;height:100%;object-fit:cover}
.hero-media video{position:absolute;inset:0;opacity:0;transition:opacity .8s var(--ease)}
.hero-media video.playing{opacity:1}
.hero-toggle{position:absolute;right:24px;bottom:24px;display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:var(--r);background:rgba(var(--char-rgb),.55);color:var(--white);box-shadow:var(--sh),var(--rim);cursor:pointer}
.hero-toggle[hidden]{display:none}
.hero-toggle:hover{box-shadow:var(--sh),var(--rim),var(--rim-up)}
.hero-toggle svg{width:18px;height:18px;fill:currentColor}
.hero-toggle .i-play,.hero-toggle.paused .i-pause{display:none}
.hero-toggle.paused .i-play{display:block}
.hero .scrim{position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 56% at 50% 52%,rgba(var(--char-rgb),.78),rgba(var(--char-rgb),.6) 55%,rgba(var(--char-rgb),.34))}
.hero-in{text-align:center}
.hero h1,.page-head h1{text-shadow:0 1px 10px rgba(var(--char-rgb),.3)}
.hero .lede,.page-head .lede{font-size:var(--fs-sub);color:var(--bone);text-shadow:0 1px 8px rgba(var(--char-rgb),.35)}
.hero .lede{max-width:60ch;margin:14px auto 0;text-wrap:balance}
.hero .cta{display:flex;justify-content:center;gap:16px;margin-top:36px;flex-wrap:wrap}
.hero .cta>*{min-width:210px}
@media (max-width:1100px){.hero .scrim{background:radial-gradient(84% 62% at 50% 52%,rgba(var(--char-rgb),.82),rgba(var(--char-rgb),.66) 60%,rgba(var(--char-rgb),.42))}}
@media (max-width:760px){.hero{min-height:480px;padding-block:64px}}
.page-head{position:relative;isolation:isolate;display:grid;align-items:end;min-height:380px;background:var(--char);color:var(--white)}
.page-head .ph-media{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.page-head::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(var(--char-rgb),.62),rgba(var(--char-rgb),.38) 50%,rgba(var(--char-rgb),.1) 85%),linear-gradient(0deg,rgba(var(--char-rgb),.72),rgba(var(--char-rgb),.42) 45%,rgba(var(--char-rgb),.08) 90%)}
.page-head .lede{max-width:92ch;margin-top:16px}
.page-head .ph-media.ph-quality{object-position:40% 0%}
.page-head .ph-media.ph-about{object-position:50% 10%}
.page-head .ph-media.ph-cap{object-position:50% 32%}
.page-head:not(:has(.ph-media)){min-height:0;padding-top:var(--band)}
@media (max-width:760px){.page-head .ph-media.ph-quality{object-position:20% 0%}}
.sec{padding-block:var(--band)}
.sec.dark{background:var(--bone2)}
main section:not(.hero){box-shadow:var(--band-in)}
.sec-head{text-align:center;margin-bottom:36px}
.sec-head .lede{margin:12px auto 0;text-wrap:balance}
.board{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap)}
.bd{grid-column:1/-1;min-width:0;padding:var(--pad);border-radius:var(--r-l);background:var(--white);box-shadow:var(--sh),var(--in-light)}
.s5{grid-column:span 5}
.s7{grid-column:span 7}
.s8{grid-column:span 8}
@media (max-width:1100px){.s8,.s8+.s4{grid-column:span 6}}
.s9{grid-column:span 9}
.s3{grid-column:span 3}
@media (max-width:1100px){.s9{grid-column:span 8}.s3:has(+.s9){grid-column:span 4}}
.bd>h2{margin-bottom:12px}
.bd>.lede+*{margin-top:24px}
.bd>h2+:not(.lede){margin-top:20px}
.bd>.route{margin-top:28px}
.bd.dark{background:var(--char);color:var(--on-dark);box-shadow:var(--sh),var(--rim)}
.bd.dark h2{color:var(--white)}
.bd.dark .lede,.bd.dark p,.cta-box p{color:var(--on-dark-muted)}
.bd.col{display:flex;flex-direction:column;align-items:flex-start}
.bd.col>.route,.bd.col>.btn{margin-top:auto}
.bd.col>:nth-last-child(2){margin-bottom:28px}
.bd.col>.rows{align-self:stretch}
.bd.dark.col>.rows{flex:1;display:grid;grid-auto-rows:1fr}
.bd.dark.col .rows>div{align-content:center}
.bd.dark.col .rows>div:last-child{border-bottom:1px solid var(--line-dark)}
.bd.col>.stats{flex:1;align-self:stretch;grid-auto-rows:1fr}
.bd.col>.stats>div{align-content:center}
.bd.mid{display:grid;align-content:center}
#sourcing{align-content:start}
.bd.list{align-self:start;padding:10px}
.bd.photo{position:relative;min-height:300px;padding:0;overflow:hidden;background:var(--char)}
.bd.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bd.story{display:flex;flex-direction:column;padding:0;overflow:hidden}
.bd.story>figure img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.bd.story>figure>picture{display:contents}
.bd.story>div{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:14px;padding:24px var(--pad) var(--pad)}
.bd.story>div>.route{margin-top:auto}
.bd.story:not(.mkt)>figure{flex:1 1 auto;min-height:0}
.bd.story:not(.mkt)>figure img{height:100%}
.bd.story:not(.mkt)>div{flex:none}
.bd.join{position:relative;z-index:1}
@media (min-width:901px){
  .board:has(>.bd.photo+.bd.join){grid-auto-flow:row dense}
  .bd.join{border-top-right-radius:0;border-bottom-right-radius:0}
  .bd.photo:has(+.bd.join){grid-column-end:-1;margin-left:calc(-1*var(--gap));border-top-left-radius:0;border-bottom-left-radius:0}
  .bd.photo:has(+#domestic){aspect-ratio:1}
}
@media (max-width:900px){
  .bd.photo:has(+.bd.join){border-bottom-left-radius:0;border-bottom-right-radius:0}
  .bd.photo+.bd.join{margin-top:calc(-1*var(--gap));border-top-left-radius:0;border-top-right-radius:0}
}
@media (max-width:700px){.bd.photo+.bd.join{margin-top:-16px}}
.bd.photo img[src*="about-facility"]{object-position:50% 0}
.bd.photo img[src*="about-domestic"]{object-position:50% 55%}
.bd.photo img[src*="capabilities-line"]{object-position:22% 50%}
@media (max-width:1100px){
  .s5.full-md,.s7.full-md{grid-column:1/-1}
  .bd.story.full-md{flex-direction:row}
  .bd.story.full-md>figure,.bd.story.full-md>div{flex:1 1 0}
  .bd.story.full-md>figure img{height:100%;aspect-ratio:auto}
}
@media (max-width:900px){
  .s5,.s7,.s8,.s8+.s4,.s9,.s3:has(+.s9){grid-column:1/-1}
  .bd.photo{min-height:0;aspect-ratio:2/1}
  .bd.photo:has(+#domestic){aspect-ratio:4/3}
  .bd.story{flex-direction:row}
  .bd.story>div{flex:1 1 0}
  .bd.story>figure img{height:100%;aspect-ratio:auto}
}
@media (max-width:700px){
  :root{--pad:22px}
  .board{gap:16px}
  .bd.list{padding:8px}
  .bd.story,.bd.story.full-md{flex-direction:column}
  .bd.story>figure img,.bd.story.full-md>figure img{height:auto;aspect-ratio:16/10}
  .bd.story.full-md>figure{flex:none}
  .bd.photo{aspect-ratio:3/2}
}
.srows a{display:grid;grid-template-columns:44px minmax(0,1fr) 32px;align-items:center;gap:6px 16px;padding:14px 18px;border-radius:var(--r);transition:background-color var(--t) ease-in-out}
.srows li:nth-child(odd) a{background:var(--bone)}
.srows a:hover,.srows a:focus-visible,.srows li:nth-child(odd) a:hover,.srows li:nth-child(odd) a:focus-visible{background:var(--bone2)}
.srows .mark{grid-row:span 2}
.srows .go{grid-area:1/3/3/4}
.srows a:hover .mark,.srows a:hover .go,.srows a:focus-visible .mark,.srows a:focus-visible .go{box-shadow:var(--rim-up)}
.srows p{grid-column:2/3;line-height:1.5;color:var(--muted)}
@media (max-width:520px){.srows a{gap:4px 12px;padding:12px}.srows .go{grid-area:1/3}.srows p{grid-column:2/-1}}
.rows>div{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;padding:14px 20px;border-radius:var(--r-s)}
.rows>div:nth-child(odd){background:var(--bone)}
.rows dt{font-weight:600}
.rows dd{text-align:right;text-wrap:balance}
.bd>.rows{margin-inline:-12px}
.rows.spec>div{grid-template-columns:148px 1fr;align-items:start;padding-block:9px}
.rows.spec dd{text-align:left;text-wrap:pretty;color:var(--char2)}
.bd.dark .rows>div{grid-template-columns:1fr;gap:4px;padding:14px 0;border-radius:0;border-top:1px solid var(--line-dark);background:none}
.bd.dark .rows dt{color:var(--white)}
.bd.dark .rows dd{text-align:left;color:var(--on-dark-muted)}
.bd.dark>.rows{margin-inline:0}
@media (max-width:520px){.rows>div,.rows.spec>div{grid-template-columns:1fr;gap:4px}.rows dd{text-align:left}}
.stats{display:grid}
.stats>div{display:grid;row-gap:4px;padding:14px 0;border-top:1px solid var(--line-dark)}
.stats dd{grid-row:1;font:700 var(--fs-head)/1.1 Archivo,Inter,system-ui,sans-serif;font-variant-numeric:tabular-nums;color:var(--white)}
.stats dt{grid-row:2;font-size:var(--fs-small);color:var(--on-dark-muted)}
@media (max-width:1100px){.stats dd{font-size:var(--fs-sub)}}
.methods{display:grid;gap:19px;margin-top:24px}
@media (min-width:461px){.methods.two{grid-template-columns:1fr 1fr}.methods.two>div:last-child:nth-child(odd){grid-column:1/-1}}
.methods>div{display:grid;align-content:start;row-gap:6px;padding-top:16px;border-top:1px solid var(--line-strong)}
.methods dt{font:700 var(--fs-body)/1.25 Archivo,Inter,system-ui,sans-serif}
.methods dd{color:var(--char2)}
.parts{display:grid;grid-template-columns:repeat(3,1fr);margin-inline:calc(-1*var(--pad))}
.parts>*{position:relative;display:grid;align-content:start;row-gap:12px;padding:4px var(--pad)}
.parts>*+*::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:1px;background:var(--line)}
.parts h3{color:var(--char)}
.parts p,.parts li{font-size:var(--fs-lede);line-height:1.5;color:var(--muted)}
.parts ul{padding-left:20px;list-style:disc}
.parts ul>li+li{margin-top:10px}
.parts.named h3{font-size:var(--fs-sub)}
.parts .role{margin-bottom:10px;font-size:var(--fs-body);color:var(--char);font-weight:600}
.bd>h2+.parts,.bd>.lede+.parts{margin-top:24px}
@media (max-width:900px){
  .parts{grid-template-columns:1fr}
  .parts>*{padding-block:18px}
  .parts>*:first-child{padding-top:4px}
  .parts>*:last-child{padding-bottom:0}
  .parts>*+*::before{left:var(--pad);right:var(--pad);top:0;bottom:auto;width:auto;height:1px}
}
@media (min-width:601px) and (max-width:900px){.parts.named>*{grid-template-columns:200px minmax(0,1fr);column-gap:32px}}
.kit{display:grid;align-items:start;margin-top:12px}
.kit dl>div{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:var(--gap);padding:12px 0;border-top:1px solid var(--line-dark)}
.kit dt{flex:1 0 auto;font-weight:600;color:var(--white)}
.kit dd{color:var(--on-dark-muted)}
@media (max-width:520px){.kit dl>div{display:block}}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tile{position:relative;display:block;aspect-ratio:1;border-radius:var(--r);overflow:hidden;background:var(--char);box-shadow:var(--sh);transition:transform var(--t) var(--ease),box-shadow var(--t) ease-in-out}
.tile img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-img) var(--ease)}
.tile .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--char-rgb),0) 40%,rgba(var(--char-rgb),.74))}
.tile .lbl{position:absolute;left:14px;right:14px;bottom:12px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px;color:var(--white);font:600 var(--fs-body)/1.25 Inter,system-ui,sans-serif;text-shadow:0 1px 6px rgba(var(--char-rgb),.5)}
.tile .arr{width:18px;height:18px}
.tile:hover,.tile:focus-visible{transform:translateY(var(--lift));box-shadow:var(--sh-up)}
@media (min-width:701px) and (max-width:900px){.tiles{gap:20px}.tile{aspect-ratio:4/3}}
@media (max-width:700px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tiles>li:last-child:nth-child(odd){grid-column:1/-1}.tiles>li:last-child:nth-child(odd) .tile{aspect-ratio:2/1}}
@media (max-width:520px){.tile .lbl{left:10px;right:10px;bottom:10px}.tile .scrim{background:linear-gradient(180deg,rgba(var(--char-rgb),.1) 15%,rgba(var(--char-rgb),.8))}}
.green{display:flex;gap:12px;align-items:flex-start;color:var(--muted)}
.green svg{flex:none;width:22px;height:22px;margin-top:3px;stroke-width:1.8}
.s4{grid-column:span 4}
.mkt h2{font-size:var(--fs-lede);line-height:1.25}
.mkt .desc{color:var(--char2)}
.cs{display:grid;align-self:stretch;margin-top:auto;padding:16px 18px;border-radius:var(--r);background:var(--char);box-shadow:var(--sh),var(--rim)}
.cs-lbl{margin-bottom:6px;font-size:var(--fs-micro);font-weight:600;color:var(--on-dark-muted)}
.cs-lbl+p{font-size:var(--fs-small);color:var(--on-dark)}
@media (max-width:1100px){
  .s4{grid-column:span 6}
  .bd.story.mkt{flex-direction:column}
  .bd.story.mkt>figure img{height:auto;aspect-ratio:16/10}
}
@media (min-width:701px) and (max-width:1100px){
  .mkt:last-child:nth-child(odd){grid-column:1/-1;flex-direction:row}
  .bd.story.mkt:last-child:nth-child(odd)>figure img{height:100%;aspect-ratio:auto}
  .mkt:last-child:nth-child(odd)>*{flex:1 1 0}
  .mkt:last-child:nth-child(odd)>div{justify-content:center}
  .mkt:last-child:nth-child(odd) .cs{margin-top:0}
}
@media (max-width:700px){.s4{grid-column:1/-1}}
@media (max-width:520px){.mkt h2{font-size:var(--fs-body)}}
.ntitle,.ncard h2{font-family:"Source Serif 4",Georgia,serif;font-weight:600;letter-spacing:0;text-wrap:pretty}
.nlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.nlist>li{display:flex}
.ncard{display:flex;flex:1;flex-direction:column;gap:8px;padding:22px 24px 24px;overflow:hidden;border-radius:var(--r-l);background:var(--white);box-shadow:var(--sh),var(--in-light);transition:transform var(--t) var(--ease),box-shadow var(--t) ease-in-out}
.ncard:hover,.ncard:focus-visible{transform:translateY(var(--lift));background:var(--bone);box-shadow:var(--sh-up),var(--in-light)}
.ncard h2{font-size:var(--fs-lede);line-height:1.3;text-decoration:underline 1px transparent;text-underline-offset:4px;transition:text-decoration-color var(--t) ease-in-out}
.ncard:hover h2,.ncard:focus-visible h2{text-decoration-color:currentColor}
.ncard time{order:-1;font-size:var(--fs-small);color:var(--muted)}
.ncard p{font-size:var(--fs-small);line-height:1.55;color:var(--char2)}
.nph{order:-2;flex:none;display:block;margin:-22px -24px 6px;aspect-ratio:16/9;overflow:hidden;background:var(--bone2)}
.nph img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-img) var(--ease)}
.ncard img[src*="tx-watt"],.ncard img[src*="itar"]{object-position:50% 0}
.nmore{margin-top:32px}
.nmore>summary{display:flex;width:max-content;margin-inline:auto;cursor:pointer;list-style:none}
.nmore>summary::-webkit-details-marker{display:none}
.nmore[open]>summary{margin-bottom:32px}
.nmore .nhide,.nmore[open] .nshow{display:none}
.nmore[open] .nhide{display:inline}
.nmore[open] .arr{transform:rotate(180deg)}
.dateline{margin-bottom:14px;font-size:var(--fs-small);color:var(--muted)}
.nhead .lede{max-width:60ch;margin-top:16px;font-size:var(--fs-sub)}
.article{max-width:720px}
.article>*+*{margin-top:16px}
.article p{line-height:1.7}
.article .first{font-size:var(--fs-lede);line-height:1.6}
.article h2{margin-top:36px}
.article h2+p{margin-top:10px}
.article ul{padding-left:22px;list-style:disc}
.article li+li{margin-top:6px}
.article figure img{width:auto;max-width:100%;height:auto;border-radius:var(--r-l);box-shadow:var(--sh)}
.article figcaption{margin-top:10px;font-size:var(--fs-small);color:var(--muted)}
.article a,.dateline a{text-decoration:underline 1px var(--muted);text-underline-offset:3px;transition:text-decoration-color var(--t) ease-in-out}
.article a:hover,.dateline a:hover{text-decoration-thickness:2px;text-decoration-color:currentColor}
@media (max-width:1100px){.nhead h1{font-size:var(--fs-title)}}
@media (max-width:1000px){.nlist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.nlist{grid-template-columns:1fr;gap:16px}}
@media (max-width:520px){.ncard h2{font-size:var(--fs-body)}.nhead .lede{font-size:var(--fs-lede)}}
.rows dd a{overflow-wrap:anywhere;text-decoration:underline 1px var(--muted);text-underline-offset:3px;transition:text-decoration-color var(--t) ease-in-out}
.rows dd a:hover{text-decoration-thickness:2px;text-decoration-color:currentColor}
.hint{font-size:var(--fs-small);color:var(--muted)}
#reach dd a{display:inline-block;padding-block:13px;margin-block:-13px}
.map{margin-top:20px;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;box-shadow:var(--in-light)}
.map iframe{display:block;width:100%;height:100%;border:0}
@media (min-width:1101px){
  #reach{display:flex;flex-direction:column}
  #reach .map{flex:1 0 auto}
}
@media (max-width:1100px){#rfq-plate{order:-1}}
.form-status{margin-top:20px;padding:14px 18px;border-radius:var(--r);background:var(--bone);font-weight:500;box-shadow:var(--in-light)}
.form-status:empty{display:none}
.form-status.err{background:var(--char);color:var(--on-dark);box-shadow:var(--sh),var(--rim)}
.form{margin-top:24px}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.fld{display:grid;align-content:start;gap:6px;min-width:0}
.fld.wide{grid-column:1/-1}
.fld.tel{grid-template-columns:minmax(0,1fr) 112px;gap:6px 10px}
.fld.tel>div{display:grid;align-content:end;gap:6px;min-width:0}
.fld label{font-size:var(--fs-small);font-weight:600}
.opt{font-weight:400;color:var(--muted)}
.fld input,.fld select,.fld textarea{width:100%;min-height:42px;padding:0 14px;border:1px solid var(--line-field);border-radius:var(--r);background-color:var(--white);color:var(--char);font:inherit;box-shadow:var(--in-light);transition:background-color var(--t) ease-in-out}
.fld textarea{display:block;min-height:132px;padding:10px 14px;line-height:1.5;resize:vertical}
.fld select{appearance:none;padding-right:42px;background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23201F1C' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/16px}
.fld input:hover,.fld select:hover,.fld textarea:hover{background-color:var(--bone)}
.fld ::placeholder{color:var(--muted);opacity:1}
.fld :user-invalid{border-color:var(--char)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
button.btn{border:0;cursor:pointer}
button.btn:disabled{cursor:default;transform:none;box-shadow:var(--sh),var(--sh-in)}
button.send.is-sending{background:var(--char2);cursor:progress}
.send.is-sent{background:var(--ok)}
.send.is-err{background:var(--bad)}
.send:is(.is-sending,.is-sent,.is-err) .arr{display:none}
.form-status:focus{outline:none}
.form .send{margin-top:28px}
.ts-on .cf-turnstile{margin-top:28px}
@media (max-width:560px){.fgrid{grid-template-columns:1fr}}
.close{padding-block:var(--band);background:var(--bone2)}
.sec.dark+.close{padding-top:0;box-shadow:none}
.cta-box{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:44px 48px;border-radius:var(--r-l);background:var(--char);color:var(--white);box-shadow:var(--sh),var(--rim)}
@media (min-width:521px){.cta-box .btn,.hero .cta>*{height:52px;padding:0 34px;font-size:var(--fs-lede)}}
@media (max-width:700px){.cta-box{flex-direction:column;align-items:stretch;padding:36px 28px}.cta-box .btn{align-self:flex-end}}
.cta-box:has(.dls) p{max-width:60ch;text-wrap:pretty}
.cta-box h2+p{margin-top:12px}
.dls{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:12px;flex:none}
.dl{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:52px;padding:0 24px;border-radius:var(--r);background:var(--bone);color:var(--char);font:600 var(--fs-body)/1.2 Inter,system-ui,sans-serif;white-space:nowrap;box-shadow:var(--sh),var(--sh-in);transition:background-color var(--t) ease-in-out,transform var(--t) var(--ease),box-shadow var(--t) ease-in-out}
.dl:hover,.dl:focus-visible{background:var(--bone2);transform:translateY(var(--lift));box-shadow:var(--sh-up),var(--sh-in)}
.dl small{display:inline-flex;align-items:center;gap:4px;padding:4px 7px 4px 5px;border-radius:var(--r-s);background:var(--bone2);color:var(--muted);font:600 var(--fs-micro)/1 Inter,system-ui,sans-serif;letter-spacing:.04em;transition:background-color var(--t) ease-in-out}
.dl:hover small,.dl:focus-visible small{background:var(--bone)}
.dl svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--t) var(--ease)}
.dl:hover svg,.dl:focus-visible svg{transform:translateY(calc(var(--lift) / -2))}
@media (max-width:1200px){.dl{height:42px;padding:0 18px;gap:10px;font-size:var(--fs-small)}}
@media (max-width:1100px){.cta-box:has(.dls){flex-direction:column;align-items:stretch}.dls{align-self:flex-end}}
@media (max-width:660px){.dls{grid-auto-flow:row;align-self:center}}
@media (max-width:400px){.dl{padding:0 14px}}
.foot{background:var(--char);color:var(--on-dark);padding:56px 0 28px}
.foot .cols{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
.foot .logo img{height:60px;width:auto;margin-bottom:16px}
.foot h2{font:600 var(--fs-body)/1.3 Inter,system-ui,sans-serif;color:var(--white);margin-bottom:14px}
.foot li+li{margin-top:8px}
.foot a{background:linear-gradient(currentColor,currentColor) 100% 100%/0 1px no-repeat;transition:background-size .25s var(--ease),color .2s}
.foot a:hover{color:var(--white);background-position:0 100%;background-size:100% 1px}
.foot address a{color:var(--white)}
.foot .in{display:inline-block;margin-top:4px;background:none}
.foot .bar{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:44px;font-size:var(--fs-small);color:var(--on-dark-muted)}
@media (min-width:761px) and (max-width:869px){.foot .cols{display:grid;grid-template-columns:repeat(2,max-content);justify-content:space-between;gap:32px 40px}}
@media (max-width:760px){.foot .cols{flex-direction:column;gap:28px}.foot li+li{margin-top:0}.foot li a,.foot address a,.foot .bar a{display:inline-block;padding-block:10px;background-origin:content-box}}
@media (max-width:1100px){.page-head h1{font-size:var(--fs-title)}}
@media (max-width:900px){
  :root{--band:56px}
  .hero h1{font-size:var(--fs-title)}
}
@media (max-width:520px){
  :root{--band:48px}
  h2{font-size:var(--fs-lede)}
  .lede,h3,.parts p,.parts li{font-size:var(--fs-body)}
  .hero .lede{font-size:var(--fs-lede)}
  .page-head .lede{font-size:var(--fs-body)}
  .page-head{padding-top:150px}
  .page-head::before{background:linear-gradient(0deg,rgba(var(--char-rgb),.88),rgba(var(--char-rgb),.82) 62%,rgba(var(--char-rgb),.12) 98%)}
  .page-head .ph-media{object-position:30% 20%}
  .page-head .ph-media.ph-about{object-position:57% 50%}
}
.rise{opacity:0;clip-path:inset(0 0 18px 0 round var(--r));transition:opacity .5s var(--ease),clip-path .5s var(--ease);transition-delay:calc(var(--i,0)*60ms)}
.rise.in{opacity:1;clip-path:inset(-48px round var(--r))}
.rise:nth-child(2){--i:1}.rise:nth-child(3){--i:2}.rise:nth-child(4){--i:3}.rise:nth-child(n+5){--i:4}
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
  .skip{transition:transform .2s var(--ease)}
  @keyframes arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .hero-in>*{animation:arrive .9s cubic-bezier(.25,.25,0,1) both}
  .hero-in>.lede{animation-delay:.1s}
  .hero-in>.cta{animation-delay:.2s}
  .tile:hover img,.ncard:hover .nph img{transform:scale(1.05)}
}
@media (prefers-reduced-motion:reduce){:root{--lift:-2px}}
@media print{.rise{opacity:1;clip-path:none}.hero-media video{display:none}}
