.hero{display:block;padding:clamp(64px,7vw,108px) 6vw;min-height:auto}
.hero-copy{max-width:1040px}
.hero-copy h1{font-size:clamp(3rem,5.1vw,5.7rem);line-height:1;letter-spacing:-.06em}
.hero-copy .lead{font-size:1.08rem;line-height:1.65;max-width:760px}
.statement{padding:clamp(36px,5vw,72px) 6vw;display:grid;grid-template-columns:minmax(300px,.68fr) minmax(0,1fr);gap:20px;background:#eaf0f7}
.project-counter{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#fff 45%,#e8f8f5);border:1px solid #dce8e8;border-radius:28px;padding:30px;box-shadow:0 20px 55px #1432500b;min-width:0}
.project-counter:after{content:"";position:absolute;z-index:-1;width:280px;height:280px;border:1px solid #45f0cf55;border-radius:50%;right:-165px;top:70px;box-shadow:0 0 0 30px #45f0cf0a,0 0 0 60px #45f0cf08;pointer-events:none}
.counter-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.counter-brand{font-weight:800;font-size:.78rem;letter-spacing:.15em;color:var(--blue)}
.counter-status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;background:#eaf8f2;border-radius:999px;color:#237459;font-size:.75rem;white-space:nowrap}
.counter-status i{width:7px;height:7px;background:#29c78b;border-radius:50%;box-shadow:0 0 0 4px #29c78b20}
.counter-main{padding:32px 0 28px}
.counter-title{margin:0;line-height:.9;letter-spacing:-.055em}
.counter-title span,.counter-title strong{display:block}
.counter-title span{font-size:clamp(3.6rem,5.4vw,5.3rem);font-weight:700;color:var(--ink)}
.counter-title strong{margin-top:5px;font-size:clamp(3rem,4.6vw,4.45rem);font-weight:800;color:var(--blue)}
.counter-note{margin:24px 0 0;font-size:1.13rem;font-weight:650;letter-spacing:-.02em;color:var(--ink)}
.counter-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px}
.counter-bottom p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.45}
.counter-bottom a{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:1.25rem;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.counter-bottom a:hover{background:var(--blue);color:#fff}
.positioning-bridge{border:1px solid #dce5ef;border-radius:28px;background:var(--white);display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,70px)}
.positioning-bridge p{margin:0;padding:24px 0;font-size:clamp(1.45rem,2.7vw,2.7rem);line-height:1.13;letter-spacing:-.045em;color:var(--muted)}
.positioning-bridge p:first-child{padding-top:0;border-bottom:1px solid var(--line)}
.positioning-bridge p:last-child{padding-bottom:0}
.positioning-bridge strong{color:var(--ink);font-weight:800}
.intake{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:5vw;padding:clamp(56px,7vw,96px) 6vw;align-items:center}
.intake-contact{background:var(--white);padding:clamp(28px,3.2vw,42px);border-radius:var(--radius);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;box-shadow:0 16px 45px rgba(7,20,38,.07)}
.intake-contact h3{font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1.05;margin:0}
.intake-contact p{max-width:500px;margin:0;color:var(--muted);font-size:1.02rem}
.process{padding:clamp(64px,7vw,96px) 6vw}
.process .section-title{margin-bottom:42px}
.steps li{min-height:190px;padding:26px}
.steps h3{margin:36px 0 12px;font-size:1.22rem}
.cases{padding:clamp(64px,7vw,96px) 6vw;scroll-margin-top:92px}
.cases .section-title{margin-bottom:46px}
.case-card[hidden]{display:none!important}
.project-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:38px}
.project-pagination button{min-width:40px;height:40px;padding:0 11px;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}
.project-pagination button:hover:not(:disabled),.project-pagination button[aria-current=page]{border-color:var(--blue);background:var(--blue);color:var(--white)}
.project-pagination button:disabled{opacity:.42;cursor:default}
.project-pagination .page-nav{padding-inline:15px}
.about-interaction{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--white);scroll-margin-top:92px}
.about-panel,.interaction-panel{padding:clamp(58px,7vw,100px) 6vw}
.about-panel{border-right:1px solid rgba(255,255,255,.17)}
.about-interaction .eyebrow{color:var(--lime)}
.about-interaction h2,.capabilities h2,.service-faq h2,.custom-project h2{font-size:clamp(2.35rem,3.9vw,4.6rem);line-height:1;letter-spacing:-.052em;margin-bottom:32px}
.about-copy,.interaction-copy{color:#c9d3df;font-size:1.03rem;line-height:1.68;max-width:620px}
.about-copy .about-lead,.interaction-copy p:nth-child(2){color:var(--white);font-size:1.22rem;font-weight:700;line-height:1.42;letter-spacing:-.02em}
.capabilities{padding:clamp(64px,7vw,96px) 6vw;background:#edf2f8;scroll-margin-top:92px}
.capabilities-title{display:grid;grid-template-columns:1fr .7fr;column-gap:6vw;max-width:none;align-items:end;margin-bottom:42px}
.capabilities-title .eyebrow{grid-column:1/-1}
.capabilities-title>p:last-child{color:var(--muted);font-size:1.05rem;margin:0 0 8px;max-width:480px}
.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.capability-card{min-height:220px;padding:26px;border:1px solid #d4dde8;border-radius:18px;background:rgba(255,255,255,.78);display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease,background-color .2s ease,box-shadow .2s ease}
.capability-card>span{color:var(--blue);font-size:.74rem;font-weight:800;letter-spacing:.15em}
.capability-card h3{font-size:clamp(1.2rem,1.55vw,1.55rem);line-height:1.15;letter-spacing:-.025em;margin:34px 0 12px;max-width:300px}
.capability-card p{color:var(--muted);margin:auto 0 0;max-width:390px}
.service-faq{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr);scroll-margin-top:92px}
.service-model{padding:clamp(58px,7vw,100px) 6vw;background:var(--blue);color:var(--white)}
.service-model .eyebrow{color:var(--lime)}
.service-model-copy{color:#e8f0ff;font-size:1.05rem;line-height:1.7;max-width:590px}
.service-faq .faq{padding:clamp(58px,7vw,100px) 6vw;background:var(--paper);min-width:0}
.service-faq .section-title{margin-bottom:32px}
.service-faq details{padding:20px 0}
.service-faq summary{font-size:1.05rem;gap:20px}
.service-faq details p{font-size:.95rem}
.custom-project{margin:4vw 6vw;border-radius:28px;background:var(--ink);color:var(--white);padding:clamp(42px,5vw,76px);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:6vw}
.custom-project .eyebrow{color:var(--lime)}
.custom-project-copy{color:#c9d3df;font-size:1.05rem;line-height:1.65}
.custom-project-copy>p:first-child{color:var(--white);font-size:1.28rem;font-weight:700}
.button-light{margin-top:18px;background:var(--lime);color:var(--ink)}
.button-light:hover{background:var(--white);color:var(--ink)}
.footer-connect{display:grid;gap:10px;justify-items:start;min-width:0}
.footer-contacts{display:flex;flex-wrap:wrap;gap:8px}
.footer-contact{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 11px;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:var(--white);font-size:.86rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease}
.footer-contact svg{width:17px;height:17px;flex:0 0 17px;fill:currentColor}
.footer-contact:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.footer-vk{color:var(--lime);font-size:.82rem}
.button:focus-visible,.text-link:focus-visible,.topbar a:focus-visible,.custom-project a:focus-visible,.project-pagination button:focus-visible,.footer-contact:focus-visible,.footer-vk:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.statement,.intake,.process,.about-interaction,.capabilities,.service-faq,#faq{scroll-margin-top:92px}
@media(hover:hover){.capability-card:hover{transform:translateY(-3px);border-color:#9fb3ca;background:var(--white);box-shadow:0 16px 40px rgba(7,20,38,.07)}}
@media(max-width:1050px){.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statement{grid-template-columns:minmax(280px,.75fr) minmax(0,1fr)}}
@media(max-width:900px){.statement,.intake,.about-interaction,.service-faq,.custom-project{grid-template-columns:1fr}.project-counter{width:100%;max-width:none}.case-card{grid-template-columns:1fr}.case-meta{text-align:left}.intake-contact{padding:28px}.about-panel{border-right:0;border-bottom:1px solid rgba(255,255,255,.17)}.capabilities-title{grid-template-columns:1fr;gap:18px}.capabilities-title .eyebrow{grid-column:auto}.custom-project{gap:30px}}
@media(max-width:560px){.hero{padding:48px 20px}.hero-copy h1{font-size:2.65rem}.hero-copy .lead{font-size:1rem}.hero-actions{gap:18px;margin-top:26px}.statement{padding:28px 20px;gap:14px}.project-counter{padding:24px;border-radius:22px}.counter-main{padding:28px 0 24px}.counter-title span{font-size:3.35rem}.counter-title strong{font-size:3rem}.counter-note{margin-top:20px;font-size:1.02rem}.positioning-bridge{padding:28px 24px;border-radius:22px}.positioning-bridge p{font-size:1.35rem;padding:20px 0}.intake,.process,.cases,.capabilities{padding:64px 20px}.intake-contact{padding:24px}.process .section-title,.cases .section-title,.capabilities .section-title{margin-bottom:34px}.steps{grid-template-columns:1fr}.steps li{min-height:0;padding:24px}.steps h3{margin-top:28px}.case-card{gap:18px;padding:28px 0}.case-card h3{font-size:2.25rem;margin-bottom:18px}.project-pagination{gap:6px}.about-panel,.interaction-panel,.service-model,.service-faq .faq{padding:64px 20px}.about-interaction h2,.capabilities h2,.service-faq h2,.custom-project h2{font-size:2.55rem}.about-copy,.interaction-copy,.custom-project-copy{font-size:1rem}.capability-grid{grid-template-columns:1fr;gap:12px}.capability-card{min-height:205px;padding:24px}.capability-card h3{font-size:1.38rem;margin-top:30px}.custom-project{margin:20px;border-radius:22px;padding:40px 24px}.custom-project-copy>p:first-child{font-size:1.2rem}.footer-contacts{display:grid;width:100%}.footer-contact{width:max-content;max-width:100%}}
@media(prefers-reduced-motion:reduce){.capability-card,.button,.counter-bottom a,.footer-contact{transition:none}}
