:root{--bg:#F7F7F4;--ink:#0E0E0E;--mut:#7A7A74;--line:#D9D9D3;--acc:#D6B98C;
  --fr:0;--fline:#D9D9D3;--fbg:#fff;--fokus:#0E0E0E}
body{background:var(--bg);color:var(--ink);font:400 17px/1.55 "Inter Tight",system-ui,sans-serif;overflow-x:hidden;
  background-image:linear-gradient(to right,rgba(0,0,0,.035) 1px,transparent 1px);background-size:calc(100% / 12) 100%}
h1,h2,h3{font-weight:500;letter-spacing:-.03em;line-height:1}
.m{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:12px;letter-spacing:.02em;text-transform:uppercase}
.lead{color:var(--mut);max-width:520px}
.btn{display:inline-flex;align-items:center;gap:14px;padding:16px 22px;background:var(--ink);color:var(--bg);text-decoration:none;font:500 15px "Inter Tight";transition:gap .25s,background .2s}
.btn:hover{gap:24px;background:#333}

.cur{position:fixed;left:-7px;top:-7px;width:14px;height:14px;border:1.5px solid var(--ink);pointer-events:none;z-index:99;mix-blend-mode:difference;border-color:#fff;transition:width .2s,height .2s,left .2s,top .2s}
.cur.big{width:44px;height:44px;left:-22px;top:-22px}

.hd{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px 3vw;background:rgba(247,247,244,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--ink)}
.logo{font:700 22px/1 "Inter Tight";letter-spacing:-.04em;text-decoration:none}
.hd-c{color:var(--mut)}
.hd nav{display:flex;gap:18px;justify-content:flex-end}
.hd nav a{text-decoration:none}.hd nav a:hover{color:var(--mut)}
.hd-b{font-weight:600}

.hero{padding:2vw 3vw 0;border-bottom:1px solid var(--ink)}
.word{font-size:min(27vw,420px);font-weight:700;letter-spacing:-.07em;line-height:.8;display:flex;margin:0 0 3vw -1vw}
.word span{display:inline-block;transform:translateY(40%);opacity:0;animation:up .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i)*.07s)}
@keyframes up{to{transform:none;opacity:1}}
.h-grid{display:grid;grid-template-columns:5fr 7fr;gap:3vw;align-items:end;border-top:1px solid var(--ink);padding-top:3vw}
.h-txt .m{color:var(--mut);margin-bottom:24px}
.h-txt h2{font-size:clamp(28px,3.2vw,48px);margin-bottom:20px}
.h-txt .lead{margin-bottom:30px}
.h-pic{position:relative;aspect-ratio:16/10;background:#E8E8E3}
.h-pic img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15)}
.h-pic figcaption{position:absolute;left:0;bottom:-26px;color:var(--mut)}
.cx{position:absolute;width:18px;height:18px;border:0 solid var(--ink)}
.cx.tl{left:-9px;top:-9px;border-left-width:1.5px;border-top-width:1.5px}.cx.tr{right:-9px;top:-9px;border-right-width:1.5px;border-top-width:1.5px}
.cx.bl{left:-9px;bottom:-9px;border-left-width:1.5px;border-bottom-width:1.5px}.cx.br{right:-9px;bottom:-9px;border-right-width:1.5px;border-bottom-width:1.5px}
.nums{display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px;border-top:1px solid var(--ink)}
.nums div{padding:24px 0 30px;border-right:1px solid var(--line)}
.nums div:last-child{border-right:0}
.nums div+div{padding-left:2vw}
.nums b{display:block;font-size:clamp(34px,4.4vw,64px);font-weight:500;letter-spacing:-.04em;line-height:1}
.nums .m{color:var(--mut)}

section{padding:9vw 3vw;border-bottom:1px solid var(--ink)}
.s-head{display:grid;grid-template-columns:3fr 9fr;gap:3vw;margin-bottom:5vw;align-items:start}
.s-head .m{color:var(--mut);padding-top:10px}
.s-head h2{font-size:clamp(34px,4.6vw,72px)}
.s-head .lead{grid-column:2;margin-top:-1vw}

.sel{display:grid;grid-template-columns:5fr 7fr;gap:3vw;align-items:start}
.sel-list{list-style:none;border-top:1px solid var(--ink)}
.sel-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);cursor:pointer;color:#B9B9B2;transition:color .25s,padding .25s}
.sel-list li.on,.sel-list li:hover{color:var(--ink)}
.sel-list li.on{padding-left:14px;border-bottom-color:var(--ink)}
.big{font-size:clamp(48px,6vw,96px);font-weight:500;letter-spacing:-.05em;line-height:.9}
.big sup{font-size:.25em;letter-spacing:0;margin-left:4px}
.nm{font-size:18px;font-weight:500}
.sel-view{position:sticky;top:90px;display:grid}
.sv{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .35s}
.sv.on{opacity:1;visibility:visible}
.sv-pic{aspect-ratio:4/3;background:#E8E8E3;overflow:hidden;position:relative}
.sv-pic img{width:100%;height:100%;object-fit:cover}
.sv-info{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.sv-info div{padding:16px 0}
.sv-info .m{color:var(--mut);margin-bottom:4px}
.sv-info b{font-weight:500;font-size:18px}
.sv-txt{color:var(--mut);margin:18px 0 24px;max-width:560px}
.note{color:var(--mut);margin-top:4vw;text-transform:none;font-size:13px}

.f-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line);background:#FBFBF9}
.f{padding:26px 2vw 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#FBFBF9;transition:background .25s}
.f:hover{background:#fff}
.f .m{color:var(--acc)}
.f h3{font-size:24px;margin:16px 0 8px}
.f p{color:var(--mut);font-size:15px}

.g-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:15vw;grid-auto-flow:dense;gap:1vw}
.g{position:relative;border:0;padding:0;background:#E8E8E3;overflow:hidden}
.g:nth-child(1){grid-column:span 2;grid-row:span 2}.g:nth-child(6n){grid-column:span 2}
.g img{width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .4s;filter:grayscale(.3)}
.g:hover img{transform:scale(1.04);filter:none}
.g .m{position:absolute;left:10px;bottom:10px;background:var(--bg);padding:3px 6px}

.u-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3vw}
.u{border-top:1px solid var(--ink);padding-top:16px}
.u .m{color:var(--acc)}
.u h3{font-size:24px;margin:26px 0 8px}
.u p{color:var(--mut);font-size:15px}

.r-list{gap:16px}
.r-list blockquote{width:calc((100% - 32px)/3);background:#FBFBF9;border:1px solid var(--line);border-top:1px solid var(--ink);padding:28px 26px 26px;display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.r-wrap .rail-nav{background:var(--ink);color:var(--bg);border-radius:0;font-family:"IBM Plex Mono",monospace}
.r-wrap .rail-nav:hover{background:#333}
.r-wrap .rail-bar{color:var(--ink)}
.sv-pic .rail-nav{border-radius:0}
.sv-pic .dots i{border-radius:0}
.r-list blockquote p{font-size:clamp(17px,1.3vw,20px);line-height:1.45;letter-spacing:-.01em}
.r-list cite{font-style:normal;color:var(--mut)}

.book{display:grid;grid-template-columns:5fr 7fr;gap:3vw}
.b-l h2{font-size:clamp(34px,4.6vw,72px);margin:24px 0 20px}
.b-l ol{list-style:none;margin-top:40px;border-top:1px solid var(--line)}
.b-l li{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);text-transform:none;font-size:13px}
.b-l li span{color:var(--acc)}
.b-r{border:1px solid var(--ink);padding:3vw;background:#fff}
.bform .fld span{font:400 11px "IBM Plex Mono";text-transform:uppercase;color:var(--mut)}
.bsend{background:var(--ink);color:var(--bg);padding:18px;font:500 16px "Inter Tight"}
.bsend:hover{background:#333}

.contacts{display:grid;grid-template-columns:5fr 7fr;gap:3vw}
.contacts h2{font-size:clamp(28px,3.4vw,52px);margin:24px 0 30px}
dl{display:grid;grid-template-columns:110px 1fr;border-top:1px solid var(--ink)}
dt,dd{padding:14px 0;border-bottom:1px solid var(--line)}
dt{color:var(--mut)}dd{text-transform:none;font-size:14px}
dd a{text-decoration:none;border-bottom:1px solid var(--ink)}
.map{min-height:420px;border:1px solid var(--ink);filter:grayscale(1)}
.map iframe{width:100%;height:100%;min-height:420px;border:0;display:block}

.ft{display:flex;flex-wrap:wrap;gap:12px 30px;padding:24px 3vw 110px;color:var(--mut)}
.ft .legal{text-transform:none;font-family:"Inter Tight",sans-serif;letter-spacing:0}
.ft a{text-decoration:none}.ft a:hover{color:var(--ink)}
.mbar a.m1{background:var(--bg);color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.mbar a.m2{background:var(--ink);color:var(--bg)}

@media (max-width:900px){
  body{background-size:25% 100%}
  .hd{grid-template-columns:1fr auto;padding:14px 18px}.hd-c{display:none}.hd nav a:not(.hd-b){display:none}
  .hero{padding:18px 18px 0}
  .h-grid{grid-template-columns:1fr;gap:40px}.h-pic{order:-1}
  .nums{grid-template-columns:1fr 1fr}.nums div{border-bottom:1px solid var(--line)}.nums div:nth-child(2n){border-right:0}.nums div:nth-child(2n+1){padding-left:0}
  section{padding:64px 18px}
  .s-head{grid-template-columns:1fr;gap:10px}.s-head .lead{grid-column:1;margin-top:0}
  .sel{grid-template-columns:1fr}.sel-view{position:static;order:-1}
  .sv-info{grid-template-columns:1fr 1fr}
  .f-grid{grid-template-columns:1fr}
  .g-grid{grid-template-columns:1fr 1fr;grid-auto-rows:44vw;gap:8px}.g:nth-child(1){grid-column:span 2;grid-row:span 1}.g:nth-child(6n){grid-column:span 2}
  .u-grid{grid-template-columns:1fr}.r-list blockquote{width:85%}.f h3{margin-top:10px}.f{padding:20px 18px 24px}
  .book,.contacts{grid-template-columns:1fr}.b-r{padding:22px}
  .ft{flex-wrap:wrap;gap:12px}
}
