/* Homepage foundations */
.shell{width:min(1400px,calc(100% - 64px));margin:auto}.hero.home-hero{padding:54px 32px 32px}.home-hero .hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;min-height:690px;border-bottom:1px solid var(--line)}.hero-copy{padding:70px 5vw 70px 0;display:flex;flex-direction:column;justify-content:space-between}.home-hero h1{font-size:clamp(62px,6.2vw,104px);line-height:.91;letter-spacing:-.072em;font-weight:500;margin:34px 0}.home-hero h1 em{font-style:normal;color:var(--blue)}.hero-lead{font-size:17px;line-height:1.65;color:var(--muted);max-width:540px}.hero-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:42px}.primary{background:var(--blue);color:#fff;padding:17px 22px;border-radius:100px;font-size:12px;font-weight:600;display:inline-flex;gap:26px}.hero-note{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#777c84}.hero-media{position:relative;overflow:hidden;border-radius:var(--r3);min-height:690px}.hero-media img{width:100%;height:100%;object-fit:cover;display:block;animation:reveal 1.2s ease both}.image-label{position:absolute;left:18px;bottom:18px;background:rgba(250,249,246,.9);backdrop-filter:blur(12px);padding:15px 20px;border-radius:100px;box-shadow:0 8px 22px rgba(20,28,48,.08);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.image-label b{color:var(--blue);margin-right:14px}
.marquee{overflow:hidden;border-bottom:1px solid var(--line);background:#fff}.marquee-track{display:flex!important;width:max-content!important;will-change:transform;animation:webtrusTicker 22s linear infinite!important;transform:translate3d(0,0,0)}.marquee:hover .marquee-track{animation-play-state:paused!important}.marquee span{padding:20px 34px;font:600 12px Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase}.marquee i{color:var(--blue);font-style:normal}
.statement{padding:140px 32px}.statement-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:8vw}.section-num{font-size:10px;letter-spacing:.2em;color:#7d828b}.statement h2,.services-title h2,.work-copy h2,.process-intro h2,.contact h2{font-size:clamp(45px,5vw,75px);line-height:1.02;letter-spacing:-.055em;font-weight:500}.statement h2 span{color:var(--blue)}.statement-copy{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:58px;color:var(--muted);line-height:1.75;font-size:15px}.statement-copy a{color:var(--ink);font-weight:600;border-bottom:1px solid var(--ink);padding-bottom:5px;width:max-content}
.services{padding:0 32px 140px}.services-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;padding-bottom:40px;border-bottom:1px solid var(--ink)}.services-head>p{max-width:420px;color:var(--muted);line-height:1.7;justify-self:end}.service-row{display:grid;grid-template-columns:70px 1.1fr 1fr 50px;gap:24px;align-items:center;padding:32px 20px;border-bottom:1px solid var(--line);border-radius:var(--r1);transition:.28s}.service-row:hover{padding-left:34px;background:#fff;box-shadow:0 16px 42px rgba(24,34,58,.07);border-bottom-color:transparent;transform:translateY(-2px)}.service-row>span{font-size:10px;color:#777d87}.service-row h3{font-size:clamp(26px,2.6vw,39px);font-weight:500;letter-spacing:-.04em}.service-row p{font-size:13px;color:var(--muted);line-height:1.55}.service-row b{font-size:22px;color:var(--blue);font-weight:400}
.featured{background:var(--ink);color:#fff;padding:120px 32px}.featured-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.featured-head h2{font-size:clamp(48px,5vw,75px);font-weight:500;letter-spacing:-.055em}.featured-head p{color:#9ca5b7;max-width:400px;line-height:1.7}.work-card{display:grid;grid-template-columns:1.35fr .65fr;background:#fff;color:var(--ink);border-radius:var(--r3);overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.18)}.work-image{min-height:620px;overflow:hidden}.work-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.work-card:hover img{transform:scale(1.025)}.work-copy{padding:60px;display:flex;flex-direction:column;justify-content:space-between}.work-copy .tag{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--blue)}.work-copy h3{font-size:42px;line-height:1.08;letter-spacing:-.045em;margin:20px 0}.work-copy p{color:var(--muted);line-height:1.7}.outcomes{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:45px}.outcomes div{padding:22px 0}.outcomes div+div{border-left:1px solid var(--line);padding-left:22px}.outcomes b{display:block;font-size:15px}.outcomes span{font-size:10px;color:#7d828b;text-transform:uppercase;letter-spacing:.12em}
.method{padding:140px 32px;background:#fff}.method-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.process-intro h2{margin:20px 0 30px}.process-intro>p{color:var(--muted);max-width:480px;line-height:1.7}.process-list{counter-reset:step}.process-item{display:grid;grid-template-columns:70px 1fr;gap:20px;border-top:1px solid var(--line);padding:28px 22px;transition:.25s;border-radius:var(--r1)}.process-item:last-child{border-bottom:1px solid var(--line)}.process-item:hover{background:var(--paper);transform:translateX(8px)}.process-item span{font-size:10px;color:var(--blue)}.process-item h3{font-size:25px;font-weight:500;margin-bottom:10px}.process-item p{color:var(--muted);font-size:13px;line-height:1.6;max-width:500px}
.industries{padding:130px 32px;background:var(--cream)}.industries-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.industries h2{font-size:clamp(45px,5vw,72px);font-weight:500;line-height:1.04;letter-spacing:-.055em}.industry-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.industry-list div{border-top:1px solid #c6c2b8;padding:23px 0;font-size:15px}.industry-list div:before{content:"↗";color:var(--blue);margin-right:18px}
.principles{padding:130px 32px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:55px}.principle{background:#fff;padding:38px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--r2);border:1px solid rgba(216,213,206,.65);box-shadow:0 14px 38px rgba(25,33,54,.055);transition:.3s}.principle:hover{transform:translateY(-8px);box-shadow:0 24px 55px rgba(25,33,54,.1)}.principle b{font:500 27px Manrope,sans-serif;letter-spacing:-.03em}.principle p{font-size:13px;color:var(--muted);line-height:1.65}.principle span{font-size:10px;color:var(--blue)}
.contact{margin:0 32px 32px;background:linear-gradient(125deg,#2448e8,#3c49dc 60%,#6551de);color:#fff;padding:95px;position:relative;overflow:hidden;border-radius:var(--r3);box-shadow:0 28px 70px rgba(36,72,232,.22)}.contact:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.22);border-radius:50%;right:-120px;top:-250px;box-shadow:0 0 0 80px rgba(255,255,255,.045),0 0 0 160px rgba(255,255,255,.025)}.contact p{color:#d8deff;max-width:550px;line-height:1.7}.contact .white-pill{background:#fff;color:var(--ink);padding:17px 23px;border-radius:100px;display:inline-flex;gap:28px;font-size:12px;font-weight:600;margin-top:30px;position:relative;z-index:2}
@keyframes webtrusTicker{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}@keyframes reveal{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}
@media(max-width:900px){.home-hero .hero-grid,.statement-grid,.method-grid,.industries-grid{grid-template-columns:1fr}.hero-copy{min-height:600px}.hero-media{min-height:580px}.statement-copy{grid-template-columns:1fr}.services-head,.work-card{grid-template-columns:1fr}.services-head>p{justify-self:start}.service-row{grid-template-columns:45px 1fr 40px}.service-row p{display:none}.work-copy{min-height:500px}.featured-head{display:block}.featured-head p{margin-top:25px}.principle-grid{grid-template-columns:1fr}}
@media(max-width:600px){.shell{width:calc(100% - 36px)}.hero.home-hero,.statement,.services,.featured,.method,.industries,.principles{padding-left:18px;padding-right:18px}.hero.home-hero{padding-top:30px}.hero-copy{min-height:560px;padding:35px 0}.hero-media{min-height:430px}.home-hero h1{font-size:59px}.hero-bottom{align-items:flex-start;gap:28px;flex-direction:column}.statement,.services,.featured,.method,.industries,.principles{padding-top:90px;padding-bottom:90px}.service-row{padding:25px 14px}.work-image{min-height:360px}.work-copy{padding:30px}.industry-list{grid-template-columns:1fr}.contact{margin:0 12px 12px;padding:65px 26px;border-radius:22px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation-duration:38s!important}}

