/* Визард-К: единая палитра по оригиналу логотипа, 23.10.2026. */
:root {
  --brand-blue:#0000fd; --brand-red:#fe0002; --brand-red-text:#bd0008;
  --ink:#191e42; --ink2:#111158; --accent:var(--brand-blue);
  --bg:#f6f7fc; --paper:#fff; --muted:#515a70; --line:#dce0ef;
}
/* 1px is letter spacing. Preserve the existing comfortable line heights. */
body#brand-refresh, body#brand-refresh * { letter-spacing:1px!important; }
body { color:var(--ink); background:var(--bg); }
.site-header { background:#fff!important; border-bottom:1px solid var(--line); box-shadow:0 4px 20px #10105b08; }
.site-header .nav a,.site-header .header-phone,.brand-new .brand-words strong { color:var(--brand-blue)!important; }
.brand-new .brand-words small { color:var(--brand-red-text)!important; font-size:8px; line-height:1.6; }
.brand-new { max-width:300px; }
.brand-new .brand-words strong { font-size:22px; }
.site-header .nav a:hover,.site-header .header-phone:hover,.mobile-nav a:hover { color:var(--brand-red-text)!important; }
.nav { gap:15px; }
.header-inner { gap:20px; }
.hamburger span { background:var(--brand-blue); }
.mobile-nav { background:#fff!important; border-color:var(--line); }
.site-header .mobile-nav>a { color:var(--ink)!important; border-color:var(--line); }
.button-orange,.button-primary,.floating-cta,.site-header .button-orange,
.service-card .service-button,.service-card .service-arrow,.popular-item b,
.catalog-item-actions button,.service-button { background:var(--brand-blue)!important; color:#fff!important; border-color:var(--brand-blue)!important; }
.button-orange:hover,.button-primary:hover,.floating-cta:hover,.service-card .service-button:hover,
.catalog-item-actions button:hover { background:#0000c9!important; border-color:#0000c9!important; box-shadow:0 8px 20px #0000fd20; }
.button-secondary { color:var(--brand-blue)!important; border-color:#b9b9ee!important; background:#fff!important; }
.button-secondary:hover { background:#f0f0ff!important; border-color:var(--brand-blue)!important; color:var(--brand-blue)!important; }
.button,.text-link,.catalog-item-actions button { line-height:1.45!important; }
.catalog-item-actions button { padding:10px 13px; border:1px solid; border-radius:7px; min-height:42px; }
.hero { background:#fff!important; color:var(--ink)!important; }
.hero-glow { background:radial-gradient(ellipse at 90% 35%,#e9e9ff,transparent 65%)!important; }
.hero h1 { color:var(--ink)!important; font-size:clamp(44px,4.2vw,64px); line-height:1.12; }
.hero h1 em { color:var(--brand-blue)!important; }
.hero .hero-lede { color:var(--muted)!important; font-size:16px; line-height:1.7; }
.hero .eyebrow { color:var(--brand-blue)!important; }
.hero .eyebrow-stroke { background:var(--brand-red)!important; }
.hero .proof-icon { color:var(--brand-red)!important; }
.hero-proof,.hero-proof strong { color:var(--ink)!important; }
.hero-proof span { color:var(--muted)!important; }
.hero-proof-line { background:var(--line)!important; }
.hero .text-link { color:var(--brand-blue)!important; border-color:#b9b9ee!important; }
.hero .text-link:hover { background:#eeeeff; color:var(--brand-blue)!important; }
.hero-art-inner { background:#f2f3fc!important; border-color:var(--line); box-shadow:0 18px 50px #11115812!important; }
.hero-art-inner::after { display:none; }
.hero-art-inner .corner-label { display:none!important; }
.hero-art-tag { color:var(--ink)!important; background:#fffffff5!important; }
.hero-art-tag span { color:var(--brand-blue)!important; }
.hero-bottom,.hero-bottom span:last-child { color:var(--muted)!important; border-color:var(--line)!important; }
.hero-bottom b { color:var(--brand-red)!important; }
.section-heading h2,.section-heading h2 span,.faq-section h2,.faq-section h2 span,
.contact-panel h2,.catalog-group h3,.catalog-item h3,.article-body h3,
.case-card-body h3,.service-copy h3,.reviews-preview-copy h3,.reviews-empty h3,
.about-copy h2,.step h3,.simple-cta h2 { color:var(--ink)!important; }
.section-heading h2 span { color:var(--brand-blue)!important; }
.overline,.card-kicker,.service-num,.service-catalog-link,.catalog-group-no,
.article-kicker,.article-read,.article-meta,.step-symbol,.step-num,.review-stars,
.sample-gallery-title b,.case-card-body strong,.modal-tag { color:var(--brand-blue)!important; }
.service-copy p,.service-items,.catalog-group p,.catalog-item p,.case-card-body p,
.article-body p,.sample-gallery-note,.section-heading>p,.step p,
.reviews-preview-copy p,.reviews-empty p,.about-copy p,.faq-list p,.aside-card p,
.contact-panel p span,.contact-panel small,.catalog-item-meta,.review-author small,
.case-feature-photo figcaption,.article-prose { color:var(--muted)!important; }
.service-copy p,.catalog-group p,.catalog-item p,.case-card-body p,.article-body p { font-size:14px; line-height:1.65; }
.service-items,.sample-gallery-note { font-size:12px; line-height:1.65; }
.service-card,.catalog-group,.catalog-item,.case-card,.article-card,.popular-item,
.sample-gallery-item,.review-card,.reviews-preview,.reviews-empty,.contact-panel { border-color:var(--line)!important; }
.service-card:hover,.catalog-group:hover,.catalog-item:hover,.case-card:hover,.popular-item:hover { border-color:#8585f5!important; }
.popular-item { color:var(--ink); }
.popular-item:hover { background:#f2f2ff; }
.service-image,.catalog-group-photo-wrap,.catalog-item-photo,.sample-gallery-image,.product-hero-image { background:#f0f1fa!important; }
.article-card-visual .mini-tag { color:var(--brand-blue); }
.service-catalog-link:hover,.service-card:hover .service-catalog-link,
.catalog-item h3 a:hover,.catalog-item-actions a,.back-link,.articles-more a,
.sample-gallery-title,.catalog-group-link,.text-link,.article-prose a { color:var(--brand-blue)!important; }
.inner-hero,.article-hero:not(.product-hero) { background:linear-gradient(115deg,#08085e,#0000c9)!important; color:#fff!important; }
.inner-hero::after { display:none; }
.inner-hero .button-orange,.identity-section .button-orange,.bottom-cta .button-orange,.footer .button-orange {
  color:var(--brand-blue)!important; background:#fff!important; border-color:#fff!important;
}
.inner-hero .button-orange:hover,.identity-section .button-orange:hover,.bottom-cta .button-orange:hover,.footer .button-orange:hover {
  color:var(--brand-blue)!important; background:#ededff!important; border-color:#ededff!important;
}
.inner-hero h1,.article-hero:not(.product-hero) h1 { color:#fff!important; }
.inner-hero h1 em,.article-hero:not(.product-hero) h1 em { color:#fff!important; }
.inner-hero .overline,.article-hero .overline { color:#d6dbff!important; }
.inner-hero p,.article-hero:not(.product-hero) p,.inner-hero .breadcrumbs,
.article-hero .breadcrumbs,.article-date { color:#e2e5ff!important; }
.product-hero { background:#f6f7fc!important; color:var(--ink)!important; }
.product-hero h1 { color:var(--ink)!important; }
.product-hero .overline { color:var(--brand-blue)!important; }
.product-hero .breadcrumbs,.product-hero p { color:var(--muted)!important; }
.product-hero-image>span { color:var(--ink)!important; background:#fffffff5!important; }
.wide-band { background:var(--brand-blue)!important; color:#fff; }
.band-inner h2,.band-inner .overline,.band-asterisk { color:#fff!important; }
.step { border-top-color:var(--brand-blue); }
.identity-section,.bottom-cta,.footer { background:#090947!important; color:#fff!important; }
.identity-content h2,.identity-content h2 em,.bottom-cta h2,.bottom-cta h2 em { color:#fff!important; }
.identity-content p,.bottom-cta p,.footer p,.footer-details a { color:#dfe2f8!important; }
.bottom-cta .overline,.footer .foot-label,.footer .brand-new .brand-words small { color:#c7cdff!important; }
.footer .brand-new .brand-words strong { color:#fff!important; }
.footer-bottom,.footer-bottom a,.footer .foot-legal { color:#c7cce6!important; }
.footer-bottom a:hover,.footer-details a:hover { color:#fff!important; }
.footer-bottom { border-color:#ffffff30; line-height:1.7; }
.form-field,.modal h2,.faq-list summary { color:var(--ink)!important; }
.modal>p,.consent-check { color:var(--muted); }
.form-field input,.form-field select,.form-field textarea { color:var(--ink); border-color:#b6bfd8; }
.form-field input::placeholder,.form-field textarea::placeholder { color:#606a80; opacity:1; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--brand-blue)!important; box-shadow:0 0 0 3px #0000fd18!important; }
.form-field a,.consent-check a,.modal-close:hover { color:var(--brand-blue)!important; }
.consent-check a,.article-prose a { text-decoration:underline; text-underline-offset:3px; }
.consent-check input { accent-color:var(--brand-blue); }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid var(--brand-blue); outline-offset:4px; }
.footer a:focus-visible,.inner-hero a:focus-visible { outline-color:#fff; }
.floating-cta { box-shadow:0 7px 22px #0000a32a!important; }
.archive-disclaimer { background:#eef0ff; border-color:var(--brand-blue); color:var(--muted); }
@media(max-width:1240px) {
  .site-header .nav { display:none; }
  .site-header .hamburger { display:flex; margin-left:0; }
  .header-actions { display:flex; margin-left:auto; }
  .mobile-nav { position:absolute; left:0; right:0; top:100%; padding:18px 24px; box-shadow:0 14px 24px #11115815; }
  .mobile-nav.open { display:flex; flex-direction:column; gap:10px; }
  .mobile-nav>a { padding:10px 0; font-size:14px; }
}
@media(max-width:700px) {
  .header-actions { display:none; }
  .site-header .hamburger { margin-left:auto; }
  .brand-new { max-width:calc(100% - 54px); }
  .brand-new .brand-words strong { font-size:19px!important; }
  .brand-new .brand-words small { display:block; white-space:normal; max-width:210px; font-size:8px!important; line-height:1.6; }
  .hero .hero-lede,.inner-hero p,.product-hero p { font-size:15px!important; line-height:1.65!important; }
  .hero .eyebrow { font-size:10px!important; line-height:1.6; }
  .hero h1 { font-size:clamp(30px,7.5vw,42px)!important; line-height:1.14!important; }
  .hero-proof span { font-size:11px; line-height:1.5; }
  .hero-proof strong { font-size:12px; }
  .hero-bottom { font-size:11px; line-height:1.7; }
  .service-copy p,.catalog-group p,.catalog-item p,.article-body p { font-size:14px!important; line-height:1.65!important; }
  .sample-gallery-title { line-height:1.5; }
  .service-card .service-button { line-height:1.45!important; }
  .modal>p { font-size:14px; line-height:1.6; }
  .modal .consent-check { font-size:12px; line-height:1.65; }
  .inner-hero h1 { overflow-wrap:anywhere; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }

/* v46: one original mark, Russian wordmark and stronger red accents. */
:root { --brand-red-text:#fe0002; --action-red:#e60008; }
.site-header .brand-new { width:300px; max-width:300px; flex:0 0 auto; }
.brand.brand-new .brand-lockup { display:block; width:100%!important; height:auto!important; max-width:none!important; object-fit:contain; }
.footer .brand-new { width:360px; max-width:100%; }
.footer .brand-lockup { border-radius:10px; }
body#brand-refresh .button-orange,body#brand-refresh .floating-cta,
body#brand-refresh .service-card .service-button,body#brand-refresh .catalog-item-actions button {
  background:var(--action-red)!important; color:#fff!important; border-color:var(--action-red)!important;
}
body#brand-refresh .button-orange:hover,body#brand-refresh .floating-cta:hover,
body#brand-refresh .service-card .service-button:hover,body#brand-refresh .catalog-item-actions button:hover {
  background:#c90006!important; color:#fff!important; border-color:#c90006!important;
}
.service-card .service-arrow,.popular-item b { background:var(--brand-blue)!important; }
.hero .eyebrow-stroke { background:#fe0002!important; }
.case-photo-caption { padding:10px 2px; font-size:12px; line-height:1.6; color:var(--muted); }
.archive-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.archive-example { margin:0; background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.archive-example img { display:block; width:100%; aspect-ratio:1.5; object-fit:contain; background:#fff; }
.archive-example figcaption { padding:16px 18px 18px; font-size:14px; font-weight:700; color:var(--ink); line-height:1.5; }
.case-card-visual img,.case-feature-photo img { object-fit:contain; background:#fff; }
@media(min-width:701px) and (max-width:980px) {
 .hero .hero-inner { grid-template-columns:1fr; gap:30px; }
 .hero h1 { max-width:760px; font-size:clamp(40px,6vw,54px); }
 .hero-art { width:100%; max-width:760px; }
 .hero-art-inner { min-height:390px!important; height:430px!important; }
}
@media(max-width:700px) {
 .site-header .brand-new { width:285px; max-width:calc(100% - 54px); }
 .footer .brand-new { width:340px; }
 .archive-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .archive-example figcaption { padding:12px; font-size:12px; }
}
@media(max-width:440px) { .archive-gallery { grid-template-columns:1fr; } }
/* Final gallery and contrast pass. */
.work-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 32px}
.work-photo-grid-large{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.work-photo{margin:0;min-width:0;overflow:hidden;border:1px solid #dce0ec;border-radius:14px;background:#fff;box-shadow:0 5px 20px #131b4808}
.work-photo>a{display:block;background:#f6f7fa}
.work-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;padding:12px;transition:transform .2s}
.work-photo a:hover img{transform:scale(1.02)}
.work-photo figcaption{padding:14px 16px 18px;color:#202646;font-size:13px;font-weight:650;line-height:1.5}
.article-prose .work-photo figcaption{margin:0;font-size:12px}
.case-feature-photo{margin:0 0 28px!important}
.case-feature-photo img{height:auto;max-height:650px;object-fit:contain!important;border:1px solid #e1e5ef}
.case-card-body h3{margin-top:0}
.case-card-body p{font-size:14px;line-height:1.65;color:#4d5770!important}
.case-card-body strong{color:#0000dc!important}
.archive-example img{aspect-ratio:1!important}
.catalog-item-meta,.article-meta,.sample-gallery-note,.breadcrumbs{color:#505a73!important}
.inner-hero .breadcrumbs,.inner-hero .breadcrumbs a,.article-hero:not(.product-hero) .breadcrumbs,
.article-hero:not(.product-hero) .breadcrumbs a,.article-hero:not(.product-hero) .article-date{color:#e5e8ff!important}
.inner-hero .overline,.article-hero:not(.product-hero) .overline{color:#e5e8ff!important}
.identity-content .overline,.identity-content p,.bottom-cta p,.footer p,.footer .foot-label{color:#e3e6fb!important}
.identity-section .button-outline-light{border:1px solid #f3f4ff;color:#fff;background:transparent}
.identity-section .button-outline-light:hover{background:#fff;color:#0000c9}
.wide-band .overline,.wide-band h2,.wide-band p{color:#fff!important}
.wide-band .button-cream{background:#fff;color:#0000c9!important;border-color:#fff}
.hero-proof strong,.product-attributes span,.faq-list summary{color:#252b4c!important}
.product-attributes{line-height:1.6}
.button-secondary:focus-visible,.button-orange:focus-visible{outline-color:#18185f}
.form-result:not(:empty){font-size:14px;line-height:1.6;background:#f0f3ff;border:1px solid #b8c5e8;color:#1e2e59;padding:12px 14px;border-radius:8px}
.form-result.error{background:#fff0f1;border-color:#d9858b;color:#a00013}
.form-result.success{background:#edf7ef;border-color:#8dbf9a;color:#14542a}
.form-field input,.form-field select,.form-field textarea{background:#fff;color:#1b2141}
.modal .consent-check{color:#46516a}
.modal .consent-check a{color:#0000c9!important}
.reviews-empty{grid-template-columns:1fr 1fr}
.legal-content{max-width:1000px;line-height:1.8;color:#303950;background:#fff;border:1px solid #e1e5ef;border-radius:14px;padding:36px}
.legal-content h2{color:#1a2142;font-size:23px;line-height:1.35;margin:30px 0 14px}
.legal-content h2:first-child{margin-top:0}
.legal-content p{font-size:15px;line-height:1.8;margin:0 0 16px;color:#3f4a62!important}
.legal-content a{color:#0000c9;text-decoration:underline;text-underline-offset:3px}
.legal-content small{font-size:13px;color:#515b72}
.contact-panel small,.contact-panel p strong{color:#505a73!important}
body#brand-refresh .aside-card{background:#f0f2ff!important;border:1px solid #d7dced;color:#202747}
body#brand-refresh .aside-card h3{color:#202747!important}
body#brand-refresh .aside-card .overline{color:#0000c9!important}
body#brand-refresh .aside-card p{color:#46516b!important}
body#brand-refresh .contact-panel a{color:#0000c9!important}
body#brand-refresh .form-field input,body#brand-refresh .form-field select,body#brand-refresh .form-field textarea{border-color:#7c88a6}
@media(max-width:1100px){.work-photo-grid-large{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
 .work-photo-grid,.work-photo-grid-large{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .work-photo img{padding:7px}
 .work-photo figcaption{font-size:12px;padding:12px;overflow-wrap:anywhere}
 .article-prose .work-photo-grid{margin:20px 0 28px}
 .legal-content{padding:22px 18px}
 .legal-content p{font-size:14px}
 .legal-content h2{font-size:21px}
 .reviews-empty{grid-template-columns:1fr}
}
@media(max-width:360px){.work-photo-grid:not(.work-photo-grid-large){grid-template-columns:1fr}}

.footer-top > *, .reviews-preview > * { min-width:0; }
.footer .brand-new { max-width:100%!important; }
.popular-item { min-width:0; }
.popular-item > span { min-width:0; overflow-wrap:anywhere; }
.popular-item b { flex:0 0 28px; }
@media(max-width:480px) {
 .footer-top { grid-template-columns:minmax(0,1fr); }
 .footer-brand p { max-width:100%; }
 .reviews-preview { grid-template-columns:minmax(0,1fr); }
 .reviews-image-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .sample-gallery-title { min-width:0; overflow-wrap:anywhere; }
}

/* v51: original product examples, complete prints and consistent framing. */
body#brand-refresh .archive-product-gallery .sample-gallery-image {
 background:#f6f7fa!important; padding:12px; aspect-ratio:1/1; height:auto; display:flex; align-items:center; justify-content:center;
}
body#brand-refresh .archive-product-gallery .sample-gallery-image img {
 width:100%; height:100%; max-height:100%; object-fit:contain!important; object-position:center!important; border-radius:6px; filter:brightness(1.025) contrast(1.02);
}
body#brand-refresh .archive-result-strip { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:12px; }
.archive-result-strip .result-photo { margin:0; min-width:0; }
.archive-result-strip .result-photo a { display:block; background:#f6f7fa; border:1px solid #dce0ef; border-radius:10px; padding:8px; aspect-ratio:1/1; }
body#brand-refresh .archive-result-strip img { width:100%; height:100%!important; object-fit:contain!important; object-position:center!important; border-radius:5px; filter:brightness(1.025) contrast(1.02); }
.archive-result-strip figcaption { color:#303b56; font-size:12px; line-height:1.5; margin-top:10px; overflow-wrap:anywhere; }
body#brand-refresh .hero-art-inner img { object-position:45% 50%; }
@media(max-width:600px) {
 body#brand-refresh .archive-result-strip { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
 .archive-result-strip .result-photo a { padding:4px; }
 .archive-result-strip figcaption { font-size:10px; line-height:1.5; }
 body#brand-refresh .archive-product-gallery .sample-gallery-image { padding:7px; }
}

#ideas,#results { scroll-margin-top:100px; }

/* Article scale shared by existing and newly published posts. */
body#brand-refresh .article-hero { padding:44px 0 42px; }
body#brand-refresh .article-hero h1 { font-size:clamp(28px,3vw,42px)!important; line-height:1.22!important; max-width:960px; margin:18px 0 18px; overflow-wrap:anywhere; }
body#brand-refresh .article-hero p { font-size:16px!important; line-height:1.7; max-width:760px; }
body#brand-refresh .article-layout > .article-prose { font-size:16px!important; line-height:1.75; min-width:0; color:#35415b!important; }
body#brand-refresh .article-layout > .article-prose > p,
body#brand-refresh .article-layout > .article-prose > ul,
body#brand-refresh .article-layout > .article-prose > ol { font-size:16px!important; line-height:1.75!important; max-width:72ch; margin:0 0 20px; overflow-wrap:anywhere; }
body#brand-refresh .article-layout > .article-prose > ul,
body#brand-refresh .article-layout > .article-prose > ol { padding-left:24px; }
body#brand-refresh .article-layout > .article-prose li { font-size:inherit!important; line-height:inherit; margin:7px 0; }
body#brand-refresh .article-layout > .article-prose > :is(h2,h3,h4,h5,h6) { color:#191e42!important; font-weight:750; line-height:1.35!important; max-width:40ch; overflow-wrap:anywhere; }
body#brand-refresh .article-layout > .article-prose > h2 { font-size:26px!important; margin:34px 0 14px; }
body#brand-refresh .article-layout > .article-prose > h3 { font-size:21px!important; margin:28px 0 12px; }
body#brand-refresh .article-layout > .article-prose > h4 { font-size:18px!important; margin:24px 0 10px; }
body#brand-refresh .article-layout > .article-prose > :is(h5,h6) { font-size:16px!important; margin:22px 0 10px; }
body#brand-refresh .article-layout > .article-prose > .article-cover { display:block; width:100%; height:auto!important; max-height:420px; object-fit:contain!important; object-position:center; background:#f6f7fa; border:1px solid #dce0ef; border-radius:12px; margin:0 0 30px; }
body#brand-refresh .article-card-visual img { object-fit:contain!important; background:#f6f7fa; }
body#brand-refresh .article-card .article-body h3 { font-size:20px!important; line-height:1.4!important; margin:10px 0 12px; }
body#brand-refresh .article-card .article-body p { font-size:14px!important; line-height:1.65; }
@media(max-width:700px) {
 body#brand-refresh .article-hero { padding:30px 0 32px; }
 body#brand-refresh .article-hero h1 { font-size:clamp(26px,6.8vw,34px)!important; }
 body#brand-refresh .article-hero p { font-size:15px!important; }
 body#brand-refresh .article-layout > .article-prose,
 body#brand-refresh .article-layout > .article-prose > p,
 body#brand-refresh .article-layout > .article-prose > ul,
 body#brand-refresh .article-layout > .article-prose > ol { font-size:15px!important; }
 body#brand-refresh .article-layout > .article-prose > h2 { font-size:23px!important; margin-top:28px; }
 body#brand-refresh .article-layout > .article-prose > h3 { font-size:20px!important; margin-top:24px; }
 body#brand-refresh .article-layout > .article-prose > .article-cover { max-height:300px; margin-bottom:24px; }
 body#brand-refresh .article-card .article-body h3 { font-size:18px!important; }
}
