
:root{
  --navy:#071f46;--navy2:#0a3472;--blue:#1976d2;--cyan:#35b8ff;--gold:#c99a38;
  --green:#2f8e48;--amber:#f5a623;--red:#df3344;--ink:#0f172a;--muted:#64748b;
  --line:#dbe4ef;--soft:#f5f8fc;--white:#fff;--shadow:0 18px 50px rgba(12,31,66,.09);
  --shadow-sm:0 8px 24px rgba(12,31,66,.07);--radius:20px;--radius-sm:12px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#f3f6fa}
a{text-decoration:none;color:inherit}button{font:inherit}
.site-shell{min-height:100vh;background:linear-gradient(180deg,#fff,#f6f9fd 38%,#f0f4f9)}
.nav{position:sticky;top:0;z-index:40;height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,64px);background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(220,229,239,.8)}
.brand{display:flex;align-items:center;gap:12px;font-weight:850;color:var(--navy)}.brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#0e4a93);color:#fff;box-shadow:0 8px 22px rgba(7,31,70,.18)}
.nav-links{display:flex;gap:22px;align-items:center;font-size:13px;font-weight:700;color:#40516b}.nav-links a:hover{color:var(--blue)}.nav-cta{padding:10px 15px;border-radius:10px;color:#fff!important;background:linear-gradient(135deg,var(--navy),var(--blue));box-shadow:0 8px 22px rgba(25,118,210,.18)}
.mobile-menu{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 11px}
.container{width:min(1240px,calc(100% - 32px));margin:auto}
.hero{position:relative;overflow:hidden;padding:92px 0 86px;background:radial-gradient(circle at 82% 22%,rgba(53,184,255,.15),transparent 28%),radial-gradient(circle at 12% 10%,rgba(201,154,56,.10),transparent 25%)}
.hero:before,.hero:after{content:"";position:absolute;border-radius:50%;filter:blur(10px);opacity:.55;animation:float 9s ease-in-out infinite}
.hero:before{width:360px;height:360px;right:-120px;top:65px;background:radial-gradient(circle,#2f7ec6,transparent 68%)}.hero:after{width:220px;height:220px;left:-90px;bottom:10px;background:radial-gradient(circle,#d3a74b,transparent 68%);animation-delay:-3s}
@keyframes float{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-18px) translateX(14px)}}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr .85fr;gap:62px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#edf5ff;color:#0c4d92;border:1px solid #d7e9fb;font-size:12px;font-weight:800;letter-spacing:.02em}
.hero h1{font-size:clamp(44px,6vw,76px);line-height:.98;letter-spacing:-.052em;margin:22px 0 18px;color:var(--navy);max-width:850px}
.hero h1 span{display:block;color:transparent;background:linear-gradient(90deg,var(--blue),#28a6e7,var(--gold));background-clip:text;-webkit-background-clip:text}
.hero-copy{font-size:18px;line-height:1.65;color:#506078;max-width:780px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;border-radius:11px;font-weight:800;font-size:13px;border:1px solid var(--line);background:#fff;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;border:0;box-shadow:0 12px 28px rgba(25,118,210,.23)}.btn:hover{transform:translateY(-1px)}
.hero-card{padding:24px;border-radius:24px;background:linear-gradient(150deg,#071f46,#0d4285);color:#fff;box-shadow:0 28px 70px rgba(7,31,70,.23);position:relative;overflow:hidden}
.hero-card:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-90px;bottom:-100px;background:radial-gradient(circle,rgba(54,184,255,.45),transparent 65%)}
.hero-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.hero-metric{padding:17px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.07)}.hero-metric b{font-size:30px;display:block}.hero-metric span{font-size:11px;color:#d8e5f6}
.section{padding:84px 0}.section.alt{background:#fff}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:34px}.section-kicker{color:var(--blue);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.section-title{font-size:clamp(30px,4vw,46px);letter-spacing:-.035em;margin:7px 0 0;color:var(--navy)}.section-copy{max-width:580px;color:var(--muted);font-size:14px;line-height:1.7}
.timeline-wrap{position:relative;padding:10px 0 16px}
.timeline-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.timeline-direction{display:flex;align-items:center;gap:8px;color:#526176;font-size:11px}.timeline-direction strong{color:var(--navy)}.timeline-live-dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(47,142,72,.12)}.timeline-arrow-text{color:#8a98aa}.timeline-controls{display:flex;gap:8px}.timeline-control{width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font-size:18px;font-weight:900;cursor:pointer;box-shadow:0 5px 14px rgba(12,31,66,.06);transition:.18s}.timeline-control:hover:not(:disabled){background:#edf6ff;border-color:#9bc7ee;transform:translateY(-1px)}.timeline-control:disabled{opacity:.35;cursor:not-allowed}
.timeline-viewport{position:relative;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-left:18px;overscroll-behavior-x:contain;padding:0 2px 18px;cursor:grab;touch-action:pan-y pinch-zoom;outline:none;scrollbar-width:thin;scrollbar-color:#9bb9d5 #edf2f7}.timeline-viewport:focus-visible{box-shadow:0 0 0 3px rgba(25,118,210,.16);border-radius:16px}.timeline-viewport.is-dragging{cursor:grabbing;user-select:none}.timeline-viewport::-webkit-scrollbar{height:10px}.timeline-viewport::-webkit-scrollbar-track{background:#edf2f7;border-radius:99px}.timeline-viewport::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#8eb5d8,#498fca);border-radius:99px;border:2px solid #edf2f7}
.timeline{position:relative;display:flex;width:max-content;gap:26px;padding:68px 18px 10px}.timeline:before{content:"";position:absolute;left:80px;right:80px;top:48px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--green),var(--blue) 35%,var(--cyan) 68%,var(--gold));transform:scaleX(0);transform-origin:left;transition:transform 1.5s cubic-bezier(.2,.8,.2,1)}.timeline-wrap.in-view .timeline:before{transform:scaleX(1)}
.timeline-item{position:relative;flex:0 0 clamp(340px,31vw,430px);scroll-snap-align:start;opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.timeline-wrap.in-view .timeline-item{opacity:1;transform:none}.timeline-wrap.in-view .timeline-item:nth-child(2){transition-delay:.12s}.timeline-wrap.in-view .timeline-item:nth-child(3){transition-delay:.24s}.timeline-wrap.in-view .timeline-item:nth-child(4){transition-delay:.36s}.timeline-dot{position:absolute;top:-32px;left:38px;width:28px;height:28px;border:7px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px #b8d8f2,0 8px 18px rgba(25,118,210,.18);z-index:2}.timeline-dot span{display:block;width:100%;height:100%;border-radius:50%}.timeline-item.is-current .timeline-dot{background:var(--green);box-shadow:0 0 0 2px #b7dabb,0 8px 18px rgba(47,142,72,.18)}
.timeline-card{height:100%;min-height:410px;padding:22px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:.2s}.timeline-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#a9c9e5}.timeline-item.is-current .timeline-card{border-color:#b9dac0;background:linear-gradient(180deg,#fbfffc,#fff 35%)}.timeline-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.timeline-card .period{font-size:11px;color:var(--blue);font-weight:850}.timeline-card h3{margin:7px 0 2px;color:var(--navy);font-size:20px;line-height:1.2}.current-badge{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eaf7ed;color:#27793e;font-size:9px;font-weight:900;text-transform:uppercase;white-space:nowrap}.timeline-role-label{font-size:9px;font-weight:900;letter-spacing:.11em;color:#91a0b2;margin-top:14px}.timeline-card .role{font-size:12px;line-height:1.5;color:#344a65;font-weight:750;margin-top:4px}.timeline-divider{height:1px;background:#e8edf3;margin:15px 0 1px}.experience-focus{font-size:12px;line-height:1.58;color:#57677c;margin:5px 0 0}.timeline-responsibilities{margin:6px 0 16px;padding-left:18px;color:#526176;font-size:11px;line-height:1.52}.timeline-responsibilities li{margin:5px 0}.timeline-dashboard-link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px;border-radius:10px;background:#f0f6fc;color:#0b4f98;font-size:11px;font-weight:850}.timeline-dashboard-link:hover{background:#e3f0fb}.timeline-hint{text-align:center;margin-top:4px;font-size:10px;color:#8a98aa}
.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.expertise-card{padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:.2s}.expertise-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.expertise-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#eef6ff;color:var(--blue);font-size:20px}.expertise-card h3{font-size:15px;color:var(--navy);margin:14px 0 7px}.expertise-card p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.company-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.company-card{position:relative;overflow:hidden;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:.22s}.company-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.company-top{padding:22px;background:linear-gradient(120deg,#071f46,#0c3e7e);color:#fff}.company-no{font-size:13px;font-weight:900;color:#89c7ff}.company-card h3{font-size:23px;margin:9px 0 4px}.company-role{font-size:12px;color:#d6e5f7}.company-body{padding:22px}.company-body p{font-size:13px;line-height:1.62;color:var(--muted);min-height:64px}.company-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.company-metric{padding:11px;background:#f5f8fc;border-radius:10px;text-align:center}.company-metric b{font-size:22px;color:var(--navy);display:block}.company-metric span{font-size:10px;color:var(--muted)}.company-link{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--blue);font-weight:850}
.cta{padding:34px;border-radius:26px;background:linear-gradient(135deg,#071f46,#0c4389);color:#fff;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;box-shadow:0 24px 60px rgba(7,31,70,.22)}.cta h2{margin:0 0 7px;font-size:28px}.cta p{margin:0;color:#d8e5f6;font-size:13px;line-height:1.65}
.footer{padding:34px 0 50px;color:#6a788e;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.in-view{opacity:1;transform:none}

/* Dashboard */
.dashboard-page{background:#f3f6fa}.dash-hero{padding:28px clamp(18px,4vw,64px);background:linear-gradient(110deg,#061f48,#0a326f);color:#fff}.dash-back{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;color:#cfe0f5}.dash-heading{display:grid;grid-template-columns:70px 1fr 330px;gap:20px;align-items:center;margin-top:18px}.dash-no{font-size:44px;font-weight:900}.dash-heading h1{margin:0;font-size:clamp(24px,3vw,38px);line-height:1.04}.dash-company{font-size:15px;font-weight:800;margin-top:7px}.dash-meta{font-size:11px;color:#d9e6f4;margin-top:7px}.dash-owner{text-align:right}.dash-owner b{display:block;font-size:20px}.dash-owner span{font-size:12px;color:#dbe8f6}
.livebar{padding:8px clamp(18px,4vw,64px);display:flex;justify-content:flex-end;gap:10px;align-items:center;background:#fff;border-bottom:1px solid var(--line);font-size:11px;color:#667085}.status-dot{width:8px;height:8px;border-radius:50%;background:#aaa}.status-dot.live{background:#25a456}.status-dot.fallback{background:var(--amber)}
.dash-container{width:min(1440px,calc(100% - 24px));margin:10px auto 30px}.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.kpi{padding:14px 11px;border-radius:13px;background:#fff;border:1px solid var(--line);box-shadow:0 3px 12px rgba(12,31,66,.04);text-align:center;cursor:pointer}.kpi:hover{border-color:#a8c7e8}.kpi label{display:block;color:#315278;font-size:10px;font-weight:850;text-transform:uppercase}.kpi b{display:block;font-size:31px;margin-top:7px;color:var(--navy)}.kpi small{display:block;font-size:10px;color:var(--muted);margin-top:5px}
.dash-grid-4{display:grid;grid-template-columns:1.25fr 1.55fr 1.05fr 1.2fr;gap:8px;margin-top:8px}.dash-grid-3{display:grid;grid-template-columns:1.5fr 1.05fr 1.05fr;gap:8px;margin-top:8px}.dash-grid-bottom{display:grid;grid-template-columns:1.2fr 1.35fr 1.05fr;gap:8px;margin-top:8px}
.panel{border-radius:13px;background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:0 2px 9px rgba(12,31,66,.04);min-width:0}.panel-head{min-height:35px;padding:9px 12px;background:linear-gradient(90deg,#071f46,#0c3e7e);color:#fff;font-size:11px;font-weight:850;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between}.panel-body{padding:12px;font-size:11px;line-height:1.5;color:#43546b}.open-source{font-size:9px;text-transform:none;color:#d7e8fb}.overview-list{margin:9px 0 0;padding-left:18px}.overview-list li{margin:5px 0}
.ws-row{display:grid;grid-template-columns:150px 1fr 38px;gap:8px;align-items:center;margin:8px 0;cursor:pointer}.ws-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress{height:8px;border-radius:99px;background:#e7edf4;overflow:hidden}.progress>span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#2f8e48,#58af5c)}.progress>span.blue{background:linear-gradient(90deg,#1976d2,#35a9ef)}.ws-row:hover{background:#f8fafc}
.donut-wrap{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center}.donut{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;position:relative;cursor:pointer}.donut:after{content:"";position:absolute;width:94px;height:94px;border-radius:50%;background:#fff}.donut b{z-index:1;font-size:26px;color:var(--navy)}.legend-row{display:flex;align-items:center;gap:7px;margin:7px 0}.legend-dot{width:9px;height:9px;border-radius:50%}
.bar-chart{height:190px;display:flex;align-items:end;justify-content:space-around;gap:10px;padding:8px 10px 24px;border-bottom:1px solid var(--line)}.bar-col{text-align:center;cursor:pointer}.bar-col .value{font-size:16px;font-weight:850;color:var(--navy);margin-bottom:5px}.bar-col .bar{width:36px;margin:auto;border-radius:5px 5px 0 0;background:var(--green);min-height:2px}.bar-col .name{font-size:9px;color:var(--muted);margin-top:6px;white-space:nowrap}
.milestone-flow{display:grid;grid-template-columns:repeat(6,minmax(85px,1fr));gap:5px;overflow-x:auto}.milestone{text-align:center;padding:8px 4px;cursor:pointer;border-radius:8px}.milestone:hover{background:#f7f9fc}.milestone .ico{font-size:23px}.milestone b{display:block;color:var(--navy);font-size:10px;margin-top:5px}.milestone small{font-size:9px;color:var(--muted)}
table{width:100%;border-collapse:collapse;font-size:10px}th,td{padding:7px 5px;border-bottom:1px solid #e4eaf1;text-align:left;vertical-align:top}th{font-size:9px;color:#315278}.pill{display:inline-block;padding:3px 6px;border-radius:5px;color:#fff;font-size:9px;font-weight:800}.pill.green{background:var(--green)}.pill.amber{background:var(--amber)}.pill.red{background:var(--red)}
.highlights{list-style:none;padding:0;margin:0}.highlights li{position:relative;padding-left:17px;margin:5px 0;cursor:pointer}.highlights li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}
.support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.support-box{padding:10px 6px;border:1px solid var(--line);border-radius:9px;text-align:center;background:#fbfcfe}.support-box b{display:block;color:var(--navy);font-size:10px;margin-bottom:5px}.support-box span{font-size:9px;color:var(--muted)}
.tooltip{position:fixed;z-index:90;pointer-events:none;background:#0f172a;color:#fff;border-radius:7px;padding:8px 10px;font-size:11px;max-width:270px;box-shadow:0 10px 30px rgba(15,23,42,.25);opacity:0;transform:translateY(4px);transition:.1s}.tooltip.show{opacity:1;transform:none}.drawer-bg{position:fixed;inset:0;background:rgba(8,24,49,.35);z-index:80;display:none}.drawer-bg.show{display:block}.drawer{position:fixed;z-index:85;top:0;right:0;height:100%;width:min(460px,92vw);background:#fff;box-shadow:-14px 0 42px rgba(8,24,49,.2);transform:translateX(100%);transition:.22s;display:flex;flex-direction:column}.drawer.show{transform:none}.drawer-head{padding:17px 18px;background:linear-gradient(90deg,#071f46,#0c3e7e);color:#fff;display:flex;justify-content:space-between;align-items:center}.drawer-body{padding:17px 18px;overflow:auto;font-size:13px;line-height:1.55}.drawer-close{border:1px solid #ffffff55;background:transparent;color:#fff;border-radius:7px;padding:8px 10px;cursor:pointer}
@media(max-width:1100px){.hero-grid{grid-template-columns:1fr}.expertise-grid{grid-template-columns:1fr 1fr}.company-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(3,1fr)}.dash-grid-4{grid-template-columns:1fr 1fr}.dash-grid-3,.dash-grid-bottom{grid-template-columns:1fr 1fr}.dash-grid-3>.panel:first-child{grid-column:1/-1}}
@media(max-width:760px){.nav-links{display:none}.mobile-menu{display:block}.hero{padding-top:58px}.hero h1{font-size:48px}.section{padding:64px 0}.section-head{display:block}.expertise-grid{grid-template-columns:1fr}.company-metrics{grid-template-columns:1fr 1fr 1fr}.cta{grid-template-columns:1fr}.dash-heading{grid-template-columns:48px 1fr}.dash-owner{grid-column:1/-1;text-align:left}.kpi-grid{grid-template-columns:1fr 1fr}.dash-grid-4,.dash-grid-3,.dash-grid-bottom{grid-template-columns:1fr}.dash-grid-3>.panel:first-child{grid-column:auto}.support-grid{grid-template-columns:1fr 1fr}.footer-inner{display:block}.footer-inner>*{margin:6px 0}}
@media(max-width:440px){.container{width:min(100% - 22px,1240px)}.hero h1{font-size:40px}.hero-actions{display:grid}.hero-metrics{grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:1fr}.company-metrics{grid-template-columns:1fr}.ws-row{grid-template-columns:1fr 38px}.progress{grid-column:1/-1}.donut-wrap{grid-template-columns:1fr;justify-items:center}.support-grid{grid-template-columns:1fr}.bar-chart{overflow-x:auto;justify-content:flex-start}.bar-col{min-width:55px}}

@media(max-width:760px){.timeline-arrow-text{display:none}.timeline-toolbar{align-items:flex-start}.timeline-direction{flex-wrap:wrap}.timeline{gap:16px;padding-left:8px;padding-right:8px}.timeline-item{flex-basis:min(86vw,390px)}.timeline-card{min-height:430px}.timeline-dot{left:28px}.timeline:before{left:45px;right:45px}.timeline-hint{text-align:left;padding-left:3px}}
@media(max-width:440px){.timeline-item{flex-basis:88vw}.timeline-controls{gap:6px}.timeline-control{width:40px;height:40px}.timeline-card{padding:18px;min-height:445px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
