@font-face{font-family:Satoshi;src:url('assets/fonts/satoshi-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Satoshi;src:url('assets/fonts/satoshi-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Satoshi;src:url('assets/fonts/satoshi-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Satoshi;src:url('assets/fonts/satoshi-900.woff2') format('woff2');font-weight:900;font-display:swap}
:root{--red:#d42a16;--cream:#f8f2e8;--ink:#211f1c;--line:rgba(248,242,232,.42);--gutter:4.5vw;--ease:cubic-bezier(.16,1,.3,1);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:auto;scroll-padding-top:36px;background:var(--red)}
body{margin:0;background:var(--red);color:var(--cream);font-family:Satoshi,Arial,sans-serif;-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.45}
::selection{background:var(--cream);color:var(--red)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;border:0;border-radius:0;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:7px}
button:disabled{cursor:default}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure{margin:0}
button img,.text-link img,.hero-bottom img,.replay img,.services img,.contact-title-link img{filter:invert(96%) sepia(13%) saturate(362%) hue-rotate(329deg) brightness(104%) contrast(94%)}
.skip-link{position:fixed;top:12px;left:12px;background:var(--cream);color:var(--red);padding:12px 18px;z-index:10;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.hero{position:relative}
.hero-stage{height:100svh;min-height:720px;position:relative;overflow:hidden;isolation:isolate;background:#363636}
.hero-photo{position:absolute;top:0;left:0;width:140%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%}
.hero-photo{z-index:-3;opacity:0;transition:opacity .35s ease-out}
.hero-photo.is-ready{opacity:1}
.photo-shade{position:absolute;inset:0;background:#161411;opacity:0;z-index:-2}
.red-panel{position:absolute;inset-block:0;z-index:-1;will-change:transform}
.red-panel-left{left:0;width:62.75%}
.red-panel-right{right:0;width:23.85%}
.red-fill{position:absolute;inset:0;background:var(--red)}
.intro-pending .red-fill-left{transform:translateX(-102%)}
.intro-pending .red-fill-right{transform:translateX(102%)}
.intro-pending .hero-content,.intro-pending .hero-wordmark,.intro-pending .hero-bottom,.intro-pending .site-header>*{opacity:0}
.site-header{display:flex;align-items:center;height:90px;padding:0 var(--gutter);gap:4vw;position:relative;z-index:3}
.brand{font-weight:900;font-size:27px;letter-spacing:-.065em;line-height:1;white-space:nowrap}
.desktop-nav{display:flex;align-items:center;gap:3.25vw;font-size:16px}
.desktop-nav a,.login{position:relative}
.desktop-nav a:after,.login:after{content:"";position:absolute;bottom:-5px;left:0;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.desktop-nav a:hover:after,.login:hover:after{transform:scaleX(1)}
.login{margin-left:auto;padding:10px 0 10px 28px;border-left:1px solid var(--line);font-size:16px}
.menu-toggle,.mobile-nav{display:none}
.hero-content{position:absolute;left:var(--gutter);top:15%;width:60%}
h1{font-size:9.25vw;font-weight:900;letter-spacing:-.052em;line-height:.86}
.line-mask{display:block;overflow:hidden;padding:0 0 .12em;margin:0 0 -.12em}
.title-line{display:block;transform-origin:left bottom}
.hero-description{font-size:clamp(17px,1.48vw,24px);line-height:1.4;max-width:39vw;margin-top:2.4vw;letter-spacing:-.025em}
.text-link{display:inline-flex;align-items:center;gap:18px;max-width:100%;font-weight:500;font-size:clamp(16px,1.35vw,21px);line-height:1.3;position:relative;padding:0 0 9px;border-bottom:1px solid currentColor}
.text-link img{width:29px;flex:0 0 29px;transition:transform .4s var(--ease)}
.text-link:hover img{transform:translateX(8px)}
.hero-cta{margin-top:2.6vw}
.hero-wordmark{position:absolute;left:2.6%;right:2.6%;bottom:13%;font-weight:900;font-size:24.1vw;letter-spacing:-.069em;line-height:1;white-space:nowrap;pointer-events:none}
.wordmark-inner{display:block}
.wordmark-letter{display:inline-block}
.hero-bottom{position:absolute;bottom:4%;left:3.3%;right:3.3%;display:flex;align-items:center;justify-content:flex-end;gap:4vw;padding-top:20px;border-top:1px solid var(--line);font-size:15px}
.hero-bottom img{transform:rotate(90deg);width:26px}
.human-story{display:none;position:absolute;left:var(--gutter);right:var(--gutter);bottom:10%;pointer-events:none}
.motion-ready .human-story{display:block;opacity:0}
.human-story p{font-size:clamp(19px,1.7vw,27px);margin-bottom:4vw;line-height:1.35}
.human-story h2{font-size:clamp(64px,9vw,160px);font-weight:900;letter-spacing:-.07em;line-height:.9}
.section-pad{padding:130px var(--gutter)}
.section-label{font-size:17px;font-weight:500;margin-bottom:60px}
.approach{padding-top:150px}
.statement{font-size:clamp(64px,10.25vw,172px);font-weight:900;line-height:.93;letter-spacing:-.07em}
.statement>span{display:block}
.approach-copy{margin:75px 0 90px 42%;max-width:600px}
.lead{font-size:clamp(22px,2.3vw,36px);line-height:1.28;letter-spacing:-.035em}
.approach-copy>p+p{margin-top:32px;font-size:clamp(17px,1.4vw,21px);line-height:1.5;max-width:540px}
.value-row{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding:33px 0 40px;border-top:1px solid var(--line);align-items:center}
.value-row h3{font-size:clamp(42px,6vw,100px);font-weight:500;letter-spacing:-.07em;line-height:1.05}
.value-row p{font-size:clamp(17px,1.4vw,22px);max-width:410px;line-height:1.45}
.workplace{padding-top:75px}
.workplace h2,.transformation h2{font-size:clamp(54px,8.2vw,138px);line-height:.96;letter-spacing:-.065em;font-weight:900}
.workplace-heading .lead{max-width:750px;margin-top:42px}
figcaption{font-size:14px;margin-top:15px;opacity:.85}
.workplace-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;margin-top:62px;font-size:clamp(20px,1.7vw,28px);font-weight:500;letter-spacing:-.03em}
.workplace-notes span{display:block;margin-top:15px;font-size:17px;font-weight:400;line-height:1.5;letter-spacing:0;max-width:340px}
.transformation{padding-top:85px}
.transformation h2{max-width:1050px}
.transformation-body{display:grid;grid-template-columns:1fr 1.35fr;gap:12%;margin-top:70px}
.transformation-body>.lead{max-width:450px}
.services{min-width:0}
.services details{border-top:1px solid var(--line)}
.services summary{display:flex;align-items:center;justify-content:space-between;gap:26px;list-style:none;cursor:pointer;font-size:clamp(19px,1.65vw,26px);letter-spacing:-.025em;padding:25px 0}
.services summary::-webkit-details-marker{display:none}
.services summary img{flex:0 0 28px;transition:transform .4s var(--ease)}
.services details[open] summary img{transform:rotate(90deg)}
.services details p{padding:0 40px 28px 0;font-size:17px;line-height:1.6;max-width:590px}
.contact{padding-top:80px;padding-bottom:130px}
.contact h2{font-size:clamp(60px,9.6vw,160px);font-weight:900;letter-spacing:-.072em;line-height:.93}
.contact-title-link{position:relative;display:inline-block}
.contact-title-link img{display:inline-block;width:.85em;margin-left:.2em;transition:transform .5s var(--ease)}
.contact-title-link:hover img{transform:translate(.12em,-.12em)}
.contact-email{margin-top:50px;font-size:clamp(23px,2.1vw,34px)}
.site-footer{margin:0 var(--gutter);padding:28px 0 36px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:15px}
.site-footer .brand{font-size:28px}
.replay{display:flex;align-items:center;gap:16px;background:transparent;padding:8px 0;font-size:15px}
.replay img{transform:rotate(-90deg)}
@media(min-width:1800px){.hero-content{top:14%}.hero-description{max-width:620px}}
@media(min-aspect-ratio:3/2) and (min-width:901px){.hero-content{top:13%}h1{font-size:min(8.2vw,17svh)}.hero-description{font-size:clamp(17px,1.35vw,21px);margin-top:2vw}.hero-cta{margin-top:2vw}.hero-wordmark{font-size:min(24.1vw,42svh);bottom:8.5%}}
@media(max-height:760px) and (min-width:901px){.hero-stage{min-height:660px}.hero-content{top:17%}h1{font-size:8.3vw}.hero-description{font-size:18px;max-width:40vw;margin-top:22px}.hero-cta{margin-top:22px;font-size:17px}.hero-wordmark{font-size:21.8vw;bottom:6.5%;left:4.5%}.hero-bottom{bottom:3%;padding-top:12px}.site-header{height:80px}}
@media(max-width:900px){.hero-stage{min-height:760px}.site-header{gap:4vw;height:80px}.desktop-nav{gap:24px;font-size:14px}.brand{font-size:25px}.login{font-size:14px;padding-left:18px}.hero-content{top:18%}.hero-description{font-size:18px;max-width:48vw;margin-top:30px}.hero-cta{font-size:16px;margin-top:28px;gap:12px}.hero-cta img{width:24px;flex-basis:24px}.hero-wordmark{bottom:13%;font-size:25vw}.hero-bottom{bottom:5%}.section-pad{padding-block:95px}.approach-copy{margin-left:30%}.transformation-body{gap:7%}.workplace-notes{grid-template-columns:1fr;gap:32px}.workplace-notes span{max-width:500px}.workplace-notes p{font-size:25px}}
@media(max-width:600px){
  :root{--gutter:6vw}
  body{font-size:16px}
  .hero-stage{height:100svh;min-height:690px;max-height:1000px}
  .site-header{height:76px;justify-content:space-between}
  .brand{font-size:27px}
  .desktop-nav,.login{display:none}
  .menu-toggle{display:block;background:var(--red);padding:10px 0 10px 16px;font-size:16px}
  .mobile-nav:not([hidden]){display:flex;position:absolute;inset:76px 0 auto;background:var(--red);z-index:4;padding:25px var(--gutter) 38px;flex-direction:column;gap:16px;border-bottom:1px solid var(--line)}
  .mobile-nav a{font-size:28px;letter-spacing:-.04em;padding:4px 0}
  .red-panel-left{width:73%}.red-panel-right{width:11%}
  .hero-content{top:19%;width:88%;left:var(--gutter)}
  h1{font-size:13.5vw;line-height:.91;letter-spacing:-.06em}
  .hero-description{font-size:17px;max-width:64vw;margin-top:28px;letter-spacing:-.025em;line-height:1.45}
  .hero-cta{font-size:15px;max-width:64vw;align-items:flex-end;gap:10px;margin-top:28px}
  .hero-cta span{max-width:185px}
  .hero-wordmark{font-size:22.8vw;bottom:17%;left:3%;right:3%}
  .hero-bottom{left:var(--gutter);right:var(--gutter);bottom:5%;font-size:14px;padding-top:16px;justify-content:space-between}
  .hero-photo{width:100%;object-position:48% 50%}
  .human-story{bottom:15%}
  .human-story h2{font-size:14vw}
  .human-story p{font-size:18px;margin-bottom:35px;max-width:250px}
  .section-pad{padding-block:76px}
  .section-label{font-size:15px;margin-bottom:38px}
  .statement{font-size:13.4vw;line-height:1.02;letter-spacing:-.065em}
  .approach-copy{margin:40px 0 48px;max-width:none}
  .lead{font-size:25px}
  .approach-copy>p+p{font-size:17px;margin-top:25px}
  .value-row{grid-template-columns:1fr;gap:18px;padding:27px 0 30px}
  .value-row h3{font-size:12.5vw}
  .value-row p{font-size:17px;max-width:300px}
  .workplace h2,.transformation h2{font-size:12.1vw;line-height:1.03;letter-spacing:-.065em}
  .workplace-heading .lead{margin-top:26px;font-size:22px}
  figcaption{font-size:12px;max-width:300px}
  .workplace-notes{margin-top:38px;gap:29px}
  .workplace-notes p{font-size:23px}
  .workplace-notes span{font-size:16px;margin-top:10px}
  .transformation-body{grid-template-columns:1fr;margin-top:32px;gap:42px}
  .transformation-body>.lead{font-size:24px}
  .services summary{font-size:18px;gap:15px;padding:24px 0}
  .services details p{font-size:16px;padding-right:10px}
  .contact h2{font-size:13.8vw;line-height:1.02}
  .contact-email{font-size:25px;margin-top:35px}
  .site-footer{display:grid;grid-template-columns:1fr auto;gap:30px 16px;padding:26px 0 35px;font-size:13px}
  .site-footer .brand{font-size:25px}
  .site-footer>span{grid-column:1;grid-row:2}
  .replay{grid-column:2;grid-row:1 / 3;font-size:13px;gap:10px;max-width:130px;text-align:left}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.red-panel{will-change:auto}.human-story{display:none!important}.hero-stage{background:var(--red)}.hero-photo{display:none!important}}
