:root {
  --navy:#07111f;
  --navy-2:#0b1728;
  --ink:#111827;
  --muted:#667085;
  --line:#d8dee8;
  --soft:#f4f7fb;
  --white:#fff;
  --blue:#2f80ed;
  --blue-dark:#245f9f;
  --blue-soft:#eaf3ff;
  --green:#217a55;
  --amber:#9a6410;
  --red:#a23b3b;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--white);line-height:1.62}
a{color:inherit;text-decoration:none}
button,a{transition:.15s ease}
.container{width:min(calc(100% - 40px),var(--max));margin:0 auto}
.section-pad{padding:86px 0}
.section-dark{background:var(--navy);color:var(--white)}
.section-soft{background:#f8fafc}
.eyebrow{margin:0 0 18px;color:#6db0ff;font:500 .78rem/1 IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.08em}
.eyebrow.dark{color:var(--blue-dark)}
h1,h2,h3,h4{font-family:Manrope,Arial,sans-serif;margin-top:0}
h1{max-width:800px;font-size:clamp(3rem,6vw,5.65rem);line-height:.99;letter-spacing:-.05em;margin-bottom:26px}
h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.08;letter-spacing:-.035em;margin-bottom:18px}
h3{font-size:1.3rem;line-height:1.3;margin-bottom:10px}
p{margin-top:0}
.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(7,17,31,.95);backdrop-filter:blur(14px);color:white}
.nav-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;flex-direction:column;line-height:1.2}
.brand-name{font-family:Manrope,sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.brand-role{margin-top:4px;font-size:.72rem;color:#8fbdf5;text-transform:uppercase;letter-spacing:.06em}
.nav-links{display:flex;gap:25px;font-size:.88rem;font-weight:600;align-items:center}
.nav-links a{color:#d8e0ea}.nav-links a:hover{color:white}
.nav-cv{border:1px solid #536178;border-radius:6px;padding:8px 11px}
.menu-toggle{display:none;background:transparent;border:1px solid #42506a;color:white;padding:8px 12px;border-radius:6px}
.hero{padding:76px 0 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:62px;align-items:center}
.hero-text{max-width:720px;font-size:1.12rem;color:#c9d2df}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 22px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 19px;border-radius:7px;font-weight:700}
.button.primary{background:var(--blue);color:white}.button.primary:hover{background:#1f6fd1}
.button.secondary{border:1px solid #536178;color:white}.button.secondary:hover{border-color:#8fbdf5}
.button.light{background:white;color:var(--navy)}.button.light:hover{background:#edf3fa}
.availability{color:#9eabba;font-size:.92rem;max-width:670px}
.proof-panel{display:grid;grid-template-columns:1fr 1fr;border:1px solid #2d3b50;border-radius:14px;background:rgba(255,255,255,.025)}
.proof-item{padding:27px;min-height:158px}.proof-item:nth-child(odd){border-right:1px solid #2d3b50}.proof-item:nth-child(-n+2){border-bottom:1px solid #2d3b50}
.proof-item strong{display:block;font-family:Manrope,sans-serif;font-size:2rem;color:#66abff;margin-bottom:9px}.proof-item span{color:#c9d2df;font-size:.91rem}
.tool-strip{display:flex;flex-wrap:wrap;gap:13px 28px;align-items:center;border-top:1px solid #223047;margin-top:62px;padding:23px 0;color:#d9e2ee;font-size:.89rem}
.section-heading{display:grid;grid-template-columns:1.16fr .84fr;gap:40px;align-items:end;margin-bottom:34px}
.section-intro{color:var(--muted);max-width:540px;justify-self:end}
.sanitize-note{display:flex;gap:10px;align-items:flex-start;border:1px solid #d9e3ef;background:#f8fbff;color:#475467;padding:13px 15px;margin:0 0 28px;font-size:.88rem}
.sanitize-note strong{color:#245f9f;white-space:nowrap}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.project-card{border:1px solid var(--line);background:white;overflow:hidden;display:flex;flex-direction:column}.project-card.featured{grid-row:span 2}
.project-visual{min-height:230px;padding:24px;background:var(--soft);border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.project-body{padding:27px;display:flex;flex-direction:column;flex:1}.project-body p{color:#4b5563}.project-type{color:var(--blue-dark)!important;font:500 .75rem/1.3 IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.06em}
.project-result{margin:16px 0 0;padding:13px 15px;border-left:3px solid var(--blue);background:#f8fbff;color:#344054!important;font-size:.91rem}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tags span{background:var(--blue-soft);color:var(--blue-dark);font-size:.74rem;font-weight:700;padding:6px 9px;border-radius:5px}
.case-link{display:inline-flex;width:max-content;margin-top:auto;padding-top:21px;color:var(--blue-dark);font-weight:800;border-bottom:1px solid #bed0e5}.case-link:hover{color:#174f8c;border-color:#174f8c}
.sample-label{position:absolute;top:12px;right:12px;background:#fff;border:1px solid #ccd6e2;padding:5px 7px;font:500 .65rem IBM Plex Mono,monospace;color:#667085;text-transform:uppercase;letter-spacing:.04em}
.recon-visual{padding-top:52px}.recon-table{background:white;border:1px solid #d7dfe8;font-size:.73rem;overflow:hidden}.recon-row{display:grid;grid-template-columns:1.15fr .82fr .82fr .98fr;gap:8px;padding:10px 11px;border-bottom:1px solid #e2e7ed}.recon-row:last-child{border-bottom:0}.recon-head{background:#0d1a2b;color:white;font-weight:700}.status{font-weight:700}.status.ok{color:var(--green)}.status.timing{color:var(--amber)}.status.review{color:var(--red)}
.model-visual{padding-top:50px;display:grid;gap:10px}.model-layer{display:grid;grid-template-columns:92px 1fr auto;gap:12px;align-items:center;background:white;border:1px solid #d9e0e8;padding:11px 12px;font-size:.78rem}.model-layer strong{font-family:IBM Plex Mono,monospace;color:#245f9f}.model-layer span:last-child{color:#667085}.model-foot{font:500 .7rem IBM Plex Mono,monospace;color:#667085;margin-top:3px}
.kpi-visual{padding-top:50px}.kpi-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch}.kpi-box{background:white;border:1px solid #d9e0e8;padding:15px}.kpi-box b{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#667085;margin-bottom:10px}.kpi-value{font:800 1.75rem Manrope,sans-serif}.kpi-value.bad{color:#a23b3b}.kpi-value.good{color:#217a55}.kpi-arrow{display:grid;place-items:center;color:#8ba0b8;font-size:1.4rem}.kpi-mini{margin-top:8px;color:#667085;font-size:.72rem}
.more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}.mini-card{border:1px solid var(--line);padding:23px;background:#fff;display:flex;flex-direction:column}.mini-card p{color:#4b5563;font-size:.92rem}.mini-card .mini-meta{font:500 .71rem IBM Plex Mono,monospace;color:#245f9f;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.mini-result{margin:8px 0 0;padding:11px 13px;background:#f8fbff;border-left:3px solid var(--blue);font-size:.88rem!important;color:#344054!important}
.experience-section{background:#f8fafc}.two-column{display:grid;grid-template-columns:.72fr 1.28fr;gap:76px}.timeline{border-left:1px solid #cdd6e2;padding-left:34px}.timeline-item{display:grid;grid-template-columns:165px 1fr;gap:24px;position:relative;padding-bottom:44px}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";position:absolute;left:-40px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--blue)}.timeline-date{font:500 .76rem IBM Plex Mono,monospace;color:#475467;text-transform:uppercase}.company{color:#245f9f;font-weight:700;margin-top:-4px}.timeline ul{padding-left:20px;color:#475467;margin-bottom:0}.timeline li+li{margin-top:8px}.governance-note{margin-top:13px;padding:13px 15px;background:white;border:1px solid #d9e0e8;color:#475467;font-size:.89rem}.governance-note strong{color:#1f2937}
.about-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:78px}.about-copy{font-size:1.07rem;color:#c9d2df}.about-copy p:first-child{color:white}
.skills-section{background:white}.skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.skill-card{border:1px solid var(--line);padding:24px}.skill-card h3{font-size:1.05rem;margin-bottom:8px}.skill-card p{color:#475467;margin-bottom:0;font-size:.93rem}
.credentials-section{background:#f8fafc}.credentials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.credential-card{border:1px solid var(--line);background:white;padding:27px}.credential-card p{margin:8px 0 0;color:#475467}.credential-meta{color:#245f9f!important;font:500 .76rem IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.05em}
.contact-wrap{padding:82px 0;display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:end}.contact-links{display:grid;gap:12px;justify-items:start}.contact-links a{color:#245f9f;font-weight:700;border-bottom:1px solid #bed0e5}
footer{background:#050b13;color:#aab5c3;font-size:.84rem}.footer-wrap{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.case-header{background:var(--navy);color:white;border-bottom:1px solid #243248}.case-nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.case-back{color:#b8c5d6;font-size:.9rem}.case-hero{background:var(--navy);color:white;padding:78px 0 70px}.case-hero h1{max-width:900px}.case-lead{font-size:1.14rem;color:#c9d2df;max-width:780px}.case-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px;max-width:880px}.case-metric{border:1px solid #2d3b50;background:rgba(255,255,255,.025);padding:18px}.case-metric strong{display:block;font:800 1.35rem Manrope,sans-serif;color:#66abff;margin-bottom:3px}.case-metric span{color:#c9d2df;font-size:.84rem}.case-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.case-tags span{border:1px solid #39506f;color:#d8e6f7;font-size:.75rem;font-weight:700;padding:6px 9px;border-radius:5px}
.case-content{padding:72px 0}.case-block{display:grid;grid-template-columns:220px 1fr;gap:54px;padding:38px 0;border-bottom:1px solid var(--line)}.case-block:first-child{padding-top:0}.case-block:last-child{border-bottom:0}.case-block h2{font-size:1.35rem;letter-spacing:-.01em;margin:0}.case-block p,.case-block li{color:#475467}.case-block ul{padding-left:20px;margin-bottom:0}.case-block li+li{margin-top:8px}.decision-box{border-left:3px solid var(--blue);background:#f8fbff;padding:15px 17px;color:#344054;margin-top:16px}.case-table-wrap{margin-top:18px;border:1px solid var(--line);overflow:auto}.case-table-label{padding:9px 11px;background:#eef4fb;color:#475467;font:500 .7rem IBM Plex Mono,monospace;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}table{width:100%;border-collapse:collapse;font-size:.83rem;background:white}th,td{text-align:left;padding:10px 11px;border-bottom:1px solid #e3e8ef;white-space:nowrap}th{background:#0d1a2b;color:white;font-size:.75rem}tr:last-child td{border-bottom:0}.flow-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:18px}.flow-step{border:1px solid #cfd9e5;background:#fff;padding:9px 11px;font:600 .75rem IBM Plex Mono,monospace;color:#245f9f}.flow-arrow{color:#8ba0b8}.result-box{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;background:#f8fafc;border:1px solid var(--line);padding:18px;margin-top:16px}.result-box strong{font:800 1.7rem Manrope,sans-serif;color:#245f9f}.result-box p{margin:1px 0 0}.case-cta{background:var(--navy);color:white;padding:50px 0}.case-cta a{color:#8fc1ff;font-weight:700;border-bottom:1px solid #456b98}
@media(max-width:900px){.hero-grid,.section-heading,.two-column,.about-grid,.contact-wrap,.credentials-grid{grid-template-columns:1fr}.section-intro{justify-self:start}.project-grid{grid-template-columns:1fr}.project-card.featured{grid-row:auto}.more-grid{grid-template-columns:1fr}.skills-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:7px}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#07111f;padding:22px;flex-direction:column;border-bottom:1px solid #27364d;align-items:flex-start}.nav-links.open{display:flex}.menu-toggle{display:block}.case-metrics{grid-template-columns:1fr 1fr}.case-block{grid-template-columns:1fr;gap:13px}}
@media(max-width:620px){.container{width:min(calc(100% - 24px),var(--max))}.section-pad{padding:62px 0}.hero{padding-top:48px}h1{font-size:3.05rem}.hero-actions{flex-direction:column}.button{width:100%}.proof-panel{grid-template-columns:1fr}.proof-item{min-height:auto;border-bottom:1px solid #2d3b50!important;border-right:0!important}.proof-item:last-child{border-bottom:0!important}.brand-role{display:none}.recon-row{grid-template-columns:1.1fr .8fr .8fr}.recon-row span:nth-child(3){display:none}.kpi-grid{grid-template-columns:1fr}.kpi-arrow{transform:rotate(90deg)}.case-metrics{grid-template-columns:1fr}.case-hero{padding:55px 0}.case-nav{min-height:64px}.case-back{font-size:.82rem}.footer-wrap{flex-direction:column;justify-content:center;text-align:center;padding:17px 0}.sanitize-note{display:block}.sanitize-note strong{display:block;margin-bottom:4px}}

/* Responsive refinements */
@media(min-width:901px){
  .project-card.featured{
    grid-column:1 / -1;
    grid-row:auto;
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  }
  .project-card.featured .project-visual{
    min-height:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-bottom:0;
    border-right:1px solid var(--line);
  }
  .project-card.featured .project-body{
    padding:30px 32px;
  }
  .project-card.featured .case-link{
    margin-top:20px;
    padding-top:0;
  }
}

@media(max-width:620px){
  body{line-height:1.55}
  .container{width:min(calc(100% - 30px),var(--max))}
  .section-pad{padding:52px 0}
  h1{font-size:2.65rem;line-height:1.02}
  h2{font-size:2rem}
  h3{font-size:1.18rem}
  .eyebrow{margin-bottom:13px}
  .hero{padding-top:40px}
  .hero-text{font-size:1rem}
  .hero-actions{margin:26px 0 18px}
  .tool-strip{gap:10px 18px;margin-top:44px;padding:19px 0;font-size:.82rem}
  .section-heading{gap:12px;margin-bottom:25px}
  .sanitize-note{padding:12px 13px;margin-bottom:22px}
  .project-grid{gap:18px}
  .project-visual{min-height:0;padding:18px}
  .project-body{padding:21px}
  .project-result{padding:11px 13px}
  .tags{margin-top:16px}
  .case-link{padding-top:17px}
  .project-card.featured .case-link{margin-top:18px;padding-top:0}
  .more-grid{margin-top:32px;gap:14px}
  .mini-card{padding:20px}
  .timeline{padding-left:24px}
  .timeline-item:before{left:-30px}
  .timeline-item{padding-bottom:34px}
  .about-copy{font-size:1rem}
  .skill-card,.credential-card{padding:20px}
  .contact-wrap{padding:58px 0;gap:26px}

  .case-hero{padding:46px 0 42px}
  .case-hero h1{font-size:2.45rem;line-height:1.04;margin-bottom:20px}
  .case-lead{font-size:1rem;line-height:1.58}
  .case-metrics{gap:9px;margin-top:26px}
  .case-metric{padding:14px}
  .case-metric strong{font-size:1.18rem}
  .case-tags{gap:6px;margin-top:17px}
  .case-content{padding:44px 0}
  .case-block{padding:29px 0;gap:12px}
  .case-block h2{font-size:1.28rem;line-height:1.18}
  .case-block p,.case-block li{font-size:.97rem}
  .case-block ul{padding-left:19px}
  .decision-box{padding:13px 14px;margin-top:13px}

  .flow-strip{display:grid;grid-template-columns:1fr;gap:5px;margin-top:16px}
  .flow-step{width:100%;padding:10px 12px;font-size:.73rem}
  .flow-arrow{justify-self:center;transform:rotate(90deg);line-height:1}

  .case-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .case-table-wrap table:not(.responsive-example-table){min-width:620px}

  .responsive-example-table{min-width:0!important;font-size:.84rem}
  .responsive-example-table thead{display:none}
  .responsive-example-table,
  .responsive-example-table tbody,
  .responsive-example-table tr,
  .responsive-example-table td{display:block;width:100%}
  .responsive-example-table tr{padding:8px 12px;border-bottom:1px solid #e3e8ef}
  .responsive-example-table tr:last-child{border-bottom:0}
  .responsive-example-table td{display:grid;grid-template-columns:108px minmax(0,1fr);gap:10px;padding:6px 0;border:0;white-space:normal}
  .responsive-example-table td::before{content:attr(data-label);font:600 .68rem/1.35 IBM Plex Mono,monospace;color:#667085;text-transform:uppercase;letter-spacing:.03em}
  .case-table-label{font-size:.64rem;line-height:1.45}

  .result-box{grid-template-columns:1fr;gap:5px;padding:15px}
  .result-box strong{font-size:1.55rem}
  .result-box p{font-size:.94rem}
  .case-cta{padding:38px 0}
}
