@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--eggshell: #f4f1de;--burnt-peach: #e07a5f;--twilight-indigo: #3d405b;--muted-teal: #81b29a;--apricot-cream: #f2cc8f;--white: #FFFFFF;--bg: var(--eggshell);--off: #e8e4ce;--black: var(--twilight-indigo);--mid: #4a4d68;--muted: #6b6e88;--hairline: #ccc8ad;--accent: var(--muted-teal);--font: "Outfit", system-ui, sans-serif;--max: 1080px;--nav-h: 64px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:20px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--bg);color:var(--black);line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.skip-link{position:absolute;top:-999px;left:0;background:var(--accent);color:#fff;padding:.75rem 1.5rem;font-weight:600;font-size:.85rem;z-index:9999;border-radius:0 0 4px}.skip-link:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.wrap{max-width:var(--max);margin:0 auto;padding:0 2rem}section{padding:7rem 0;border-bottom:1px solid var(--hairline)}section:last-of-type{border-bottom:none}.section-label{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--burnt-peach);margin-bottom:3.5rem;display:flex;align-items:center;gap:.75rem}.section-label:after{content:"";flex:1;height:1px;background:var(--hairline)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-family:var(--font);font-size:.82rem;font-weight:600;letter-spacing:.04em;border-radius:2px;cursor:pointer;transition:all .15s;border:none}.btn-dark{background:var(--twilight-indigo);color:var(--white)}.btn-dark:hover{background:var(--mid)}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--hairline)}.btn-ghost:hover{color:var(--twilight-indigo);border-color:var(--twilight-indigo)}.tag{font-size:.7rem;font-weight:500;padding:.25rem .6rem;background:var(--apricot-cream);color:var(--twilight-indigo);border-radius:2px}.tags{display:flex;flex-wrap:wrap;gap:.4rem}.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease}.reveal.in{opacity:1;transform:none}.reveal-d1{transition-delay:.08s}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 860px){section{padding:4rem 0}}.navbar{position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:100;background:#f4f1def0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color .25s}.navbar.scrolled{border-color:var(--hairline)}.nav-inner{max-width:var(--max);margin:0 auto;padding:0 2rem;height:100%;display:flex;align-items:center;justify-content:space-between}.nav-logo{font-size:.95rem;font-weight:600;letter-spacing:-.01em}.nav-links{display:flex;gap:2.5rem}.nav-links a{font-size:.82rem;font-weight:500;color:var(--muted);transition:color .15s}.nav-links a:hover{color:var(--black)}@media (max-width: 860px){.nav-links{display:none}}.hero{min-height:100vh;display:flex;align-items:center;padding-top:var(--nav-h);padding-bottom:5rem;border-bottom:1px solid var(--hairline)}.hero-inner{max-width:var(--max);margin:0 auto;padding:0 2rem;width:100%}.hero-kicker{font-size:.78rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:2rem;display:flex;align-items:center;gap:.6rem;animation:fadeUp .7s .1s ease both}.hero-kicker:before{content:"";display:inline-block;width:24px;height:1px;background:var(--accent)}.hero-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3rem;margin-bottom:0}.hero-text{min-width:0}.hero-photo-wrap{width:clamp(200px,24vw,340px);aspect-ratio:1 / 1;border-radius:50%;overflow:hidden;position:relative;animation:fadeUp .7s .15s ease both}.hero-photo-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle,transparent 28%,var(--eggshell) 94%);pointer-events:none}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:grayscale(100%)}.hero-name{font-size:clamp(3rem,6.5vw,7rem);font-weight:800;line-height:.95;letter-spacing:-.03em;color:var(--black);margin-bottom:2.5rem;animation:fadeUp .7s .2s ease both}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;padding-top:2.5rem;border-top:1px solid var(--hairline);animation:fadeUp .7s .35s ease both}.hero-tagline{font-size:clamp(1rem,1.8vw,1.2rem);font-weight:400;color:var(--mid);line-height:1.6;max-width:42ch}.hero-actions{display:flex;gap:1rem;justify-content:flex-end;align-items:center;flex-wrap:wrap}@media (max-width: 860px){.hero{padding-bottom:3rem}.hero-top{grid-template-columns:1fr;grid-template-rows:auto auto}.hero-photo-wrap{width:clamp(140px,38vw,200px);margin:0 auto 1.5rem;order:-1}.hero-kicker{font-size:.65rem}.hero-name{font-size:clamp(1.6rem,9vw,3rem)}.hero-bottom{grid-template-columns:1fr;gap:1.5rem}.hero-actions{justify-content:flex-start}}.about-grid{display:grid;grid-template-columns:5fr 4fr;gap:5rem;align-items:start}.about-headline{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;line-height:1.15;letter-spacing:-.025em;color:var(--black);margin-bottom:1.5rem}.about-body{font-size:1.05rem;color:var(--mid);line-height:1.75}.about-body p+p{margin-top:1rem}.about-creds{margin-top:2.5rem}.cred-item{display:flex;align-items:baseline;gap:.75rem;font-size:.88rem;color:var(--muted);padding:.7rem 0;border-bottom:1px solid var(--hairline)}.cred-item:last-child{border-bottom:none}.cred-item strong{font-weight:600;color:var(--black);white-space:nowrap}.stat-stack{display:flex;flex-direction:column}.stat-item{padding:2rem 0;border-bottom:1px solid var(--hairline)}.stat-item:last-child{border-bottom:none}.stat-num{font-size:3.5rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--black);margin-bottom:.3rem}.stat-label{font-size:.82rem;font-weight:500;color:var(--muted)}@media (max-width: 860px){.about-grid{grid-template-columns:1fr;gap:3rem}}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--hairline);border-radius:2px}.exp-col{padding:2.5rem;border-right:1px solid var(--hairline)}.exp-col:last-child{border-right:none}.exp-col-num{font-size:.68rem;font-weight:700;letter-spacing:.12em;color:var(--burnt-peach);margin-bottom:1.2rem}.exp-col-title{font-size:1.1rem;font-weight:700;color:var(--black);margin-bottom:.75rem;letter-spacing:-.01em}.exp-col-body{font-size:.88rem;color:var(--muted);line-height:1.65;margin-bottom:1.5rem}@media (max-width: 860px){.expertise-grid{grid-template-columns:1fr}.exp-col{border-right:none;border-bottom:1px solid var(--hairline)}.exp-col:last-child{border-bottom:none}}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.proj-card{padding:2rem;border:1px solid var(--hairline);border-radius:2px;transition:border-color .2s,background .2s;display:flex;flex-direction:column}.proj-card:hover{border-color:var(--muted-teal);background:var(--off)}.proj-status{font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}.status-active{color:var(--burnt-peach)}.status-delivered{color:var(--muted-teal)}.status-planned{color:var(--muted)}.proj-title{font-size:1.15rem;font-weight:700;color:var(--black);letter-spacing:-.02em;margin-bottom:.6rem;line-height:1.25}.proj-desc{font-size:.88rem;color:var(--muted);line-height:1.65;flex:1;margin-bottom:1.5rem}.proj-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:auto;padding-top:1.2rem;border-top:1px solid var(--hairline)}.proj-links{display:flex;gap:1rem;align-items:center;flex-shrink:0}.proj-link{font-size:.78rem;font-weight:600;color:var(--accent);letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:.3rem;white-space:nowrap;flex-shrink:0}.proj-link svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}@media (max-width: 860px){.projects-grid{grid-template-columns:1fr}}.exp-list{display:flex;flex-direction:column}.exp-row{display:grid;grid-template-columns:160px 1fr;gap:3rem;padding:2.5rem 0;border-bottom:1px solid var(--hairline);align-items:baseline}.exp-row:last-of-type{border-bottom:none}.exp-meta{font-size:.78rem;line-height:1.5}.exp-company{font-weight:700;color:var(--muted-teal);margin-bottom:.2rem}.exp-dates{color:var(--muted)}.exp-location{font-size:.78rem;color:var(--muted);margin-top:.15rem}.exp-role-title{font-size:1.05rem;font-weight:700;color:var(--black);letter-spacing:-.015em;margin-bottom:.75rem;line-height:1.3}.exp-bullets{display:flex;flex-direction:column;gap:.35rem}.exp-bullets li{font-size:.88rem;color:var(--muted);padding-left:1rem;position:relative;line-height:1.55}.exp-bullets li:before{content:"—";position:absolute;left:0;color:var(--hairline)}.exp-bullet-link{color:var(--accent);font-weight:600;white-space:nowrap}.exp-linkedin{padding-top:1.5rem;font-size:.82rem;color:var(--muted)}.exp-linkedin a{color:var(--accent);font-weight:600}@media (max-width: 860px){.exp-row{grid-template-columns:1fr;gap:.75rem}}.credentials-section{background:var(--off)}.cred-block{background:var(--eggshell);padding:2rem}.cred-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:2px;overflow:hidden}.cred-block{background:var(--white);padding:2rem}.cred-block-eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--burnt-peach);margin-bottom:.6rem}.cred-block-title{font-size:1rem;font-weight:700;color:var(--black);margin-bottom:.3rem;letter-spacing:-.01em}.cred-block-sub{font-size:.82rem;color:var(--muted);line-height:1.5}@media (max-width: 860px){.cred-grid{grid-template-columns:1fr}}.testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--hairline);border:1px solid var(--hairline);border-radius:2px;overflow:hidden}.testi-card{background:var(--white);padding:2.5rem;display:flex;flex-direction:column}.testi-quote{position:relative;font-size:1rem;color:var(--mid);line-height:1.7;margin-bottom:1.75rem}.testi-quote:before{content:"";display:block;width:24px;height:2px;background:var(--accent);margin-bottom:1.25rem}.testi-card figcaption{margin-top:auto}.testi-name{font-size:.92rem;font-weight:700;color:var(--black);letter-spacing:-.01em}.testi-title{font-size:.8rem;color:var(--muted);margin-top:.15rem}.testi-context{font-size:.72rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--burnt-peach);margin-top:.75rem}@media (max-width: 860px){.testi-grid{grid-template-columns:1fr}.testi-card{padding:2rem}}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.contact-headline{font-size:clamp(2rem,4vw,3.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;color:var(--black)}.contact-sub{margin-top:1.5rem;font-size:.95rem;color:var(--muted);max-width:36ch;line-height:1.7}.contact-links-col{display:flex;flex-direction:column}.contact-link-row{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 0;border-bottom:1px solid var(--hairline);transition:color .15s;color:var(--black)}.contact-link-row:last-child{border-bottom:none}.contact-link-row:hover{color:var(--accent)}.contact-link-row .label{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);width:70px;flex-shrink:0}.contact-link-row .value{font-size:.92rem;font-weight:500;flex:1;padding:0 1rem}.contact-link-row .arrow{color:var(--hairline);transition:color .15s,transform .15s}.contact-link-row:hover .arrow{color:var(--accent);transform:translate(3px)}@media (max-width: 860px){.contact-inner{grid-template-columns:1fr;gap:3rem}}.footer{padding:2rem 0;border-top:1px solid var(--hairline)}.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.footer-inner p{font-size:.78rem;color:var(--muted)}:root{--cs-white: #FFFFFF;--cs-off: #F8F8F8;--cs-black: #0A0A0A;--cs-mid: #3A3A3A;--cs-muted: #717171;--cs-hairline: #E4E4E4;--cs-accent: #1A6B3C;--cs-font: "Outfit", system-ui, sans-serif;--cs-max: 1080px;--cs-nav-h: 64px}.cs-root *,.cs-root *:before,.cs-root *:after{box-sizing:border-box;margin:0;padding:0}.cs-root{font-family:var(--cs-font);background:var(--cs-white);color:var(--cs-black);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}.cs-root img{display:block;max-width:100%}.cs-root a{color:inherit;text-decoration:none}.cs-root ul{list-style:none}.cs-header{position:sticky;top:0;z-index:100;background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--cs-hairline);height:var(--cs-nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 2rem}.cs-header-brand{font-size:.95rem;font-weight:600;letter-spacing:-.01em}.cs-nav{display:flex;gap:2.5rem;align-items:center}.cs-nav a{font-size:.82rem;font-weight:500;color:var(--cs-muted);transition:color .15s}.cs-nav a:hover{color:var(--cs-black)}.cs-header-back{color:var(--cs-accent)!important;font-weight:600!important;cursor:pointer}.cs-hero{min-height:100vh;display:flex;align-items:flex-end;padding-top:var(--cs-nav-h);padding-bottom:5rem;border-bottom:1px solid var(--cs-hairline)}.cs-hero-inner{max-width:var(--cs-max);margin:0 auto;padding:0 2rem;width:100%}.cs-hero-label{font-size:.78rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--cs-accent);margin-bottom:2rem;display:flex;align-items:center;gap:.6rem;animation:csFadeUp .7s .1s ease both}.cs-hero-label:before{content:"";display:inline-block;width:24px;height:1px;background:var(--cs-accent)}.cs-root h1{font-size:clamp(3rem,8vw,7rem);font-weight:800;line-height:.95;letter-spacing:-.03em;color:var(--cs-black);margin-bottom:2.5rem;animation:csFadeUp .7s .2s ease both}.cs-root h1 em{font-style:normal;color:var(--cs-accent)}.cs-hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;padding-top:2.5rem;border-top:1px solid var(--cs-hairline);animation:csFadeUp .7s .35s ease both}.cs-hero-sub{font-size:clamp(1rem,1.8vw,1.15rem);font-weight:400;color:var(--cs-mid);line-height:1.65;max-width:46ch}.cs-hero-meta{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end;align-content:flex-start}.cs-meta-chip{font-size:.72rem;font-weight:500;color:var(--cs-muted);border:1px solid var(--cs-hairline);border-radius:2px;padding:.28rem .65rem}.cs-meta-chip span{color:var(--cs-black);font-weight:600}.cs-hero-stats{display:flex;flex-wrap:wrap;border:1px solid var(--cs-hairline);border-radius:2px;overflow:hidden;margin-top:3rem;animation:csFadeUp .7s .45s ease both}.cs-stat{flex:1;min-width:150px;padding:1.75rem 2rem;border-right:1px solid var(--cs-hairline)}.cs-stat:last-child{border-right:none}.cs-stat-num{font-size:3rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--cs-black);margin-bottom:.3rem}.cs-stat-label{font-size:.75rem;font-weight:500;color:var(--cs-muted);text-transform:uppercase;letter-spacing:.08em}.cs-root section{padding:7rem 0;border-bottom:1px solid var(--cs-hairline)}.cs-root section:last-of-type{border-bottom:none}.cs-section-inner{max-width:var(--cs-max);margin:0 auto;padding:0 2rem}.cs-eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cs-muted);margin-bottom:3.5rem;display:flex;align-items:center;gap:.75rem}.cs-eyebrow:after{content:"";flex:1;height:1px;background:var(--cs-hairline)}.cs-root h2{font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:700;line-height:1.15;letter-spacing:-.025em;color:var(--cs-black);margin-bottom:1.5rem}.cs-root h3{font-size:1.05rem;font-weight:700;color:var(--cs-black);margin:2.5rem 0 .75rem;letter-spacing:-.01em}.cs-root p{margin-bottom:1rem;color:var(--cs-mid);line-height:1.75}.cs-root strong{color:var(--cs-black);font-weight:600}.cs-root ul{margin:.5rem 0 1rem}.cs-root ul li{padding:.4rem 0 .4rem 1rem;color:var(--cs-mid);position:relative;font-size:.95rem;line-height:1.65}.cs-root ul li:before{content:"—";position:absolute;left:0;color:var(--cs-hairline)}.cs-ip-notice{background:var(--cs-off);border:1px solid var(--cs-hairline);border-radius:2px;padding:1rem 1.5rem;margin:2rem 0;font-size:.82rem;color:var(--cs-muted);line-height:1.65}.cs-ip-notice strong{color:var(--cs-black);font-weight:600}.cs-callout{background:var(--cs-off);border-left:3px solid var(--cs-accent);border-radius:0 2px 2px 0;padding:1.25rem 1.5rem;margin:2rem 0}.cs-callout-label{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cs-accent);margin-bottom:.5rem}.cs-callout p{margin:0;font-size:.92rem;color:var(--cs-mid)}.cs-callout-amber{border-left-color:var(--cs-black)}.cs-callout-amber .cs-callout-label{color:var(--cs-black)}.cs-diagram-wrap{background:#080e1f;border:1px solid var(--cs-hairline);border-radius:2px;padding:2rem 1.5rem;margin:2.5rem 0;overflow-x:auto}.cs-diagram-wrap svg{display:block;min-width:800px;width:100%}.cs-kb-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--cs-hairline);border-radius:2px;overflow:hidden;margin:1.5rem 0}.cs-kb-card{padding:2rem;border-right:1px solid var(--cs-hairline)}.cs-kb-card:last-child{border-right:none}.cs-kb-card:hover{background:var(--cs-off)}.cs-kb-card-icon{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cs-accent);margin-bottom:.6rem}.cs-kb-card-title{font-size:1rem;font-weight:700;color:var(--cs-black);margin-bottom:.4rem;letter-spacing:-.01em}.cs-kb-card-desc{font-size:.88rem;color:var(--cs-muted);line-height:1.65}.cs-phase-list{display:flex;flex-direction:column;margin:1.5rem 0}.cs-phase{display:grid;grid-template-columns:52px 1fr;min-width:0;border:1px solid var(--cs-hairline);border-bottom:none;overflow:hidden}.cs-phase:first-child{border-radius:2px 2px 0 0}.cs-phase:last-child{border-bottom:1px solid var(--cs-hairline);border-radius:0 0 2px 2px}.cs-phase:hover{background:var(--cs-off)}.cs-phase-num{display:flex;align-items:flex-start;justify-content:center;padding-top:1.2rem;font-size:.82rem;font-weight:700;color:var(--cs-accent);border-right:1px solid var(--cs-hairline);background:var(--cs-off);flex-shrink:0}.cs-phase-body{padding:1.2rem 1.5rem;min-width:0}.cs-phase-title{font-size:.92rem;font-weight:700;color:var(--cs-black);margin-bottom:.4rem;line-height:1.4;overflow-wrap:break-word;word-break:break-word}.cs-phase-date{display:block;font-weight:400;font-size:.78rem;color:var(--cs-muted);margin-top:.15rem;letter-spacing:0}.cs-phase-desc{font-size:.88rem;color:var(--cs-muted);line-height:1.65;margin:0;overflow-wrap:break-word;word-break:break-word}.cs-phase-solo{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--cs-accent);margin-top:.5rem}.cs-split-table{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--cs-hairline);border-radius:2px;overflow:hidden;margin:1.5rem 0}.cs-split-col:first-child{border-right:1px solid var(--cs-hairline)}.cs-split-head{padding:.85rem 1.2rem;font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.cs-split-head.etl{background:var(--cs-off);color:var(--cs-accent);border-bottom:1px solid var(--cs-hairline)}.cs-split-head.rag,.cs-split-head.problem{background:var(--cs-off);color:var(--cs-black);border-bottom:1px solid var(--cs-hairline)}.cs-split-head.solution{background:var(--cs-off);color:var(--cs-accent);border-bottom:1px solid var(--cs-hairline)}.cs-split-item{padding:.55rem 1.2rem;font-size:.85rem;color:var(--cs-muted);border-top:1px solid var(--cs-hairline)}.cs-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--cs-hairline);border-radius:2px;overflow:hidden;margin:2rem 0}.cs-kpi-card{padding:2rem;border-right:1px solid var(--cs-hairline);border-bottom:1px solid var(--cs-hairline)}.cs-kpi-card:nth-child(3n){border-right:none}.cs-kpi-card:nth-last-child(-n+3){border-bottom:none}.cs-kpi-card:hover{background:var(--cs-off)}.cs-kpi-val{font-size:3rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--cs-black);margin-bottom:.3rem}.cs-kpi-label{font-size:.82rem;font-weight:500;color:var(--cs-muted);line-height:1.4}.cs-tech-list{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0 1.5rem}.cs-tech-tag{font-size:.7rem;font-weight:500;padding:.25rem .6rem;background:var(--cs-off);color:var(--cs-mid);border-radius:2px}.cs-role-card{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--cs-hairline);border-radius:2px;overflow:hidden;margin:1.5rem 0}.cs-role-block{padding:2rem}.cs-role-block:first-child{border-right:1px solid var(--cs-hairline)}.cs-role-block h3{margin-top:0;font-size:.95rem}.cs-role-block p{font-size:.88rem;color:var(--cs-muted);margin:0;line-height:1.65}.cs-footer{padding:2rem 0;border-top:1px solid var(--cs-hairline)}.cs-footer-inner{max-width:var(--cs-max);margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.cs-footer-label{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cs-accent);margin-bottom:.3rem}.cs-footer-note{font-size:.78rem;color:var(--cs-muted);max-width:55ch;line-height:1.6}.cs-footer a{color:var(--cs-accent);font-weight:600}@keyframes csFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 860px){.cs-nav{display:none}.cs-hero-bottom{grid-template-columns:1fr}.cs-hero-meta{justify-content:flex-start}.cs-kb-grid{grid-template-columns:1fr}.cs-kb-card{border-right:none;border-bottom:1px solid var(--cs-hairline)}.cs-kb-card:last-child{border-bottom:none}.cs-split-table{grid-template-columns:1fr}.cs-split-col:first-child{border-right:none;border-bottom:1px solid var(--cs-hairline)}.cs-kpi-grid{grid-template-columns:1fr 1fr}.cs-kpi-card:nth-child(3n){border-right:1px solid var(--cs-hairline)}.cs-kpi-card:nth-child(2n){border-right:none}.cs-role-card{grid-template-columns:1fr}.cs-role-block:first-child{border-right:none;border-bottom:1px solid var(--cs-hairline)}.cs-root section{padding:4rem 0}}@media (max-width: 540px){.cs-phase{grid-template-columns:40px 1fr}.cs-phase-num{font-size:.72rem;padding-top:1rem}.cs-phase-body{padding:1rem}.cs-phase-title{font-size:.85rem}.cs-phase-desc{font-size:.82rem}}
