/* Approved direction: light technological studio. Appearance only; layout and
   interaction geometry remain in styles.css. */
@font-face{font-family:Onest;src:url('assets/fonts/onest-cyrillic-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('assets/fonts/onest-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--ink:#142a4b;--muted:#626e82;--bg:#f3f4f6;--accent:#7060f8;--line:#d9dee7;--surface:#fff;--wash:#f5f4fa;--soft-shadow:0 8px 22px #172a4a0a,0 1px 3px #172a4a08}
body,.desktop{font-family:Onest,Arial,sans-serif;color:var(--ink)}
button:focus-visible,a:focus-visible{outline-color:var(--accent)}
.brand strong,.os-home,.desktop-wallpaper>span{font-family:Manrope,Arial,sans-serif}
.brand>span{border-color:#c7cdd8;color:#4d5a70}
.header-caption,.icon-button,.site-footer,.scene-caption,.scene-help,.intro-platforms{color:var(--muted)}
.quiet-button{border-color:#bac3d2}
.eyebrow{color:#5b647c;letter-spacing:.085em}
.eyebrow i,.caption-dot,.loading-dot{background:var(--accent)}
.intro h1{font-weight:550;letter-spacing:-.052em;color:var(--ink)}
.intro h1>span{color:#7465e8}
.intro-copy{color:#626e80}
.primary-button{background:#1b2c49;color:white;border-radius:9px;box-shadow:0 5px 14px #1b2c4917,inset 0 1px #ffffff15}
.primary-button:hover{background:#344668}
.text-button{color:#354967}
.caption-coordinates{border-color:#d1d7e1}
.scene-hotspot{border-color:#fff;background:#fffffff0;color:#334360;box-shadow:0 8px 30px #1e315418,0 1px 3px #1e315410;backdrop-filter:blur(14px)}
.spot-dot{background:var(--accent);border-color:#edeaff}
.loading-note{background:#fffffff0;border-color:var(--line);color:var(--muted);box-shadow:var(--soft-shadow)}
.skip-link{background:var(--ink)}
.desktop{background:#8b91b6}
.os-menubar{background:#fafbffe8;border-color:#65719025;color:#394862;box-shadow:0 1px 8px #2536500a}
.os-status i{background:#7361dd}
.desktop-wallpaper{background:radial-gradient(ellipse at 17% 15%,#e7eafd 0%,transparent 54%),radial-gradient(ellipse at 92% 94%,#7b70b8 0%,transparent 59%),radial-gradient(ellipse at 85% 12%,#ced8e7 0%,transparent 55%),linear-gradient(137deg,#d7dceb 4%,#a5aed0 40%,#a49cc8 65%,#7785ad)}
.desktop-wallpaper>span{letter-spacing:normal;color:#ffffff36;text-shadow:0 1px 0 #ffffff15}
.desktop-wallpaper small{color:#fff9}
.shortcut{color:#243650;text-shadow:0 1px 2px #ffffffa0}
.shortcut:hover,.shortcut:focus-visible{background:#ffffff3d;border-color:#ffffff80}
.app-icon{--icon-color:#5a6984;--icon-wash:#f1f4fa;color:var(--icon-color);background:linear-gradient(150deg,#fff,var(--icon-wash));border:1px solid #fff;box-shadow:0 4px 8px #2c345614,inset 0 0 0 1px #ffffff80}
.app-icon .icon{stroke-width:1.65}
.app-icon.violet{--icon-color:#7060f8;--icon-wash:#eeeaff}
.app-icon.mint{--icon-color:#277f89;--icon-wash:#e3f3f4}
.app-icon.coral{--icon-color:#ba5c77;--icon-wash:#faeaf0}
.app-icon.blue{--icon-color:#4777d0;--icon-wash:#e5edff}
.app-icon.sand{--icon-color:#9b783b;--icon-wash:#f6f0e4}
.app-icon.slate{--icon-color:#526684;--icon-wash:#e9edf6}
/* Photographic product sprites replace the outline app artwork, not controls. */
.app-icon{position:relative;overflow:hidden;--sprite-x:100%;--sprite-y:100%;background:#fff}
.app-icon::before{content:'';position:absolute;inset:3px;background-image:var(--icon-sprite,url('assets/graphics/qwelp-realistic-icons-clean.png'));background-size:400% 200%;background-position:var(--sprite-x) var(--sprite-y);background-repeat:no-repeat;pointer-events:none;image-rendering:auto}
.app-icon>.icon{visibility:hidden}
.app-icon.violet{--sprite-x:33.333333%;--sprite-y:0%}
.app-icon.mint{--sprite-x:66.666667%;--sprite-y:0%}
.app-icon.coral{--sprite-x:100%;--sprite-y:0%}
.app-icon.blue{--sprite-x:0%;--sprite-y:100%}
.app-icon.sand{--sprite-x:33.333333%;--sprite-y:100%}
.app-icon.slate{--sprite-x:66.666667%;--sprite-y:100%}
[data-app="welcome"]>.app-icon{--sprite-x:0%;--sprite-y:0%}
.os-window{background:var(--surface);border-color:#c6cddd;box-shadow:0 24px 70px #22305b30,0 2px 8px #16234012}
.os-window.is-active{border-color:#fafbff;box-shadow:0 30px 85px #27345a38,0 3px 15px #142a4b12,0 0 0 1px #53618a16}
.window-titlebar{background:linear-gradient(#fcfdff,#f0f2f7);border-color:#e1e5ed}
.window-titlebar>.icon,.window-title{color:#596780}
.window-control{background:#e5e9f1;color:#63718b}
.window-control:hover{background:#d6ddec;color:#283d5f}
.window-control[data-action="close"]:hover{background:#f8e2e7;color:#b34765}
.window-content{scrollbar-color:#c9cddd transparent}
.window-content:focus-visible{outline:2px solid #afa3f0;outline-offset:-3px}
/* Opening the welcome window focuses its content; keep that focus unobtrusive.
   Buttons and links retain their own visible keyboard focus. */
.os-window[data-app-id="welcome"]>.window-content:focus{outline:none}
.window-status{background:#f8f9fc;border-color:#e6e9f0;color:#647189}
.os-dock{background:#f9faff80;border-color:#ffffffbd;box-shadow:0 12px 35px #2a315e22,inset 0 1px 0 #ffffffba;backdrop-filter:blur(24px) saturate(1.25)}
.dock-button.is-open:after{background:#6b6997}
.dock-button.is-active:after{background:#6453dc}
.dock-tooltip{background:#fffffff5;color:var(--ink);box-shadow:var(--soft-shadow)}
.dock-caption{color:#283858;text-shadow:0 1px #ffffff55}
.os-toast{background:#20324f;box-shadow:0 12px 30px #15233c26}
.window-content h1,.window-content h2{color:var(--ink);letter-spacing:-.035em}
.window-content h1{font-weight:550}
.app-eyebrow{letter-spacing:.1em}
.app-primary{background:#7060ed;color:#fff;border:1px solid #ffffff20;box-shadow:0 4px 10px #7060ed18;border-radius:8px}
.app-primary:hover{background:#5b4bd5}
.welcome-copy h1>span,.contact-app h1>span{color:#7464dd}
.welcome-apps{background:linear-gradient(135deg,#f5f6fc,#eeedf8);border-color:#e3e4ef}
.welcome-apps>button{background:#ffffffec;border-color:#e2e5ef;box-shadow:var(--soft-shadow)}
.welcome-apps>button>.icon{color:#8d95ab}
.app-link{color:#5f50c7;border-color:#bdb5e9}
.app-link:hover{color:#403397;border-color:#7060f8}
.service-cards>article,.module-cards>a,.support-cards>article{background:#fff;border-color:#e0e5ef;box-shadow:var(--soft-shadow)}
.module-cards>a:hover{border-color:#b2a8ed}
.module-cards>a>.icon{color:#8a93a8}
.app-callout{background:#f3f2fc;border-color:#e5e2f5;color:#605787}
.edition-list{border-color:#dce1eb}
.edition-list>article{border-color:#e4e7ee}
.edition-index{color:#8c96aa}
.edition-list>article>a strong{color:#263c60}
.edition-list .recommended{background:#f0edfd}
.enterprise{background:#f4f6fa}
.support-cards .featured{background:linear-gradient(150deg,#f8f6ff,#eeebfd);border-color:#d5ceef}
.hours>strong{color:#293e60}
.process-list>article{border-color:#dce1ed}
.process-list>article>span{color:#8f95ad}
.process-list small{background:#eeedf8}
.contact-email{color:#5e51bc;border-color:#c1b9e7;letter-spacing:-.025em}
.contact-topics button{background:#f5f4fb;border-color:#e0ddef}
.contact-topics button:hover{background:#e9e5fa}
.app-eyebrow,.app-heading>p:last-child,.welcome-copy>p:not(.app-eyebrow),.welcome-caption,.service-cards p,.service-tags,.module-vendor,.module-cards p,.edition-list p,.edition-list>article>a>span,.enterprise p,.price-note,.hours>span,.support-cards p,.support-cards li,.process-list p,.process-list small,.contact-app>p:not(.app-eyebrow),.copy-email,.contact-topics button,.contact-note{color:#626d83}
body[data-mode="flat"] .desktop{border-color:#c7cfdf;box-shadow:0 25px 65px #26355417}
body[data-mode="desktop"] .site-header{background:linear-gradient(#f3f4f6 78%,#f3f4f600)}
@media(max-width:850px){body{background:var(--bg)}.window-control{background:transparent}.welcome-apps{border-color:#e3e4ef}}

/* Keep live text out of perspective once the camera has settled. */
.monitor-surface{width:1280px;height:800px;position:relative;overflow:hidden;background:transparent;pointer-events:none!important}
.monitor-surface>.desktop{visibility:hidden}
.monitor-surface.is-entering>.desktop{visibility:visible}
.native-monitor{position:fixed;z-index:4;overflow:hidden;isolation:isolate;pointer-events:auto;transform:none;perspective:none;background:#e8eaf4}
.native-monitor[hidden]{display:none}.native-monitor>.desktop{position:relative!important;transform:none!important}
.window-content{min-height:0;min-width:0;overflow:auto;scrollbar-gutter:stable;overflow-wrap:anywhere;overscroll-behavior:contain}
.window-content:focus:not(:focus-visible){outline:none}
.os-window[hidden]{display:none!important}
.window-titlebar,.window-status{flex-shrink:0}
body[data-mode="desktop"] #screen-layer{pointer-events:none}
.intro h1>.hero-title-text{color:var(--ink)}
.primary-button>[data-text]{font-size:14px;line-height:1.4}
.text-button>[data-text]{margin-left:0}
.brand-image{max-width:140px;height:34px;object-fit:contain}.brand-image[hidden],.brand strong[hidden]{display:none}
.app-icon.has-custom-image:before{display:none}.app-icon>img{width:100%;height:100%;object-fit:contain;border-radius:inherit}
.desktop-wallpaper{background-size:cover;background-position:center}
.os-home>b{font-weight:inherit}
.support-price{display:block;margin:0 0 16px;color:#243957;font-size:24px}

/* Inline Bitrix24 form: local presentation only, shared portal form unchanged. */
.os-window[data-app-id="contact"] .window-content{container-type:inline-size}
.contact-app.contact-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:20px 36px;padding:4px 0 20px;align-items:start}
.contact-intro{grid-column:1;grid-row:1}
.contact-alternatives{grid-column:1;grid-row:2}
.contact-form-panel{grid-column:2;grid-row:1 / span 2;min-width:0}
.contact-layout h1{font-size:42px;line-height:1.12;margin-top:20px}
.contact-intro>p:last-child{margin-top:22px;color:var(--muted);font-size:16px;line-height:1.65}
.contact-layout .contact-email{font-size:26px;gap:18px;margin-top:0;max-width:100%;overflow-wrap:anywhere}
.contact-layout .contact-note{font-size:13px;line-height:1.6}
.contact-form-host{min-height:120px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--soft-shadow)}
.contact-form-status{padding:24px;color:var(--muted);font-size:15px;line-height:1.6}
.contact-form-status[hidden]{display:none}
.contact-form-direct{display:inline-block;margin-top:12px;font-size:13px;line-height:1.5;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.contact-form-host .b24-form,.contact-form-host .b24-form *{font-family:Onest,Arial,sans-serif!important}
.contact-form-host .b24-form-wrapper{max-width:none!important;min-height:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.contact-form-host .b24-form-padding-side{padding-left:24px!important;padding-right:24px!important}
.contact-form-host .b24-form-header{padding-top:24px!important;padding-bottom:18px!important;text-align:left!important}
.contact-form-host .b24-form-header-title{font-size:25px!important;font-weight:550!important;line-height:1.25!important;letter-spacing:-.025em!important;color:var(--ink)!important}
.contact-form-host .b24-form-header-description{font-size:15px!important;line-height:1.6!important;color:var(--muted)!important;margin-top:10px!important}
.contact-form-host .b24-form-control-string .b24-form-control{border:1px solid #dce0e9!important;border-radius:8px!important;background:#f7f8fb!important;color:var(--ink)!important;font-size:16px!important}
.contact-form-host .b24-form-control-string .b24-form-control:focus{border-color:var(--accent)!important;background:#fff!important;outline:2px solid #7060f825!important;outline-offset:1px!important}
.contact-form-host .b24-form-control-desc,.contact-form-host .b24-form-field-agreement-link{font-size:14px!important;line-height:1.5!important;color:var(--muted)!important;opacity:1!important}
.contact-form-host .b24-form-btn{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;border-radius:8px!important;font-size:16px!important;min-height:50px!important;font-weight:500!important}
.contact-form-host .b24-form-btn:hover{background:#6050e5!important}
@container(max-width:720px){
  .contact-app.contact-layout{grid-template-columns:minmax(0,1fr);gap:26px}
  .contact-intro,.contact-form-panel,.contact-alternatives{grid-column:1;grid-row:auto}
  .contact-layout h1{font-size:36px;margin-top:16px}
  .contact-intro>p:last-child{margin-top:16px}
}
@media(max-width:600px){.contact-form-host .b24-form-padding-side{padding-left:18px!important;padding-right:18px!important}}

/* The official chat stays in viewport space, clear of the app dock. */
body .b24-widget-button-wrapper.b24-widget-button-position-bottom-right{right:24px;bottom:64px}
body .bx-livechat-wrapper.bx-livechat-position-bottom-right{right:24px;bottom:146px}
body .b24-widget-button-pulse{display:none}
@media(max-width:600px){
  body .b24-widget-button-wrapper.b24-widget-button-position-bottom-right{right:16px;bottom:132px}
  body .bx-livechat-wrapper.bx-livechat-position-bottom-right{right:16px!important;left:auto!important;bottom:214px!important;width:calc(100vw - 32px)!important;max-width:360px;max-height:calc(100dvh - 234px)!important}
}
