
.sh{--bone:#e8e3d6;--ob:#060606;background:var(--ob)}
.sh main{font-family:var(--body);font-stretch:100%;font-size:16px;line-height:1.3;font-weight:400;letter-spacing:0;text-transform:none;color:var(--bone)}
/* type: three voices only. display for titles, body for sentences, mono for labels */
.sp-t,.rw-t,.cv-t,.st-h,.of-r .of-t,.ct-b,.nx b{font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.055em;line-height:.82;text-transform:uppercase}
.st-b{font-family:var(--body);font-weight:400;font-stretch:100%;letter-spacing:-.012em;text-transform:none}
.sh main img,.sh main video{display:block}
.sh main a{color:inherit;text-decoration:none}
.sh main .m,.hp-line,.st-k,.sw-h,.rw-m,.of-h,.sp dl,.ct p,.cl-bar,.cl-r,.wc-credits,.nx span,.pf-play span{font-family:var(--meta);font-stretch:normal;font-size:10px;line-height:1.5;letter-spacing:.09em;font-weight:400;text-transform:uppercase}
.sh main b,.sh main dt{font-weight:500}
/* home hero */
.hp{position:relative;height:100svh;min-height:560px;overflow:hidden;background:#000}
.hp-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hp::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,0) 30%,rgba(0,0,0,0) 55%,rgba(0,0,0,.55))}
.hp-line{position:absolute;z-index:1;left:var(--pad);right:var(--pad);bottom:clamp(20px,3.4vh,32px);display:flex;justify-content:space-between;gap:20px;margin:0;color:#fff}
/* statement */
.st,.pt{display:grid;grid-template-columns:1fr 3fr;gap:clamp(24px,5vw,90px);padding:clamp(56px,10vh,120px) var(--pad)}
.st-k{margin:0}
.st-h{margin:0;font-size:clamp(46px,6.4vw,104px)}
.p-home .st{grid-template-columns:1.1fr 1.4fr;align-items:end}
.sh .site-header .brand-name{display:inline-block}
body.sh .site-header{background:rgba(6,6,6,.5);border-color:rgba(232,227,214,.1);-webkit-backdrop-filter:blur(5px) saturate(1.2);backdrop-filter:blur(5px) saturate(1.2)}
body.sh.p-home .site-header:not(.scrolled){background:transparent;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
.st-b{margin:0;max-width:26em;font-size:clamp(22px,2.7vw,40px);line-height:1.14}
/* split */
.sp{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:min(86svh,820px);background:var(--bone);color:#0a0a0a;isolation:isolate}
.sh main a.sp{color:#0a0a0a}
.sp-img{position:relative;overflow:hidden}
.sp-blank{background:var(--ob)}
.sp-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sp.flip .sp-img{order:2}
.sp-info{display:flex;align-items:flex-end;justify-content:flex-end;padding:var(--pad)}
.sp.flip .sp-info{justify-content:flex-start}
.sp dl{display:grid;grid-template-columns:auto auto;gap:4px 34px;margin:0}
.sp dd{margin:0;text-align:right}
.sp-t{position:absolute;left:0;right:0;top:50%;transform:translateY(-55%);margin:0;text-align:center;white-space:nowrap;font-size:min(16vw,calc(140vw / var(--n)));pointer-events:none;color:#fff;mix-blend-mode:difference}
.sp-t.sp-sat{color:#808080;mix-blend-mode:saturation}
.sw-h,.of-h{display:flex;justify-content:space-between;align-items:baseline;padding:0 var(--pad) 22px}
.sw-h h2,.of-h h2,.hp-line h1,.hp-line p{margin:0;font:inherit;letter-spacing:inherit}
.rw{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4.4vw,68px) clamp(16px,2vw,28px);padding:0 var(--pad) clamp(56px,10vh,120px)}
.rw-c{display:block}
.rw-c.w{grid-column:1/-1}
.rw-i{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;background:#111}
.rw-c.w .rw-i{aspect-ratio:2.2/1}
.rw-i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.rw-c:hover .rw-i img{transform:scale(1.02)}
.rw-i::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.62))}
.rw-t{position:absolute;z-index:1;left:clamp(14px,1.8vw,28px);right:clamp(14px,1.8vw,28px);bottom:clamp(12px,1.6vw,24px);margin:0;font-size:clamp(30px,4.2vw,68px);color:var(--bone)}
.rw-c.w .rw-t{font-size:clamp(38px,7vw,118px)}
.rw-m{display:flex;justify-content:space-between;gap:16px;padding-top:12px}
/* offer */
.of{padding:clamp(40px,8vh,90px) 0 0}
.of-r{position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(20px,4vw,70px);align-items:end;min-height:clamp(200px,34vh,340px);padding:clamp(22px,3vw,44px) var(--pad);border-top:1px solid var(--line);overflow:hidden;isolation:isolate}
.of-m{position:absolute;z-index:-1;top:0;bottom:0;left:0;display:flex;width:max-content;opacity:.52;filter:saturate(.85);animation:mq 190s linear infinite;transition:opacity .35s}
.of-r:nth-child(2) .of-m{animation-delay:-6s}.of-r:nth-child(3) .of-m{animation-delay:-11s}.of-r:nth-child(4) .of-m{animation-delay:-3s}
.of-m img{flex:none;height:100%;width:auto;aspect-ratio:16/10;object-fit:cover}
@keyframes mq{to{transform:translateX(-50%)}}
.of-r::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(6,6,6,.25),rgba(6,6,6,.72));transition:background .35s}
.of-r:hover .of-m,.of-r:focus-within .of-m{opacity:.9}
.of-r:hover::after,.of-r:focus-within::after{background:linear-gradient(180deg,rgba(6,6,6,.05),rgba(6,6,6,.6))}
@media (hover:none){.of-m{opacity:.6}}
@media (prefers-reduced-motion:reduce){.of-m,.ab-on-m,.dh .of-m{animation:none}.tr-l,.tr-n,.tr-s{transition:none}}
.of-r .of-t{font-size:clamp(34px,5.6vw,88px)}
.of-d{max-width:34em;font-family:var(--body);font-size:clamp(15px,1.15vw,18px);line-height:1.35;font-weight:400;letter-spacing:-.012em;text-transform:none}
/* cta */
.ct{padding:clamp(70px,13vh,150px) var(--pad);text-align:center;background:var(--bone);color:#0a0a0a}
.sh main .ct a{color:#0a0a0a}
.ct p{margin:0 0 24px}
.ct-b{display:block;font-size:clamp(44px,10.5vw,170px)}
.sh main .ct .ct-btn{display:inline-flex;align-items:center;gap:14px;margin-top:clamp(28px,5vh,52px);padding:16px 22px;border:1px solid #0a0a0a;font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase;transition:background .2s,color .2s}
.sh main .ct .ct-m{display:block;width:max-content;margin:18px auto 0;font-family:var(--meta);font-size:12px;letter-spacing:.04em;text-decoration:underline;text-underline-offset:.2em}
.sh main .ct .ct-btn:hover,.sh main .ct .ct-btn:focus-visible{background:#0a0a0a;color:var(--bone)}
/* trust */
.tr{position:relative;isolation:isolate;overflow:hidden;padding:clamp(56px,10vh,120px) var(--pad)}
.tr-f{position:absolute;z-index:-1;inset:0}
.tr-l{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:3vw;opacity:0;filter:blur(3px);transition:opacity .7s}
.tr-l.on{opacity:.2}
.sh main .tr-l img{width:auto;height:56%;max-width:70%;object-fit:contain}
.sh main .tr-l.wide img{height:32%;max-width:84%}
.sh main .tr-l.tall img{height:76%}
.sh main .tr-l.muddy img{max-width:none;height:34%}
.tr-l.muddy span{font-family:var(--display);font-size:clamp(40px,8vw,130px);font-weight:650;font-stretch:88%;letter-spacing:-.035em;white-space:nowrap}
.tr-top{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.tr-top p{margin:0}
.tr-cap{display:flex;gap:1.6em;text-align:right}
.tr-names{margin:clamp(22px,3vw,44px) 0 0;font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.05em;line-height:.92;text-transform:uppercase;font-size:clamp(40px,7.2vw,118px)}
.tr-n,.sh main a.tr-n{color:#3f3e3a;transition:color .45s}
.tr-s{color:#272624}
.tr-n{cursor:default;white-space:nowrap}a.tr-n{cursor:pointer}
.sh main .tr-n.on,.sh main a.tr-n:hover,.sh main a.tr-n:focus-visible{color:var(--bone)}
.tr-note{max-width:34em;margin:clamp(26px,4vw,52px) 0 0;font-size:clamp(14px,1.05vw,16px);line-height:1.35;color:rgba(232,227,214,.7)}
/* about */
.ab-h{height:min(78svh,760px)}
.ab-h .ph-t{max-width:13em;font-size:clamp(40px,7vw,120px)}
.ab-cap{display:flex;justify-content:space-between;gap:16px;margin:0;padding:12px var(--pad) 0}
.p-about .st{padding-bottom:0}
.ab-w{display:flex;align-items:flex-end;min-height:min(78svh,760px);margin-top:clamp(56px,10vh,120px);padding:clamp(40px,7vh,80px) var(--pad)}
.ab-w>div{max-width:46em}
.sh main .ab-w>.bg{filter:none;opacity:.6}
.ab-w::after{background:linear-gradient(180deg,rgba(6,6,6,.3),rgba(6,6,6,.1) 35%,rgba(6,6,6,.88))}
.ab-w .pt-b{color:var(--bone)}
.ab-w .so-h{margin:14px 0 22px;font-size:clamp(40px,5.2vw,84px)}
.ab-f{padding-top:clamp(56px,10vh,120px)}
.so-b .pt-b:first-child{margin-top:0}
.ab-pair{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,28px);margin-top:clamp(24px,4vh,48px)}
.ab-pair .rw-i{display:block;position:relative;aspect-ratio:16/10;overflow:hidden}
.ab-pair .rw-i img{width:100%;height:100%;object-fit:cover;object-position:50% 38%}
.ab-pair article:last-child .rw-i img{object-position:50% 30%}
.ab-pair .pt-b{margin-top:14px}
.ab-on{position:relative;margin-top:clamp(56px,10vh,120px);height:clamp(200px,40vh,400px);overflow:hidden}
.ab-on-m{position:absolute;inset:0 auto 0 0;display:flex;width:max-content;animation:mq 150s linear infinite}
.ab-on-m img{flex:none;height:100%;width:auto;aspect-ratio:16/10;object-fit:cover}
.ab-on::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,6,6,0) 45%,rgba(6,6,6,.7))}
.ab-on .so-h{position:absolute;z-index:1;left:var(--pad);bottom:clamp(18px,3vw,40px)}
.ab-o{margin-top:0}
.ab-o .pt-b,.co-l .pt-b{color:#0a0a0a}
.ab-p{padding:clamp(56px,10vh,120px) var(--pad)}
.sh main .ab-p>.bg{opacity:.38;object-position:50% 35%}
.ab-p::after{background:linear-gradient(90deg,rgba(6,6,6,.8),rgba(6,6,6,.35))}
.ab-pl .st-k{margin-bottom:14px}
.ab-pl div{display:grid;grid-template-columns:1.1fr 1.4fr;gap:10px clamp(14px,5vw,90px);align-items:baseline;padding:clamp(14px,2.4vh,26px) 0;border-top:1px solid var(--line)}
.ab-pl b{font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.05em;line-height:.86;text-transform:uppercase;font-size:clamp(30px,4.2vw,66px)}
.ab-pl span{max-width:34em;font-size:clamp(15px,1.15vw,18px);line-height:1.35}
/* contact */
.co-d{display:flex;flex-wrap:wrap;gap:12px;margin:clamp(24px,4vh,40px) 0 0}
.sh main .co-d .ct-btn{text-transform:none;letter-spacing:.04em;font-size:12px}
.bgs{position:relative;isolation:isolate;overflow:hidden}
.sh main .bgs>.bg{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;filter:grayscale(1)}
.bgs::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(6,6,6,.55),rgba(6,6,6,.15) 45%,rgba(6,6,6,.8))}
.co-h{padding-bottom:clamp(56px,10vh,120px)}
.sh main .co-h>.bg{object-position:30% 50%;opacity:.75}
.sh main .co-f>.bg{opacity:.4;object-position:20% 50%}
.co-f::after{background:linear-gradient(90deg,rgba(6,6,6,.35),rgba(6,6,6,.82) 55%)}
.co-f{align-items:start;padding-top:clamp(56px,10vh,120px);padding-bottom:clamp(56px,10vh,120px)}
.co-f .so-h{font-size:clamp(34px,4.4vw,72px)}
.co-form{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,3vw,36px) clamp(16px,2vw,28px)}
.co-form label{display:flex;flex-direction:column;gap:8px}
.co-form .w{grid-column:1/-1}
.co-form label span{font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:rgba(232,227,214,.75)}
.co-form input,.co-form textarea,.co-form select{width:100%;min-height:48px;padding:10px 0;border:0;border-bottom:1px solid rgba(232,227,214,.45);border-radius:0;background:transparent;color:var(--bone);font-family:var(--body);font-size:18px;line-height:1.3;appearance:none;-webkit-appearance:none}
.co-form textarea{resize:vertical;min-height:130px}
.co-form select option{color:#0a0a0a}
.co-form ::placeholder{color:rgba(232,227,214,.4)}
.co-form input:focus-visible,.co-form textarea:focus-visible,.co-form select:focus-visible{outline:0;border-bottom-color:var(--bone);box-shadow:0 1px 0 var(--bone)}
.sh main .co-form button{justify-self:start;background:transparent;cursor:pointer;margin-top:6px}
.co-l{margin-top:0}
.sh main .co-f>div{align-self:start}
.cl-list.jl .cl-r{grid-template-columns:3em minmax(0,3.2fr) minmax(0,1fr) 8em}
/* journal post */
.jp-h{height:min(74svh,720px)}
.jp-h .ph-t{max-width:17em;font-size:clamp(34px,5.4vw,92px);line-height:.88}
.sh main .jp-n img{opacity:.45;filter:grayscale(1)}
.p-jp .st{padding-top:clamp(28px,5vh,56px);padding-bottom:0}
.jp-m .st-b{font-size:clamp(19px,2vw,30px);line-height:1.2;max-width:30em}
.jp-b{display:grid;grid-template-columns:1fr 3fr;gap:clamp(24px,5vw,90px);padding:clamp(36px,6vh,72px) var(--pad) clamp(56px,10vh,120px)}
.jb{grid-column:2;max-width:42em;font-size:clamp(17px,1.25vw,19px);line-height:1.55;color:rgba(232,227,214,.9)}
.jb p{margin:0 0 1.1em}
.jb h2{margin:1.7em 0 .5em;font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.045em;line-height:.92;text-transform:uppercase;font-size:clamp(26px,3vw,46px);color:var(--bone)}
.jb h3,.jb h4{margin:1.5em 0 .4em;font-family:var(--body);font-size:1.2em;line-height:1.2;font-weight:600;letter-spacing:-.012em;text-transform:none;color:var(--bone)}
.sh main .jb h2 strong,.sh main .jb h3 strong,.sh main .jb h4 strong{font-weight:inherit;text-transform:inherit;letter-spacing:inherit}
.sh main .jb strong,.sh main .jb b{display:inline;font:inherit;font-weight:600;letter-spacing:inherit;text-transform:none;color:var(--bone)}
.sh main .jb a{text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:1px}
.jb ul,.jb ol{margin:0 0 1.1em;padding-left:1.2em}
.jb li{margin:.3em 0}
.jb blockquote{margin:1.4em 0;padding-left:1em;border-left:1px solid var(--line);font-size:1.15em;line-height:1.35}
.jb figure{margin:1.6em 0}
.sh main .jb img{width:100%;height:auto}
.jb .jg{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:1.6em 0}
.jb .jg figure{margin:0}
.jb iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;margin:1.4em 0}
.jb table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:.9em}
.jb th,.jb td{padding:8px 10px 8px 0;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.jb-n{margin:2.4em 0 0}
.sh main .jb .ct-btn{text-decoration:none}
/* location page */
.lw{padding:clamp(40px,7vh,84px) 0 clamp(40px,7vh,84px)}
.lw .rw{grid-template-columns:repeat(3,1fr);padding-bottom:0}
.lw .rw-t{font-size:clamp(26px,2.8vw,46px)}
.p-dc .lw .rw{grid-template-columns:repeat(4,1fr)}.p-dc .lw .rw-t{font-size:clamp(22px,2.2vw,36px)}
.rw-d{display:block;margin-top:8px;max-width:34em;font-size:15px;line-height:1.4;color:rgba(232,227,214,.75)}
.lo-b{margin-top:clamp(56px,10vh,120px)}
.lo-b .so-h{margin:0 0 clamp(20px,3vh,36px);font-size:clamp(34px,4.6vw,76px);max-width:14em}
.lo-b .ab-pl b{font-size:clamp(24px,2.8vw,44px)}
.fq{padding:clamp(56px,10vh,120px) var(--pad)}
.fq .so-h{font-size:clamp(34px,4.6vw,76px);margin-bottom:clamp(20px,3vh,36px)}
.fq details{border-top:1px solid var(--line)}
.fq summary{display:flex;justify-content:space-between;gap:20px;padding:clamp(14px,2.2vh,22px) 0;cursor:pointer;list-style:none;font-size:clamp(19px,2vw,30px);line-height:1.15;letter-spacing:-.012em}
.fq summary::-webkit-details-marker{display:none}
.fq summary::after{content:"+";font-family:var(--meta);font-size:16px;flex:none}
.fq details[open] summary::after{content:"\2212"}
.fq details p{max-width:40em;margin:0 0 clamp(16px,2.4vh,26px);font-size:clamp(15px,1.15vw,18px);line-height:1.45;color:rgba(232,227,214,.82)}
.fq summary:focus-visible{outline:1px solid currentColor;outline-offset:3px}
.of-t{margin:0}
.of-i{margin:0;padding:0 var(--pad) 22px;max-width:34em;font-size:clamp(15px,1.15vw,18px);line-height:1.35;color:rgba(232,227,214,.8)}
.hs{display:grid;grid-template-columns:1.1fr 1.4fr;gap:clamp(22px,3vw,44px) clamp(24px,5vw,90px);align-items:end;padding:clamp(70px,13vh,150px) var(--pad)}
.hs .st-k{margin-bottom:14px}
.hs .ct-btn{margin-top:clamp(20px,3vh,32px)}
.sh main .hs>.bg{opacity:.42;object-position:50% 40%}
.qt{padding-top:0}
.qt blockquote{margin:0}
.qt footer{margin-top:16px;font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase}
.er{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:18px;min-height:100svh;padding:clamp(110px,15vh,160px) var(--pad) clamp(56px,10vh,120px)}
.er .so-h{font-size:clamp(52px,10vw,160px)}
.er .st-k,.er .st-b{margin:0}
/* agency */
.ag-h{height:min(88svh,860px)}
.ag-t{position:absolute;z-index:1;left:var(--pad);right:var(--pad);bottom:clamp(20px,3.6vw,52px);display:flex;flex-direction:column;gap:14px;color:var(--bone)}
.ag-t .ph-t{position:static}.ag-t p{margin:0}
.ag-ho{display:grid;grid-template-columns:1fr 1fr;gap:10px 40px;padding:18px var(--pad);border-bottom:1px solid var(--line)}
.ag-ho p{margin:0}.ag-ho b{margin-right:1.2em;opacity:.6}
.ag-p{padding-top:clamp(40px,7vh,84px)}
.p-ag .so-h{font-size:clamp(30px,3.8vw,60px)}
.p-ag .st-b{font-size:clamp(18px,1.7vw,26px);line-height:1.25}
.ag-s{margin-top:clamp(40px,7vh,84px);padding:clamp(40px,7vh,84px) var(--pad)}
.ag-s .st-k{margin:0 0 12px}
.ag-s .so-h{margin:0}
.ag-3c{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,48px);margin-top:clamp(20px,4vh,44px);padding-top:18px;border-top:1px solid var(--line)}
.ag-3c div{display:flex;flex-direction:column;gap:8px}
.ag-3c b{font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase;font-weight:500}
.ag-3c span{font-size:15px;line-height:1.4;color:rgba(232,227,214,.85)}
.ag-q{padding-top:clamp(40px,7vh,84px)}
.ag-w{padding:clamp(40px,7vh,84px) 0 0}
.ag-wt{padding:0 var(--pad) clamp(18px,3vh,32px);font-size:clamp(34px,4.6vw,76px)}
.ag-l{padding:0 var(--pad) clamp(40px,7vh,84px)}
.ag-r{display:grid;grid-template-columns:clamp(84px,9vw,130px) minmax(0,1.6fr) minmax(0,1fr);gap:clamp(14px,2.4vw,36px);align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.sh main .ag-r img{width:100%;aspect-ratio:16/9;object-fit:cover}
.ag-rt{display:flex;flex-direction:column;gap:8px}
.ag-rt b{font-family:var(--body);font-weight:500;letter-spacing:-.012em;line-height:1.1;font-size:clamp(17px,1.6vw,22px)}
.ag-rg{text-align:right;opacity:.7}
/* category pages */
.dh{position:relative;isolation:isolate;height:min(74svh,720px);min-height:420px;overflow:hidden;background:#000}
.dh .of-m{opacity:.7;filter:none}
.dh::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(6,6,6,.35),rgba(6,6,6,0) 35%,rgba(6,6,6,.8))}
.dh .ph-t{max-width:12em;font-size:clamp(40px,7.4vw,128px)}
.sb2.db{margin-top:clamp(56px,10vh,120px);align-items:start}
.db .ab-pl{grid-column:1/-1;margin-top:clamp(14px,3vh,34px)}
.db .ab-pl div{border-top-color:#0a0a0a}
.db .ab-pl b{font-size:clamp(24px,2.8vw,44px)}
.db .so-h{grid-column:1/-1;font-size:clamp(34px,4.6vw,76px);max-width:14em}
.cv-b{min-height:2.8em;margin:12px 0 0;max-width:34em;font-size:15px;line-height:1.4;color:rgba(232,227,214,.8)}
/* grain */
.sh::after{content:"";position:fixed;z-index:80;inset:-120px;pointer-events:none;background:url(/lab/assets/grain.png?v=2) 0 0/90px 90px;will-change:transform;animation:grain 1s steps(1) infinite}
@keyframes grain{0.000%{transform:translate(-40px,51px)}4.167%{transform:translate(39px,-67px)}8.333%{transform:translate(-6px,54px)}12.500%{transform:translate(21px,60px)}16.667%{transform:translate(48px,-84px)}20.833%{transform:translate(55px,-97px)}25.000%{transform:translate(20px,-34px)}29.167%{transform:translate(41px,-41px)}33.333%{transform:translate(-51px,83px)}37.500%{transform:translate(20px,38px)}41.667%{transform:translate(40px,21px)}45.833%{transform:translate(1px,63px)}50.000%{transform:translate(-62px,-41px)}54.167%{transform:translate(62px,-62px)}58.333%{transform:translate(33px,-1px)}62.500%{transform:translate(89px,-97px)}66.667%{transform:translate(71px,98px)}70.833%{transform:translate(-84px,-60px)}75.000%{transform:translate(94px,51px)}79.167%{transform:translate(-90px,-23px)}83.333%{transform:translate(99px,-93px)}87.500%{transform:translate(-32px,21px)}91.667%{transform:translate(52px,84px)}95.833%{transform:translate(-1px,82px)}}
@media (prefers-reduced-motion:reduce){.sh::after{animation:none}}
/* services */
.tl{text-decoration:underline!important;text-underline-offset:.16em;text-decoration-thickness:1px!important}
.so,.sp2{display:grid;grid-template-columns:1.1fr 1.4fr;gap:clamp(22px,3vw,44px) clamp(24px,5vw,90px);padding:clamp(110px,15vh,160px) var(--pad) 0;align-items:end}
.sp2{padding-top:clamp(56px,10vh,120px)}
.so>.st-k,.sp2>.st-k,.sb2>.st-k{grid-column:1/-1}
.so-h{margin:0;font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.055em;line-height:.84;text-transform:uppercase;font-size:clamp(44px,6.4vw,104px)}
.so>.rw-c,.sp2>.rw{grid-column:1/-1;margin-top:clamp(40px,8vh,90px)}
.sp2>.rw{padding:0 0 clamp(56px,10vh,120px)}
.rw3{grid-template-columns:repeat(3,1fr)}
.rw3 .rw-t{font-size:clamp(24px,2.7vw,44px)}
.rw-i.nt::after{display:none}
.sb2{display:grid;grid-template-columns:1.1fr 1.4fr;gap:clamp(22px,3vw,44px) clamp(24px,5vw,90px);align-items:end;margin-top:clamp(56px,10vh,120px);padding:clamp(56px,10vh,120px) var(--pad);background:var(--bone);color:#0a0a0a}
.sb2+.of{padding-top:0}
.sb2.pr{margin-top:0}
.pr-l{grid-column:1/-1;list-style:none;margin:clamp(30px,6vh,70px) 0 0;padding:0;counter-reset:s}
.pr-l li{display:grid;grid-template-columns:3.4em 1fr 1.6fr;gap:clamp(14px,3vw,60px);align-items:baseline;padding:clamp(14px,2.2vh,26px) 0;border-top:1px solid #0a0a0a;counter-increment:s}
.pr-l li::before{content:counter(s,decimal-leading-zero);font-family:var(--meta);font-size:11px;letter-spacing:.09em}
.pr-l b{font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.05em;line-height:.86;text-transform:uppercase;font-size:clamp(30px,4.6vw,72px)}
.pr-l span{max-width:34em;font-size:clamp(15px,1.15vw,18px);line-height:1.35}
.fi{padding:clamp(56px,10vh,120px) var(--pad)}
.fi ul{list-style:none;margin:22px 0 0;padding:0}
.fi li{padding:clamp(14px,2.2vh,24px) 0;border-top:1px solid var(--line);font-size:clamp(20px,2.5vw,38px);line-height:1.12;letter-spacing:-.012em}
.of-go{display:inline-flex;gap:10px;margin-top:16px;font-family:var(--meta);font-size:10px;letter-spacing:.09em;text-transform:uppercase}
.of-d{display:block}.of-go{display:flex}
/* catalog */
.ca{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);padding:0 var(--pad)}
.cv{position:sticky;top:0;height:100svh;display:grid;place-items:center}
.cv-f{position:relative;width:100%;overflow:hidden;background:#111}
.cv-f img{width:100%;aspect-ratio:16/9;object-fit:cover}
.cv-f::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.62))}
.cv-f.nt::after{display:none}
.cv-t{position:absolute;z-index:1;left:clamp(14px,1.8vw,26px);right:clamp(14px,1.8vw,26px);bottom:clamp(12px,1.6vw,22px);margin:0;font-size:clamp(26px,3.6vw,58px);color:var(--bone)}
.cl{padding:clamp(110px,16vh,150px) 0 clamp(60px,10vh,110px)}
.cl-bar{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid currentColor}
.cl-bar h1{margin:0;font:inherit;font-weight:500}
.cl-bar p{margin:0}
.cl-bar button{all:unset;margin-left:12px;cursor:pointer;opacity:.45;text-transform:uppercase}
.cl-bar button[aria-pressed=true]{opacity:1}
.cl-list{counter-reset:n}
.cl-r{display:grid;grid-template-columns:3em minmax(0,1.5fr) minmax(0,2.2fr) 8em;gap:10px;padding:4px 0;font-size:11px;font-variant-numeric:tabular-nums;opacity:.42;transition:opacity .15s;counter-increment:n}
.cl-r .n::before{content:counter(n,decimal-leading-zero)}
.cl-r span,.cl-r h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-r h2{margin:0;font:inherit;letter-spacing:inherit}
.cl-i{margin:0 0 14px;max-width:40em;font-size:15px;line-height:1.4;color:rgba(232,227,214,.75)}
.cl-r span:last-child{text-align:right}
.cl-r[hidden]{display:none}
.cl-f{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 18px;font-family:var(--meta);font-size:10px;letter-spacing:.09em}
.cl-f button{all:unset;cursor:pointer;opacity:.45;text-transform:uppercase}
.cl-f button[aria-pressed=true]{opacity:1}
.cl-f button:focus-visible{outline:1px solid currentColor;outline-offset:3px}
.cl-r.on,.cl-r:hover{opacity:1}
.cl-bar button:focus-visible,.cl-r:focus-visible,.sh main a:focus-visible{outline:1px solid currentColor;outline-offset:3px}
/* project */
.pf{padding:0 var(--pad);margin-top:clamp(40px,8vh,90px)}
.pf.top{margin-top:0;padding-top:calc(74px + var(--pad))}
.sh main .ph-play{position:absolute;z-index:2;right:var(--pad);bottom:clamp(20px,3.6vw,52px);display:inline-flex;gap:14px;padding:16px 22px;border:1px solid var(--bone);color:var(--bone);font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase;transition:background .2s,color .2s}
.sh main .ph-play:hover,.sh main .ph-play:focus-visible{background:var(--bone);color:#0a0a0a}
.pf:empty{display:none}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ph{position:relative;height:min(88svh,860px);min-height:420px;overflow:hidden;background:#000}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0) 30%,rgba(0,0,0,0) 50%,rgba(0,0,0,.62))}
.ph-t{position:absolute;z-index:1;left:var(--pad);right:var(--pad);bottom:clamp(20px,3.6vw,52px);margin:0;max-width:11em;font-family:var(--display);font-weight:650;font-stretch:82%;letter-spacing:-.055em;line-height:.84;text-transform:uppercase;font-size:clamp(46px,9.6vw,168px);color:var(--bone);text-wrap:balance}
.p-proj .pt{padding-top:clamp(36px,6vh,70px);padding-bottom:clamp(60px,10vh,120px)}
.pf-play{position:relative;display:block}
.pf-play img{width:100%;height:auto}
.pf-play span{position:absolute;left:clamp(14px,2vw,28px);bottom:clamp(12px,1.8vw,24px);color:#fff}
.wc{padding:0 var(--pad) clamp(60px,10vh,120px)}
.wc-pair{display:grid;grid-template-columns:1fr 1fr}
.wc-pair img,.wc-row>img,.wc-one img{width:100%;height:auto;aspect-ratio:var(--r,1.778);object-fit:cover}
.wc-row.solo{grid-template-columns:1fr}.wc-row.solo .wc-credits{max-width:900px}
.pt-b{max-width:44em;margin:22px 0 0;font-size:clamp(15px,1.15vw,18px);line-height:1.4;color:rgba(232,227,214,.78)}
.sh main .pt-btn{display:inline-flex;align-items:center;gap:14px;margin-top:28px;padding:14px 20px;border:1px solid currentColor;font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase}
.sh main .pt-btn:hover{background:var(--bone);color:#0a0a0a}
.pf-more{margin-top:10px}.pf-more a{display:grid;grid-template-columns:3em 1fr auto;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-family:var(--meta);font-size:11px;letter-spacing:.09em;text-transform:uppercase}
.wc-row{display:grid;grid-template-columns:2fr 1fr;align-items:end}
.wc-credits{padding:clamp(36px,7vh,80px) clamp(20px,3vw,48px) clamp(36px,7vh,80px) 0}
.wc-credits p{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin:0 0 6px}
.wc-credits p.g{margin-top:clamp(20px,4vh,44px)}
.wc-credits span:last-child{text-align:right}
.nx{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:0 var(--pad);padding:26px 0 clamp(70px,12vh,140px);border-top:1px solid currentColor}
.nx b{font-size:clamp(44px,9vw,150px)}
@media (max-width:820px){
 .ag-ho,.ag-3c{grid-template-columns:1fr}.ag-r{grid-template-columns:96px minmax(0,1fr)}.ag-rg{display:none}.cv-b{display:none}.dh{height:58svh}
 .hs{grid-template-columns:1fr}
 .lw .rw,.p-dc .lw .rw{grid-template-columns:1fr}
 .jp-b{grid-template-columns:1fr}.jb{grid-column:1}.jp-h{height:62svh}.jp-h .ph-t{font-size:clamp(30px,8.6vw,48px)}
 .cl-list.jl .cl-r{grid-template-columns:2.6em minmax(0,1fr)}.cl-list.jl .cl-r>:nth-child(3),.cl-list.jl .cl-r>:nth-child(4){display:none}.cl-list.jl .cl-r>:nth-child(2){white-space:normal}
 .ab-pair,.co-form,.ab-pl div{grid-template-columns:1fr}.ab-h{height:60svh}.ab-cap{flex-direction:column;gap:2px}.ab-h .ph-t{font-size:clamp(38px,11vw,60px)}
 .ph{height:72svh}.ph:has(.ph-play) .ph-t{bottom:92px}.sh main .ph-play{left:var(--pad);right:auto;bottom:22px}
 .hp-line{flex-direction:column;gap:0}
 .st,.pt{grid-template-columns:1fr;gap:28px}
 .sp{grid-template-columns:1fr;grid-template-rows:52svh auto;min-height:0}
 .sp.flip .sp-img{order:0}
 .sp-info,.sp.flip .sp-info{justify-content:flex-start;padding-top:clamp(56px,13vw,90px)}
 .sp-t{top:52svh;transform:translateY(-50%);font-size:min(21vw,calc(150vw / var(--n)))}
 .sp:has(.sp-blank){grid-template-rows:22svh auto}.sp:has(.sp-blank) .sp-t{top:22svh}
 .so,.sp2,.sb2{grid-template-columns:1fr}.rw3{grid-template-columns:1fr}.pr-l li{grid-template-columns:2.6em 1fr}.pr-l span{grid-column:2}
 .tr-names{font-size:clamp(36px,11vw,60px)}.tr-top{flex-direction:column;gap:6px}.tr-cap{text-align:left}.sh main .tr-l img{max-width:80%}.sh main .tr-l.wide img{max-width:90%}
 .of-r{grid-template-columns:1fr;gap:10px;align-content:end;min-height:230px}.p-home .st{grid-template-columns:1fr}.st-h{font-size:clamp(52px,16vw,84px)}
 .rw{grid-template-columns:1fr;gap:34px}.rw-c.w .rw-i,.rw-i{aspect-ratio:4/3}.rw-t,.rw-c.w .rw-t,.rw3 .rw-t{font-size:clamp(34px,10.5vw,56px)}
 .ca{grid-template-columns:1fr;gap:0}.cv{height:auto;top:74px;z-index:2;padding:16px 0 14px;background:var(--ob)}.cv-t{font-size:clamp(24px,7.4vw,40px)}
 .cl{padding-top:6px}.ca{padding-top:74px}.cl-r{grid-template-columns:2.6em minmax(0,.85fr) minmax(0,1.15fr);padding:7px 0}.cl-r>:nth-child(4){display:none}
 .wc-pair,.wc-row{grid-template-columns:1fr}.wc-credits{padding-right:0}
 .nx{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){.cl-r,.rw-i img{transition:none}.rw-c:hover .rw-i img{transform:none}}
