.hero{position:relative;min-height:min(100svh,860px);min-height:min(100vh,860px);display:flex;align-items:center;overflow:hidden;background:#0b1526;color:#fff}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hero-video{opacity:0;transition:opacity 1.2s ease}.hero-video.is-ready{opacity:1}.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(8,18,36,.8) 0%,rgba(8,18,36,.52) 38%,rgba(8,18,36,.1) 70%,transparent 100%),linear-gradient(0deg,rgba(8,18,36,.55) 0%,transparent 35%)}.hero-glow{--gx: 60%;--gy: 40%;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at var(--gx) var(--gy),rgba(255,255,255,.14),transparent 45%)}.hero-content{position:relative;z-index:2;padding-top:calc(var(--header-h) + 40px);padding-bottom:96px}.hero-copy{max-width:640px}.hero-kicker{display:inline-flex;align-items:center;gap:12px;margin-bottom:20px;font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:#ffffffd9}.hero-kicker:before{content:"";width:42px;height:1px;background:var(--accent)}.hero h1{font-family:var(--ff-serif);font-weight:500;font-size:clamp(38px,5.4vw,72px);line-height:1.04;letter-spacing:-.04em;text-shadow:0 2px 30px rgba(0,0,0,.35)}.hero-sub{margin-top:22px;max-width:54ch;font-size:clamp(16px,1.5vw,19px);line-height:1.75;color:#ffffffd9}.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-scroll{position:absolute;z-index:2;left:50%;bottom:26px;width:26px;height:42px;transform:translate(-50%);border:1.5px solid rgba(255,255,255,.55);border-radius:14px}.hero-scroll span{position:absolute;left:50%;top:8px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:#fff;animation:scrollDot 1.8s ease-in-out infinite}@keyframes scrollDot{0%,to{transform:translateY(0);opacity:1}60%{transform:translateY(12px);opacity:.1}}.home-intro{background:linear-gradient(180deg,#f8f9fb,#eef2f5)}.about-panel{padding:40px;border:1px solid #c7cfd9;background:linear-gradient(135deg,#ffffffeb,#eff3f7f2)}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start}.about-grid .display{font-size:clamp(32px,4vw,52px)}.lead-text{margin-top:22px;max-width:62ch;font-size:16.5px;line-height:1.95;color:#475569}.mini-stack{display:grid;gap:16px}.mini-card{padding:22px 24px;border-radius:22px;background:#ffffffd9;border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-sm)}.mini-card h3{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue)}.mini-card p{margin-top:12px;font-size:15.5px;line-height:1.85;color:#334155}.what{background:linear-gradient(180deg,#eef2f5,#f8f9fb);padding-top:40px}.what-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;padding-bottom:32px;border-bottom:1px solid #dfe5ec}.what-head>div{max-width:760px}.what-head>p{max-width:480px;color:var(--muted);font-size:15px}.what-grid{margin-top:36px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.metal-card{overflow:hidden;border-radius:26px;border:1px solid #bfc7d1;background:var(--steel);box-shadow:inset 0 2px 4px #fffffff2,inset 0 -2px 6px #94a3b840,0 14px 40px #0f172a12;transition:transform .3s,box-shadow .3s}.metal-card:hover{transform:translateY(-4px);box-shadow:inset 0 2px 6px #fffffffa,0 24px 50px #0f172a24}.metal-card-img{position:relative;aspect-ratio:5 / 4;overflow:hidden}.metal-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.metal-card:hover .metal-card-img img{transform:scale(1.05)}.metal-card-img:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(15,23,42,.42),transparent 55%)}.metal-card-no{position:absolute;z-index:1;left:18px;top:16px;font-size:12px;font-weight:700;letter-spacing:.18em;color:#fff}.metal-card-body{padding:22px 22px 26px}.metal-card-body h3{font-size:19px;font-weight:600;color:#0b1220}.metal-card-body p{margin-top:10px;font-size:15px;line-height:1.75;color:#475569}.proj-more{margin-top:8px;text-align:center}.how{background:linear-gradient(180deg,#f8f9fb,#f1f5f9)}.hw-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.hw-card{display:flex;flex-direction:column;justify-content:space-between;padding:34px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.hw-model{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600}.hw-card h3{margin-top:10px;font-size:22px;font-weight:600;color:var(--navy)}.hw-flow{display:flex;align-items:center;gap:10px;margin:46px 0 26px}.hw-node{width:92px;flex:none;text-align:center}.hw-icon{width:60px;height:60px;margin:0 auto;display:grid;place-items:center;border-radius:18px;color:var(--navy);background:#fff;border:1px solid rgba(31,58,95,.1);box-shadow:0 8px 20px #0000000f}.hw-icon.is-brand{background:var(--steel);border-color:#c7d0db}.mark{width:auto;object-fit:contain}.hw-node-label{margin-top:10px;font-size:14px;font-weight:600}.hw-link{position:relative;flex:1;min-width:40px;height:60px;display:flex;align-items:center}.hw-line{position:relative;width:100%;height:2px;background:repeating-linear-gradient(90deg,#b9c3d3 0 8px,transparent 8px 14px)}.hw-line:after{content:"";position:absolute;right:-2px;top:50%;transform:translateY(-50%);border-block:6px solid transparent;border-left:9px solid #a9b6c9}.hw-support{position:absolute;left:50%;bottom:100%;transform:translate(-50%);margin-bottom:-6px;display:flex;flex-direction:column;align-items:center}.hw-support-name{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;padding:4px 12px 4px 6px;border-radius:999px;background:var(--steel);border:1px solid #c7d0db;font-weight:700;font-size:15px;color:var(--navy)}.hw-support-name .mark{height:22px}.hw-support-arrow{width:2px;height:20px;margin-top:2px;background:var(--navy);position:relative}.hw-support-arrow:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);border-inline:6px solid transparent;border-top:8px solid var(--navy)}.hw-card .chips{justify-content:center}.hw-desc{color:#374151;line-height:1.75;margin-bottom:24px}.hw-best{padding:14px 16px;border-radius:14px;background:#eef2f7;color:var(--navy);font-size:14.5px}.projects{background:#fff}.proj-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:stretch}.proj-grid>*{min-width:0}.proj-stage{position:relative;min-height:520px;border-radius:28px;overflow:hidden;background:#0f1c30;box-shadow:var(--shadow)}.proj-stage img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.proj-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(8,18,36,.7),transparent 45%)}.proj-caption{position:absolute;z-index:1;left:24px;bottom:24px;right:24px;color:#fff;font-family:var(--ff-serif);font-size:clamp(20px,2.2vw,28px);text-shadow:0 2px 16px rgba(0,0,0,.4)}.proj-progress{position:absolute;z-index:1;left:24px;right:24px;bottom:12px;display:flex;gap:4px}.proj-progress i{flex:1;height:3px;border-radius:2px;background:#ffffff4d}.proj-progress i.on{background:var(--accent)}.proj-list{display:grid;gap:14px;grid-template-rows:repeat(4,1fr)}.proj-card{width:100%;height:100%;display:flex;align-items:center;gap:18px;padding:12px 18px 12px 12px;text-align:left;cursor:pointer;border-radius:22px;border:1px solid #d7e0ea;background:linear-gradient(180deg,#fff,#f7f9fc);transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}.proj-card img{width:92px;height:92px;flex:none;object-fit:cover;border-radius:14px}.proj-card-text strong{display:block;font-size:16.5px;line-height:1.3;color:var(--navy-deep)}.proj-card-text small{display:block;margin-top:6px;color:var(--muted);font-size:13px}.proj-card:hover,.proj-card.is-active{transform:translate(-4px);border-color:#2a4a7033;background:linear-gradient(145deg,#2a4a70,#34577f);box-shadow:0 16px 34px #17395f38}.proj-card:hover strong,.proj-card.is-active strong{color:#fff}.proj-card:hover small,.proj-card.is-active small{color:#ffffffbf}@media (max-width: 1100px){.what-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid{grid-template-columns:1fr}}@media (max-width: 900px){.hw-grid,.proj-grid{grid-template-columns:1fr}.proj-stage{min-height:0;width:100%;aspect-ratio:4 / 3}.proj-list{grid-template-rows:none;grid-template-columns:1fr 1fr}.proj-card{flex-direction:column;align-items:flex-start;padding:10px}.proj-card img{width:100%;height:110px}.proj-card:hover,.proj-card.is-active{transform:none}}@media (max-width: 640px){.hero{min-height:620px;align-items:flex-end}.hero-content{padding-bottom:72px}.hero-scroll{display:none}.about-panel{padding:26px 20px}.what-grid{grid-template-columns:1fr}.hw-card{padding:24px 16px}.hw-flow{gap:6px}.hw-node{width:64px}.hw-link{min-width:18px}.hw-icon{width:52px;height:52px}.proj-list{grid-template-columns:1fr}.proj-card{flex-direction:row;align-items:center}.proj-card img{width:84px;height:84px}}:root{--navy: #14386b;--navy-deep: #0f2f5a;--blue: #2f5fa3;--blue-soft: #86add5;--text: #22324d;--muted: #5f6f87;--line: rgba(20, 56, 107, .14);--bg: #f4f7fb;--white: #fff;--accent: #ffb84d;--steel: linear-gradient(145deg, #fbfcfe, #d6dbe3 55%, #eef2f6);--shadow: 0 28px 70px rgba(16, 43, 77, .1);--shadow-sm: 0 14px 36px rgba(16, 43, 77, .08);--radius: 28px;--max: 1240px;--header-h: 92px;--ff: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--ff-serif: Georgia, "Times New Roman", serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--ff);color:var(--text);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased}img,video{display:block;max-width:100%}a{color:inherit}h1,h2,h3,h4,p,ul,ol,figure,blockquote{margin:0}ul,ol{padding:0;list-style:none}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--blue-soft);outline-offset:3px;border-radius:6px}[id]{scroll-margin-top:calc(var(--header-h) + 8px)}.container{width:min(100% - 48px,var(--max));margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:fixed;left:12px;top:-60px;z-index:100;padding:10px 16px;background:var(--navy);color:#fff;border-radius:10px;text-decoration:none}.skip-link:focus{top:12px}.muted{color:var(--muted)}.display,.display-sm,.page-hero h1{font-family:var(--ff-serif);font-weight:500;color:var(--navy-deep);letter-spacing:-.045em}.display{font-size:clamp(38px,5vw,68px);line-height:1.03}.display-sm{font-size:clamp(28px,3.4vw,44px);line-height:1.1;letter-spacing:-.035em}h2{font-family:var(--ff-serif);font-weight:500;color:var(--navy-deep);letter-spacing:-.03em;line-height:1.15}.eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--navy)}.eyebrow:before{content:"";width:42px;height:1px;background:#14386b6b}.eyebrow-center:after{content:"";width:42px;height:1px;background:#14386b6b}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border-radius:999px;border:1px solid transparent;font-size:14px;font-weight:600;letter-spacing:.02em;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:progress;transform:none}.btn-lg{padding:14px 28px;font-size:15px}.btn-primary{color:#fff;background:linear-gradient(135deg,#1f3f78,#4f7cc0);box-shadow:inset 0 1px #fff3,0 12px 28px #14386b4d}.btn-outline{color:var(--navy);border-color:#14386b47;background:#ffffffb3}.btn-outline:hover{background:#fff}.btn-ghost{color:#fffffff2;border-color:#ffffff73;background:#ffffff0f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn-ghost:hover{background:#ffffff29}.btn-light{color:var(--navy-deep);background:linear-gradient(145deg,#fff,#dfe6ee);box-shadow:0 14px 30px #00000038}.link-arrow{display:inline-flex;align-items:center;gap:8px;margin:16px 0 0;padding:6px 0 8px;font-weight:600;font-size:15px;color:var(--navy);text-decoration:none;border-bottom:1px solid rgba(20,56,107,.3)}.link-arrow:hover{border-color:var(--navy)}.linklike{background:none;border:0;padding:8px 2px;margin:-8px -2px;color:var(--navy);text-decoration:underline;cursor:pointer}.site-header{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .3s,box-shadow .3s}.site-header.is-solid{background:#ffffffe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line),0 10px 30px #102b4d0d}.header-inner{width:min(100% - 48px,1360px);margin-inline:auto;min-height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;padding:6px 16px;border-radius:18px;background:var(--steel);border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 2px 4px #fffffff2,inset 0 -2px 6px #94a3b84d,0 12px 30px #0f172a38}.brand img{height:56px;width:auto}.nav-wrap{display:flex;align-items:center;gap:14px}.nav-pill{display:flex;gap:4px;padding:6px 8px;border-radius:999px;border:1px solid #cfd5dc;background:var(--steel);box-shadow:inset 0 2px 4px #fffffff2,inset 0 -2px 6px #94a3b859,0 14px 34px #47556938}.nav-pill a{display:block;padding:8px 16px;border-radius:999px;font-size:15px;font-weight:500;color:var(--navy);text-decoration:none;transition:background .25s,color .25s}.nav-pill a:hover{background:#14386b14}.nav-pill a.active{color:#fff;background:linear-gradient(135deg,#1f2f5c,#5a7fb0);box-shadow:inset 0 1px #ffffff1f,0 8px 20px #0f172a59}.nav-toggle{display:none;width:46px;height:46px;border-radius:14px;border:1px solid #cfd5dc;background:var(--steel);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}.nav-toggle span{width:20px;height:2px;background:var(--navy);border-radius:2px}@media (max-width: 960px){:root{--header-h: 76px}.brand img{height:44px}.nav-toggle{display:inline-flex}.nav-wrap{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;padding:12px 24px 24px;background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 24px 40px #102b4d1f;display:none}.nav-wrap.is-open{display:flex}.nav-pill{flex-direction:column;border-radius:20px;box-shadow:none}.nav-pill a{padding:13px 16px;border-radius:14px}.nav-cta{width:100%}}.site-footer{background:linear-gradient(160deg,#0b2547,#12345f);color:#ffffffc7;padding:64px 0 0;font-size:15px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px}.footer-logo{background:var(--steel);padding:8px 14px;border-radius:16px;height:auto;width:150px}.footer-blurb{margin-top:18px;max-width:34ch;line-height:1.7}.site-footer h4{color:#fff;font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px}.site-footer li{margin-bottom:2px}.site-footer a{display:inline-block;padding:8px 0;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding:22px 0 30px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#ffffff8c}@media (max-width: 760px){.footer-grid{grid-template-columns:1fr;gap:32px}}.page-hero{position:relative;overflow:hidden;padding:calc(var(--header-h) + 64px) 0 96px;background:linear-gradient(120deg,transparent 0 78%,rgba(255,255,255,.7) 78% 80%,transparent 80% 100%),radial-gradient(1200px 600px at 85% -10%,rgba(255,255,255,.95),transparent 70%),linear-gradient(135deg,#fff,#f3f7fb 40%,#e9f0f7,#fafcff)}.page-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(135deg,transparent 0 72%,rgba(20,53,95,.035) 72% 73%,transparent 73% 100%),linear-gradient(105deg,transparent 0 78%,rgba(20,53,95,.03) 78% 79%,transparent 79% 100%)}.page-hero>.container{position:relative}.section{padding:96px 0}.section-head{max-width:760px;margin-bottom:44px}.section-head h2{font-size:clamp(28px,3.4vw,42px)}.section-head p{margin-top:14px;color:var(--muted)}.section-head.is-center{margin-inline:auto;text-align:center}.panel{position:relative;overflow:hidden;padding:30px 32px;border-radius:var(--radius);background:linear-gradient(180deg,#fffffff0,#ffffffc2);border:1px solid rgba(255,255,255,.85);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.chips li{padding:8px 14px;border-radius:999px;background:#eef2f7;color:var(--navy);font-size:13px}.cta-band{position:relative;overflow:hidden;padding:72px 0;color:#fff;background:linear-gradient(125deg,rgba(255,255,255,.14) 0 8%,transparent 8% 100%),linear-gradient(135deg,#0d2a52,#1a4585 55%,#4b6f9f)}.cta-band:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 4px);pointer-events:none}.cta-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}.cta-band .eyebrow{color:var(--accent)}.cta-band .eyebrow:before{background:var(--accent)}.cta-band h2{color:#fff;font-size:clamp(28px,3.6vw,44px)}.cta-band p{margin-top:10px;color:#ffffffd1;font-size:18px}.state-box{padding:48px 0;max-width:640px}.state-box .hero-actions{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}.route-loading{min-height:60vh;display:grid;place-items:center}.route-loading:after{content:"";width:34px;height:34px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--navy);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--d, 0ms)}[data-reveal].is-in{opacity:1;transform:none}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;background:#061020eb;padding:24px}.lightbox figure{max-width:min(1400px,100%);text-align:center}.lightbox img{max-height:82vh;width:auto;margin:0 auto;border-radius:10px;box-shadow:0 30px 80px #00000080}.lightbox figcaption{margin-top:12px;color:#ffffffbf;font-size:14px}.lb-btn{position:absolute;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;font-size:28px;line-height:1;cursor:pointer}.lb-btn:hover{background:#ffffff38}.lb-close{top:20px;right:20px}.lb-prev{left:20px;top:50%}.lb-next{right:20px;top:50%}@media (max-width: 720px){.container{width:min(100% - 36px,var(--max))}.section{padding:68px 0}.page-hero{padding:calc(var(--header-h) + 40px) 0 68px}.panel{padding:24px 20px;border-radius:20px}.cta-band{padding:56px 0}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}[data-reveal]{opacity:1;transform:none}}
