:root{--red:#b20000;--red-hover:#d00000;--bg:#1b1b1d;--surface:#232325;--surface-2:#2a2a2e;--panel:#212124;--line:#ffffff17;--line-strong:#ffffff29;--text:#fff;--muted:#a8a8ad;--muted-2:#909096;--ink:#1d1d20;--ink-2:#4a4a4f;--ink-mut:#6b6b70;--light:#f7f7f8;--line-dark:#00000014;--line-dark-strong:#00000026;--font-display:"Lato",sans-serif;--font-label:"Montserrat",sans-serif;--ease:cubic-bezier(.16,1,.3,1);--gutter:clamp(20px,4vw,64px);--container:1280px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-display);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100dvh;font-weight:400;line-height:1.6;overflow-x:hidden}::selection{background:var(--red);color:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}:focus-visible{outline:2px solid var(--red);outline-offset:3px}.wrap{max-width:var(--container);padding-inline:var(--gutter);margin:0 auto}body:after{content:"";z-index:60;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.hdr{z-index:50;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#1b1b1ddb;height:72px;position:sticky;top:0}.hdr-in{max-width:var(--container);padding-inline:var(--gutter);align-items:center;gap:40px;height:100%;margin:0 auto;display:flex}.hdr .logo{flex:none;width:auto;height:34px}.nav{gap:6px;margin-left:auto;display:flex}.nav a{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:#b9b9be;transition:color .25s var(--ease);border-radius:0;padding:8px 14px;font-size:13px;font-weight:500;position:relative}.nav a:after{content:"";background:var(--red);transform-origin:0;height:2px;transition:transform .25s var(--ease);position:absolute;bottom:2px;left:14px;right:14px;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.nav a:hover{color:#fff}}@media (hover:hover) and (pointer:fine){.nav a:hover:after{transform:scaleX(1)}}.nav a[aria-current]:after{transform:scaleX(1)}.nav a[aria-current]{color:#fff}.hdr-cta{background:var(--red);color:#fff;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;transition:background .25s var(--ease), translate .25s var(--ease);flex:none;align-items:center;gap:10px;padding:12px 22px;font-size:12.5px;font-weight:700;display:inline-flex}@media (hover:hover) and (pointer:fine){.hdr-cta:hover{background:var(--red-hover);translate:0 -1px}}.burger{cursor:pointer;background:0 0;border:0;margin-left:auto;padding:10px;display:none}.burger svg{display:block}.hero{background:var(--bg);align-items:center;min-height:min(88vh,760px);display:flex;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0}.hero-bg img{object-fit:cover;object-position:center 30%;filter:grayscale(22%)contrast(1.03)brightness(.72);width:100%;height:100%}.hero-scrim{background:linear-gradient(90deg, #1b1b1de0 0%, #1b1b1dad 38%, #1b1b1d4d 68%, #1b1b1d38 100%), linear-gradient(0deg, var(--bg) 0%, transparent 22%);position:absolute;inset:0}.hero-in{z-index:2;width:100%;padding:clamp(96px,14vh,140px) 0 clamp(88px,13vh,132px);position:relative}.hero h1{letter-spacing:-.02em;text-wrap:balance;max-width:12ch;font-size:clamp(44px,7.2vw,92px);font-weight:900;line-height:1.04}.hero h1 .red{color:var(--red)}.hero-sub{color:#e6e6ea;letter-spacing:.01em;text-wrap:pretty;max-width:44ch;margin-top:26px;font-size:clamp(18px,2vw,22px);font-weight:300}.hero-sub .k{color:#fff;font-weight:700}.hero-cta-row{flex-wrap:wrap;align-items:center;gap:28px;margin-top:38px;display:flex}.btn{cursor:pointer;font-family:var(--font-label);letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--red);white-space:nowrap;transition:background .25s var(--ease), color .25s var(--ease), translate .25s var(--ease), border-color .25s var(--ease);align-items:center;gap:10px;padding:16px 30px;font-size:13px;font-weight:700;display:inline-flex}.btn svg{transition:translate .25s var(--ease)}.btn-primary{background:var(--red);color:#fff}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--red-hover);translate:0 -2px}.btn-primary:hover svg{translate:3px}}.btn-ghost{border-color:var(--line-strong);color:#fff;background:0 0}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{border-color:var(--red);translate:0 -2px}.btn-ghost:hover svg{translate:3px}}@keyframes rise{0%{opacity:0;translate:0 26px}to{opacity:1;translate:0}}.hero-in>*{animation:rise .8s var(--ease) both}.hero-in>:nth-child(2){animation-delay:90ms}.hero-in>:nth-child(3){animation-delay:.18s}section{position:relative}.sec{padding:clamp(88px,12vh,150px) 0}.sec-line{border-top:1px solid var(--line)}h2.sec-title{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(32px,4.6vw,56px);font-weight:900;line-height:1.08}.sec-title .red{color:var(--red)}.sec-lead{color:var(--muted);max-width:60ch;margin-top:18px;font-size:clamp(16px,1.5vw,19px);font-weight:300}.mission{grid-template-columns:minmax(0,7fr) minmax(0,3fr);align-items:end;gap:clamp(40px,6vw,96px);display:grid}.mission p.kicker-line{color:#fff;text-wrap:balance;max-width:26ch;margin-top:34px;font-size:clamp(24px,3.2vw,40px);font-weight:300;line-height:1.32}.mission p.kicker-line .red{color:var(--red);font-weight:700}.mission .body{color:var(--muted);max-width:62ch;margin-top:26px;font-size:clamp(15.5px,1.4vw,18px);line-height:1.75}.est{border-left:1px solid var(--line-strong);padding-left:clamp(24px,2.5vw,40px)}.est .n{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(56px,6vw,84px);font-weight:900;line-height:1}.est .l{font-family:var(--font-label);letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin-top:12px;font-size:12px}.est .p{color:var(--muted);max-width:26ch;margin-top:18px;font-size:14px;line-height:1.6}.svc-head{justify-content:space-between;align-items:end;gap:32px;margin-bottom:clamp(44px,5vw,64px);display:flex}.svc-rows{border-top:1px solid var(--line-strong)}.svc-row{border-bottom:1px solid var(--line-strong);transition:background .3s var(--ease), padding-left .3s var(--ease);grid-template-columns:90px minmax(0,5fr) minmax(0,4fr) 56px;align-items:center;gap:clamp(18px,3vw,40px);padding:clamp(30px,3.4vw,44px) clamp(8px,1vw,16px);display:grid;position:relative}@media (hover:hover) and (pointer:fine){.svc-row:hover{background:var(--surface);padding-left:clamp(20px,2.2vw,36px)}}.svc-row .idx{font-variant-numeric:tabular-nums;color:var(--muted-2);letter-spacing:.06em;font-size:15px;font-weight:300}.svc-row .t{letter-spacing:-.01em;text-wrap:balance;font-size:clamp(22px,2.6vw,32px);font-weight:900;line-height:1.15}.svc-row .t small{color:var(--muted-2);letter-spacing:.04em;margin-top:8px;font-size:14px;font-weight:300;display:block}.svc-row .d{color:var(--muted);max-width:48ch;font-size:15.5px;font-weight:300;line-height:1.66}.svc-row .go{border:1px solid var(--line-strong);width:52px;height:52px;transition:border-color .3s var(--ease), background .3s var(--ease), translate .3s var(--ease);justify-self:end;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.svc-row:hover .go{border-color:var(--red);background:var(--red);translate:4px}}.quote-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel)}.quote-strip .wrap{padding-top:clamp(56px,7vw,84px);padding-bottom:clamp(56px,7vw,84px)}.quote-strip p{text-wrap:balance;max-width:34ch;font-size:clamp(24px,3.4vw,44px);font-weight:300;line-height:1.3}.quote-strip .red{color:var(--red);font-weight:700}.work-head{justify-content:space-between;align-items:end;gap:32px;margin-bottom:clamp(36px,4vw,56px);display:flex}@media (hover:hover) and (pointer:fine){.chip:hover{border-color:var(--red);color:#fff}}.work-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.tile{background:var(--surface);min-width:0;position:relative;overflow:hidden}.tile.wide{aspect-ratio:2.1;grid-column:span 2}.tile.sq{aspect-ratio:1}.tile img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease), filter .6s var(--ease);filter:grayscale(25%)brightness(.88)}@media (hover:hover) and (pointer:fine){.tile:hover img{filter:grayscale(0%)brightness();transform:scale(1.05)}}.tile .veil{background:linear-gradient(#1010121f 18%,#10101280 38%,#101012d9 66%,#101012f7 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.tile .cap{color:#fff;text-shadow:0 1px 10px #00000073;width:100%;padding:22px 24px}.tile .c1{font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:#dcdce1;margin-bottom:8px;font-size:11px;font-weight:700}.tile .c2{align-items:center;gap:8px;font-size:clamp(17px,1.6vw,22px);font-weight:900;line-height:1.2;display:flex}.tile .cap .ar{opacity:0;transition:all .3s var(--ease);color:var(--red);translate:-6px}@media (hover:hover) and (pointer:fine){.tile:hover .cap .ar{opacity:1;translate:0}}.tile:after{content:"";background:var(--red);transform-origin:0;width:100%;height:3px;transition:transform .4s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.tile:hover:after{transform:scaleX(1)}}.work-foot{justify-content:center;margin-top:38px;display:flex}.love{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:clamp(40px,6vw,96px);display:grid}.love-ph{min-height:460px;position:relative}.love-ph img{object-fit:cover;filter:grayscale(18%)contrast(1.03)brightness(.9);width:100%;height:100%;position:absolute;inset:0}.love-ph:after{content:"";box-shadow:inset 0 0 0 1px var(--line-strong);position:absolute;inset:0}.love-ph .tag{background:var(--red);color:#fff;font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;padding:12px 18px;font-size:11px;font-weight:700;position:absolute;bottom:-1px;left:-1px}.love .body{color:var(--muted);max-width:58ch;margin-top:26px;font-size:clamp(15.5px,1.4vw,18px);font-weight:300;line-height:1.78}.love .body+.body{margin-top:18px}.quotes{grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,64px);margin-top:clamp(40px,5vw,60px);display:grid}.q{border-top:2px solid var(--red);padding-top:28px}.q blockquote{max-width:32ch;font-size:clamp(19px,2vw,26px);font-weight:300;line-height:1.5}.q .by{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:22px;font-size:12.5px}.band-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:40px;padding-top:clamp(64px,8vw,100px);padding-bottom:clamp(64px,8vw,100px);display:flex}.band h2{letter-spacing:-.015em;text-wrap:balance;max-width:22ch;font-size:clamp(30px,4vw,52px);font-weight:900;line-height:1.1}.band .note{color:var(--muted);max-width:44ch;margin-top:16px;font-weight:300}.band .btn{padding:20px 38px;font-size:14px}footer{border-top:1px solid var(--line-strong);background:var(--bg)}.foot{grid-template-columns:1.8fr 1fr 1.2fr;gap:clamp(36px,5vw,80px);padding-top:clamp(56px,7vw,80px);padding-bottom:40px;display:grid}.foot .logo{width:auto;height:40px}.foot .desc{color:var(--muted);max-width:36ch;margin-top:22px;font-size:15px;font-weight:300}.foot h3{font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);margin-bottom:20px;font-size:12px;font-weight:700}.foot ul{gap:12px;list-style:none;display:grid}.foot ul a{color:var(--muted);transition:color .25s var(--ease);font-size:15px}@media (hover:hover) and (pointer:fine){.foot ul a:hover{color:var(--red)}}.foot .ci{gap:10px;display:grid}.foot .ci a{color:var(--muted);transition:color .25s var(--ease);align-items:center;gap:12px;font-size:15px;display:flex}@media (hover:hover) and (pointer:fine){.foot .ci a:hover{color:#fff}}.foot .ci svg{color:var(--red);flex:none}.foot-btm{border-top:1px solid var(--line);padding:26px var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.foot-btm span,.foot-btm a{color:var(--muted-2);font-size:13px;font-family:var(--font-label);letter-spacing:.04em}@media (hover:hover) and (pointer:fine){.foot-btm a:hover{color:var(--red)}}.soc{align-items:center;gap:10px;margin-top:24px;display:flex}.soc .soc-lnk{font-family:var(--font-label);letter-spacing:.05em;color:var(--muted);border:1px solid var(--line-strong);width:auto;height:40px;transition:all .25s var(--ease);align-items:center;gap:10px;padding:0 16px 0 12px;font-size:13px;display:inline-flex}@media (hover:hover) and (pointer:fine){.soc .soc-lnk:hover{border-color:var(--red);color:#fff;background:var(--red)}}section.light{color:var(--ink);border-top:1px solid var(--line-dark);background:#fff}section.light .sec-title{color:var(--ink)}section.light .red{color:var(--red)}section.light .sec-lead{color:var(--ink-2)}section.light .kicker-line{color:var(--ink)}section.light .body{color:var(--ink-2)}section.light .est{border-left:1px solid var(--line-dark-strong)}section.light .est .n{color:var(--ink)}section.light .est .l{color:var(--ink-mut)}section.light .est .p{color:var(--ink-2)}section.light .svc-rows{border-top:1px solid var(--line-dark-strong)}section.light .svc-row{border-bottom:1px solid var(--line-dark-strong)}@media (hover:hover) and (pointer:fine){section.light .svc-row:hover{background:var(--light)}}section.light .svc-row .idx{color:var(--ink-mut)}section.light .svc-row .t{color:var(--ink)}section.light .svc-row .t small{color:var(--ink-mut)}section.light .svc-row .d{color:var(--ink-2)}section.light .svc-row .go{border-color:var(--line-dark-strong);color:var(--ink-2)}@media (hover:hover) and (pointer:fine){section.light .svc-row:hover .go{background:var(--red);border-color:var(--red);color:#fff}section.light .chip:hover{border-color:var(--red);color:var(--ink)}}section.light .work-grid .tile{box-shadow:0 22px 48px #32080821}section.light .btn-ghost{border-color:var(--line-dark-strong);color:var(--ink)}section.light .q blockquote{color:var(--ink)}section.light .q .by{color:var(--ink-mut)}.band{background:var(--red)}.band h2{color:#fffc}.band h2 .red{color:#fff}.band .note{color:#ffffffc7}.band .btn{color:var(--ink);background:#fff;border-color:#fff}@media (hover:hover) and (pointer:fine){.band .btn:hover{background:#f3f3f4;translate:0 -2px}}.mnav{z-index:70;background:var(--bg);padding:calc(var(--gutter) - 2px) var(--gutter);clip-path:inset(0 0 100%);transition:clip-path .5s var(--ease);visibility:hidden;flex-direction:column;display:flex;position:fixed;inset:0}.mnav.open{clip-path:inset(0 0 0%);visibility:visible}.mnav .mx{border:1px solid var(--line-strong);color:#fff;cursor:pointer;width:46px;height:46px;transition:border-color .25s var(--ease), color .25s var(--ease);background:0 0;align-self:flex-end;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.mnav .mx:hover{border-color:var(--red);color:var(--red)}}.mnav .mlinks{align-content:center;gap:6px;margin:auto 0;display:grid}.mnav .mna{letter-spacing:-.02em;color:#fff;align-items:baseline;gap:14px;font-size:clamp(36px,9vw,50px);font-weight:900;display:flex}.mnav .mna small{font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-size:12px;font-weight:500}.mnav .mna[aria-current]{color:var(--red)}.mnav .btn.mna{justify-content:center;margin-top:34px;font-size:13px;font-weight:700}.slide{opacity:0;visibility:hidden;transition:opacity .9s var(--ease), visibility 0s linear .9s;position:absolute;inset:0}.slide:first-of-type{opacity:1;visibility:visible;z-index:1}.hero.live .slide{opacity:0;visibility:hidden;z-index:auto}.hero.live .slide.active{opacity:1;visibility:visible;transition:opacity .9s var(--ease);z-index:1}.slide-bg{position:absolute;inset:0}.slide-bg img{object-fit:cover;object-position:center 30%;filter:grayscale(22%)contrast(1.03)brightness(.72);width:100%;height:100%}.slide-scrim{background:radial-gradient(140% 100% at 12% 30%, #1414169e 0%, #14141661 46%, #14141600 72%), linear-gradient(90deg, #1b1b1dd6 0%, #1b1b1d9e 45%, #1b1b1d57 75%, #1b1b1d29 100%), linear-gradient(0deg, var(--bg) 0%, transparent 22%);position:absolute;inset:0}.slide-copy{z-index:2;padding:clamp(96px,14vh,140px) var(--gutter) clamp(88px,13vh,132px);opacity:0;transition:opacity .7s var(--ease) .15s, translate .7s var(--ease) .15s;position:relative;translate:0 18px}.slide.active .slide-copy{opacity:1;translate:0}.slide-h{letter-spacing:-.02em;text-wrap:balance;max-width:16ch;font-size:clamp(38px,6vw,80px);font-weight:900;line-height:1.05}.hctl{right:var(--gutter);z-index:3;gap:10px;display:flex;position:absolute;bottom:clamp(36px,5vh,56px)}.hbtn{border:1px solid var(--line-strong);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);width:52px;height:52px;transition:all .25s var(--ease);background:#1b1b1d8c;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.hbtn:hover{border-color:var(--red);background:var(--red)}@media (hover:hover) and (pointer:fine){.tile:hover img{filter:grayscale(0%)brightness();transform:scale(1.05)}}.tile:hover .cap .ar{opacity:1;translate:0}.tile:hover:after{transform:scaleX(1)}.tile:hover .cap{translate:0 -3px}.svc-row:hover{background:var(--surface);padding-left:clamp(20px,2.2vw,36px)}.svc-row:hover .go{border-color:var(--red);background:var(--red);translate:4px}.btn-primary:hover{background:var(--red-hover);translate:0 -2px}.btn-primary:hover svg{translate:3px}.btn-ghost:hover{border-color:var(--red);translate:0 -2px}.btn-ghost:hover svg{translate:3px}.btn-primary:hover{box-shadow:0 16px 34px #b2000061}}.hdots{left:var(--gutter);z-index:3;gap:10px;display:flex;position:absolute;bottom:clamp(48px,6vh,68px)}.hdot{cursor:pointer;width:26px;height:4px;transition:background .25s var(--ease), width .25s var(--ease);background:#ffffff47;border:0;padding:0}.hdot.on{background:var(--red);width:40px}.hdot:focus-visible,.hbtn:focus-visible{outline:2px solid var(--red);outline-offset:3px}@keyframes kb1{0%{transform:scale(1.02)translate(0)}to{transform:scale(1.14)translate(-1.6%,-1%)}}@keyframes kb2{0%{transform:scale(1.14)translate(-1.4%,1%)}to{transform:scale(1.02)translate(0)}}@keyframes kb3{0%{transform:scale(1.1)translate(1.2%)}to{transform:scale(1.2)translate(-1.2%,-1.2%)}}.slide-bg img{animation:16s ease-in-out infinite alternate kb1}.slide[data-slide="1"] .slide-bg img{animation-name:kb2}.slide[data-slide="2"] .slide-bg img{animation-name:kb3}@media (width<=1000px){.mission{grid-template-columns:1fr}.est{border-left:0;border-top:1px solid var(--line-strong);padding-top:32px;padding-left:0}.love{grid-template-columns:1fr}.love-ph{min-height:340px}}@media (width<=860px){.nav,.hdr-cta{display:none}.burger{display:block}.mnav .mna{opacity:0;transition:opacity .5s var(--ease), translate .5s var(--ease);transition-delay:calc(var(--i,0)*60ms);translate:0 18px}.mnav.open .mna{opacity:1;translate:0}.svc-row{grid-template-columns:44px 1fr 52px;grid-template-areas:"i t go""i d go"}.svc-row .idx{grid-area:i}.svc-row .t{grid-area:t}.svc-row .d{grid-area:d;margin-top:6px}.svc-row .go{grid-area:go}.work-grid{grid-template-columns:repeat(2,1fr)}.quotes,.foot{grid-template-columns:1fr}}@media (width<=560px){.slide-copy{padding-bottom:clamp(112px,16vh,150px)}.work-grid{grid-template-columns:1fr}.tile.wide,.tile.sq{aspect-ratio:2.1;grid-column:span 1}.hero-cta-row{gap:18px}.foot-btm{text-align:center;justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}.rv{opacity:0;transition:opacity .7s var(--ease), translate .7s var(--ease);transition-delay:calc(var(--i,0)*90ms);translate:0 26px}.rv.in{opacity:1;translate:0}.rv-clip{opacity:0;clip-path:inset(0 0 105%);transition:clip-path .9s var(--ease), opacity .5s var(--ease)}.rv-clip.in{opacity:1;clip-path:inset(0 0 0%)}.mask{display:block;overflow:hidden}.js .mask>span{transition:translate 1s var(--ease);display:block;translate:0 112%}.js .mask.m2>span{transition-delay:.12s}.js .mask.in>span{translate:0}@keyframes imgsettle{0%{transform:scale(1.07)}to{transform:scale(1)}}.hero-bg img{animation:imgsettle 2.6s var(--ease) both}.btn:active{scale:.97}.btn-primary{box-shadow:0 10px 26px #b2000047}@media (hover:hover) and (pointer:fine){.btn-primary:hover{box-shadow:0 16px 34px #b2000061}}.tile .cap{transition:translate .45s var(--ease)}@media (hover:hover) and (pointer:fine){.tile:hover .cap{translate:0 -3px}}@media (prefers-reduced-motion:reduce){.rv,.rv-clip,.mask>span,.hero-bg img,.slide-bg img{opacity:1!important;clip-path:none!important;transition:none!important;animation:none!important;translate:0!important}}
