:root{--black:#111211;--white:#f5f5f3;--soft:#e9e9e6;--grey:#a7a8a5;--line:#d5d5d1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--black);font-family:var(--font-geist-sans),Arial,sans-serif}button,a{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.shell{width:min(1320px,calc(100% - 56px));margin:auto}.hero{height:100svh;min-height:760px;position:relative;color:white;overflow:hidden}.heroImage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:heroZoom 12s ease-out both}.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,9,.78) 0%,rgba(8,9,9,.34) 54%,rgba(8,9,9,.18)),linear-gradient(0deg,rgba(0,0,0,.45),transparent 45%)}.grain{position:absolute;inset:0;z-index:1;opacity:.09;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.nav{height:100px;position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.28);animation:fadeDown .9s both}.brand{display:flex;align-items:center;gap:13px}.mark{width:40px;height:40px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:italic 23px Georgia}.brand b{font-size:14px;letter-spacing:.16em}.brand small{display:block;font-size:7px;font-weight:400;letter-spacing:.2em;margin-top:5px;opacity:.66}.navLinks{display:flex;gap:38px;font-size:11px}.navLinks a{position:relative}.navLinks a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:white;transition:.35s}.navLinks a:hover:after{right:0}.navButton{border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.08);backdrop-filter:blur(12px);color:white;padding:13px 20px;font-size:11px;transition:.3s}.navButton:hover{background:white;color:black}.heroContent{position:relative;z-index:3;padding-top:14vh}.heroKicker,.eyebrow{font-size:9px;letter-spacing:.22em;text-transform:uppercase}.heroContent h1{font-size:clamp(66px,8.4vw,132px);line-height:.85;letter-spacing:-.07em;margin:25px 0;max-width:1100px;font-weight:500;animation:fadeUp 1.1s .15s both}.heroContent h1 span{font-weight:200}.heroLead{max-width:530px;font-size:17px;line-height:1.65;color:#e0e0dd;animation:fadeUp 1s .35s both}.heroCta{margin-top:30px;width:310px;border:0;background:white;color:black;display:flex;justify-content:space-between;align-items:center;padding:7px 7px 7px 22px;font-size:12px;animation:fadeUp 1s .5s both;transition:.35s}.heroCta i{width:44px;height:44px;background:#151615;color:white;display:grid;place-items:center;font-style:normal}.heroCta:hover{width:330px}.heroMeta{position:absolute;z-index:3;left:0;right:0;bottom:30px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.manifest{padding:150px 0;display:grid;grid-template-columns:.3fr 1fr;gap:80px}.manifest h2,.works h2,.about h2,.process h2,.ctaSection h2,.modalCard h2,.successCard h2{font-size:clamp(45px,5.6vw,83px);font-weight:300;letter-spacing:-.055em;line-height:1.03;margin:0}.manifest h2 em{font-family:Georgia;font-weight:400;color:#777874}.manifest>div>p{max-width:650px;margin:45px 0 0 auto;color:#656661;font-size:17px;line-height:1.7}.works{background:#151615;color:white;padding:135px 0}.worksHead{display:grid;grid-template-columns:1fr .45fr;gap:70px;align-items:end;margin-bottom:75px}.worksHead p:last-child{color:#aaa;line-height:1.65}.projectGrid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px 22px}.project{margin:0}.project.p2{margin-top:150px}.project.p4{margin-top:100px}.imageWrap{height:620px;overflow:hidden;position:relative}.p2 .imageWrap,.p4 .imageWrap{height:500px}.imageWrap img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1),filter .5s;filter:grayscale(35%)}.imageWrap span{position:absolute;right:0;bottom:0;background:white;color:black;padding:13px 18px;font-size:8px;letter-spacing:.15em;transform:translateY(100%);transition:.4s}.project:hover img{transform:scale(1.045);filter:grayscale(0)}.project:hover .imageWrap span{transform:none}.project figcaption{display:flex;justify-content:space-between;padding-top:18px}.project figcaption div{display:flex;flex-direction:column;gap:7px}.project figcaption small{font-size:8px;letter-spacing:.15em;color:#999}.project figcaption b{font-size:18px;font-weight:400}.project figcaption i{font-size:8px;color:#777;font-style:normal}.about{padding:145px 0;background:#e8e8e4}.aboutGrid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9%;align-items:center}.aboutVisual{height:700px;position:relative}.aboutVisual img{width:100%;height:100%;object-fit:cover;filter:grayscale(40%)}.seal{position:absolute;right:-70px;bottom:70px;width:165px;height:165px;background:#111;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:10px;animation:float 4s ease-in-out infinite}.seal b{font-size:47px;font-weight:300}.seal span{font-size:8px;line-height:1.4;letter-spacing:.1em}.aboutCopy h2{font-size:clamp(40px,4.4vw,66px);margin:28px 0 40px}.aboutCopy>p{color:#5f605c;line-height:1.75;font-size:15px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #babbb7;margin-top:50px;padding-top:25px;gap:15px}.stats div{display:flex;flex-direction:column}.stats b{font-size:35px;font-weight:300}.stats span{font-size:9px;color:#777;letter-spacing:.08em}.process{padding:145px 0}.processTitle{display:grid;grid-template-columns:.35fr 1fr;margin-bottom:80px}.process ol{list-style:none;margin:0;padding:0}.process li{display:grid;grid-template-columns:80px 1fr 1.5fr 30px;gap:25px;align-items:center;border-top:1px solid var(--line);padding:35px 0;transition:.4s}.process li:last-child{border-bottom:1px solid var(--line)}.process li:hover{padding-left:18px;background:#ededeb}.process li>span{font-size:9px}.process h3{font-size:24px;font-weight:400;margin:0}.process li p{color:#6c6d69;line-height:1.6;font-size:13px;margin:0}.process li i{font-style:normal}.ctaSection{position:relative;background:#111;color:white;text-align:center;padding:150px 0;overflow:hidden}.ctaSection .shell{position:relative;z-index:2}.ctaArt{position:absolute;white-space:nowrap;font-size:15vw;font-weight:800;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.06);top:35%;left:-10%;animation:marquee 24s linear infinite}.ctaSection h2{font-size:clamp(65px,9vw,135px);margin:20px 0}.ctaSection p:not(.eyebrow){max-width:560px;margin:0 auto;color:#aaa;line-height:1.65}.ctaSection button{margin-top:35px;background:white;border:0;padding:7px 7px 7px 23px;min-width:260px;display:inline-flex;align-items:center;justify-content:space-between}.ctaSection button span{width:44px;height:44px;background:#111;color:white;display:grid;place-items:center}footer{height:120px;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.12em}.brand.dark{color:#111}.modalBackdrop{position:fixed;inset:0;z-index:100;background:rgba(10,10,10,.64);backdrop-filter:blur(12px);display:grid;place-items:center;padding:20px;animation:fade .25s both}.modalCard{width:min(480px,100%);background:#f5f5f3;padding:48px;position:relative;animation:modalIn .45s cubic-bezier(.2,.9,.2,1) both}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:30px;font-weight:200}.modalCard h2{font-size:44px;margin:15px 0}.modalCard>p:not(.eyebrow){color:#71726e;line-height:1.55}.modalCard form{margin-top:30px}label{display:flex;flex-direction:column;gap:7px;font-size:8px;letter-spacing:.15em;margin-bottom:20px}input{border:0;border-bottom:1px solid #bfc0bc;background:transparent;padding:11px 0;font:15px inherit;outline:none}input:focus{border-color:#111}.modalCard form button{width:100%;border:0;background:#111;color:white;padding:18px;font-size:11px;margin-top:8px}.modalCard form small{display:block;text-align:center;color:#999;font-size:8px;margin-top:12px}.successCard{width:min(450px,100%);background:white;padding:55px;text-align:center;animation:modalIn .45s both}.check{width:68px;height:68px;margin:0 auto 25px;border-radius:50%;background:#111;color:white;display:grid;place-items:center;font-size:30px;animation:checkPop .5s .2s both}.successCard h2{font-size:38px}.successCard p{color:#71726e;line-height:1.6}.successCard button{margin-top:18px;border:0;background:#111;color:white;padding:14px 35px}.reveal{opacity:0;transform:translateY(45px);transition:opacity .9s ease,transform .9s ease}.reveal.show{opacity:1;transform:none}
@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}@keyframes fadeUp{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}@keyframes fadeDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}@keyframes modalIn{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes checkPop{from{transform:scale(0) rotate(-20deg)}to{transform:scale(1)}}@keyframes float{50%{transform:translateY(-12px)}}@keyframes marquee{to{transform:translateX(-30%)}}
@media(max-width:900px){.navLinks{display:none}.heroContent{padding-top:16vh}.manifest,.worksHead,.aboutGrid,.processTitle{grid-template-columns:1fr}.manifest{gap:25px}.projectGrid{gap:55px 14px}.imageWrap{height:480px}.p2 .imageWrap,.p4 .imageWrap{height:400px}.aboutGrid{gap:80px}.aboutVisual{height:600px}.seal{right:20px}.processTitle{gap:20px}.modalCard{padding:38px}}
@media(max-width:560px){.shell{width:calc(100% - 28px)}.hero{min-height:700px}.nav{height:78px}.navButton{font-size:0;padding:11px}.navButton:after{content:"Проект ↗";font-size:9px}.heroContent{padding-top:14vh}.heroContent h1{font-size:15.5vw;line-height:.91}.heroLead{font-size:14px;max-width:340px}.heroCta{width:100%}.heroMeta span:last-child{display:none}.manifest,.works,.about,.process{padding:90px 0}.manifest>div>p{margin-top:30px}.projectGrid{grid-template-columns:1fr}.project.p2,.project.p4{margin-top:0}.imageWrap,.p2 .imageWrap,.p4 .imageWrap{height:430px}.aboutVisual{height:480px}.aboutCopy h2{font-size:39px}.stats b{font-size:27px}.process li{grid-template-columns:35px 1fr 25px;gap:12px}.process li p{grid-column:2/4}.process li:hover{padding-left:0}.ctaSection{padding:100px 0}.modalCard{padding:32px 24px}.modalCard h2{font-size:36px}.successCard{padding:40px 25px}footer{height:auto;padding:30px 0;flex-direction:column;align-items:flex-start;gap:15px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.navActions{display:flex;align-items:center;gap:22px}.langSwitch{display:flex;align-items:center;gap:7px;color:rgba(255,255,255,.48);font-size:9px;letter-spacing:.12em}.langSwitch button{border:0;background:none;color:inherit;padding:5px 2px;transition:.25s}.langSwitch button:hover,.langSwitch button.active{color:#fff}.langSwitch button.active{font-weight:700}.langSwitch span{opacity:.4}.navButton{white-space:nowrap}
@media(max-width:560px){.brand b{font-size:11px}.brand small{font-size:6px}.mark{width:34px;height:34px}.navActions{gap:10px}.langSwitch{gap:4px}.navButton{display:none}}
[hidden]{display:none!important}.modalOpen{overflow:hidden}

.heroCentered{text-align:center;display:flex;flex-direction:column;align-items:center}.heroCentered h1{max-width:1200px}.heroCentered .heroLead{margin-left:auto;margin-right:auto}.heroCtaBright{border-radius:999px;background:linear-gradient(135deg,#fff 0%,#deded8 100%);padding:8px 8px 8px 28px;box-shadow:0 18px 60px rgba(0,0,0,.28);font-weight:600}.heroCtaBright i{border-radius:50%}
.directions{padding:130px 0}.directionsHead{display:grid;grid-template-columns:.32fr 1fr;align-items:start;margin-bottom:65px}.directionsHead h2,.journalHead h2{font-size:clamp(45px,5.6vw,83px);font-weight:300;letter-spacing:-.055em;line-height:1.03;margin:0}.directionGrid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.directionCard{min-height:330px;padding:30px 25px;position:relative;border-right:1px solid var(--line);transition:.4s}.directionCard:last-child{border:0}.directionCard:hover{background:#151615;color:white;transform:translateY(-8px)}.directionCard>span{font-size:9px;letter-spacing:.15em}.directionCard h3{font-size:27px;font-weight:400;line-height:1.1;margin:80px 0 18px}.directionCard p{font-size:13px;line-height:1.6;color:#777;transition:.4s}.directionCard:hover p{color:#bbb}.directionCard i{position:absolute;right:25px;bottom:25px;font-style:normal}
.journal{padding:135px 0;background:#dadad5}.journalHead{display:grid;grid-template-columns:.32fr 1fr;margin-bottom:70px}.articleGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.articleCard{background:#f5f5f3;padding:38px;min-height:500px;display:flex;flex-direction:column;position:relative;transition:.4s}.articleCard:hover{transform:translateY(-10px);box-shadow:0 25px 60px rgba(0,0,0,.1)}.articleNo{font:italic 55px Georgia;color:#bbb;margin-bottom:50px}.articleCard h3{font-size:29px;font-weight:400;letter-spacing:-.03em;line-height:1.12;margin:18px 0}.articleCard>p:not(.eyebrow){color:#6c6d69;font-size:14px;line-height:1.7}.articleCard a{margin-top:auto;border-top:1px solid #ccc;padding-top:18px;font-size:10px;letter-spacing:.12em;cursor:pointer}
.modalCard.modalColor{border-radius:28px;text-align:center;background:radial-gradient(circle at 20% 0%,#f8f8f6 0,#e8e9e6 48%,#d4d5d1 100%);box-shadow:0 35px 100px rgba(0,0,0,.35);overflow:hidden;padding:48px}.modalColor:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.5);top:-150px;right:-100px}.modalIcon{width:62px;height:62px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;margin:0 auto 22px;font-size:25px;box-shadow:0 12px 30px rgba(0,0,0,.2)}.modalColor .close{width:42px;height:42px;border-radius:50%;background:#fff;display:grid;place-items:center;z-index:2}.modalColor h2{font-size:40px}.modalColor form{text-align:left}.modalColor input{background:#fff;border:1px solid transparent;border-radius:14px;padding:15px 16px}.modalColor input:focus{border-color:#111}.modalColor form button{border-radius:14px;background:#111;font-weight:700;font-size:12px;box-shadow:0 14px 28px rgba(0,0,0,.2);transition:.3s}.modalColor form button:hover{background:#3a3b38;transform:translateY(-2px)}
@media(max-width:900px){.directionsHead,.journalHead{grid-template-columns:1fr;gap:20px}.directionGrid{grid-template-columns:1fr 1fr}.directionCard:nth-child(2){border-right:0}.directionCard{border-bottom:1px solid var(--line)}.articleGrid{grid-template-columns:1fr}.articleCard{min-height:390px}}
@media(max-width:560px){.heroCentered{padding-top:14vh}.directions{padding:90px 0}.directionGrid{grid-template-columns:1fr}.directionCard{border-right:0;min-height:250px}.directionCard h3{margin-top:55px}.journal{padding:90px 0}.articleCard{padding:28px;min-height:420px}.modalCard.modalColor{padding:38px 24px;border-radius:22px}.modalColor h2{font-size:34px}}

/* Clear CTA labels and consistent hover animation */
.ctaSection button{width:310px;padding:7px 7px 7px 22px;transition:width .35s,background .35s,color .35s}.ctaSection button span:first-child{width:auto;height:auto;background:transparent;color:inherit;display:block;white-space:nowrap}.ctaSection button span+span{width:44px;height:44px;background:#111;color:#fff;display:grid;place-items:center;flex:0 0 44px}.ctaSection button:hover{width:330px;background:#d9ff70;color:#111}.heroCta:hover{background:#d9ff70;color:#111}.imageWrap span{transition:transform .4s,background .3s,color .3s}.imageWrap span:hover{background:#d9ff70;color:#111}.articleCard a{transition:color .3s,border-color .3s}.articleCard a:hover{color:#111;border-color:#111}
@media(max-width:560px){.ctaSection button,.ctaSection button:hover{width:100%}}

/* Hand-painted C with a clearly recognisable artist's brush. */
.mark{width:64px;height:56px;border:0;border-radius:0;display:block;flex:0 0 64px}.mark svg{width:100%;height:100%;overflow:visible}.mark .paintStroke{fill:none;stroke:currentColor;stroke-width:8;stroke-linecap:round;stroke-linejoin:round}.mark .paintDetail{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;opacity:.62}.mark .brushHandle,.mark .brushBristles{fill:currentColor}.mark .brushFerrule{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linejoin:round}.brand{gap:12px}.brand small{max-width:255px;line-height:1.4}

/* Identical compact pill buttons in the hero and the closing section. */
.heroCta,.heroCta:hover,.ctaSection button,.ctaSection button:hover{width:auto;min-width:270px;max-width:340px;min-height:54px;margin-left:auto;margin-right:auto;padding:15px 30px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:#fff;color:#151615;font-size:14px;font-weight:700;line-height:1.2;text-align:center;white-space:nowrap;box-shadow:0 12px 34px rgba(0,0,0,.2);transition:background .28s,color .28s,transform .28s,box-shadow .28s}.heroCta:hover,.ctaSection button:hover{background:#d9ff70;color:#111;transform:translateY(-2px);box-shadow:0 16px 38px rgba(0,0,0,.25)}.heroCta span,.ctaSection button span:first-child{width:auto;height:auto;background:transparent;color:inherit;display:block;text-align:center;white-space:nowrap}.heroCta i,.ctaSection button span+span{display:none}.navButton{font-size:12px;font-weight:600;border-radius:999px}
@media(max-width:560px){.mark{width:52px;height:46px;flex-basis:52px}.brand small{max-width:175px}.heroCta,.heroCta:hover,.ctaSection button,.ctaSection button:hover{width:auto;min-width:245px;max-width:100%;padding:15px 22px;font-size:13px}}
