/* Bounded audit corrections; the established site palettes and layout remain. */
html { scroll-padding-top: 100px; }
body { overflow-wrap: break-word; padding-bottom: 82px; }
main, section, article, .shell, .feedback-shell { min-width: 0; }
[data-reveal], .js .reveal, .reveal, .hero-copy { opacity: 1 !important; transform: none !important; visibility: visible !important; }
.site-header.is-scrolled { background: #fff; backdrop-filter: none; }
.hero-copy::before, .hero-mark { display: none; }
.hero h1 { white-space: normal !important; }
.hero-intro, .hero-lead, .hero-foot, .contact-details p, .contact-phone { color: #fff !important; opacity: 1; }
.section-heading > p, .approach-intro > p:last-child, .process-list p, .product-copy > span { color: #454b4a; }
.solution-content > p:not(.eyebrow), .product-card--wide .product-copy > span { color: #e7e9e8; }
.contact-side, .contact-details { min-width: 0; }
.contact-mail, .contact-phone { overflow-wrap: anywhere; font-size: clamp(18px, 2.5vw, 28px); }
.feedback-section, .new-article-teaser { background: #f7f7f4; color: #111312; }
.feedback-section h2, .new-article-teaser h2 { font-family: var(--font-display, inherit); font-weight: 450; letter-spacing: -.04em; line-height: 1.08; }
.reference-grid { align-items: stretch; }
.reference-tile { min-width: 0; min-height: 100px; padding: 20px; line-height: 1.35; }
.reference-tile img { width: auto !important; height: auto !important; max-height: 52px; max-width: 100%; object-fit: contain; filter: grayscale(1); }
.reference-tile:hover img { filter: none; }
.reference-names { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); list-style: none; padding: 0; gap: 0; border-top: 1px solid #d8dcda; }
.reference-names li { padding: 22px 14px; border-bottom: 1px solid #d8dcda; color: #252b2a; font-weight: 550; }
.group-band { padding: 44px 0; background: #111312; color: #fff; }
.group-band .shell { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 32px; }
.group-band p { flex: 1 1 420px; margin: 0; max-width: 700px; line-height: 1.7; }
.group-band a, .audit-links a { text-decoration: underline; text-underline-offset: 5px; }
.audit-links { display: flex; flex-wrap: wrap; gap: 16px 26px; }
.audit-footer { padding: 24px 0 10px; border-top: 1px solid #ccd2d0; margin-top: 24px; color: #333b39; font-size: 15px; }
.audit-footer address { font-style: normal; margin: 16px 0; line-height: 1.7; }
.audit-footer a, .audit-footer button { text-decoration: underline; text-underline-offset: 4px; }
.audit-footer button { border: 0; background: none; padding: 0; cursor: pointer; font: inherit; color: inherit; }
.audit-page { padding: clamp(80px,9vw,140px) 0 80px; background: #f7f7f4; color: #111312; }
.audit-wrap { width: min(1180px,calc(100% - 64px)); margin: auto; }
.audit-page h1 { max-width: 1100px; font-family: var(--font-display,inherit); font-size: clamp(38px,5.5vw,76px); font-weight: 550; letter-spacing: -.045em; line-height: 1.03; margin: 22px 0; overflow-wrap: anywhere; }
.audit-page .audit-lead { font-size: clamp(20px,2.2vw,27px); line-height: 1.5; max-width: 850px; color: #333d39; }
.audit-breadcrumb { display: flex; flex-wrap: wrap; gap: 10px; font-size: 14px; line-height: 1.7; }
.audit-breadcrumb a { text-decoration: underline; text-underline-offset: 4px; }
.audit-body { display: grid; grid-template-columns: minmax(0,1fr) 290px; gap: 70px; align-items: start; margin-top: 50px; }
.audit-copy h2 { font-family: var(--font-display,inherit); font-size: clamp(27px,3vw,40px); font-weight: 500; line-height: 1.15; letter-spacing: -.03em; margin: 40px 0 20px; }
.audit-copy p, .audit-copy li { font-size: 18px; line-height: 1.8; }
.audit-copy ul { padding-left: 24px; }
.audit-copy img { width: 100%; max-height: 540px; object-fit: contain; background: #fff; }
.audit-copy figure { margin: 0 0 32px; }
.audit-copy figcaption { font-size: 13px; color: #48524e; line-height: 1.6; padding-top: 12px; }
.audit-aside { padding: 28px; background: #fff; border: 1px solid #d9dedb; position: sticky; top: 110px; }
.audit-aside h2 { font-size: 20px; line-height: 1.3; margin-top: 0; }
.audit-aside a { display: block; padding: 13px 0; border-bottom: 1px solid #d9dedb; line-height: 1.5; }
.audit-aside a:last-child { border: 0; }
.audit-flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); padding: 0; margin: 30px 0; gap: 1px; list-style: none; background: #cbd0cd; border: 1px solid #cbd0cd; }
.audit-flow li { padding: 22px 14px; background: #fff; color: #242a27; font-size: 15px; line-height: 1.6; }
.audit-flow b { display: block; color: var(--audit-accent,#b62d06); margin-bottom: 8px; }
.audit-note { background: #fff; border-left: 3px solid var(--audit-accent,#b62d06); padding: 20px 24px; font-size: 16px !important; }
.audit-cta { display: flex; flex-wrap: wrap; gap: 16px; margin: 30px 0; }
.audit-cta a, .audit-submit { background: var(--audit-accent,#b62d06); color: #fff; padding: 16px 22px; border: 1px solid var(--audit-accent,#b62d06); font-size: 16px; font-weight: 600; line-height: 1.4; cursor: pointer; }
.audit-cta a + a { background: transparent; color: var(--audit-accent,#b62d06); }
.audit-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin: 30px 0; }
.audit-card { display: block; padding: 28px; background: #fff; border: 1px solid #d8deda; color: #111312; }
.audit-card:hover { border-color: var(--audit-accent,#b62d06); }
.audit-card h3 { margin: 10px 0 16px; font-size: 23px; line-height: 1.25; font-weight: 550; letter-spacing: -.025em; }
.audit-card p { font-size: 16px; line-height: 1.65; margin: 0; }
.audit-faq details { border-top: 1px solid #cdd4cf; padding: 20px 0; }
.audit-faq summary { cursor: pointer; font-size: 19px; font-weight: 550; line-height: 1.5; }
.audit-faq p { margin-bottom: 0; }
.audit-table { width: 100%; border-collapse: collapse; margin: 24px 0; }
.audit-table th, .audit-table td { border-bottom: 1px solid #cdd4cf; padding: 16px 14px; text-align: left; font-size: 16px; line-height: 1.6; vertical-align: top; }
.audit-table th { width: 35%; font-weight: 600; }
.audit-brief { padding: 28px; margin-top: 40px; background: #fff; border: 1px solid #d9dedb; color: #111312; }
.audit-brief form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.audit-brief label { display: grid; gap: 8px; min-width: 0; font-size: 15px; line-height: 1.5; }
.audit-brief input, .audit-brief textarea, .audit-brief select { width: 100%; min-width: 0; border: 1px solid #717d76; border-radius: 0; background: #fff; color: #111312; padding: 13px; font: inherit; }
.audit-brief .wide { grid-column: 1 / -1; }
.audit-brief .check { display: flex; align-items: start; gap: 12px; }
.audit-brief .check input { width: 18px; min-width: 18px; height: 18px; margin-top: 2px; }
.audit-brief p { font-size: 15px; }
.audit-cookie { position: fixed; z-index: 1200; left: 20px; bottom: 20px; width: min(560px,calc(100% - 40px)); padding: 24px; background: #fff; color: #111312; border: 1px solid #656e68; box-shadow: 0 10px 45px #0003; font-size: 15px; line-height: 1.6; }
.audit-cookie p { margin: 10px 0; }
.audit-cookie h2 { font-size: 19px; margin: 0; }
.audit-cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.audit-cookie button { background: #fff; color: #111312; border: 1px solid #555f58; padding: 11px 14px; font: inherit; font-weight: 550; cursor: pointer; }
.audit-cookie-options label { display: flex; gap: 10px; margin: 16px 0; align-items: center; }
.audit-cookie-options input { width: 20px; height: 20px; }
.audit-video-dialog { width: min(1000px,calc(100% - 32px)); border: 0; padding: 20px; color: #111312; background: #fff; }
.audit-video-dialog::backdrop { background: #000b; }
.audit-video-dialog iframe { border: 0; width: 100%; aspect-ratio: 16/9; margin-top: 16px; }
.audit-video-dialog button { font: inherit; padding: 12px 16px; cursor: pointer; border: 1px solid #666; background: #fff; color: #111; }
.audit-video-dialog .audit-video-close { float: right; }
.process-image.audit-process-icon { display: grid; place-items: center; background: #e8dfec; color: #69317f; min-height: 180px; font-size: 64px; font-weight: 450; }
.about-image.audit-about-card { background: #171126; color: #fff; padding: 50px; display: flex; flex-direction: column; justify-content: center; }
.about-image.audit-about-card p { font-size: 24px; line-height: 1.6; }
.solution-tabs { max-height: 700px; overflow-y: auto; }
.solution-tab i { font-size: 0; }
.solution-tab i::after { content: '+'; font-size: 20px; }
.hero-foot { padding-right: 130px; }
.feedback-video { background: transparent; border: 0; text-align: left; font: inherit; cursor: pointer; padding: 0 0 24px; }
.feedback-video strong { display: block; }
.flow { min-height: auto; }
.flow::before, .flow::after, .flow-grid { display: none; }
.flow-inner { padding-block: 80px; gap: 45px; }
.flow h2 { font-size: clamp(38px,5vw,68px); }
.audit-calculator label { display: grid; gap: 8px; margin-bottom: 18px; }
.audit-calculator input { padding: 12px; font: inherit; width: 100%; border: 1px solid #69766d; }
.audit-calculator output { display: block; background: #fff; padding: 24px; margin: 24px 0; border-left: 3px solid var(--audit-accent); font-size: 23px; font-weight: 600; }
@media(max-width:1000px){ .audit-body { grid-template-columns: 1fr; gap: 36px; } .audit-aside { position: static; } .audit-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:680px){ .audit-wrap { width: calc(100% - 36px); } .audit-card-grid { grid-template-columns: 1fr; } .audit-flow { grid-template-columns: repeat(2,minmax(0,1fr)); } .reference-names { grid-template-columns: repeat(2,minmax(0,1fr)); } .audit-brief { padding: 20px; } .audit-brief form { grid-template-columns: 1fr; } .audit-brief .wide { grid-column: auto; } .mobile-nav { overflow-y: auto; padding-bottom: 90px; } .mobile-nav a { min-height: 60px; font-size: 24px; } .hero-copy, .hero-content { padding-bottom: 65px; } .hero-foot { padding-right: 0; flex-wrap: wrap; } .feedback-float, .floating-whatsapp { bottom: 14px; right: 14px; } .audit-cookie { bottom: 12px; left: 12px; width: calc(100% - 24px); max-height: calc(100svh - 24px); overflow: auto; padding: 20px; } .audit-table th, .audit-table td { padding: 12px 8px; overflow-wrap: anywhere; font-size: 14px; } .audit-page h1 { font-size: clamp(34px,10vw,50px); } .about-image.audit-about-card { padding: 28px; } .solution-tabs { max-height: none; overflow-y: hidden; } }
@media(prefers-reduced-motion:reduce){ * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

@font-face{font-family:'Inter Tight';src:url('/assets/inter-tight-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter Tight';src:url('/assets/inter-tight-latin-ext-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--font-display:'Inter Tight','Arial',sans-serif;--font-sans:'Inter Tight','Arial',sans-serif}
html[lang=ru] body,html[lang=ru] h1{font-family:'Inter Tight','Arial',sans-serif}

/* Keep the agreed desktop hero to a readable two-line scale. */
.hero-copy-inner{max-width:920px}.hero h1{max-width:920px;font-size:clamp(40px,4.25vw,70px);line-height:1.05}html[lang=ru] .hero h1{font-size:clamp(36px,4vw,64px);line-height:1.08;letter-spacing:-.035em}.hero-intro{max-width:650px}.solution-image--photo img{object-fit:contain;object-position:center;background:#111312}@media(max-width:680px){.hero h1{font-size:clamp(34px,9vw,46px)}html[lang=ru] .hero h1{font-size:clamp(30px,8.2vw,42px)!important}.hero{min-height:740px}.hero-copy{min-height:740px}.audit-flow{background:#d5dbd7}.audit-page .audit-copy{min-width:0}}

/* Official Inter Tight Cyrillic subsets, self-hosted; SIL OFL retained in assets/inter-tight-OFL.txt. */
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/inter-tight-cyrillic-ext-variable.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter Tight';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/inter-tight-cyrillic-variable.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}


.enquiry-honeypot{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.audit-submit:disabled{opacity:.65;cursor:wait}[data-brief-result]{overflow-wrap:anywhere}
