@font-face{font-family:Golos;src:url("/assets/fonts/woff2/golos-cyrillic.woff2") format("woff2");font-weight:400 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Golos;src:url("/assets/fonts/woff2/golos-latin.woff2") format("woff2");font-weight:400 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Literata;src:url("/assets/fonts/woff2/literata-cyrillic.woff2") format("woff2");font-weight:200 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Literata;src:url("/assets/fonts/woff2/literata-latin.woff2") format("woff2");font-weight:200 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Prata;src:url("/assets/fonts/woff2/prata-cyrillic.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Prata;src:url("/assets/fonts/woff2/prata-latin.woff2") format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{--paper:#f3efe6;--ink:#151917;--muted:#666b67;--line:rgba(21,25,23,.22);--red:#d64236;--wine:#8d1e38;--edge:clamp(22px,4vw,68px)}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}
body{font-family:Golos,Arial,sans-serif;overflow:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,a{color:inherit;font:inherit}
button{border:0}
a:focus-visible,button:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}

.portrait-page{position:relative;width:100%;height:100svh;height:100dvh;min-height:min(680px,100dvh);overflow:hidden;background:var(--paper);isolation:isolate}
.one-frame{position:relative;width:100%;height:100%}
.site-header{position:absolute;z-index:20;top:clamp(22px,3.7vh,38px);left:var(--edge);right:var(--edge);display:flex;align-items:center;justify-content:space-between}
.wordmark{font-size:14px;font-weight:620;letter-spacing:-.035em;text-decoration:none}
.site-header nav{display:flex;align-items:center;gap:clamp(22px,3vw,46px)}
.site-header nav button,.site-header nav a{padding:0;background:transparent;font-size:13.5px;font-weight:500;text-decoration:none;cursor:pointer}
.site-header nav a{display:flex;align-items:center;gap:7px}
.site-header nav svg{width:13px;height:13px;color:var(--red);transition:transform .25s ease}
.site-header nav a:hover svg{transform:translate(3px,-3px)}
.contact-menu{position:relative}
.contact-trigger{display:flex;align-items:center;gap:7px}
.contact-trigger svg{width:13px;height:13px;color:var(--red);transition:transform .25s ease}
.contact-menu.is-open .contact-trigger svg{transform:rotate(90deg)}
.contact-options{position:absolute;z-index:30;top:calc(100% + 13px);right:0;width:148px;padding:9px 0;border-top:1px solid var(--red);border-bottom:1px solid var(--line);background:rgba(243,239,230,.94);box-shadow:0 14px 34px rgba(24,27,25,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease,visibility .2s}
.contact-menu.is-open .contact-options{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.contact-options a{display:flex!important;align-items:center;justify-content:space-between;padding:7px 3px!important;font-size:10px!important;text-transform:lowercase}
.contact-options svg{width:10px!important;height:10px!important}

.descriptor{position:absolute;z-index:8;top:10.5vh;left:5.2vw;margin:0;color:var(--ink);font-size:10px;font-weight:620;letter-spacing:.095em;text-transform:uppercase}
.central-idea{margin:0;font-weight:400;pointer-events:none}
.heading-red .idea-line--two,.heading-red .idea-line--three{color:#a63830}
.heading-wine .idea-line--two,.heading-wine .idea-line--three{color:var(--wine)}
.idea-line{position:absolute;display:block;overflow:hidden;white-space:nowrap}
.idea-line>span{display:block;clip-path:inset(0 100% 0 0);animation:ink-open .68s .06s cubic-bezier(.18,.78,.2,1) forwards}
.idea-line.is-open{overflow:visible}
.idea-line.is-open>span{animation:none;clip-path:none}
.idea-line--one{z-index:6;top:16.2vh;left:5.1vw;color:var(--ink);font-size:clamp(49px,5.45vw,96px);font-weight:560;line-height:.92;letter-spacing:-.073em}
.idea-line--one>span{padding-right:.14em;padding-bottom:.04em}
.idea-line--two{z-index:1;top:28vh;left:3.5vw;font:400 clamp(116px,13.5vw,224px)/1 Prata,Georgia,serif;letter-spacing:-.06em}
.idea-line--two>span{position:relative;padding:0 .14em .14em .02em}
.idea-line--three{z-index:7;top:53vh;left:22vw;font-size:clamp(72px,7.65vw,138px);font-weight:560;line-height:.86;letter-spacing:-.078em}
.idea-line--three>span{animation-delay:.06s}

.person{position:absolute;z-index:4;right:2vw;bottom:-5vh;width:min(42vw,760px);height:96vh;margin:0;clip-path:inset(100% 0 0 0);opacity:.001;animation:portrait-enter .68s .06s cubic-bezier(.18,.78,.2,1) forwards}
.person img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:scaleY(1.03);transform-origin:50% 100%}

.positioning{position:absolute;z-index:8;top:67.5vh;left:5.5vw;margin:0;color:#414642;font-size:clamp(13.5px,calc(.86vw + 2px),16px);line-height:1.48;letter-spacing:-.015em}

.project-index{position:absolute;z-index:10;left:5.5vw;bottom:10.2vh;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2.5vw,42px);width:min(53vw,860px)}
.project-index a{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);grid-template-rows:auto auto;padding-top:10px;border-top:1px solid var(--line);text-decoration:none;transition:border-color .24s ease}
.project-index a::before{content:"";position:absolute;top:-1px;left:0;width:0;height:1px;background:var(--red);transition:width .32s cubic-bezier(.2,.7,.2,1)}
.project-number{grid-row:1/3;color:var(--red);font-size:9px;font-weight:600;letter-spacing:.08em}
.project-index strong{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:560;letter-spacing:-.035em;transition:letter-spacing .24s ease}
.project-index strong svg{width:13px;height:9px;color:var(--red);transition:transform .24s cubic-bezier(.2,.7,.2,1)}
.project-index small{margin-top:5px;color:var(--muted);font-size:9.2px;line-height:1.3}
.project-index a:hover::before{width:100%}
.project-index a:hover strong{letter-spacing:-.025em}
.project-index a:hover svg{transform:translateX(6px)}
.project-index a:active strong{opacity:.72}
.project-index a:active svg{transform:translateX(6px)}

.editorial-meta{position:absolute;z-index:9;left:5.5vw;bottom:2.5vh;display:flex;align-items:center;gap:14px;width:min(89vw,1420px);color:var(--muted);overflow:hidden}
.editorial-meta p{display:flex;align-items:flex-start;gap:7px;margin:0}
.editorial-meta strong{color:var(--ink);font-size:21px;font-weight:560;line-height:.92;letter-spacing:-.055em}
.editorial-meta span{font-size:9px;line-height:1.2}
.editorial-meta>i{width:1px;height:20px;background:var(--line)}
.client-line{display:block!important;min-width:0;margin-left:8px!important;overflow:hidden;white-space:nowrap;color:var(--muted);font-size:9px!important;letter-spacing:.012em;mask-image:linear-gradient(to right,#000 0,#000 92%,transparent 100%)}

.chrome-enter{opacity:0;animation:chrome-in .3s .1s ease forwards}

.about{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;color:var(--ink);background:var(--paper)}
.about::backdrop{background:rgba(21,25,23,.34);backdrop-filter:blur(6px)}
.about[open]{animation:dialog-in .35s ease both}
.about-inner{min-height:100%;padding:0 var(--edge) clamp(22px,3vh,34px)}
.about-header{height:clamp(72px,8.5vh,92px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.about-header>span{font-size:14px;font-weight:620;letter-spacing:-.035em}
.about-header button{display:flex;align-items:center;gap:13px;padding:0;background:transparent;cursor:pointer;font-size:11px}
.about-header b{font-size:27px;font-weight:300;line-height:1}
.about-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:clamp(40px,6vw,96px);padding:clamp(30px,5.2vh,56px) 0 26px}
.about-grid>section{display:flex;flex-direction:column;gap:clamp(18px,3.4vw,49px)}
.about-grid>section>.about-kicker,.about-grid>section>h2,.about-grid>section>p{margin:0}
.about-kicker,.method-label{margin:0 0 10px;color:var(--wine);font-size:9px;font-weight:620;letter-spacing:.06em;text-transform:uppercase}
.about-grid h2{max-width:820px;margin:0 0 24px;font:470 clamp(30px,2.35vw,40px)/1.08 Literata,Georgia,serif;letter-spacing:-.042em;font-variation-settings:"opsz" 42,"wght" 470}
.about-grid p{max-width:820px;color:#474c48;font-size:clamp(13px,.94vw,15px);line-height:1.58}
.about-grid .about-lead{max-width:760px;padding-left:20px;border-left:1px solid var(--wine);color:var(--ink);font-size:clamp(14px,1vw,16px)}
.about-grid strong{color:var(--ink)}
.about-grid aside{position:relative;align-self:center;min-height:390px;padding:clamp(38px,5vw,72px) clamp(26px,3.5vw,52px);overflow:hidden;border-left:1px solid var(--line);background:linear-gradient(135deg,rgba(255,255,255,.3),rgba(226,219,205,.18))}
.method-content{position:relative;z-index:2}
.focus-lenses{position:absolute;z-index:1;inset:0;pointer-events:none}
.focus-lenses i{position:absolute;border:2px solid rgba(141,30,56,.34);border-radius:50%;background:transparent;box-shadow:none}
.focus-lenses i:nth-child(1){width:250px;height:250px;top:-35px;right:-15px}
.focus-lenses i:nth-child(2){width:220px;height:220px;right:18px;bottom:-20px}
.focus-lenses i:nth-child(3){width:230px;height:230px;left:-130px;top:126px}
.about-grid h3{margin:0 0 20px;font:470 clamp(24px,1.9vw,32px)/1.12 Literata,Georgia,serif;letter-spacing:-.035em}
.about-grid ol{margin:0 0 30px;padding:0;list-style:none;counter-reset:focus}
.about-grid li{counter-increment:focus;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}
.about-grid li::before{content:"0" counter(focus);display:inline-block;width:38px;color:var(--wine);font-size:9px}
.about-grid aside a,.about-footer a{color:inherit;text-underline-offset:5px}
.about-grid aside a{display:inline-flex;align-items:center;gap:7px;font-size:13px}
.about-grid aside svg{width:14px;height:14px}
.about-footer{display:flex;justify-content:space-between;padding-top:17px;border-top:1px solid var(--line);font-size:10px}
.about-footer div{display:flex;gap:23px}

.bio-accents .bio-accent{color:var(--wine);font-weight:620}

@keyframes ink-open{to{clip-path:inset(0 0 0 0)}}
@keyframes portrait-enter{to{clip-path:inset(0 0 0 0);opacity:1}}
@keyframes chrome-in{to{opacity:1}}
@keyframes dialog-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

@media(max-width:1100px) and (min-width:701px){
  .idea-line--one{top:18vh}
  .idea-line--two{top:30.5vh;font-size:12.55vw}
  .idea-line--three{top:53vh;left:14vw}
  .person{right:-2vw;width:49vw}
  .positioning{top:66.5vh}
  .project-index{width:58vw;gap:18px}
  .project-index small{font-size:8px}
  .focus-lenses i:nth-child(1){width:200px;height:200px;top:-28px;right:-8px}
  .focus-lenses i:nth-child(2){width:185px;height:185px;right:10px;bottom:-18px}
  .focus-lenses i:nth-child(3){width:190px;height:190px;left:-105px;top:108px}
}

@media(max-width:700px){
  :root{--edge:20px}
  .portrait-page{min-height:min(600px,100dvh)}
  .site-header{top:18px;left:20px;right:20px}
  .wordmark{font-size:12px}
  .site-header nav{gap:16px}
  .site-header nav button,.site-header nav a{font-size:11.5px}
  .site-header nav svg{width:10px;height:10px}
  .contact-options{top:calc(100% + 10px);width:132px;padding:7px 0}
  .contact-options a{padding:7px 2px!important;font-size:11px!important}
  .descriptor{top:9.2vh;left:5vw;font-size:9px;letter-spacing:.075em}
  .idea-line--one{top:13.2vh;left:5vw;font-size:10.2vw;line-height:1}
  .idea-line--two{top:19.2vh;left:4vw;font-size:21vw;line-height:1;letter-spacing:-.06em}
  .idea-line--three{top:33.2vh;left:5vw;font-size:13.2vw;line-height:.9}
  .person{right:-16vw;bottom:0;width:86vw;height:59vh}
  .person img{width:auto;height:100%;margin-left:auto;object-fit:contain;object-position:right bottom}
  .positioning{top:42vh;left:5vw;width:49vw;font-size:9.5px;line-height:1.38}
  .positioning br{display:none}
  .project-index{top:49vh;left:5vw;bottom:auto;display:block;width:44vw}
  .project-index a{grid-template-columns:18px minmax(0,1fr);padding:5.5px 0 4.5px;border-top:1px solid rgba(21,25,23,.22)}
  .project-number{font-size:8.6px}
  .project-index strong{font-size:12.8px}
  .project-index strong svg{width:9px;height:6px}
  .project-index small{margin-top:2px;font-size:8.65px;line-height:1.2}
  .editorial-meta{left:4vw;right:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:auto 1px auto;align-items:center;width:92vw;min-height:0;padding:8px 12px 7px;background:rgba(248,245,238,.52);border:1px solid rgba(255,255,255,.72);border-radius:17px;box-shadow:0 9px 28px rgba(32,35,33,.09),inset 0 1px 0 rgba(255,255,255,.74);-webkit-backdrop-filter:blur(11px) saturate(1.08);backdrop-filter:blur(11px) saturate(1.08);overflow:hidden;isolation:isolate;column-gap:8px;row-gap:5px}
  .editorial-meta>*{position:relative;z-index:1}
  .editorial-meta p{gap:4px}
  .editorial-meta strong{font-size:17px}
  .editorial-meta span{font-size:7.4px}
  .editorial-meta>i{height:16px}
  .client-line{display:block!important;grid-column:1/-1;width:100%;margin:0!important;overflow:hidden;white-space:nowrap;color:#5f645f;font-size:7.2px!important;line-height:1.1;mask-image:linear-gradient(to right,#000 0,#000 90%,transparent 100%)}
  .about{overflow-y:auto}
  .about-inner{padding:0 var(--edge) 24px}
  .about-grid{display:block;padding:28px 0 20px}
  .about-grid h2{font-size:27px}
  .about-grid .about-lead{padding-left:14px;font-size:14px}
  .about-grid aside{min-height:310px;margin-top:30px;padding:30px 22px;border-top:1px solid var(--line);border-left:0}
  .focus-lenses i:nth-child(1){width:210px;height:210px;top:-30px;right:-10px}
  .focus-lenses i:nth-child(2){width:190px;height:190px;right:15px;bottom:-16px}
  .focus-lenses i:nth-child(3){width:200px;height:200px;left:-110px;top:90px}
  .about-footer{flex-direction:column;gap:12px}
  .about-footer div{flex-wrap:wrap;gap:12px 20px}
}

@media(max-width:700px) and (max-height:720px){
  .portrait-page{min-height:min(520px,100dvh)}
  .descriptor{top:9.5vh}
  .idea-line--one{top:13vh;font-size:9.8vw}
  .idea-line--two{top:17.6vh;font-size:21vw}
  .idea-line--three{top:32.5vh;font-size:12.5vw}
  .person{right:-16vw;bottom:0;width:86vw;height:60vh}
  .positioning{top:41.2vh;font-size:8.7px}
  .project-index{top:50vh;width:45vw}
  .project-index a{padding:4px 0}
  .project-index strong{font-size:12px}
  .project-index small{font-size:7.9px}
  .editorial-meta{bottom:calc(10px + env(safe-area-inset-bottom,0px))}
}

@media(max-width:350px){
  .site-header{left:16px;right:16px}
  .site-header nav{gap:11px}
  .project-index{width:46vw}
  .person{right:-18vw;width:88vw}
  .editorial-meta{gap:5px}
  .editorial-meta p{display:block;width:42px}
  .editorial-meta strong{display:block;font-size:14px}
  .editorial-meta span{display:block;margin-top:1px;font-size:6px}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}
  .idea-line{overflow:visible}
  .idea-line>span,.person{clip-path:none}
  .person,.chrome-enter{opacity:1}
}
