:root{--ink:#102238;--navy:#101f34;--mint:#69dcc5;--blue:#155bae;--muted:#53657b;--line:#d9e3ec;--paper:#f7f9fc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #1c84bd;outline-offset:5px}.wrap{max-width:1240px;margin:auto;padding:0 32px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:15px;z-index:9}.skip:focus{top:10px}.top{background:var(--navy);color:#fff}.nav{display:flex;align-items:center;justify-content:space-between;padding-block:25px;gap:24px;border-bottom:1px solid #334359}.brand{font-size:1.3rem;font-weight:800;letter-spacing:-.05em;text-decoration:none}.brand span{color:var(--mint)}.navlinks{display:flex;gap:24px;font-size:.92rem}.navlinks a{text-decoration:none;color:#d2dcea}.navlinks a:hover{color:var(--mint)}.hero{display:grid;grid-template-columns:1.45fr .65fr;gap:70px;padding-block:78px 85px;align-items:end}.eyebrow{font-size:.82rem;text-transform:uppercase;letter-spacing:.13em;font-weight:750;color:var(--blue)}.top .eyebrow{color:var(--mint)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.1rem,6.3vw,5.75rem);line-height:1.04;letter-spacing:-.065em;margin:22px 0 30px}h1 em{font-style:normal;color:var(--mint)}.hero p{color:#c4d1e3;line-height:1.7;font-size:1.16rem;max-width:680px}.button{display:inline-flex;align-items:center;gap:20px;padding:15px 22px;background:var(--mint);color:var(--ink);font-weight:750;text-decoration:none;border-radius:4px;border:0;cursor:pointer}.button:hover{background:#98efdb}.hero .button{margin-top:10px}.hero-side{border-top:1px solid #4d5c70;padding-top:23px;margin-bottom:4px}.hero-side p{font-size:1rem}.hero-side .label{color:white;font-weight:700;display:block;margin:0 0 14px}.hero-side ul{padding-left:18px;color:#c4d1e3;font-size:1rem;line-height:1.85;margin:0}.keywords{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.keywords span{font-size:.85rem;letter-spacing:.07em;border:1px solid #4d5c70;padding:6px 11px;color:var(--mint)}section{padding-block:80px}h2{font-size:clamp(2.2rem,4vw,3.5rem);letter-spacing:-.055em;line-height:1.12;margin:10px 0 20px}.intro{max-width:720px;line-height:1.7;font-size:1.1rem;color:var(--muted);margin-bottom:34px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.section-head h2{margin-bottom:0}.textlink{font-weight:700;color:var(--blue);white-space:nowrap}.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.feature{padding:30px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:white;position:relative;min-height:280px;transition:background .15s}.feature:hover{background:#edf8f6}.feature .meta{font-size:.82rem;font-weight:750;color:var(--blue);line-height:1.5}.feature h3{font-size:1.45rem;letter-spacing:-.035em;line-height:1.25;margin:24px 0 13px}.feature p{color:var(--muted);line-height:1.6;font-size:1rem}.feature a{margin-top:auto;padding-top:14px;font-size:.92rem;font-weight:750;text-decoration:none}.feature a:after{content:"";position:absolute;inset:0}.blueprints{background:#eaf0f6}.blueprint-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #c9d5e2;gap:0 40px}.blueprint{padding:26px 0;border-bottom:1px solid #c9d5e2;display:grid;grid-template-columns:32px 1fr;gap:14px}.blueprint .index{font-size:.85rem;font-weight:700;color:var(--blue);padding-top:5px}.blueprint h3{font-size:1.2rem;letter-spacing:-.025em;margin-bottom:10px}.blueprint h3 a{text-decoration:none}.blueprint h3 a:hover{text-decoration:underline}.blueprint p{line-height:1.6;color:var(--muted);font-size:1rem;margin:0 0 10px}.smalltag{color:var(--blue);font-size:.8rem;font-weight:650}.library-head{max-width:830px}.filters{display:grid;grid-template-columns:1.7fr 1.2fr 1fr;gap:14px;padding:24px;background:white;border:1px solid var(--line)}.filter label{display:block;font-size:.86rem;font-weight:700;margin-bottom:9px}.filter input,.filter select{width:100%;height:49px;border:1px solid #aebdce;border-radius:3px;color:var(--ink);padding:10px 12px;background:white;min-width:0}.results-bar{display:flex;justify-content:space-between;gap:20px;padding:22px 0;color:var(--muted);font-size:.9rem;align-items:center}.results-bar button{border:0;background:transparent;padding:8px;color:var(--blue);cursor:pointer;font-weight:650}.groups{border-top:1px solid #b5c4d5}.industry{border-bottom:1px solid #b5c4d5}.industry summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:25px 4px}.industry summary::-webkit-details-marker{display:none}.industry summary h3{font-size:1.3rem;letter-spacing:-.025em;margin:0;flex:1}.industry summary:after{content:"+";font-size:1.5rem;font-weight:400;width:23px;text-align:center}.industry[open] summary:after{content:"−"}.count{color:var(--muted);font-size:.88rem}.work-row{display:grid;grid-template-columns:155px 1fr 130px;gap:24px;padding:20px 16px;border-top:1px solid var(--line);align-items:start;background:white}.work-brand{font-size:.83rem;color:var(--muted);line-height:1.5}.work-brand b{display:block;font-size:.9rem;color:var(--ink);font-weight:650}.work-title{font-size:1rem;line-height:1.5;font-weight:600;text-decoration:none}.work-title:hover{color:var(--blue);text-decoration:underline}.work-actions{font-size:.8rem;line-height:1.5;text-align:right;color:var(--blue)}.work-actions a{display:block;margin-top:5px;color:var(--muted)}.empty{padding:35px 0;color:var(--muted)}[hidden]{display:none!important}.archive-note{font-size:.9rem;line-height:1.7;color:var(--muted);margin:28px 0 0}.archive-note a{color:var(--blue)}.expertise{background:var(--navy);color:white}.expertise .eyebrow{color:var(--mint)}.expertise .intro{color:#bdcce0}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:38px}.expertise-card{border-top:2px solid var(--mint);padding-top:24px}.expertise-card h3{font-size:1.5rem;letter-spacing:-.03em}.expertise-card h3 span{display:block;font-size:.95rem;letter-spacing:0;font-weight:500;color:var(--mint);margin-top:9px}.expertise-card p{font-size:1rem;line-height:1.7;color:#c4d1e3}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about p{color:var(--muted);font-size:1.08rem;line-height:1.8}.contact{background:#155bae;color:white}.contact .eyebrow{color:#bff8e8}.contact p{font-size:1.1rem;color:#e1edff;line-height:1.7;max-width:650px}.contact a.button{background:white;margin:12px 20px 12px 0}.contact .social{font-weight:700;font-size:1rem}.footer{background:var(--navy);color:#c3cfe0;padding-block:27px;font-size:.9rem}.footer .wrap{display:flex;justify-content:space-between;gap:20px}.footer a{color:white} @media(max-width:950px){.hero{grid-template-columns:1fr;gap:38px}.hero-side{max-width:620px}.hero-side ul{display:flex;gap:8px 25px;flex-wrap:wrap}.hero-side ul li{margin-left:15px}.featured-grid{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.filter:first-child{grid-column:1/-1}.work-row{grid-template-columns:120px 1fr 105px;gap:15px}.about{gap:35px}}@media(max-width:650px){.wrap{padding-inline:20px}.nav{align-items:flex-start;flex-direction:column;gap:18px}.navlinks{gap:18px;font-size:.88rem;flex-wrap:wrap}.hero{padding-block:48px 58px}.hero h1{font-size:3.25rem}.hero p{font-size:1.05rem}section{padding-block:58px}.featured-grid,.blueprint-grid,.expertise-grid,.about{grid-template-columns:1fr}.feature{min-height:auto;padding:25px}.section-head{align-items:start;flex-direction:column}.filters{padding:17px;gap:13px}.filter{grid-column:1/-1}.work-row{grid-template-columns:1fr;gap:7px;padding:18px 12px}.work-brand b{display:inline;margin-right:9px}.work-actions{text-align:left;display:flex;gap:15px}.work-actions a{margin:0}.industry summary{gap:10px}.industry summary h3{font-size:1.1rem}.results-bar{gap:8px;align-items:start}.results-bar>div{display:flex;flex-wrap:wrap;justify-content:end}.footer .wrap{flex-direction:column}.about{gap:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
