/* home.css: generated by tooling/convert.py from Home.dc.html (v94). Edit the converter, not this file. */
body{margin:0}
a{color:#00529C}a:hover{color:#003E77}
.h-nav{display:flex;gap:30px;align-items:center;margin-left:auto}
.h-nav a{color:#16181D;text-decoration:none}
.h-nav a:hover{color:#00529C}
.h-btn{transition:transform .15s, background .15s}
.h-btn:hover{background:#2A2D35}
.h-btn:active{transform:translateY(1px)}
.h-ghost{transition:background .15s}
.h-ghost:hover{background:#F1F2F4}
.h-item:hover .h-t{text-decoration:underline;text-underline-offset:3px}
.h-lane{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.h-track{display:flex;align-items:center;gap:72px;width:max-content;padding:14px 0}
.h-left{animation:h-left 58s linear infinite}
.h-right{animation:h-right 66s linear infinite}
.h-lane:hover .h-track{animation-play-state:paused}
.h-track img{height:30px;width:auto;flex-shrink:0;display:block}
.h-track img.h-wide{height:20px}
@keyframes h-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes h-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.h-seg{transition:background .15s, color .15s}
.h-seg:focus-visible,.h-arrow:focus-visible{outline:2px solid #00529C;outline-offset:2px}
.h-strip{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:4px;scrollbar-width:none}
.h-strip::-webkit-scrollbar{display:none}
.h-sol{position:relative;flex:0 0 340px;height:480px;border-radius:12px;overflow:hidden;background:#14263D;scroll-snap-align:start;text-decoration:none;display:block}
.h-sol-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.h-sol::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,36,0) 35%,rgba(10,20,36,.88) 100%);pointer-events:none}
.h-sol-body{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:28px;display:flex;flex-direction:column;gap:12px}
.h-sol-more{display:flex;flex-direction:column;gap:8px;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease, opacity .3s ease}
.h-sol:hover .h-sol-more,.h-sol:focus-visible .h-sol-more{max-height:180px;opacity:1}
.h-sol:hover .h-sol-img{transform:scale(1.04)}
.h-arrow{width:44px;height:44px;border-radius:999px;border:1px solid #C9CBD1;background:#FFFFFF;color:#16181D;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}
.h-arrow:hover{background:#F1F2F4}
@media (prefers-reduced-motion: reduce){.h-strip{scroll-behavior:auto}.h-sol-img,.h-sol-more{transition:none}}
@media (max-width: 860px){.h-sol{flex-basis:280px;height:420px}.h-sol-more{max-height:180px;opacity:1}}
.h-prod{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.h-span2{grid-column:span 2}
.h-pc{display:flex;flex-direction:column;gap:14px;padding:32px;border:1px solid #E2E6EC;border-radius:12px;background:#FFFFFF;text-decoration:none;color:#16181D;transition:transform .2s, border-color .2s}
.h-pc:hover{transform:translateY(-3px);border-color:#9DB8DD}
.h-pc-t{font-weight:700;font-size:22px;padding-top:6px}
.h-pc-d{font-size:16px;line-height:1.55;color:#50545E;max-width:60ch}
.h-pc-l{margin-top:auto;padding-top:6px;font-weight:600;font-size:15px;color:#00529C}
.h-chips{display:flex;flex-wrap:wrap;gap:8px}
.h-chips span{font-size:13px;font-weight:500;color:#2F3A4A;background:#FFFFFF;border:1px solid #D3DCE8;border-radius:999px;padding:6px 12px}
@media (max-width: 960px){.h-prod{grid-template-columns:minmax(0,1fr)}.h-span2{grid-column:auto}}
.h-dd{position:relative;display:flex;align-items:center}
.h-ddt{display:inline-flex;align-items:center;gap:5px}
.h-ddt svg{transition:transform .2s}
.h-ddm{position:absolute;top:100%;left:-16px;min-width:240px;margin-top:14px;padding:10px;background:#0C1E3A;border:1px solid rgba(255,255,255,.12);border-radius:12px;box-shadow:0 18px 40px rgba(2,8,20,.45);display:flex;flex-direction:column;gap:2px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s, transform .18s, visibility .18s;z-index:10}
.h-ddm::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.h-dark .h-ddm a{display:block;padding:10px 12px;border-radius:8px;color:#D6E0EE;font-size:14px}
.h-dark .h-ddm a:hover{background:rgba(255,255,255,.07);color:#FFFFFF}
.h-mega{flex-direction:row;gap:0;min-width:640px;padding:22px}
.h-mcol{display:flex;flex-direction:column;gap:2px;min-width:230px}
.h-mbrand{min-width:340px}
.h-mh{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7FB6FF;padding:0 12px 10px}
.h-mbrand .h-mh{padding-left:0}
.h-mdiv{width:1px;background:rgba(255,255,255,.12);margin:0 22px}
.h-bgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.h-bcol{display:flex;flex-direction:column;gap:10px}
.h-dark .h-ddm a.h-bt{display:flex;align-items:center;justify-content:center;gap:12px;height:52px;padding:0 12px;background:#FFFFFF;border-radius:8px;transition:transform .15s, box-shadow .15s}
.h-dark .h-ddm a.h-bt:hover{background:#FFFFFF;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.25)}
.h-dark .h-ddm a.h-bt-text{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:#FFFFFF;font-weight:600;font-size:14px}
.h-dark .h-ddm a.h-bt-text:hover{background:rgba(255,255,255,.12)}
.h-dd:hover .h-ddm,.h-dd:focus-within .h-ddm{opacity:1;visibility:visible;transform:translateY(0)}
.h-dd:hover .h-ddt svg,.h-dd:focus-within .h-ddt svg{transform:rotate(180deg)}
.h-dark .h-nav a{color:#D6E0EE}
.h-dark .h-nav a:hover{color:#FFFFFF}
.h-btnw{transition:transform .15s, background .15s}
.h-btnw:hover{background:#DCE8F7}
.h-btnw:active,.h-ghostd:active{transform:translateY(1px)}
.h-ghostd{transition:background .15s, border-color .15s}
.h-ghostd:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.7)}
.h-herobg{position:relative;overflow:hidden;min-height:778px;display:flex;align-items:center;background:#07152B}
.h-bgimg{position:absolute;left:-4%;top:-4%;width:108%;height:108%;object-fit:cover;z-index:0;animation:h-push 40s ease-in-out infinite alternate;will-change:transform}
.h-herobg::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 48% 60% at 50% 52%,rgba(7,21,43,.78),rgba(7,21,43,.25) 70%,rgba(7,21,43,.45) 100%)}
.h-glow{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 60% 40% at 50% 100%,rgba(78,163,255,.28),rgba(78,163,255,0) 70%);opacity:.4;animation:h-pulse 7s ease-in-out infinite;will-change:opacity}
.h-sweep{position:absolute;top:0;bottom:0;left:-35%;width:35%;z-index:1;pointer-events:none;background:linear-gradient(100deg,rgba(127,182,255,0),rgba(127,182,255,.14),rgba(127,182,255,0));opacity:0;animation:h-sweep 12s ease-in-out infinite;will-change:transform,opacity}
@keyframes h-push{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.08) translate3d(0,-1%,0)}}
@keyframes h-pulse{0%,100%{opacity:.35}50%{opacity:.8}}
@keyframes h-sweep{0%{transform:translateX(0);opacity:0}12%{opacity:1}55%{transform:translateX(420%);opacity:0}100%{transform:translateX(420%);opacity:0}}
@media (prefers-reduced-motion: reduce){.h-bgimg,.h-sweep,.h-glow{animation:none}.h-sweep{display:none}}
.h-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:2px solid #E2E6EC}
.h-steps li{display:flex;flex-direction:column;gap:10px;padding:28px 28px 0 0;position:relative}
.h-steps li::before{content:"";position:absolute;top:-2px;left:0;width:56px;height:2px;background:#00529C}
.h-step-n{font-size:14px;font-weight:600;color:#00529C}
.h-step-t{font-weight:700;font-size:24px;letter-spacing:-0.01em}
.h-step-d{font-size:16px;line-height:1.55;color:#50545E;max-width:26ch}
@media (max-width: 960px){.h-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}}
@media (max-width: 560px){.h-steps{grid-template-columns:minmax(0,1fr)}}
.h-contact{display:inline-flex;align-items:center;gap:10px;font-size:17px;font-weight:500;color:#16181D;text-decoration:none;min-height:32px}
.h-contact:hover{color:#00529C}
.h-fname{font-family:"Zilla Slab",Georgia,serif;font-weight:700}
.h-fcol{display:flex;flex-direction:column;gap:10px;font-size:15px}
.h-fh{font-weight:600;color:#FFFFFF;font-size:15px;padding-bottom:4px}
.h-office{display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:1.55;color:#C9D5E6}
.h-foot a{color:#C9D5E6;text-decoration:none}
.h-foot a:hover{color:#FFFFFF}
.h-card{transition:transform .2s, border-color .2s}
.h-card:hover{transform:translateY(-3px);border-color:#9DB8DD}
.h-tab{transition:color .15s, border-color .15s}
.h-tab:hover{color:#16181D}
.h-tab:focus-visible{outline:2px solid #00529C;outline-offset:2px}
@media (prefers-reduced-motion: reduce){.h-left,.h-right{animation:none}}
@media (max-width: 860px){
 .h-nav{display:none}
 .h-head{padding-left:140px !important;min-height:120px !important}
 .h-logomark{top:14px !important}
 .h-logomark img{width:96px !important;height:103px !important}
 .h-hero{padding-top:208px !important}
 .h-h1{font-size:44px !important}
 .h-statement{font-size:28px !important}
}
.c-links{display:flex;flex-wrap:wrap;gap:8px 24px}
.c-links a{color:#00529C;text-decoration:none;min-height:24px}
.c-links a:hover{text-decoration:underline;text-underline-offset:3px}

/* Tab states for site.js (convert.py; inline values on the board) */
.h-seg[aria-selected="true"]{background:#00529C;color:#FFFFFF}
.h-seg[aria-selected="false"]{background:transparent;color:#3E4350}
