*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;color:#0b1f38;line-height:1.55}a{text-decoration:none;color:inherit}.wrap{max-width:1180px;margin:auto;padding:0 28px}.nav{height:72px;border-bottom:1px solid #dce4ec;position:sticky;top:0;background:#fffc;backdrop-filter:blur(12px);z-index:5}.nav .wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:900}.links{display:flex;gap:26px;font-size:14px;color:#66758a}.hero{padding:88px 0 70px;display:grid;grid-template-columns:1.4fr .6fr;gap:60px;align-items:end}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:#66758a;font-weight:800}h1{font-size:clamp(44px,6vw,76px);line-height:1.02;letter-spacing:-.045em;margin:16px 0 24px}h2{font-size:clamp(34px,4vw,50px);line-height:1.08;letter-spacing:-.03em}.lede{font-size:20px;color:#66758a;max-width:780px}.quote{border-left:3px solid #0c65c8;padding-left:24px;font-size:20px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{padding:11px 17px;border:1px solid #dce4ec;border-radius:999px;font-size:14px;font-weight:800}.primary{background:#0b1f38;color:#fff}.metrics{display:grid;grid-template-columns:repeat(5,1fr);border-block:1px solid #dce4ec}.metric{padding:27px 16px;border-right:1px solid #dce4ec}.metric strong{font-size:28px;display:block}.metric span{font-size:12px;color:#66758a}.section{padding:80px 0}.timeline{margin-top:40px}.trow{display:grid;grid-template-columns:110px 1fr 240px;gap:28px;border-top:1px solid #dce4ec;padding:28px 12px}.trow:last-child{border-bottom:1px solid #dce4ec}.trow:hover,.card:hover{background:#f6f9fc}.trow h3,.card h3{margin:4px 0 7px;font-size:23px}.trow p,.card p{margin:0;color:#66758a}.badge,.pill{display:inline-block;margin-top:12px;border:1px solid #bfd5ea;background:#eef6ff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.flow{background:#0b1f38;color:#fff;padding:58px 0}.flowline{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.node{border:1px solid #49617d;border-radius:999px;padding:10px 14px}.grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #dce4ec;border-left:1px solid #dce4ec}.card{padding:30px;border-right:1px solid #dce4ec;border-bottom:1px solid #dce4ec;min-height:215px}.foot{display:flex;justify-content:space-between;margin-top:28px;font-size:13px;font-weight:800}.footer{border-top:1px solid #dce4ec;padding:28px 0;color:#66758a;font-size:13px;display:flex;justify-content:space-between}.project{padding:70px 0 45px}.project .impact{font-size:34px;color:#0b7a57;font-weight:900}.case{display:grid;grid-template-columns:220px 1fr;gap:50px;padding:34px 0;border-top:1px solid #dce4ec}.case h2{font-size:14px;text-transform:uppercase;letter-spacing:.12em;margin:0}.copy{font-size:18px;max-width:780px}.lesson{font-size:26px;font-weight:700}.notice{background:#f6f9fc;border:1px solid #dce4ec;padding:22px;margin:38px 0;font-size:12px;color:#66758a}@media(max-width:800px){.links{display:none}.hero{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.trow{grid-template-columns:70px 1fr}.trow .tech{grid-column:2}.grid{grid-template-columns:1fr}.case{grid-template-columns:1fr;gap:10px}}/* Project visual-first layout */
.project-visual{margin:4px 0 46px;border:1px solid #dce4ec;border-radius:14px;overflow:hidden;background:#f6f9fc;box-shadow:0 12px 32px rgba(11,31,56,.08)}
.project-visual img{display:block;width:100%;height:auto}
.visual-label{padding:12px 16px;border-bottom:1px solid #dce4ec;font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:#66758a;background:#fff}
.kpis{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 0}.kpi{border:1px solid #dce4ec;border-radius:12px;padding:12px 16px;min-width:150px}.kpi strong{display:block;font-size:21px}.kpi span{font-size:11px;color:#66758a;text-transform:uppercase;letter-spacing:.08em}

/* Redeveloped portfolio */
.project-card{padding:0;overflow:hidden;display:block}.card-img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;border-bottom:1px solid #dce4ec}.card-body{padding:26px 30px}.split-callouts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.callout{border:1px solid #dce4ec;border-radius:14px;padding:30px;background:#f8fbfe}.callout h3{font-size:28px;margin:8px 0}.callout p{color:#66758a}.callout span,.text-link{font-weight:800;color:#0c65c8}.project .buttons{margin-top:22px}@media(max-width:800px){.split-callouts{grid-template-columns:1fr}.project-card .card-img{aspect-ratio:16/10}}

/* Project highlights and detailed case-study narrative */
.project-points{margin:16px 0 0;padding-left:20px;color:#53657a;font-size:13px;line-height:1.55}.project-points li{margin:5px 0}.project-points.compact{font-size:12px;margin-top:12px}.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 28px;list-style:none;padding:0;margin:24px 0 4px}.hero-points li{border-left:3px solid #0c65c8;padding:7px 0 7px 12px;color:#0b1f38;font-weight:700}.details-intro{padding:24px 0 18px;border-top:1px solid #dce4ec}.details-intro h2{font-size:32px;margin:8px 0 0}.detail-case{grid-template-columns:70px 180px 1fr;gap:24px;align-items:start}.detail-case .case-index{font-size:13px;font-weight:900;color:#0c65c8;letter-spacing:.12em;padding-top:2px}.detail-case .detail-heading h2{font-size:13px}.detail-case .copy{font-size:17px;max-width:800px}.tech-detail .copy p{font-weight:700;color:#193b60}.lesson-detail{background:#f6f9fc;padding-left:16px;padding-right:16px}.lesson-detail .copy{font-size:21px;font-weight:700;color:#0b1f38}.pdf-detail .text-link{font-weight:900;color:#0c65c8}@media(max-width:800px){.hero-points{grid-template-columns:1fr}.detail-case{grid-template-columns:44px 1fr;gap:12px}.detail-case .detail-heading,.detail-case .copy{grid-column:2}.details-intro h2{font-size:28px}}
