/* Homepage popup parity for case pages.
 * Source order: out/styles.css -> out/reference-ui.css -> out/refinements.css
 * -> out/site-system.css. Kept original declarations, media and keyframes.
 * Every selector is constrained to #contact-dialog.reference-dialog.
 * Original selector specificity is preserved, then uniformly boosted by one
 * ID and one class, so copied article/Tilda fallback rules cannot override it.
 * Header, article layout and footer forms are unaffected.
 */

#contact-dialog.reference-dialog{--accent:#1496df;--ink:#4c4a4a;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);font:400 16px/normal Montserrat,Arial,sans-serif;-webkit-font-smoothing:antialiased}

/* From out/styles.css */
#contact-dialog.reference-dialog:is(*),#contact-dialog.reference-dialog *{box-sizing:border-box;border-width:0;border-style:solid}
#contact-dialog.reference-dialog h1,#contact-dialog.reference-dialog h2,#contact-dialog.reference-dialog h3,#contact-dialog.reference-dialog p,#contact-dialog.reference-dialog figure{margin:0;font:inherit}
#contact-dialog.reference-dialog a{color:inherit;text-decoration:none}
#contact-dialog.reference-dialog button,#contact-dialog.reference-dialog input{font:inherit}
#contact-dialog.reference-dialog button{padding:0;color:inherit;background:transparent;cursor:pointer}
#contact-dialog.reference-dialog img{display:block}
#contact-dialog.reference-dialog a,#contact-dialog.reference-dialog button,#contact-dialog.reference-dialog input{-webkit-tap-highlight-color:transparent}
#contact-dialog.reference-dialog button,#contact-dialog.reference-dialog a,#contact-dialog.reference-dialog input{touch-action:manipulation}
#contact-dialog.reference-dialog button:focus-visible,#contact-dialog.reference-dialog a:focus-visible,#contact-dialog.reference-dialog input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
#contact-dialog.reference-dialog .sr-only{clip-path:none;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#contact-dialog.reference-dialog .primary-button{display:flex;align-items:center;justify-content:center;min-height:52px;padding:15px 24px;border-radius:10px;font-family:'Artegra Sans Extended Alt',sans-serif;font-weight:900;font-size:13px;line-height:1.2;text-align:center;text-transform:uppercase;transition:transform 160ms var(--ease-out),background-color 180ms ease}
#contact-dialog.reference-dialog .primary-button{color:white;background:var(--accent)}
#contact-dialog.reference-dialog .primary-button:active{transform:scale(.98)}
#contact-dialog.reference-dialog .lead-form{display:grid;gap:18px}
#contact-dialog.reference-dialog .form-row{display:grid;grid-template-columns:1.43fr 1fr;gap:14px}
#contact-dialog.reference-dialog .lead-form input{display:block;width:100%;min-width:0;height:55px;border:1px solid #999;border-radius:10px;background:#ffffff80;padding:0 20px;font-family:Rubik,Arial,sans-serif;font-size:16px;color:#363636}
#contact-dialog.reference-dialog .lead-form input:focus{border-color:var(--accent);outline:2px solid #1496df33;outline-offset:1px}
#contact-dialog.reference-dialog .lead-form input::placeholder{color:#616161}
#contact-dialog.reference-dialog .lead-form .primary-button{width:100%;min-height:60px;font-size:16px}
#contact-dialog.reference-dialog .consent{color:#858585;font-family:Rubik,Arial,sans-serif;font-size:14px;line-height:1.3}
#contact-dialog.reference-dialog .form-status{font-size:14px;line-height:1.4}
#contact-dialog.reference-dialog .form-status:empty{display:none}
#contact-dialog.reference-dialog:is(dialog){max-width:min(620px,calc(100% - 32px));width:100%;max-height:calc(100dvh - 40px);margin:auto;padding:44px;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 24px 100px #0004;overflow:auto}
#contact-dialog.reference-dialog:is(dialog)::backdrop{background:#111a24bd;backdrop-filter:blur(5px)}
#contact-dialog.reference-dialog:is(dialog) h2{font-family:'Artegra Sans Extended Alt',sans-serif;font-weight:900;font-size:26px;line-height:1.15;margin-bottom:28px;padding-right:20px}
#contact-dialog.reference-dialog:is(dialog) .dialog-close{position:absolute;right:12px;top:8px;width:44px;height:44px;font-size:32px;line-height:1;border-radius:50%;z-index:5}
#contact-dialog.reference-dialog .dialog-phone{display:block;margin-top:22px;font-weight:700;text-align:center;font-size:20px}
#contact-dialog.reference-dialog.dialog-enter{animation:dialog-enter 220ms var(--ease-out)}
@keyframes dialog-enter{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
@media (max-width:600px){
#contact-dialog.reference-dialog:is(dialog){padding:36px 22px 26px}
#contact-dialog.reference-dialog:is(dialog) h2{font-size:22px}
#contact-dialog.reference-dialog .lead-form .form-row{grid-template-columns:1fr}
#contact-dialog.reference-dialog .lead-form .primary-button{font-size:12px}
#contact-dialog.reference-dialog .consent{font-size:12px}
}
@media (hover:hover) and (pointer:fine){
#contact-dialog.reference-dialog .primary-button:hover{background:#0979b8}
}
@media (prefers-reduced-motion:reduce){
#contact-dialog.reference-dialog .primary-button{transition:opacity 120ms ease}
#contact-dialog.reference-dialog .primary-button:active{transform:none}
#contact-dialog.reference-dialog.dialog-enter{animation:none}
}

/* From out/reference-ui.css */
@media(hover:hover) and (pointer:fine){
#contact-dialog.reference-dialog .reference-form .primary-button:hover{background-position:100% 0}
}
#contact-dialog.reference-dialog .reference-form{--field-height:55px;--field-font:13px;--form-gap:20px;display:grid;gap:var(--form-gap);font-family:Montserrat,Arial,sans-serif}
#contact-dialog.reference-dialog .reference-form .form-row{grid-template-columns:1fr 1fr;gap:15px;min-width:0}
#contact-dialog.reference-dialog .field-group{min-width:0}
#contact-dialog.reference-dialog .reference-form input:not([type=checkbox]),#contact-dialog.reference-dialog .phone-field{height:var(--field-height);width:100%;border:1px solid #999;border-radius:6px;background:transparent;color:inherit;font-family:Montserrat,Arial,sans-serif;font-weight:400;font-size:var(--field-font);padding:0 20px;outline-offset:3px}
#contact-dialog.reference-dialog .reference-form input::placeholder{color:currentColor;opacity:.5}
#contact-dialog.reference-dialog .phone-field{display:flex;align-items:center;padding:0 15px;gap:4px}
#contact-dialog.reference-dialog .reference-form .phone-field input{border:0;background:none;box-shadow:none;padding:0;height:100%;border-radius:0;outline:none;min-width:0;font-size:inherit}
#contact-dialog.reference-dialog .phone-field:focus-within{outline:2px solid #1496df99;outline-offset:2px}
#contact-dialog.reference-dialog .country-field{position:relative;display:flex;align-items:center;flex:none;gap:7px;cursor:pointer;font-size:inherit;min-height:40px}
#contact-dialog.reference-dialog .country-field select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer;font-size:16px;color:#222}
#contact-dialog.reference-dialog .country-field select:focus-visible{opacity:.01;outline:none}
#contact-dialog.reference-dialog .country-flag{width:20px;height:14px;flex:none;display:inline-block;font:10px/14px Arial,sans-serif;text-align:center;border-radius:1px}
#contact-dialog.reference-dialog .flag-ru{background:linear-gradient(#fff 0 33.33%,#1452af 33.33% 66.67%,#d22e34 66.67%)}
#contact-dialog.reference-dialog .country-arrow{width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid #aaa;margin-left:-2px}
#contact-dialog.reference-dialog .country-code{margin-left:2px;white-space:nowrap}
#contact-dialog.reference-dialog .reference-form .primary-button{min-height:60px;height:auto;margin:0;padding:14px 18px;border-radius:6px;background:linear-gradient(110deg,#087fba,#004668);color:#fff;font-family:Montserrat,Arial,sans-serif;font-size:14px;font-weight:700;line-height:1.4;transition:background-position 300ms ease;background-size:120% 100%}
#contact-dialog.reference-dialog .reference-form .consent{display:flex;gap:10px;align-items:flex-start;margin:0;color:inherit;font-family:Montserrat,Arial,sans-serif;font-size:13px;line-height:1.2;cursor:pointer}
#contact-dialog.reference-dialog .reference-form .consent input{appearance:none;-webkit-appearance:none;flex:none;margin:0;width:20px;height:20px;min-height:0;border:2px solid #a6b4bf;border-radius:0;padding:0;background:transparent;cursor:pointer;position:relative}
#contact-dialog.reference-dialog .reference-form .consent input:checked::after{content:"";position:absolute;left:4px;top:0;width:6px;height:11px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;rotate:45deg}
#contact-dialog.reference-dialog .reference-form .consent a{border-bottom:1px solid transparent}
#contact-dialog.reference-dialog .reference-form .consent a:hover{border-bottom-color:currentColor}
#contact-dialog.reference-dialog .field-error{color:#ff8d83;font:12px/1.35 Montserrat,Arial,sans-serif;margin-top:5px}
#contact-dialog.reference-dialog .field-error:empty{display:none}
#contact-dialog.reference-dialog .reference-form [aria-invalid=true]{border-color:#ed665e}
#contact-dialog.reference-dialog .reference-form .field-group:has([aria-invalid=true]) .phone-field{border-color:#ed665e}
#contact-dialog.reference-dialog .reference-form .form-status{margin:0;font:13px/1.4 Montserrat,Arial,sans-serif}
#contact-dialog.reference-dialog:is(#contact-dialog){--form-scale:min(calc(100vw / 1200px),1.6);width:calc(625px * var(--form-scale));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:calc(44px * var(--form-scale)) calc(54px * var(--form-scale)) calc(32px * var(--form-scale));border-radius:calc(32px * var(--form-scale));background:#243b4d url("/optimized/0e3d2c82bbaa13d52c.webp") center/100% 100% no-repeat;color:#fff;box-shadow:none;overflow:auto;overscroll-behavior:contain}
#contact-dialog.reference-dialog:is(#contact-dialog){--form-scale:1;padding-bottom:calc(36.5px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog)::backdrop{background:#0000001a;backdrop-filter:blur(5px)}
#contact-dialog.reference-dialog:is(#contact-dialog) h2{padding:0;margin:0;font-family:'Artegra Sans Extended Alt',Arial,sans-serif;font-weight:900;font-size:calc(27px * var(--form-scale));line-height:1.075;text-transform:uppercase;letter-spacing:0}
#contact-dialog.reference-dialog:is(#contact-dialog) h2>span{display:block;white-space:nowrap}
#contact-dialog.reference-dialog .first-title-line{position:relative;padding-left:calc(27px * var(--form-scale))}
#contact-dialog.reference-dialog .first-title-line::before{content:"";position:absolute;left:calc(10px * var(--form-scale));top:.35em;width:calc(8px * var(--form-scale));height:calc(8px * var(--form-scale));border-radius:50%;background:#1897e0}
#contact-dialog.reference-dialog #contact-description{font-family:Montserrat,Arial,sans-serif;font-size:calc(18px * var(--form-scale));line-height:1.22;margin:calc(12px * var(--form-scale)) 0 calc(20px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) .reference-form{--field-height:calc(55px * var(--form-scale));--field-font:calc(13px * var(--form-scale));--form-gap:calc(20px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) .form-row{gap:calc(15px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) input:not([type=checkbox]),#contact-dialog.reference-dialog:is(#contact-dialog) .phone-field{border-color:#fff;border-radius:calc(6px * var(--form-scale));padding-left:calc(20px * var(--form-scale));padding-right:calc(20px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) .phone-field input{border:0;padding:0;border-radius:0}
#contact-dialog.reference-dialog:is(#contact-dialog) .phone-field{gap:5px}
#contact-dialog.reference-dialog:is(#contact-dialog) .country-flag{width:calc(20px * var(--form-scale));height:calc(14px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) .primary-button{min-height:calc(60px * var(--form-scale));font-size:calc(14px * var(--form-scale));border-radius:calc(6px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) .consent{font-size:calc(14px * var(--form-scale));gap:calc(10px * var(--form-scale));line-height:1.2}
#contact-dialog.reference-dialog:is(#contact-dialog) .consent input{width:calc(20px * var(--form-scale));height:calc(20px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close{top:calc(24px * var(--form-scale));right:calc(24px * var(--form-scale));width:calc(38px * var(--form-scale));height:calc(38px * var(--form-scale));border-radius:0;font-size:0}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::before,#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::after{content:"";position:absolute;left:50%;top:50%;width:calc(32px * var(--form-scale));height:2px;background:#fff;transform:translate(-50%,-50%) rotate(45deg)}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::after{transform:translate(-50%,-50%) rotate(-45deg)}
#contact-dialog.reference-dialog:is(#contact-dialog).dialog-enter{animation:reference-form-enter 300ms ease-in-out both}
@keyframes reference-form-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close{transition:rotate 400ms ease-in-out}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::before,#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::after{height:3px;border-radius:2px}
@media(hover:hover){
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close:hover{rotate:180deg}
}
@media(max-width:1199px){
#contact-dialog.reference-dialog:is(#contact-dialog){--form-scale:1;width:625px}
}
@media(max-width:639px){
#contact-dialog.reference-dialog:is(#contact-dialog){--form-scale:calc(min(100vw,600px) / 320px);width:100%;max-width:100%;max-height:calc(100dvh - 16px);padding:calc(34px * var(--form-scale)) calc(21px * var(--form-scale)) calc(24px * var(--form-scale));border-radius:calc(20px * var(--form-scale))}
#contact-dialog.reference-dialog:is(#contact-dialog) h2{font-size:calc(20px * var(--form-scale));line-height:1.3}
#contact-dialog.reference-dialog #contact-description{font-size:calc(16px * var(--form-scale));line-height:1.25;margin:calc(8px * var(--form-scale)) 0 calc(16px * var(--form-scale))}
#contact-dialog.reference-dialog .desktop-break{display:none}
#contact-dialog.reference-dialog:is(#contact-dialog) .form-row{grid-template-columns:1fr;gap:var(--form-gap)}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close{top:8px;right:15px;width:36px;height:36px}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::before,#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close::after{width:24px}
#contact-dialog.reference-dialog:is(#contact-dialog) .consent{font-size:calc(12px * var(--form-scale))}
#contact-dialog.reference-dialog .reference-form .form-row{grid-template-columns:1fr;gap:20px}
}
@media(prefers-reduced-motion:reduce){
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close{transition:none}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close:hover{rotate:none}
#contact-dialog.reference-dialog:is(#contact-dialog).dialog-enter{animation:none}
}
#contact-dialog.reference-dialog:is(#contact-dialog) .reference-form .consent input:checked::after{border-color:#fff}

/* From out/refinements.css */
#contact-dialog.reference-dialog.dialog-enter{animation:reference-dialog-fade 300ms linear}
@keyframes reference-dialog-fade{from{opacity:0}to{opacity:1}}

/* From out/site-system.css */
#contact-dialog.reference-dialog .reference-form,#contact-dialog.reference-dialog .reference-form input,#contact-dialog.reference-dialog .reference-form label,#contact-dialog.reference-dialog .reference-form button,#contact-dialog.reference-dialog .reference-form a{pointer-events:auto!important}
#contact-dialog.reference-dialog .reference-form input[type="checkbox"]{cursor:pointer;accent-color:#1496df}
#contact-dialog.reference-dialog .reference-form .consent{cursor:pointer}

/* Neutralize case-only global h2 properties and old .dm-content-page close span. */
#contact-dialog.reference-dialog:is(#contact-dialog) h2{color:inherit;max-width:none;overflow-wrap:normal;text-wrap:wrap}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close{position:absolute;border:0;background:transparent;line-height:1;z-index:5}
#contact-dialog.reference-dialog:is(#contact-dialog) .dialog-close>span{display:none}

/* From out/typography.css: current homepage gives all popup text Montserrat. */
#contact-dialog.reference-dialog,#contact-dialog.reference-dialog *{font-family:Montserrat,Arial,sans-serif!important}

/* The homepage form inherits 16px/normal; the catalog fallback sets 14px/1.4. */
#contact-dialog.reference-dialog:is(#contact-dialog) .reference-form{font-size:inherit;line-height:inherit;font-weight:inherit}

body:has(#contact-dialog[open]){overflow:hidden}
