:root{--paper:#f8f8f7;--ink:#232522;--muted:#737671;--line:#dcddd8;--panel:#ebede8;--accent:#d9ee83;--radius:12px;--font:'Onest','Inter',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500}a,button{touch-action:manipulation}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:2px solid #526428;outline-offset:5px}.shell{width:calc(100% - 40px);max-width:1248px;margin-inline:auto}.muted{color:var(--muted)}.eyebrow,.section-label{font-size:14px;font-weight:500}.eyebrow{margin-bottom:18px}.header{position:relative;display:flex;align-items:center;justify-content:space-between;height:81px;border-bottom:1px solid var(--line);z-index:5}.brand{font-size:17px;font-weight:500;letter-spacing:-.03em;line-height:1.3}.brand-role{display:block;font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:4px}.header nav{display:none}.menu-toggle{width:44px;height:44px;border:1px solid var(--line);background:transparent;border-radius:50%;display:grid;align-content:center;justify-content:center;gap:5px;cursor:pointer}.menu-toggle span{width:17px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.header nav.is-open{display:flex;position:absolute;top:80px;left:-20px;right:-20px;padding:18px 20px 24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:4px;box-shadow:0 20px 24px #2325220a}.header nav a{padding:12px 0}.hero{padding-block:34px 37px}.hero .eyebrow{font-size:13px;color:var(--muted);margin-bottom:15px}.hero h1{font-size:clamp(30px,8.05vw,36px);letter-spacing:-.045em;line-height:1.16}.hero h1 span{color:var(--muted)}.hero-aside{margin-top:20px}.hero-aside p{max-width:340px;color:var(--muted);line-height:1.55}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--ink);padding-block:10px 8px;font-weight:500;font-size:14px;margin-top:13px}.text-link span{font-size:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;padding-block:19px 21px;border-top:1px solid var(--line)}.section-heading h2{font-size:18px;letter-spacing:-.025em}.section-heading sup{font-size:11px;color:var(--muted);margin-left:5px;vertical-align:super}.section-note{display:none}.project-card{margin-bottom:34px}.project-preview{position:relative;overflow:hidden;border-radius:var(--radius);background:#eae2d7;aspect-ratio:1.35}.project-preview img{position:absolute;width:112%;max-width:none;left:-6%;top:4%;transition:transform .35s}.project-preview.nera{background:#e5e5df}.project-preview.nera img{width:112%;left:-6%;top:4%}.project-kind{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.94);border:1px solid #23252214;border-radius:30px;padding:5px 10px;font-size:11px;font-weight:500}.preview-open{position:absolute;bottom:16px;right:16px;width:42px;height:42px;background:var(--ink);color:white;display:grid;place-items:center;border-radius:50%;font-size:22px}.project-caption{display:flex;justify-content:space-between;gap:14px;padding-top:15px}.project-caption h3{font-size:23px;line-height:1.2;letter-spacing:-.035em;margin-bottom:7px}.project-caption p{font-size:14px;line-height:1.45;color:var(--muted);max-width:260px}.project-meta{font-size:12px;color:var(--muted);display:flex;align-items:flex-end;flex-direction:column;gap:11px;white-space:nowrap}.project-meta span:last-child{display:none}.project-link{display:block;border-radius:var(--radius)}.about{border-top:1px solid var(--line);padding-block:32px 38px;margin-top:44px}.section-label{margin-bottom:24px}.about h2{font-size:30px;line-height:1.2;letter-spacing:-.04em}.about-main>p{margin-top:22px;max-width:590px;color:var(--muted)}.services{margin-top:27px;padding-top:23px;border-top:1px solid var(--line)}.services h3{font-size:14px;margin-bottom:12px}.services ul{list-style:none;padding:0;margin:0}.services li{font-size:16px;padding-block:6px}.contact{padding-block:33px 40px;border-top:1px solid var(--line)}.contact .eyebrow{color:var(--muted);margin-bottom:19px}.contact h2{font-size:29px;line-height:1.22;letter-spacing:-.045em}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:14px 24px;background:var(--ink);color:white;border:0;border-radius:40px;font-size:15px;min-height:50px}.button span{font-size:24px;line-height:1}.contact-button{margin-top:25px;background:var(--accent);color:var(--ink)}.contact-button:disabled{cursor:not-allowed}.contact-pending>span{display:block;color:var(--muted);font-size:12px;margin-top:8px}.footer{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-block:23px 28px;color:var(--muted);font-size:12px}.footer a{white-space:nowrap}.skip-link{position:fixed;top:-80px;left:20px;background:var(--ink);color:white;padding:12px;z-index:20}.skip-link:focus{top:12px}
@media(min-width:768px){.shell{width:calc(100% - 80px)}.header{height:96px}.brand{font-size:19px}.brand-role{font-size:13px}.menu-toggle{display:none}.header nav,.header nav.is-open{display:flex;position:static;flex-direction:row;gap:36px;padding:0;border:0;box-shadow:none;font-size:14px;background:transparent}.header nav a{padding:10px 0}.hero{padding-block:49px 49px}.hero h1{font-size:44px}.hero-main{display:flex;justify-content:space-between;align-items:flex-end;gap:36px}.hero-aside{margin-top:0;width:250px;flex-shrink:0}.hero-aside p{font-size:15px}.hero .eyebrow{margin-bottom:21px}.section-heading{padding-block:22px}.section-heading h2{font-size:21px}.section-note{display:block;font-size:13px;color:var(--muted)}.project-preview{aspect-ratio:1.94;border-radius:16px}.project-preview img{width:86%;left:7%;top:6%;box-shadow:0 10px 45px #452f2015;border:1px solid #fff7;border-radius:5px}.project-preview.nera img{width:86%;left:7%;top:6%;border-radius:0}.project-kind{top:22px;left:22px;padding:6px 13px;font-size:12px}.preview-open{width:54px;height:54px;right:24px;bottom:24px;font-size:28px}.project-caption{padding-top:21px}.project-caption h3{font-size:28px}.project-caption p{font-size:16px;max-width:none}.project-meta{font-size:14px}.project-meta span:last-child{display:block;color:var(--ink)}.project-card{margin-bottom:46px}.about{display:grid;grid-template-columns:1fr 2fr;padding-block:48px 60px;margin-top:62px}.about h2{font-size:40px}.about-main>p{font-size:18px;max-width:560px}.services{display:grid;grid-template-columns:1fr 2fr;gap:20px;margin-top:35px;padding-top:26px}.services h3{margin-top:6px}.services li{font-size:17px}.contact{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-block:55px 60px}.contact h2{font-size:40px}.contact-button{margin-top:0;min-width:180px}.footer{font-size:13px;padding-block:27px 32px}}
@media(min-width:1100px){.hero{padding-block:58px 62px}.hero h1{font-size:58px}.hero-aside{width:305px}.hero-aside p{font-size:16px}.hero .eyebrow{font-size:14px}.project-preview{aspect-ratio:2.05}.project-caption h3{font-size:30px}.project-card{margin-bottom:56px}.about{padding-block:61px 68px}.contact h2{font-size:46px}}
.back-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;color:var(--muted);padding-block:23px 20px}.case-heading .eyebrow{font-size:12px;color:var(--muted);margin-bottom:10px}.case-heading h1{font-size:45px;line-height:1.15;letter-spacing:-.045em}.case-title-row>div>p{font-size:17px;line-height:1.5;margin-top:10px;color:var(--muted)}.case-title-row .text-link{margin-top:12px}.case-roles{padding-block:20px 23px;font-size:12px}.case-roles>span{color:var(--muted)}.case-roles p{margin-top:3px}.case-cover{overflow:hidden;border-radius:10px;background:#eae2d7;padding:14px 10px 0}.case-cover img{border-radius:3px 3px 0 0}.case-summary{padding-block:31px 7px;display:grid;gap:24px}.case-summary h2{font-size:16px;margin-bottom:9px}.case-summary p{color:var(--muted);font-size:16px;line-height:1.6}.case-block{margin-top:32px}.case-section-head{border-top:1px solid var(--line);padding-top:22px;margin-bottom:22px}.case-section-head .section-label{display:block;font-size:12px;color:var(--muted);margin-bottom:18px}.case-section-head h2{font-size:28px;line-height:1.2;letter-spacing:-.035em}.case-section-head p{color:var(--muted);margin-top:12px;max-width:520px}.case-figure{margin:0}.case-figure>a{display:block;border-radius:9px;overflow:hidden;background:#f5ede3}.case-figure img{width:100%;height:auto}.case-figure figcaption{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);padding-top:10px}.case-figure figcaption a{color:var(--ink);white-space:nowrap}.case-details{display:grid;gap:26px}.small-note{display:block;margin-top:16px;color:var(--muted);font-size:12px}.mobile-screens{background:var(--panel);border-radius:12px;padding:22px;display:grid;gap:28px}.mobile-screens .case-figure{max-width:390px;margin-inline:auto;width:100%}.mobile-screens .case-figure>a{border:1px solid #d4cfc7;border-radius:7px}.case-outro{margin-top:38px;padding-block:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.case-outro .eyebrow{font-size:12px;color:var(--muted);margin-bottom:10px}.case-outro h2{font-size:29px;line-height:1.2;letter-spacing:-.035em}.case-outro .button{margin-top:22px}.next-project{padding-block:28px;display:grid;grid-template-columns:1fr 120px;gap:15px;align-items:center}.next-project .eyebrow{font-size:12px;color:var(--muted);margin-bottom:12px}.next-project h2{font-size:30px;letter-spacing:-.04em}.next-project p:not(.eyebrow){font-size:14px;color:var(--muted)}.next-project img{border-radius:5px}.next-meta{display:flex;flex-direction:column;gap:2px;font-size:11px;color:var(--muted);margin-top:12px}.return-projects{margin:0 0 35px}.catalog-figure>a{max-height:850px;overflow:hidden}
@media(min-width:768px){.back-link{padding-block:30px}.case-heading .eyebrow{font-size:14px}.case-heading h1{font-size:64px}.case-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.case-title-row>div>p{font-size:21px}.mobile-break{display:none}.case-title-row .text-link{margin:0 0 3px}.case-roles{display:flex;gap:32px;font-size:14px;padding-block:25px 30px}.case-roles p{margin:0}.case-cover{padding:40px 55px 0;border-radius:16px}.case-summary{grid-template-columns:1fr 1fr;gap:64px;padding-block:43px 12px}.case-summary h2{font-size:18px}.case-summary p{font-size:17px}.case-block{margin-top:45px}.case-section-head{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding-top:28px;margin-bottom:29px}.case-section-head .section-label{font-size:14px}.case-section-head h2{font-size:35px}.case-figure figcaption{font-size:13px;padding-top:14px}.case-details{grid-template-columns:1fr 1fr;align-items:start;gap:24px}.case-details .case-figure>a{height:540px}.case-details img{height:100%;object-fit:cover;object-position:top}.mobile-screens{grid-template-columns:1fr 1fr;gap:55px;padding:42px 65px;align-items:start}.case-outro{display:flex;align-items:center;justify-content:space-between;padding-block:43px;margin-top:54px}.case-outro h2{font-size:40px}.case-outro .eyebrow{font-size:14px}.case-outro .button{margin:0}.next-project{grid-template-columns:1fr 350px;padding-block:36px;gap:40px}.next-project h2{font-size:48px}.next-project .eyebrow{font-size:14px}.next-project p:not(.eyebrow){font-size:17px}.next-meta{flex-direction:row;gap:24px;font-size:13px}.next-project img{max-height:185px;width:100%;object-fit:cover;object-position:top}.return-projects{margin-bottom:42px}}
@media(min-width:1100px){.case-heading h1{font-size:76px}.case-summary{grid-template-columns:1fr 1.25fr;gap:130px}.case-details .case-figure>a{height:640px}.case-mobile{display:grid;grid-template-columns:1fr 1.8fr;gap:42px;padding-top:30px;border-top:1px solid var(--line)}.case-mobile .case-section-head{display:block;border:0;padding:0}.case-mobile .section-label{margin-bottom:35px}.case-mobile .case-section-head p{max-width:320px}.mobile-screens{padding:32px;gap:25px}}
@media(hover:hover){.project-link:hover .project-preview img{transform:translateY(-5px)}a:hover .preview-open{background:#3e4239}.text-link:hover{color:#66783e}.header nav a:hover,.footer a:hover{color:#66783e}.contact-button:hover{background:#cce473}}
/* Один проход адаптивной доработки: целые интерфейсы и явные статусы. */
.project-preview.nera img{width:100%;left:0;top:6%}.project-preview.nera .project-kind{left:auto;right:12px}.project-kind{font-size:12px}.case-heading .eyebrow,.case-roles,.case-section-head .section-label,.case-outro .eyebrow{font-size:14px}.case-figure figcaption{font-size:12px}.catalog-figure>a{max-height:none;aspect-ratio:1.5;overflow:hidden}.catalog-figure img{width:100%;height:100%;object-fit:cover;object-position:50% 66%}.case-details .case-figure>a{height:auto}.case-details img{height:auto;object-fit:contain}.project-meta span:last-child{font-size:12px}#project-nera .project-meta span:last-child{display:block;color:var(--muted)}
@media(min-width:768px){.project-preview.nera img{width:86%;left:7%;top:6%}.project-preview.nera .project-kind{right:22px}.project-meta span:last-child{font-size:14px}.case-figure figcaption{font-size:13px}}
/* Общие факты и визуальная система кейсов. */
:root{--muted:#686c66}
.case-heading{padding-bottom:24px}.case-facts{display:grid;grid-template-columns:1fr auto;gap:18px;margin:0;padding:24px 0;border-bottom:1px solid var(--line)}.case-facts>div:nth-child(2){grid-column:1 / -1;grid-row:2}.case-facts dt{color:var(--muted);font-size:13px;margin-bottom:4px}.case-facts dd{margin:0;font-size:14px}.concept-label{color:var(--ink)!important;text-transform:uppercase;letter-spacing:.08em}.concept-note{font-size:14px;color:var(--muted);margin-top:20px;max-width:690px}.case-nera .case-cover{background:#e5e5df}.visual-system{border-top:1px solid var(--line);padding-top:26px;margin-top:32px}.visual-system>h2{font-size:14px;margin-bottom:19px}.visual-system h3{font-size:25px;line-height:1.25;letter-spacing:-.025em;max-width:530px}.visual-system p{color:var(--muted);margin-top:16px;max-width:570px}.system-details{margin-top:23px;font-size:14px}.system-details>span{display:block;font-weight:500}.system-details ul{display:flex;flex-wrap:wrap;gap:12px 20px;list-style:none;padding:0;margin:15px 0 0}.system-details li{display:flex;align-items:center;gap:8px;color:var(--muted)}.system-details i{width:17px;height:17px;border:1px solid #0002;border-radius:50%;display:inline-block}.case-single{min-width:0}.next-project h2>span{font-size:.7em}.next-project:hover h2{color:#526428}.case-figure figcaption{align-items:center}.case-figure figcaption>a{min-height:44px;display:inline-flex;align-items:center;gap:5px}.text-link,.back-link,.footer>a{min-height:44px}.footer>a{display:inline-flex;align-items:center;gap:6px}.footer{align-items:center}.case-cover>a{display:block}.case-facts,.case-figure,.case-details,.mobile-screens{min-width:0}.contact-button:disabled{background:#e6e9df;color:#686c66}.contact-pending>span{font-size:13px}.case-outro .button{gap:20px}#project-nera .project-meta span:last-child{display:none}
@media(min-width:768px){.case-heading{padding-bottom:32px}.case-facts{grid-template-columns:1fr 2fr auto;gap:30px;padding-block:26px}.case-facts>div:nth-child(2){grid-column:auto;grid-row:auto}.case-facts dt{font-size:14px}.case-facts dd{font-size:16px}.visual-system{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding-top:30px;margin-top:44px}.visual-system h3{font-size:32px}.system-details{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.system-details ul{margin:0}#project-nera .project-meta span:last-child{display:block}.case-outro .button{white-space:nowrap}.case-mobile h2{max-width:370px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Confirmed contact channels */
.contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.contact-actions .contact-button{flex:1 1 150px;min-width:0;margin-top:0;gap:20px;padding-inline:20px}.contact-button-primary{background:var(--accent);color:var(--ink)}.contact-button-secondary{background:transparent;color:var(--ink);border:1px solid var(--ink)}.contact-pending{margin-top:25px;color:var(--muted);font-size:14px;max-width:250px}
@media(min-width:768px){.contact-actions{flex-wrap:nowrap;justify-content:flex-end;margin-top:0}.contact-actions .contact-button{flex:0 0 auto;min-width:156px}}
@media(hover:hover){.contact-button-primary:hover{background:#cce473}.contact-button-secondary:hover{background:var(--ink);color:white}}

/* Clear rhythm between portfolio cases */
.project-card+.project-card{border-top:1px solid var(--line);padding-top:30px}
@media(min-width:768px){.project-card+.project-card{padding-top:40px}}
