:root{--ink:#121417;--muted:#5b626c;--soft:#f5f7f8;--panel:#ffffff;--line:#d9dee5;--brand:#d90000;--brand-dark:#9f0000;--teal:#0f766e;--gold:#b7791f;--blue:#123c69;--shadow:0 18px 48px rgba(18,20,23,0.12)}*{box-sizing:border-box;letter-spacing:0}html{scroll-behavior:smooth}body{margin:0;background:var(--panel);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}body,button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}button{cursor:pointer}.site-header{align-items:center;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(217,222,229,.86);display:flex;gap:28px;justify-content:space-between;left:0;min-height:72px;padding:14px 48px;position:fixed;right:0;top:0;z-index:20}.brand{align-items:baseline;display:inline-flex;flex:0 0 auto;font-size:1.35rem;font-weight:750;line-height:1}.brand span{color:var(--brand)}.brand strong{color:var(--ink)}.site-header nav{align-items:center;display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:flex-end}.site-header nav a{border-radius:999px;color:var(--muted);font-size:.96rem;padding:8px 10px}.site-header nav a:focus-visible,.site-header nav a:hover{background:var(--soft);color:var(--ink);outline:none}.hero{align-items:center;display:flex;min-height:82svh;overflow:hidden;padding:128px 48px 72px;position:relative}.hero-image{object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(6,9,12,.88),rgba(6,9,12,.58),rgba(6,9,12,.18)),rgba(18,20,23,.34);inset:0;position:absolute;z-index:1}.hero-content{color:white;max-width:780px;position:relative;z-index:2}.card-eyebrow,.eyebrow{color:var(--brand);font-size:.78rem;font-weight:800;margin:0 0 12px;text-transform:uppercase}.hero .eyebrow{color:#ffb4b4}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08}.hero h1{font-size:5rem;margin-bottom:20px}.hero-lede{color:rgba(255,255,255,.9);font-size:1.35rem;margin-bottom:30px;max-width:720px}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{align-items:center;border:1px solid transparent;border-radius:8px;display:inline-flex;font-weight:800;justify-content:center;min-height:48px;min-width:150px;padding:12px 18px;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.button:focus-visible,.button:hover{outline:none;transform:translateY(-1px)}.button.primary{background:var(--brand);color:white}.button.primary:focus-visible,.button.primary:hover{background:var(--brand-dark)}.button.secondary{background:rgba(255,255,255,.92);border-color:rgba(255,255,255,.6);color:var(--ink)}.button.secondary:focus-visible,.button.secondary:hover{background:white}.button.wide{width:100%}.proof-strip{background:var(--ink);color:white;display:grid;grid-gap:1px;gap:1px;grid-template-columns:repeat(4,minmax(0,1fr))}.proof-strip div{background:#1c2025;min-height:116px;padding:24px 28px}.proof-strip span,.proof-strip strong{display:block}.proof-strip strong{font-size:1.1rem;margin-bottom:8px}.proof-strip span{color:#c8d0d8;font-size:.94rem}.section{margin:0 auto;max-width:1180px;padding:96px 48px}.band{background:var(--soft);max-width:none}.band>*{margin-left:auto;margin-right:auto;max-width:1180px}.section-heading{max-width:680px}.section-heading.centered{margin:0 auto 44px;text-align:center}.section-heading.compact{margin-bottom:32px}.contact-copy h2,.final-cta h2,.section-heading h2{font-size:3rem;margin-bottom:18px}.contact-copy p,.final-cta p,.intro-copy p,.section-heading p,.service-detail-hero p,.subpage-hero p{color:var(--muted);font-size:1.08rem}.contact-section,.detail-columns,.intro-section,.service-detail-hero,.split-section{display:grid;grid-gap:54px;gap:54px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.intro-copy{display:grid;grid-gap:18px;gap:18px}.intro-copy p{margin-bottom:0}.service-grid{display:grid;grid-gap:22px;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr))}.detail-columns article,.principle-grid article,.process-card,.service-card,.tech-card,.work-card,details{background:var(--panel);border:1px solid var(--line);border-radius:8px}.service-card{display:flex;flex-direction:column;min-height:100%;padding:18px}.service-media{aspect-ratio:16/10;background:#e8edf1;border-radius:6px;margin-bottom:20px;overflow:hidden;position:relative}.service-media img{object-fit:cover}.service-card h2,.service-card h3{font-size:1.35rem;margin-bottom:12px}.service-card p:not(.card-eyebrow){color:var(--muted);margin-bottom:18px}.check-list,.service-card ul{color:var(--ink);list-style:none;margin:0 0 22px;padding:0}.check-list li,.service-card li{border-top:1px solid var(--line);padding:10px 0 10px 24px;position:relative}.check-list li:before,.service-card li:before{background:var(--teal);border-radius:999px;content:"";height:7px;left:2px;position:absolute;top:19px;width:7px}.text-link{color:var(--brand);display:inline-flex;font-weight:800;margin-top:auto;width:-moz-fit-content;width:fit-content}.text-link:focus-visible,.text-link:hover{color:var(--brand-dark);outline:none;text-decoration:underline;text-underline-offset:4px}.sticky-heading{align-self:start;position:-webkit-sticky;position:sticky;top:116px}.work-list{display:grid;grid-gap:18px;gap:18px}.work-card{align-items:center;display:grid;grid-gap:22px;gap:22px;grid-template-columns:120px minmax(0,1fr);padding:18px}.work-card img{aspect-ratio:1;border-radius:6px;object-fit:cover}.work-card h3{font-size:1.25rem;margin-bottom:8px}.principle-grid p,.process-card p,.tech-card span,.work-card p,details p{color:var(--muted)}.clients-section{padding-top:32px}.logo-grid{align-items:stretch;display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(5,minmax(0,1fr))}.logo-tile{align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;display:flex;justify-content:center;min-height:128px;padding:22px}.logo-tile img{max-height:82px;object-fit:contain;width:auto}.principle-grid,.process-grid,.tech-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr))}.process-card{min-height:220px;padding:24px}.process-card span{color:var(--gold);display:block;font-weight:850;margin-bottom:34px}.principle-grid h3,.process-card h3,.tech-card h3{font-size:1.18rem;margin-bottom:12px}.principle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.principle-grid article{padding:26px}.tech-section{border-bottom:1px solid var(--line);border-top:1px solid var(--line);max-width:none}.tech-section>*{margin-left:auto;margin-right:auto;max-width:1180px}.tech-card{padding:22px}.tech-card div{display:flex;flex-wrap:wrap;gap:8px}.tech-card span{background:#eef5f4;border:1px solid #c9dedb;border-radius:999px;color:#174f49;display:inline-flex;font-size:.9rem;padding:7px 10px}.faq-section{display:grid;grid-gap:54px;gap:54px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.faq-list{display:grid;grid-gap:12px;gap:12px}details{padding:20px 22px}summary{color:var(--ink);cursor:pointer;font-weight:800}details p{margin:14px 0 0}.contact-section{background:var(--ink);border-radius:0;color:white;margin:0;max-width:none}.contact-section>*{margin-left:auto;margin-right:auto;max-width:560px;width:100%}.contact-copy .eyebrow{color:#ffb4b4}.contact-copy p{color:#c8d0d8}.contact-details{display:grid;grid-gap:8px;gap:8px;margin-top:26px}.contact-details a,.contact-details span,.final-cta a{color:inherit}.contact-details a{color:white;font-weight:800}.contact-form{background:white;border-radius:8px;box-shadow:var(--shadow);color:var(--ink);display:grid;grid-gap:18px;gap:18px;padding:28px}.field-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form label{display:grid;grid-gap:8px;gap:8px}.contact-form label span{color:var(--ink);font-weight:800}.contact-form input,.contact-form textarea{background:var(--soft);border:1px solid var(--line);border-radius:6px;color:var(--ink);min-height:48px;padding:12px 14px;width:100%}.contact-form textarea{min-height:150px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--blue);outline:3px solid rgba(18,60,105,.14)}.hidden-field{left:-100vw;position:absolute}.form-status{border-radius:6px;margin:0;padding:10px 12px}.form-status.success{background:#e6f4ef;color:#0f5132}.form-status.error{background:#fff1f0;color:#9f0000}.site-footer{align-items:center;background:#0b0d10;color:#d9dee5;display:flex;justify-content:space-between;padding:28px 48px}.site-footer a{color:white;font-weight:800}.subpage{padding-top:72px}.subpage-hero{background:var(--ink);color:white;padding:118px 48px 86px}.subpage-hero>*{margin-left:auto;margin-right:auto;max-width:940px}.subpage-hero .eyebrow{color:#ffb4b4}.subpage-hero h1{font-size:4rem;margin-bottom:20px}.subpage-hero p{color:#c8d0d8}.service-detail-hero{align-items:center;max-width:1180px;padding:132px 48px 74px}.service-detail-hero h1{font-size:4rem;margin-bottom:20px}.service-detail-hero .button.secondary{background:var(--soft);border-color:var(--line)}.detail-image{aspect-ratio:4/3;background:var(--soft);border-radius:8px;overflow:hidden;position:relative}.detail-image img{object-fit:cover}.detail-columns article{padding:30px}.detail-columns h2{font-size:1.8rem}.service-outcomes .process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-outcomes .process-card{min-height:170px}.final-cta{text-align:center}.final-cta .button{margin-top:12px}@media (max-width:1040px){.logo-grid,.process-grid,.service-grid,.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header{padding-left:28px;padding-right:28px}}@media (max-width:820px){.site-header{align-items:flex-start;flex-direction:column;gap:10px;min-height:104px;padding:14px 20px;position:absolute}.site-header nav{justify-content:flex-start}.site-header nav a{padding:6px 8px}.hero{min-height:84svh;padding:150px 24px 54px}.hero-overlay{background:rgba(6,9,12,.72)}.hero h1,.service-detail-hero h1,.subpage-hero h1{font-size:3.2rem}.hero-lede{font-size:1.12rem}.section,.service-detail-hero,.subpage-hero{padding-left:24px;padding-right:24px}.contact-copy h2,.final-cta h2,.section-heading h2{font-size:2.35rem}.contact-section,.detail-columns,.faq-section,.intro-section,.service-detail-hero,.split-section{grid-template-columns:1fr}.sticky-heading{position:static}.proof-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-section>*{max-width:none}}@media (max-width:620px){.hero h1,.service-detail-hero h1,.subpage-hero h1{font-size:2.5rem}.contact-copy h2,.final-cta h2,.section-heading h2{font-size:2rem}.button{width:100%}.field-grid,.logo-grid,.principle-grid,.process-grid,.proof-strip,.service-grid,.service-outcomes .process-grid,.tech-grid,.work-card{grid-template-columns:1fr}.work-card img{height:160px;width:100%}.site-footer{align-items:flex-start;flex-direction:column;gap:8px;padding:24px}}