/* Manager selection shared by all lead forms. */
.manager-field{grid-column:1/-1;min-width:0;width:100%}
.manager-field select{display:block;width:100%;max-width:100%;min-width:0;min-height:54px;padding:16px 38px 16px 16px;border:1px solid #dfe2e7;border-radius:0;background-color:#fff;color:#17191c;font:inherit;font-size:15px;line-height:1.5;box-sizing:border-box}
.manager-field select:focus-visible{outline:2px solid #46415e;outline-offset:3px}
#consultation .consult-expert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;overflow:visible}
#consultation .consult-expert{min-width:0}
#consultation .consult-portrait{height:150px;object-fit:cover;object-position:50% 25%;background:none}
#consultation .consult-expert-name{font-size:13px;line-height:1.4;text-align:center;padding:0 6px}
#consultation .consult-expert b{font-size:13px;line-height:1.4;text-align:center;padding:0 4px}
#consultation .manager-portrait-4,.expert-row .manager-portrait-4{object-position:42% 20%}
.manager-any{display:flex;align-items:center;gap:10px;margin:0 0 18px;cursor:pointer;font-size:14px}
.manager-any input{width:18px;height:18px;accent-color:#46415e}
.expert-row{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:699px){.manager-field select{font-size:16px}#consultation .consult-expert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:2px 2px 12px}#consultation .consult-portrait{height:140px}#consultation .consult-expert b{font-size:12px}#consultation .consult-expert-name{font-size:12px}.expert-row{grid-template-columns:1fr}}

@media(max-width:699px){#consultation #consult-form .consult-expert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#consultation #consult-form .consult-expert .consult-portrait{height:140px!important}#consultation #consult-form .consult-expert .manager-portrait-4{object-position:42% 20%}}

/* Preserve the full height of each source photo in portrait frames. */
#consultation #consult-form .consult-expert .consult-portrait{width:100%!important;height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:center top!important}
#consultation #consult-form .consult-expert .manager-portrait-4{object-position:42% top!important}
.expert-row .person img{height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:center top!important}
.expert-row .person .manager-portrait-4{object-position:42% top!important}
.manager-field select[hidden]{display:none!important}
.manager-any input[type="checkbox"]{appearance:auto;flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:#46415e;cursor:pointer}
.manager-field .manager-any{margin:0 0 12px}
.manager-field .manager-any:last-child{margin-bottom:0}
.manager-hint{font-size:12px!important;color:#626762;margin:-6px 0 16px!important;line-height:1.5}
#consultation .consult-expert.manager-inactive{cursor:default}
#consultation .consult-expert.manager-inactive .consult-select{color:#777}

/* Consultation fits a desktop viewport; phones use one form column. */
#consultation[open]{width:min(1180px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0!important}
#consultation #consult-form{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.2fr);gap:0!important;margin:0;min-width:0}
#consultation #consult-form .consult-form{display:flex;flex-direction:column;gap:12px;padding:28px!important;min-width:0}
#consultation #consult-form .consult-form>h2{font-size:26px;line-height:1.15;margin:0 0 2px!important}
#consultation #consult-form .consult-form>p{font-size:13px;line-height:1.5;margin:0!important}
#consultation #consult-form .consult-field{margin:0;display:block}
#consultation #consult-form .consult-field input{min-height:48px;height:48px;padding:12px 14px;font-size:15px}
#consultation #consult-form .consult-methods{margin:0;padding:0;border:0}
#consultation #consult-form .consult-methods legend{font-size:12px;margin-bottom:8px}
#consultation #consult-form .consult-choice>span{min-height:60px;padding:8px 4px;font-size:11px;gap:5px}
#consultation #consult-form .consult-submit{min-height:48px;padding:12px 14px;font-size:13px}
#consultation #consult-form .legal-checkbox{font-size:11px;line-height:1.5;margin:0!important}
#consultation #consult-form>aside{padding:28px!important;min-width:0}
#consultation #consult-form .consult-hours{margin:0 0 12px!important;font-size:12px}
#consultation #consult-form .consult-experts legend{font-size:22px;line-height:1.2;margin:0 0 8px}
#consultation #consult-form .experts-intro{font-size:12px;line-height:1.4;margin:0 0 12px}
#consultation #consult-form .manager-any{margin:0 0 10px;font-size:13px}
#consultation #consult-form .manager-hint{margin:0 0 12px!important;font-size:11px!important}
#consultation #consult-form .consult-expert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#consultation #consult-form .consult-expert>span{display:grid!important;grid-template-columns:80px minmax(0,1fr);grid-template-rows:auto auto auto;align-items:center;align-content:center;gap:5px 8px;padding:10px!important;min-height:122px;box-sizing:border-box}
#consultation #consult-form .consult-expert .consult-portrait{grid-column:1;grid-row:1/4;align-self:center;width:80px!important;height:100px!important;aspect-ratio:4/5;margin:0!important;object-position:center top!important}
#consultation #consult-form .consult-expert .manager-portrait-4{object-position:42% top!important}
#consultation #consult-form .consult-expert b,#consultation #consult-form .consult-expert-name,#consultation #consult-form .consult-select{grid-column:2;min-height:0;padding:0;margin:0!important;text-align:left;overflow-wrap:normal}
#consultation #consult-form .consult-expert b{font-size:12px;line-height:1.3}
#consultation #consult-form .consult-expert-name{font-size:12px!important;line-height:1.4!important}
#consultation #consult-form .consult-select{font-size:11px!important;line-height:1.3}
#consultation #consult-form .consult-side-note{margin:16px 0 0;font-size:11px;line-height:1.4}
#consultation #consult-form .consult-phone{font-size:19px!important;margin-top:4px}
#consultation #consult-form .consult-assurance{margin-top:12px;padding-top:12px;font-size:10px;line-height:1.4}
#consultation #consult-form>.form-legal{grid-column:1/-1;padding:0 28px 16px;margin:0;font-size:10px}
@media(min-width:700px) and (max-width:999px){#consultation #consult-form .consult-form,#consultation #consult-form>aside{padding:22px 18px!important}#consultation #consult-form .consult-expert>span{grid-template-columns:56px minmax(0,1fr);gap:4px 6px;padding:6px!important;min-height:102px}#consultation #consult-form .consult-expert .consult-portrait{width:56px!important;height:70px!important}#consultation #consult-form .consult-expert b,#consultation #consult-form .consult-expert-name{font-size:11px!important}}
@media(max-width:699px){
 html body dialog#consultation[open]{width:100%!important;max-width:100%!important;padding:0 16px max(20px,env(safe-area-inset-bottom))!important}
 #consultation[open]>.mobile-dialog-bar{display:flex!important;min-height:52px;margin-bottom:14px;padding:max(4px,env(safe-area-inset-top)) 0 4px;border:0}
 #consultation[open]>.mobile-dialog-bar button{min-width:44px;padding:0}
 #consultation[open]>.consult-close{display:none!important}
 #consultation #consult-form{display:block!important}
 #consultation #consult-form>aside{display:none!important}
 #consultation #consult-form .consult-form{padding:0!important;gap:14px}
 #consultation #consult-form .consult-form>h2{font-size:clamp(23px,6vw,28px)!important}
 #consultation #consult-form .consult-form>p{font-size:15px!important}
 #consultation #consult-form .consult-field input{height:58px;min-height:58px;padding:14px;font-size:18px}
 #consultation #consult-form .consult-methods legend{font-size:14px}
 #consultation #consult-form .consult-choice>span{min-height:54px;padding:6px 2px;font-size:12px}
 #consultation #consult-form .consult-submit{min-height:54px;padding:12px 14px;font-size:16px}
 #consultation #consult-form .legal-checkbox{font-size:14px;line-height:1.4}
 #consultation #consult-form>.form-legal{padding:14px 0 0;font-size:13px;line-height:1.4}
}

/* Header portraits: Denis, Maxim, Ivan; fixed aligned circles. */
header .expert-trigger .expert-faces{display:flex;align-items:center;gap:4px}
header .expert-trigger .expert-faces .expert-face{width:36px;height:36px;flex:0 0 36px;border-radius:50%;transform:none!important;filter:none;background-repeat:no-repeat;box-shadow:0 0 0 2px #fff}
header .expert-trigger .expert-faces .expert-face:first-child{background-image:url('expert-denis.png');background-size:180%;background-position:50% 3%}
header .expert-trigger .expert-faces .expert-face:nth-child(2){background-image:url('expert-maxim.png');background-size:200%;background-position:50% 12%}
header .expert-trigger .expert-faces .expert-face:nth-child(3){background-image:url('expert-ivan-drobotov.jpg');background-size:330%;background-position:43% 8%}

/* Slight overlap at rest; reserve the expanded width so the header does not move. */
header .expert-trigger{width:116px!important;flex:0 0 116px!important}
header .expert-trigger .expert-faces{width:116px;flex:0 0 116px;justify-content:flex-end;gap:4px}
header .expert-trigger .expert-faces .expert-face{position:relative;transition:transform .3s cubic-bezier(.22,1,.36,1)!important}
header .expert-trigger .expert-faces .expert-face:first-child{z-index:3;transform:translateX(24px)!important}
header .expert-trigger .expert-faces .expert-face:nth-child(2){z-index:2;transform:translateX(12px)!important}
header .expert-trigger .expert-faces .expert-face:nth-child(3){z-index:1;transform:translateX(0)!important}
header .expert-trigger.experts-spread .expert-faces .expert-face,header .expert-trigger:focus-visible .expert-faces .expert-face,header .expert-trigger:active .expert-faces .expert-face{transform:translateX(0)!important}
@media(hover:hover){header .expert-trigger:hover .expert-faces .expert-face{transform:translateX(0)!important}}
@media(prefers-reduced-motion:reduce){header .expert-trigger .expert-faces .expert-face{transition:none!important}}

/* Keep the two consultation panels on the same row even when request context is present. */
@media(min-width:700px){#consultation #consult-form>.consult-form{grid-column:1;grid-row:1}#consultation #consult-form>aside{grid-column:2;grid-row:1}}
#consultation #consult-form .catalog-order-context,#consultation #consult-form .pd-request-context,#consultation #consult-form .shop-selected-product{font-size:12px!important;line-height:1.5!important;overflow-wrap:anywhere;margin:0!important;padding:0 0 10px;border-bottom:1px solid #dce1df}
