@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600&display=swap";:root{--canvas:#f3f1eb;--paper:#faf9f5;--panel:#e8e5dc;--ink:#14201e;--navy:#0c1919;--navy-soft:#142725;--muted:#626b67;--rule:#d4d2ca;--accent:#b8d44a;--accent-dark:#829b25;--mint:#b7ccc5;--white:#fff;--display:"Manrope",sans-serif;--text:"DM Sans",sans-serif;--section:clamp(88px,10vw,156px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:var(--canvas);color:var(--ink);font:16px/1.6 var(--text);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}a{color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:#b8d44a2e;text-decoration:none}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}h1,h2,h3{text-wrap:balance}section[id]{scroll-margin-top:88px}.shell{width:min(1240px,100% - 80px);margin-inline:auto}.skip-link{z-index:100;background:var(--white);color:var(--ink);padding:10px 14px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.site-header{z-index:20;background:var(--navy);color:var(--white);border-bottom:1px solid #ffffff1f;position:relative}.header-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:48px;min-height:88px;display:grid}.wordmark{width:max-content;font:600 12px/.98 var(--display);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:11px;display:flex}.wordmark img{width:40px;height:40px}.wordmark span,.wordmark b{display:block}.wordmark b{font:inherit}nav{color:#c6cfcc;gap:42px;font-size:15px;display:flex}nav a{padding:14px 0;transition:color .2s;position:relative}nav a:after{content:"";background:var(--accent);height:1px;transition:right .2s;position:absolute;bottom:4px;left:0;right:100%}nav a:hover{color:var(--white)}nav a:hover:after{right:0}.nav-services{position:relative}.nav-trigger{align-items:center;gap:6px;display:flex}.nav-trigger>span{color:var(--accent);font-size:12px;transition:transform .2s}.services-menu{z-index:30;opacity:0;visibility:hidden;background:#132321;border:1px solid #334743;width:370px;padding:14px 18px 10px;transition:opacity .18s,transform .18s,visibility .18s;position:absolute;top:100%;left:50%;transform:translate(-50%,8px);box-shadow:0 24px 60px #00000047}.nav-services:hover .services-menu,.nav-services:focus-within .services-menu{opacity:1;visibility:visible;transform:translate(-50%)}.nav-services:hover .nav-trigger>span,.nav-services:focus-within .nav-trigger>span{transform:rotate(180deg)}.services-menu a{color:#d3ddda;border-bottom:1px solid #ffffff17;grid-template-columns:28px 1fr;gap:10px;padding:13px 4px;font-size:14px;line-height:1.4;display:grid}.services-menu a:after{display:none}.services-menu a:hover{color:var(--white)}.services-menu a>span{color:var(--accent);font-variant-numeric:tabular-nums;font-size:9px}.services-menu .services-menu-all{color:var(--white);border-bottom:0;grid-template-columns:1fr auto;font-weight:600}.services-menu .services-menu-all>span{font-size:13px}.mobile-nav{justify-self:end;display:none;position:relative}.mobile-nav summary{color:#dbe3e0;cursor:pointer;padding:10px 0;font-size:14px;font-weight:600;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary:after{content:" +";color:var(--accent)}.mobile-nav[open] summary:after{content:" −"}.mobile-nav>div{z-index:40;background:#132321;border:1px solid #334743;width:min(360px,100vw - 32px);padding:14px 18px;position:absolute;top:calc(100% + 17px);right:0;box-shadow:0 24px 60px #00000052}.mobile-nav a{color:#d3ddda;border-bottom:1px solid #ffffff17;padding:12px 2px;font-size:14px;display:block}.mobile-nav a:last-child{border-bottom:0}.header-cta{justify-self:end;align-items:center;gap:14px;font-size:15px;font-weight:600;display:inline-flex}.header-cta span{background:var(--accent);width:34px;height:34px;color:var(--navy);border-radius:50%;place-items:center;transition:transform .2s,background-color .2s;display:grid}.header-cta:hover span{background:#cce85d;transform:translate(2px,-2px)}.hero{background:var(--navy);min-height:calc(100svh - 88px);color:var(--white);position:relative;overflow:hidden}.hero-art{object-fit:cover;opacity:.2;filter:saturate(.55)contrast(1.16)brightness(.72);mix-blend-mode:screen;pointer-events:none;width:min(62vw,980px);height:100%;position:absolute;inset:0 0 auto auto;mask-image:linear-gradient(90deg,#0000 0%,#000 46% 100%)}.hero:after{content:"";background:linear-gradient(90deg,var(--navy) 0%,#0c1919d1 54%,#1f8a841f 100%);pointer-events:none;position:absolute;inset:0}.hero:before{content:"";aspect-ratio:1;pointer-events:none;border:1px solid #b8d44a24;border-radius:50%;width:700px;position:absolute;top:-28%;right:-12%;box-shadow:0 0 0 100px #b8d44a08,0 0 0 220px #b8d44a05}.hero-inner{z-index:1;grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);gap:68px 80px;min-height:calc(100svh - 88px);padding-block:clamp(72px,8vw,116px) 38px;display:grid;position:relative}.hero-copy{align-self:center}.eyebrow,.section-index{color:#60706b;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:600}.eyebrow{color:var(--mint);align-items:center;gap:14px;display:flex}.eyebrow span{background:var(--accent);width:34px;height:1px}h1,h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-weight:500;line-height:1.04}h1{max-width:780px;margin-top:34px;font-size:clamp(48px,5.3vw,78px)}.hero-lead{color:#bdc9c5;text-wrap:pretty;max-width:700px;margin:38px 0 0;font-size:clamp(18px,1.6vw,23px);line-height:1.5}.hero-actions{align-items:center;gap:30px;margin-top:44px;display:flex}.button{border:1px solid #0000;grid-template-columns:auto 18px;justify-content:center;align-items:center;gap:32px;min-width:250px;min-height:56px;padding:0 22px;font-size:15px;font-weight:600;line-height:1.2;transition:background-color .2s,color .2s,transform .2s;display:inline-grid}.button span{place-items:center;line-height:1;display:grid}.button-primary{background:var(--accent);color:var(--navy)}.button-primary:hover{background:#cce85d;transform:translateY(-2px)}.text-link{border-bottom:1px solid;gap:12px;padding-bottom:3px;font-size:15px;font-weight:600;transition:color .2s,border-color .2s;display:inline-flex}.text-link:hover{color:var(--accent-dark)}.hero .text-link{color:#dce3e0}.hero .text-link:hover{color:var(--accent)}.hero-panel{backdrop-filter:blur(16px);background:#ffffff0d;border:1px solid #ffffff26;align-self:center;padding:24px;box-shadow:0 28px 80px #0003}.panel-top{color:#84948f;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;font-size:9px;display:flex}.status{color:var(--mint);align-items:center;gap:6px;display:inline-flex}.status i{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #b8d44a1a}.panel-kicker{color:var(--white);font:500 20px var(--display);margin:46px 0 18px}.hero-panel ol{border-top:1px solid #ffffff24;margin:0;padding:0;list-style:none}.hero-panel li{border-bottom:1px solid #ffffff1f;grid-template-columns:26px 1fr auto;align-items:center;gap:12px;padding:15px 0;display:grid}.hero-panel li span{color:#6e817b;font-size:9px}.hero-panel li strong{font-size:15px;font-weight:500}.hero-panel li i{border:1px solid var(--accent);border-radius:50%;width:7px;height:7px}.panel-result{color:#b9c5c1;margin:24px 0 0;font-size:16px;line-height:1.6}.panel-result span{color:var(--accent);letter-spacing:.13em;text-transform:uppercase;margin-bottom:5px;font-size:8px;display:block}.hero-diagram{border-top:1px solid #ffffff24;grid-column:1/-1;grid-template-columns:250px 1fr;align-items:center;gap:40px;padding-top:30px;display:grid}.diagram-note{color:#71817c;letter-spacing:.13em;text-transform:uppercase;font-size:9px}.diagram-flow{color:#aab8b4;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;justify-content:flex-end;align-items:center;font-size:9px;display:flex}.diagram-flow i{background:#344a46;flex:1;min-width:20px;max-width:92px;height:1px;margin-inline:15px;position:relative}.diagram-flow i:after{content:"";border-top:1px solid var(--accent);border-right:1px solid var(--accent);width:6px;height:6px;position:absolute;top:-3px;right:0;transform:rotate(45deg)}.section-dark{background:var(--navy-soft);color:var(--white)}.split{padding-block:var(--section);grid-template-columns:.82fr 1.18fr;gap:clamp(64px,9vw,140px);display:grid}.split>div:first-child{border-right:1px solid #ffffff29;padding-right:46px}.split h2{margin-top:28px;font-size:clamp(36px,3.6vw,54px)}.section-dark .section-index{color:var(--accent)}.problem-copy{padding-top:38px}.problem-copy p,.about-copy p{text-wrap:pretty;max-width:660px;margin:0 0 28px;font-size:clamp(18px,1.55vw,22px);line-height:1.55}.problem-copy .position{border-top:1px solid #ffffff2e;border-left:2px solid var(--accent);color:#cbd6d2;margin-top:52px;padding:26px 0 0 28px;font-size:18px}.approach,.experience{padding-block:var(--section)}.section-heading{grid-template-columns:1fr 2fr;gap:28px 80px;display:grid}.section-heading h2{grid-column:1/3;max-width:900px;font-size:clamp(38px,4.2vw,60px)}.section-heading>p{max-width:720px;color:var(--muted);grid-column:1/3;margin:16px 0 0;font-size:18px}.approach-list{border-top:1px solid var(--ink);margin:78px 0 0;padding:0;list-style:none}.approach-list li{border-bottom:1px solid var(--rule);grid-template-columns:72px .85fr 1.15fr;gap:42px;padding:32px 0;transition:padding-left .2s,background-color .2s;display:grid}.approach-list li:hover{background:#ffffff52;padding-left:16px}.approach-number{color:var(--accent-dark);font:600 12px var(--display)}.approach-list h3{font:500 23px/1.25 var(--display);letter-spacing:-.025em;margin:0}.approach-list p{max-width:560px;color:var(--muted);margin:0;font-size:17px;line-height:1.65}.contexts{padding-block:var(--section);background:var(--paper)}.section-heading.compact h2{max-width:850px}.context-list{border-top:1px solid var(--ink);margin-top:76px}.context-list a{border-bottom:1px solid var(--rule);grid-template-columns:62px .8fr 1.2fr 42px;align-items:center;gap:32px;min-height:144px;transition:padding-inline .2s,background-color .2s;display:grid}.context-list a:hover{background:var(--canvas);margin-inline:-24px;padding-inline:24px}.context-index{color:var(--accent-dark);font-size:10px}.context-list h3{font:500 26px/1.2 var(--display);letter-spacing:-.03em;margin:0}.context-list p{max-width:560px;color:var(--muted);margin:0;font-size:17px;line-height:1.65}.context-arrow{border:1px solid #bfc3b9;border-radius:50%;justify-self:end;place-items:center;width:38px;height:38px;transition:transform .2s,background-color .2s;display:grid}.context-list a:hover .context-arrow{background:var(--accent);transform:translate(2px,-2px)}.all-services{margin-top:38px}.experience-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:78px;display:grid}.experience-grid article{border:1px solid var(--rule);background:var(--paper);flex-direction:column;min-height:350px;padding:30px;transition:transform .2s,border-color .2s;display:flex}.experience-grid article:hover{border-color:#aeb3a8;transform:translateY(-5px)}.experience-grid span{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;font-size:9px}.experience-grid h3{font:500 27px/1.2 var(--display);letter-spacing:-.03em;margin:58px 0 24px}.experience-grid p{color:var(--muted);margin:auto 0 0;font-size:17px;line-height:1.65}.section-teal{background:var(--panel)}.section-teal .split>div:first-child{border-color:#c7c6bd}.about-copy{padding-top:38px}.about-copy p:first-child{color:#334d46}.about-copy .text-link{margin-top:24px}.contact{padding-block:var(--section);text-align:center}.contact-rule{background:var(--accent-dark);width:1px;height:72px;margin:0 auto 38px}.contact h2{max-width:860px;margin:28px auto 0;font-size:clamp(42px,5.2vw,70px)}.contact p{max-width:620px;color:var(--muted);margin:34px auto}.contact .button{min-width:220px}footer{background:var(--navy);color:#e6ece9;padding-block:64px}.footer-grid{grid-template-columns:2fr 1fr 1.5fr 1fr;gap:50px;display:grid}.footer-grid>div{flex-direction:column;align-items:flex-start;gap:10px;font-size:14px;display:flex}.footer-grid a{transition:color .2s}.footer-grid a:hover{color:var(--accent)}.footer-brand>a{align-items:center;gap:13px;display:flex}.footer-brand img{width:44px;height:44px}.footer-brand strong{max-width:110px;font:600 15px/1.15 var(--display);letter-spacing:.06em;text-transform:uppercase}.footer-brand span,.footer-meta{color:#82928d}.footer-label{color:#687b75;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:9px}.footer-meta{justify-content:space-between}@media (width>=981px){.hero-inner{padding-top:48px}.hero-copy,.hero-panel{align-self:start}.hero-panel{margin-top:72px}}@media (width<=980px){.shell{width:min(760px,100% - 48px)}.header-inner{grid-template-columns:1fr auto auto;gap:28px}nav{display:none}.mobile-nav{display:block}.hero-inner{grid-template-rows:auto auto auto;grid-template-columns:1fr;gap:52px}.hero-panel{width:min(100%,520px)}.hero-diagram{grid-column:1}.split{grid-template-columns:1fr;gap:46px}.split>div:first-child{border-right:0;padding-right:0}.problem-copy,.about-copy{padding-top:0}.section-heading{grid-template-columns:1fr}.section-heading h2,.section-heading>p{grid-column:1}.approach-list li{grid-template-columns:52px 1fr;gap:12px 24px}.approach-list p,.context-list p{grid-column:2}.context-list a{grid-template-columns:46px 1fr 38px;gap:18px;padding-block:24px}.context-arrow{grid-area:1/3}.experience-grid{grid-template-columns:1fr}.experience-grid article{min-height:0}.experience-grid h3{margin:30px 0 18px}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.shell{width:calc(100% - 32px)}.header-inner{min-height:74px}.header-cta{gap:0;font-size:0}.header-cta span{font-size:18px}.hero,.hero-inner{min-height:auto}.hero-inner{gap:42px;padding-top:54px}h1{font-size:clamp(38px,11vw,52px)}.hero-lead{margin-top:28px;font-size:18px}.hero-actions{flex-direction:column;align-items:flex-start;margin-top:34px}.hero-panel{padding:20px}.panel-kicker{margin-top:34px}.hero-diagram{grid-template-columns:1fr;gap:18px}.diagram-flow{justify-content:flex-start;overflow:hidden}.diagram-flow span{font-size:7px}.diagram-flow i{min-width:8px;margin-inline:5px}.split h2,.section-heading h2{font-size:34px}.problem-copy p,.about-copy p{font-size:18px}.problem-copy .position{padding-left:18px}.approach-list{margin-top:52px}.approach-list li{grid-template-columns:34px 1fr;padding-block:24px}.approach-list li:hover{padding-left:0}.approach-list h3{font-size:21px}.context-list{margin-top:52px}.context-list h3{font-size:22px}.context-list a:hover{margin-inline:0;padding-inline:0}.experience-grid article{padding:24px}.contact h2{font-size:38px}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
