.section-heading{display:grid;grid-template-columns:1.7fr .7fr;align-items:end;gap:60px;margin-bottom:clamp(56px,8vw,120px)}.section-heading h2{margin:18px 0 0;font-size:clamp(44px,6.6vw,112px);font-weight:400;line-height:.95;letter-spacing:-.065em}.section-heading>p{max-width:470px;margin:0;color:var(--muted);font-size:clamp(16px,1.35vw,20px)}
.services{background:var(--ink)}.service-list{border-top:1px solid var(--line)}.service-row{position:relative;display:grid;grid-template-columns:70px minmax(260px,.8fr) 1fr 48px;align-items:center;gap:clamp(18px,4vw,72px);min-height:160px;padding:28px 0;border-bottom:1px solid var(--line);transition:padding .35s var(--ease),color .35s}.service-row:before{content:"";position:absolute;z-index:0;inset:0;background:var(--paper);transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--ease)}.service-row>*{position:relative;z-index:1}.service-row:hover{color:var(--ink);padding-inline:22px}.service-row:hover:before{transform:scaleY(1)}.service-number{color:var(--muted);font-size:12px}.service-row h3{margin:0;font-size:clamp(25px,3.1vw,52px);font-weight:400;letter-spacing:-.045em}.service-row p{max-width:520px;margin:0;color:var(--muted)}.service-row:hover p,.service-row:hover .service-number{color:#52565d}.service-arrow{justify-self:end;font-size:25px;transition:transform .35s var(--ease)}.service-row:hover .service-arrow{transform:rotate(45deg)}
.work{background:#d9d9d4;color:var(--ink)}.work .eyebrow,.work .section-heading>p{color:#64686d}.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(54px,8vw,130px) clamp(18px,3.5vw,62px)}.project-wide{grid-column:1/-1}.project-media{position:relative;display:grid;place-items:center;aspect-ratio:16/8.6;padding:clamp(28px,6vw,90px);overflow:hidden}.project-square{aspect-ratio:1;padding:clamp(22px,4vw,64px)}.project-violet{background:#5b56a3}.project-coral{background:#ef725b}.project-blue{background:#3c78da}.project-mint{background:#70ad9f}.project-media img{width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 28px 40px rgba(9,11,16,.28));transition:transform .8s var(--ease),filter .6s}.project:hover .project-media img{transform:scale(1.035) translateY(-4px);filter:drop-shadow(0 34px 52px rgba(9,11,16,.36))}.project-open{position:absolute;right:20px;bottom:20px;padding:12px 16px;border-radius:999px;color:var(--white);background:rgba(9,11,16,.72);backdrop-filter:blur(12px);font-size:12px;transform:translateY(18px);opacity:0;transition:transform .4s var(--ease),opacity .4s}.project:hover .project-open{transform:none;opacity:1}.project-caption{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding-top:22px;border-top:1px solid rgba(9,11,16,.25)}.project-caption div{display:flex;align-items:baseline;gap:16px}.project-caption span{color:#777b81;font-size:11px}.project-caption h3{margin:0;font-size:clamp(23px,2.4vw,40px);font-weight:400;letter-spacing:-.04em}.project-caption p{max-width:300px;margin:5px 0 0;color:#62666d;font-size:13px;text-align:right}
.process{background:var(--surface)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.process-grid li{position:relative;min-height:350px;padding:28px 26px 36px 0;border-right:1px solid var(--line)}.process-grid li:not(:first-child){padding-left:26px}.process-grid li:last-child{border-right:0}.process-grid span{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--muted);font-size:11px}.process-grid h3{margin:120px 0 18px;font-size:clamp(22px,2.3vw,36px);font-weight:400;letter-spacing:-.04em}.process-grid p{max-width:270px;margin:0;color:var(--muted)}
.quote{min-height:82vh;display:grid;grid-template-columns:.35fr 2fr .55fr;align-items:start;gap:clamp(28px,5vw,90px);background:linear-gradient(135deg,#343b9a 0,#7d4f9f 50%,#c35f79 100%)}.quote-mark{font-family:Georgia,serif;font-size:clamp(90px,11vw,180px);line-height:.8}.quote blockquote{max-width:1050px;margin:0;font-size:clamp(31px,4.4vw,74px);line-height:1.08;letter-spacing:-.045em}.quote-author{align-self:end;font-size:12px}.quote-author span{color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.13em}.quote-author p{margin:12px 0 0}
.faq{background:var(--paper);color:var(--ink)}.faq-list{border-top:1px solid rgba(9,11,16,.22)}.faq details{border-bottom:1px solid rgba(9,11,16,.22)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:32px 0;cursor:pointer;font-size:clamp(20px,2.2vw,34px);list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary i{position:relative;flex:0 0 36px;width:36px;height:36px;border:1px solid rgba(9,11,16,.22);border-radius:50%}.faq summary i:before,.faq summary i:after{content:"";position:absolute;top:50%;left:50%;width:12px;height:1px;background:currentColor;transform:translate(-50%,-50%);transition:transform .25s}.faq summary i:after{transform:translate(-50%,-50%) rotate(90deg)}.faq details[open] summary i:after{transform:translate(-50%,-50%) rotate(0)}.faq details p{max-width:790px;margin:-8px 0 32px;color:#5e6269;font-size:17px}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,150px);isolation:isolate;overflow:hidden;background:#10131c}.contact-glow{position:absolute;z-index:-1;width:70vw;height:70vw;left:-24vw;bottom:-48vw;border-radius:50%;background:radial-gradient(circle,rgba(86,117,255,.65) 0,rgba(139,76,175,.38) 42%,transparent 70%);filter:blur(24px)}.contact-copy h2{margin:22px 0 32px;font-size:clamp(44px,6vw,98px);font-weight:400;line-height:.95;letter-spacing:-.065em}.contact-copy h2 em{color:#a99cff;font-style:normal}.contact-copy>p:not(.eyebrow){max-width:520px;color:var(--muted);font-size:18px}.contact-copy>a{display:inline-block;margin-top:30px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.45)}.lead-form{align-self:end;padding:clamp(24px,3.5vw,52px);border:1px solid var(--line);background:rgba(255,255,255,.035);backdrop-filter:blur(18px)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.lead-form label:not(.consent){display:block;margin-bottom:28px}.lead-form label>span{display:block;margin-bottom:10px;color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.lead-form input:not([type=checkbox]),.lead-form textarea{width:100%;padding:12px 0 15px;border:0;border-bottom:1px solid rgba(255,255,255,.24);border-radius:0;outline:0;color:var(--white);background:transparent;resize:vertical;transition:border-color .25s}.lead-form input:focus,.lead-form textarea:focus{border-color:var(--acid)}.lead-form input::placeholder,.lead-form textarea::placeholder{color:rgba(255,255,255,.34)}.form-submit{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:18px}.consent{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;max-width:300px;color:var(--muted);font-size:11px}.consent input{width:16px;height:16px;margin:1px 0 0;accent-color:var(--acid)}.consent span{margin:0;color:var(--muted);font-size:11px;letter-spacing:0;text-transform:none}.consent a{color:var(--white);border-bottom:1px solid rgba(255,255,255,.3)}.lead-form button:disabled{cursor:wait;opacity:.6}
.site-footer{padding:64px var(--pad) 24px;border-top:1px solid var(--line);background:var(--ink)}.footer-brand{font-size:clamp(25px,3vw,50px);letter-spacing:.02em}.footer-brand .brand-mark{width:46px;height:46px}.footer-links{display:flex;gap:34px;margin:54px 0 72px;color:var(--muted)}.footer-links a:hover{color:var(--white)}.footer-bottom{display:flex;justify-content:space-between;gap:28px;padding-top:20px;border-top:1px solid var(--line);color:#6f747e;font-size:11px}
.cookie-notice{position:fixed;z-index:150;right:20px;bottom:20px;display:flex;align-items:center;gap:22px;max-width:430px;padding:12px 12px 12px 18px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(12,14,20,.9);backdrop-filter:blur(16px);font-size:12px}.cookie-notice[hidden]{display:none}.cookie-notice p{margin:0;color:var(--muted)}.cookie-notice button{padding:9px 14px;border:0;border-radius:999px;color:var(--ink);background:var(--white);cursor:pointer}
.notification-popup{position:fixed;z-index:1000;right:24px;bottom:24px;max-width:440px;animation:notifyIn .45s var(--ease)}.notification-popup.slideOut{animation:notifyOut .3s ease forwards}.popup-content{display:grid;grid-template-columns:32px 1fr 26px;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);color:var(--white);background:rgba(15,18,24,.96);backdrop-filter:blur(18px)}.popup-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--ink);background:var(--acid);font-weight:600}.notification-error .popup-icon{color:var(--white);background:#ff5f56}.popup-message{font-size:13px}.popup-close{border:0;color:var(--muted);background:transparent;cursor:pointer}@keyframes notifyIn{from{opacity:0;transform:translateY(20px)}}@keyframes notifyOut{to{opacity:0;transform:translateY(12px)}}
.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.hero-line.reveal:nth-child(2){transition-delay:.08s}.hero-line.reveal:nth-child(3){transition-delay:.16s}
/* Городские посадочные страницы */
.city-service-intro{padding:clamp(100px,12vw,170px) var(--pad);color:var(--ink);background:var(--paper)}.city-service-intro .container{width:min(100%,1440px);margin:0 auto}.city-breadcrumbs{display:flex;gap:10px;margin-bottom:46px;color:#6b6f75;font-size:12px}.city-service-intro-card{max-width:1000px;margin-bottom:90px}.city-service-location,.city-eyebrow{color:#6b6f75;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.city-service-intro h2{margin:16px 0 24px;font-size:clamp(36px,5.4vw,82px);font-weight:400;line-height:1;letter-spacing:-.055em}.city-service-intro-card>p:last-of-type,.city-landing-heading>p:last-child{max-width:800px;color:#5b6066;font-size:18px}.city-segments{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}.city-segments li{padding:8px 12px;border:1px solid rgba(9,11,16,.18);border-radius:999px;font-size:12px}.city-landing-heading{max-width:930px;margin-bottom:60px}.city-seo-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(9,11,16,.2);border-left:1px solid rgba(9,11,16,.2)}.city-seo-card{padding:clamp(26px,4vw,58px);border-right:1px solid rgba(9,11,16,.2);border-bottom:1px solid rgba(9,11,16,.2)}.city-card-number{color:#74787e;font-size:11px}.city-seo-card h2{font-size:clamp(24px,3vw,42px)}.city-seo-card p,.city-seo-card li{color:#5b6066}.city-workflow,.city-faq{margin-top:100px}.city-workflow ol{display:grid;grid-template-columns:repeat(4,1fr);padding:0;border-top:1px solid rgba(9,11,16,.2);list-style-position:inside}.city-workflow li{min-height:220px;padding:28px 20px 28px 0;border-right:1px solid rgba(9,11,16,.2)}.city-workflow .button{margin-top:34px;color:var(--white);background:var(--ink)}.city-faq details{border-top:1px solid rgba(9,11,16,.2)}.city-faq summary{padding:22px 0;cursor:pointer;font-size:20px}.city-faq details p{max-width:800px;color:#5b6066}
