/* One visual language from the opening screen; each chapter has its own surface. */
:root{--surface-base:#081321;--surface-panel:#102236;--surface-line:#b7d8f02b;--surface-text:#eef5fc;--surface-muted:#b6c9dc;--surface-accent:#b0deff}
body{background:var(--surface-base);color:var(--surface-text)}
/* Keep the approved live hero unchanged. Use quiet light fields farther down. */
main>section:not(.focus-hero){position:relative;border-top:1px solid var(--surface-line)}
main>section:not(.focus-hero):not(.oneoff){padding-top:84px;padding-bottom:84px}
main>section:nth-of-type(even):not(.focus-hero):not(.shell){background:radial-gradient(ellipse at 12% 0,#23476655,transparent 60%),#0c1b2c}
main>section:nth-of-type(odd):not(.focus-hero):not(.shell){background:radial-gradient(ellipse at 88% 0,#294d6d30,transparent 55%),#081321}
.focus-section,.selected-case-section,.prices,.clear-process,.faq-section,.clear-request,.existing-support{color:var(--surface-text)}
:is(.section-heading,.selected-project-heading,.clear-process,.faq-section,.clear-request,.page-section,.page-band,.page-hero,.focus-subhero) :is(h1,h2,h3){color:var(--surface-text);font-weight:550}
:is(.section-heading,.selected-project-heading) h2,.clear-process h2,.faq-section h2{font-size:clamp(34px,4.3vw,57px);line-height:1.1;letter-spacing:-.045em}
.selected-project-heading .eyebrow,.selected-project-heading>p,.section-heading>p,.section-heading>div>p,.clear-process p,.faq-section details p,.existing-support p:not(.eyebrow){color:var(--surface-muted)}
.selected-project-heading .eyebrow,.clear-process .eyebrow,.faq-section .eyebrow,.existing-support .eyebrow,.prices .eyebrow{color:#a9cce8}
/* Common cards: soft geometry, visible boundaries, no white islands. */
.featured-project,.price-card,.calculator,.oneoff,.archive-card,.related-project,.service-directory>a,.scenario-card,.audit-output>div,.deliverable-light,.light-route-grid>a,.catalog-price-note{background:linear-gradient(145deg,#152b40,#0d1c2d);border:1px solid var(--surface-line);border-radius:22px;color:var(--surface-text);box-shadow:0 18px 50px #00000012}
.featured-project h3,.featured-project h3 a,.archive-card h3,.scenario-card h2,.audit-output h3,.catalog-price-note h2,.light-route-grid h3{color:var(--surface-text)}
.featured-project-body>p,.project-card-bottom small,.project-category,.archive-card p,.archive-card .case-tag,.scenario-pain,.scenario-result,.scenario-card details p,.audit-output p,.catalog-price-note p,.light-route-grid p{color:var(--surface-muted)}
.project-card-bottom{border-color:var(--surface-line)}
.project-card-bottom a,.archive-card .text-link,.archive-card .case-page-link,.case-page-link,.related-project b,.service-directory b,.light-route-grid b,.scenario-card .text-action,.focus-detail .dark-link,.page-inline{color:var(--surface-accent);border-color:var(--surface-line)}
.featured-project:hover,.scenario-card:hover,.service-directory>a:hover{border-color:#a5d8ff69}
/* Selected state stays functional and unambiguous. */
.price-card[data-active="false"]{border-color:var(--surface-line);box-shadow:none}
.price-card[data-active="true"]{border-color:#a8ddff;box-shadow:inset 0 0 0 1px #a8ddff,0 0 32px #78bfff0d;background:linear-gradient(145deg,#1b3850,#102438)}
.price-card .plan-fit,.price-card li,.price span,.price small{color:var(--surface-muted)}
.price-card h3,.calculator h3{color:var(--surface-text)}
.price-card .price{color:#b0deff}
.calculator .tariff-option span{background:#ffffff05;color:#dae9f5;border-color:#b7d8f033}
.calculator .tariff-option input:checked+span{background:#c4e7ff;color:#102a40;border-color:#c4e7ff;box-shadow:none}
.calculator .tariff-option:hover span{border-color:#a8ddff}
.calculator .calc-result{border-color:var(--surface-line)}
.calculator .calc-note,.calculator .calc-minimum,.calculator .calc-help,.calculator .calc-help a{color:#b6cfe2;opacity:1}
.calculator input[type=range]{accent-color:#b7e1ff}
.calculator .text-link{color:var(--surface-accent)}
.oneoff{margin-top:24px;padding:34px}
.oneoff-head,.oneoff-grid article,.oneoff-grid article:nth-child(odd){border-color:var(--surface-line)}
.oneoff-head span,.oneoff-grid article>span,.oneoff-grid strong,.oneoff-cta strong{color:var(--surface-accent)}
.oneoff-head h3,.oneoff-grid h4{color:var(--surface-text)}
.oneoff-head p,.oneoff-grid p,.oneoff-grid em,.oneoff-grid strong small,.oneoff-cta span,.price-footnote{color:var(--surface-muted)}
.price-footnote{font-size:12px;line-height:1.8}
.compare{border-color:var(--surface-line);background:#ffffff02}
/* Individual steps read as separate blocks, with a consistent rhythm. */
.clear-process ol{gap:18px}
.clear-process li{border:1px solid var(--surface-line);background:#ffffff03;border-radius:18px;padding:25px}
.clear-process li>span{color:#acd9fa}
.clear-process h3{color:var(--surface-text);font-weight:550}
.faq-section details{border:1px solid var(--surface-line);border-radius:16px;margin-bottom:12px;padding:22px 24px;background:#ffffff03}
.faq-section summary{color:var(--surface-text)}
.faq-section summary>span{color:#b0deff}
/* Frame the contact action, preserving the vendor form's own field contrast. */
.clear-request .request-grid{border:1px solid #b7d8f038;border-radius:24px;padding:40px;background:linear-gradient(125deg,#203f5a9c,#102236b8);box-shadow:0 25px 70px #0002}
.clear-request .request-grid>div>p:not(.eyebrow){color:#c4d7e8}
.clear-request .eyebrow,.clear-request small,.clear-request .form-consent{color:#c4d7e8}
.clear-request #crm-status,.clear-request #request-topic{color:#dbeaf7}
.existing-support .support-actions :is(a,button){border:1px solid #b7d8f038;border-radius:14px;background:#ffffff05;color:#e1effa}
.existing-support .support-actions :is(a,button):hover{background:#ffffff0c;border-color:#b7d8f077}
.review-footer{background:#060f1b;border-top:1px solid var(--surface-line);padding:52px 0}
/* Secondary pages inherit the same colors and card system. */
.breadcrumbs,.breadcrumbs a{color:#b7cfe1}
.page-hero,.focus-subhero{background:radial-gradient(ellipse at 35% 0,#2549666b,transparent 75%)}
.page-hero h1,.focus-detail .focus-subhero h1,.case-catalog .section-heading h1{color:var(--surface-text)}
.focus-detail .focus-subhero h1 em{color:#b0deff;-webkit-text-fill-color:currentColor}
.page-lead,.focus-detail .focus-section-head>p:last-child{color:#c2d4e4}
.page-section,.page-list li,.page-faq details{border-color:var(--surface-line)}
.page-section p,.page-list li,.related-project small,.related-project p,.service-directory p,.company-details,.case-evidence figcaption,.focus-detail .page-note{color:var(--surface-muted)}
.page-section .eyebrow,.focus-detail .page-section .eyebrow,.focus-detail .focus-subhero .eyebrow,.related-project>span,.audit-output span{color:#a9cce8}
.page-section h2,.page-section h3,.page-faq summary,.deliverable-light h3,.related-project h3,.service-directory h2{color:var(--surface-text)}
.company-details a,.review-document a{color:var(--surface-accent)}
.case-evidence{background:#102236;border-color:var(--surface-line)}
.catalog-filter{background:#081321eb;border-color:var(--surface-line)}
.catalog-filter button{background:#ffffff05;color:#c9ddeb;border-color:var(--surface-line)}
.catalog-filter button[aria-pressed=true]{background:#c4e7ff;color:#102a40;border-color:#c4e7ff}
.scenario-kicker,.scenario-card details h3,.scenario-card summary{color:#c3e1f7}
.scenario-card details{border-color:var(--surface-line)}
.scenario-flow span,.effect-formula>span{background:#ffffff06;color:#d5e9f7;border-color:var(--surface-line)}
.effect-formula>b{color:#b0deff}
.scenario-result b,.scenario-result strong{color:#edf5fc}
.review-document{color:#dceaf5;background:#081321}.review-document h1,.review-document h2{color:#f1f7fc}
/* Match the opening screen's restrained pill-shaped actions. */
main .button{border-radius:100px}
main .button-primary{background:#eaf5ff;color:#142f46;border-color:#eaf5ff}
main .button-primary:hover{background:#d1ebff;box-shadow:0 8px 32px #96caff18}
main .button-ghost{color:#e6f2fc;border-color:#b7d8f04d;background:#ffffff04}
@media(max-width:800px){main>section:not(.focus-hero):not(.oneoff){padding-top:56px;padding-bottom:56px}.clear-request .request-grid{padding:28px;gap:32px}.selected-project-heading{gap:24px}}
@media(max-width:540px){main>section:not(.focus-hero):not(.oneoff){padding-top:44px;padding-bottom:44px}.clear-request .request-grid{padding:22px;border-radius:19px}.clear-process li{padding:23px}.faq-section details{padding:20px}.oneoff{padding:23px}.selected-project-heading h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){main .button{transition:none}}
.catalog-count{color:#b6c9dc}
.price-card .card-top{color:#adc5d8}
/* Fade the live opening into its base instead of exposing the canvas edge. */
.focus-atmosphere{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 64%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 64%,transparent 100%)}
/* Price cards size to their contents; the calculator no longer stretches the row. */
.price-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px}
.price-cards{align-items:stretch;gap:12px}
.price-card{min-height:0;padding:24px 20px}
.price-card h3{margin:20px 0 12px;font-size:25px}
.price-card .plan-fit{margin:0 0 22px;min-height:96px}
.price-card .price{font-size:24px;margin-bottom:18px}
.price-card ul{margin-bottom:22px;padding-top:16px}
.price-card li{padding:7px 0;line-height:1.65}
.price-card .js-plan{margin-top:auto;min-height:44px;padding:12px;font-size:12px}
.price-top{color:#b0c9dc}
.calculator{display:block;padding:22px;scroll-margin-top:88px}
.calculator .calc-head{font-size:9px;align-items:center}
.calculator h3{font-size:25px;line-height:1.1;margin:14px 0 20px;max-width:none}
.calculator .tariff-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 20px}
.calculator .tariff-picker legend{font-size:11px;margin-bottom:10px}
.calculator .tariff-option{margin:0;min-width:0}
.calculator .tariff-option span{min-height:44px;padding:10px 5px;justify-content:center;font-size:11px;gap:0}
.calculator .tariff-option i{display:none}
.calculator>label{margin:17px 0;gap:10px}
.calculator>label input[type=range]{height:18px;margin:0;display:block}
.calculator .calc-help{font-size:11px;line-height:1.65;margin:18px 0 12px}
.calculator .calc-help a{display:block;min-height:30px;padding-top:4px}
.calculator .calc-minimum{font-size:10px;margin:10px 0}
.calculator .calc-result{margin:12px 0;padding:15px 0}
.calculator .calc-result strong{font-size:21px;margin:6px 0}
.calculator .calc-result p{font-size:18px}
.calculator .calc-note{font-size:10px;line-height:1.65;margin:12px 0}
.calculator>.text-link{min-height:44px;align-items:center;gap:12px;font-size:11px;line-height:1.5}
@media(min-width:1101px){.calculator{position:sticky;top:88px}}
@media(max-width:1100px){.price-layout{grid-template-columns:1fr}.calculator{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0 26px}.calculator .calc-head,.calculator h3,.calculator .tariff-picker,.calculator .calc-result,.calculator>.text-link{grid-column:1/-1}.calculator h3{margin:8px 0 18px}.calculator .calc-result{margin-top:8px}.calculator>.text-link{justify-content:flex-start}.calculator .calc-help,.calculator .calc-minimum{align-self:center}}
@media(max-width:650px){.price-card{padding:24px;min-height:0}.price-card .plan-fit{min-height:0;margin-bottom:18px}.price-card ul{margin-bottom:22px}.price-card .js-plan{margin-top:5px}.calculator{display:block;padding:22px;scroll-margin-top:76px}.calculator h3{font-size:25px;margin:12px 0 18px}.calculator .tariff-option span{font-size:11px;padding:10px 3px}.calculator .tariff-picker{margin-bottom:18px}.calculator .calc-result{padding:12px 0}.calculator .calc-help{margin:12px 0 8px}.calculator .calc-note{margin:10px 0}.calculator>label{margin:14px 0}}
@media(max-width:360px){.calculator{padding:18px}.calculator .tariff-option span{font-size:10px}.calculator .tariff-picker{gap:4px}}
/* Keep the full calculation visible on a 720px-high laptop. */
.calculator{padding:20px}
.calculator h3{margin:12px 0 16px}
.calculator .tariff-picker{margin-bottom:16px}
.calculator .calc-result{margin:10px 0;padding:12px 0}
.calculator .calc-help{margin-top:12px}
.calculator .calc-minimum{margin:8px 0}
/* Alternate light editorial chapters with the blue visual world of the hero. */
main>section#digital-resilience,main>section#prices,main>section#faq{
 --surface-text:#142f43;--surface-muted:#425e73;--surface-line:#1f4d6c26;--surface-accent:#086491;
 background:radial-gradient(ellipse at 12% 0,#d9e9f37a,transparent 65%),#f2f6f9;color:#142f43;border-top-color:#234d6b26
}
#digital-resilience .eyebrow,#prices .eyebrow,#faq .eyebrow{color:#48677e}
#digital-resilience h2{color:#142f43}
#digital-resilience h2 em{color:#086491}
#digital-resilience .resilience-lead{color:#425e73}
#digital-resilience .resilience-card{background:#ffffffb8;border-color:#b9cddc;box-shadow:0 16px 55px #143d5907}
#digital-resilience .resilience-card li{border-color:#234d6b26}
#digital-resilience .resilience-card li b{color:#19384e}
#digital-resilience .resilience-card li p{color:#425e73}
#digital-resilience .resilience-card li>span,#digital-resilience .resilience-deliverable>span,#digital-resilience .focus-number{color:#48677e}
#digital-resilience .resilience-deliverable p{color:#23465f}
#digital-resilience .button-primary{background:#143b57;border-color:#143b57;color:#f2f8fc}
#digital-resilience .button-primary:hover{background:#20516f}
/* Dark comparison cards retain their local palette within the light price chapter. */
#prices :is(.price-card,.calculator,.oneoff,.compare){--surface-text:#eef5fc;--surface-muted:#b6c9dc;--surface-line:#b7d8f02b;--surface-accent:#b0deff}
#prices .compare{background:#12283b;color:#eef5fc}
#prices .monitoring-note{color:#425e73;border-color:#086491}
#prices .price-footnote{color:#425e73}
#prices .section-heading>p{color:#425e73}
#faq details{background:#ffffffb8;border-color:#b9cddc}
#faq summary>span{color:#086491}
#faq details[open]{background:#fff;border-color:#8db3cf}
#faq details p{color:#425e73}
@media(max-width:650px){.calculator{padding:20px}.calculator h3{margin:12px 0 16px}}
@media(max-width:360px){.calculator{padding:18px}}
/* An anchor must have one stable position, including when opening #calculator directly. */
.calculator{position:relative;top:auto}
/* Native-looking contact form, scoped to this site rather than the Bitrix account. */
#crm-form .b24-form{font-family:inherit;background:transparent;color:#e8f2fa;border-radius:0;overflow:visible}
#crm-form .b24-form-wrapper{background:transparent!important;color:#e8f2fa!important;box-shadow:none!important;border:0!important;border-radius:0;min-width:0!important;max-width:none}
#crm-form .b24-form-content{padding:0;background:transparent}
#crm-form .b24-form-field{margin-bottom:14px}
#crm-form .b24-form-field-email{display:none}
#crm-form .b24-form-control{font-family:inherit;font-size:16px;background:#081c2f80!important;border:1px solid #c0dbef45!important;border-radius:12px!important;color:#f0f7fc!important;box-shadow:none!important;min-height:58px}
#crm-form .b24-form-control:hover{border-color:#c0dbef80!important}
#crm-form .b24-form-control:focus{border-color:#b1ddff!important;outline:2px solid #a8d8ff28;outline-offset:2px;background:#0b2035!important}
#crm-form .b24-form-control-label{color:#bcd1e2!important;font-family:inherit}
#crm-form .b24-form-control-required{color:#f3b3bf}
#crm-form textarea.b24-form-control{min-height:116px;resize:vertical;line-height:1.6}
#crm-form .b24-form-field-agreement{margin:18px 0}
#crm-form .b24-form-control-desc,#crm-form .b24-form-field-agreement-link{font-family:inherit;font-size:12px;line-height:1.7;color:#c8dbe9!important;opacity:1}
#crm-form .b24-form-field-agreement input{accent-color:#acd9f9;width:16px;height:16px;margin-right:8px;vertical-align:middle}
#crm-form .b24-form-field-agreement-link:hover{text-decoration:underline;text-underline-offset:3px;color:#eaf6ff!important}
#crm-form .b24-form-btn-container{padding:0}
#crm-form .b24-form-btn{font-family:inherit;border-radius:100px!important;background:#eaf5ff!important;border:1px solid #eaf5ff!important;color:#142f46!important;font-size:14px;font-weight:650;min-height:52px;box-shadow:none!important}
#crm-form .b24-form-btn:hover{background:#d1ebff!important;border-color:#d1ebff!important}
#crm-form .b24-form-btn:focus-visible{outline:3px solid #a8ddff;outline-offset:4px}
#crm-form .b24-form-control-alert-message{color:#ffd0d7!important;background:#3a2330!important;border-radius:8px;font-size:12px}
#crm-form .b24-form-control-alert .b24-form-control{border-color:#f3a5b5!important}
#crm-form .b24-form-sign{background:transparent;border:0;padding:16px 0 0;opacity:.85}
#crm-form .b24-form-sign-abuse-link,#crm-form .b24-form-sign-text{color:#b3cadc!important;font-size:10px}
#crm-form .b24-form-state{background:#102a40!important;color:#edf7ff!important;border-radius:16px}
#crm-form .b24-form-state-text{color:#edf7ff!important}
@media(max-width:540px){#crm-form .b24-form-control-desc,#crm-form .b24-form-field-agreement-link{font-size:11px;line-height:1.65}#crm-form .b24-form-control{font-size:16px}#crm-form .b24-form-sign{padding-top:14px}}
/* Light chapters must override the legacy .section-heading.light rule. */
#prices .section-heading.light h2{color:#142f43}
#prices .section-heading.light>p{color:#425e73}
#digital-resilience h2,#faq h2{color:#142f43}
/* Support has four clear choices, with a single primary action. */
main>section#support.support-refined{padding:44px 0;background:#0b1928;border-color:#b7d8f026}
#support.support-refined>.shell{grid-template-columns:1fr 1.15fr;align-items:center;gap:48px;padding-top:8px;padding-bottom:8px}
#support.support-refined h2{font-size:36px;font-weight:550;letter-spacing:-.035em;margin:18px 0 14px}
#support.support-refined .eyebrow{font-size:10px;letter-spacing:.09em;margin:0;color:#aacde5}
#support.support-refined p:not(.eyebrow){font-size:14px;line-height:1.75;margin:0;color:#b6cbdc}
#support.support-refined .support-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#support.support-refined .support-actions :is(a,button){display:flex;align-items:center;justify-content:space-between;text-align:left;gap:14px;min-height:78px;width:100%;padding:16px 20px;border-radius:14px;font-family:inherit;font-size:13px;line-height:1.5;cursor:pointer}
#support.support-refined .support-actions small{display:block;color:#a9c1d4;font-size:10px;margin-bottom:5px}
#support.support-refined .support-actions b{font-size:13px;font-weight:550}
#support.support-refined .support-actions i{font-size:18px;font-style:normal;color:#b5d8f2}
#support.support-refined .support-actions .support-primary{background:#eaf5ff;border-color:#eaf5ff;color:#142f46;font-weight:650}
#support.support-refined .support-primary i{color:#264c68}
#support.support-refined .support-primary:hover{background:#d1ebff}
/* A compact, aligned footer with the legal line separated from useful contacts. */
footer.footer-refined{padding:44px 0 0;background:#060f1b}
.footer-refined>.shell{display:block}
.footer-refined .footer-main{display:grid;grid-template-columns:1.7fr 1.3fr 1fr 1.1fr;gap:35px;align-items:start;padding-bottom:34px}
.footer-refined .footer-main>div,.footer-refined .footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}
.footer-refined .footer-company .brand{margin-bottom:4px}
.footer-refined .brand-copy b{font-size:22px}
.footer-refined .brand-copy small{font-size:7px;letter-spacing:.07em}
.footer-refined .brand-mark{width:40px;height:40px;flex-shrink:0}
.footer-refined .footer-company p{color:#a9bfd0;font-size:13px;line-height:1.8;margin:0}
.footer-refined address{font-style:normal;font-size:12px;line-height:1.6;color:#a9bfd0}
.footer-refined .footer-main h2{font-size:10px;font-weight:550;text-transform:uppercase;letter-spacing:.09em;line-height:1.5;color:#91adc3;margin:3px 0 9px}
.footer-refined .footer-main a:not(.brand){font-size:13px;line-height:1.7;color:#d3e3ef;text-decoration:none}
.footer-refined .footer-main a:not(.brand):hover{color:#b0deff;text-decoration:underline;text-underline-offset:4px}
.footer-refined .footer-contact a.footer-phone{font-size:18px;line-height:1.5;white-space:nowrap;color:#f0f6fb;font-weight:500;letter-spacing:-.02em}
.footer-refined .footer-contact .footer-quiet-link{font-size:12px;color:#a9cfe9;margin-top:3px}
.footer-refined .footer-reviews iframe{display:block;max-width:100%;border:0;border-radius:8px;background:#fff}
.footer-refined .footer-reviews a{font-size:11px!important;color:#a9cfe9!important}
.footer-refined .footer-bottom{display:flex;align-items:center;gap:28px;padding:19px 0;border-top:1px solid #b7d8f01f;color:#8fa9be}
.footer-refined .footer-bottom span,.footer-refined .footer-bottom a{font-size:11px;line-height:1.7;color:#8fa9be}
.footer-refined .footer-bottom .footer-top{margin-left:auto;color:#c1d8e9}
@media(max-width:1000px){.footer-refined .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.footer-refined .footer-main>div,.footer-refined .footer-nav{gap:10px}}
@media(max-width:700px){#support.support-refined>.shell{grid-template-columns:1fr;gap:26px}#support.support-refined h2{font-size:32px}#support.support-refined .support-actions :is(a,button){min-height:76px;padding:14px;font-size:12px}#support.support-refined .support-actions b{font-size:12px}#support.support-refined .support-actions small{font-size:9px}.footer-refined .footer-main{gap:30px 22px}.footer-refined .footer-company{grid-column:1/-1}.footer-refined .footer-bottom{gap:12px;flex-wrap:wrap;padding:18px 0}.footer-refined .footer-bottom>a:not(.footer-top){order:3;width:100%}.footer-refined .footer-bottom .footer-top{order:2}.footer-refined .footer-contact a.footer-phone{font-size:15px}}
@media(max-width:380px){#support.support-refined .support-actions{grid-template-columns:1fr}#support.support-refined .support-actions :is(a,button){min-height:66px;padding:13px 18px}.footer-refined .footer-main{grid-template-columns:1fr}.footer-refined .footer-company{grid-column:auto}.footer-refined .footer-contact a.footer-phone{font-size:18px}}
.review-footer.footer-refined>.shell>.footer-bottom{display:flex;gap:28px}
@media(max-width:700px){.review-footer.footer-refined>.shell>.footer-bottom{gap:12px}}
