/* Шлем на странице модели: размеры с обхватом и наличием, окно «Как подобрать» (владелец 31.10, вариант А) */
.hz { display:grid; gap:10px; }
.hz h3 { margin:0; font-size:16px; font-weight:700; }
.hz-head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; }
.hz-sub { font-weight:500; font-size:14.5px; color:#4B5563; }
.hz-link { padding:0; border:0; background:none; font:inherit; font-size:14px; font-weight:600; color:var(--ink,#111214); text-decoration:underline; text-underline-offset:3px; cursor:pointer; min-height:32px; }
.hz-sizes { display:grid; grid-template-columns:repeat(auto-fit,minmax(58px,1fr)); gap:6px; }
.hz-s { display:grid; justify-items:center; gap:1px; min-height:68px; padding:8px 2px; border:1.5px solid #111214; border-radius:12px; background:#fff; font:inherit; color:#111214; cursor:pointer; }
.hz-s b { font-size:17px; font-weight:800; line-height:1.15; }
.hz-s small { font-size:13.5px; color:#3D4047; white-space:nowrap; }
.hz-s em { font-style:normal; font-size:13.5px; font-weight:700; color:#0B7A3B; }
.hz-s.no { border:1.5px dashed #AEB1B9; color:#6B7079; }
.hz-s.no b { font-weight:600; } .hz-s.no em { color:#6B7079; font-weight:500; }
.hz-s.on { background:#111214; color:#fff; border-color:#111214; border-style:solid; }
.hz-s.on small, .hz-s.on em { color:#fff; }
.hz-s:focus-visible, .hz-link:focus-visible, .hz-x:focus-visible { outline:2px solid #111214; outline-offset:2px; }
.hz-msg { min-height:22px; font-size:14.5px; color:#3D4047; line-height:1.4; }
.hz-msg b { color:#111214; }
.hz-book { display:flex; width:100%; margin-top:10px; }
.hz-bg { position:fixed; inset:0; z-index:160; display:flex; align-items:center; justify-content:center; padding:16px; background:rgba(17,18,20,.5); }
.hz-win { position:relative; width:100%; max-width:520px; max-height:calc(100dvh - 32px); overflow:auto; padding:22px; border-radius:16px; background:#fff; color:#111214; }
.hz-win h2 { margin:0 44px 14px 0; font-size:22px; font-weight:800; }
.hz-x { position:absolute; right:12px; top:12px; width:44px; height:44px; border:0; border-radius:10px; background:none; font-size:24px; line-height:1; cursor:pointer; color:#111214; }
.hz-how { display:grid; grid-template-columns:120px 1fr; gap:14px; align-items:center; margin-bottom:16px; font-size:15px; line-height:1.45; color:#3D4047; }
.hz-how ol { margin:0; padding-left:18px; display:grid; gap:6px; }
.hz-ask { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:15px; font-weight:600; }
/* одна рамка: у поля своя чёрная граница при вводе, стандартной обводки браузера нет (владелец 31.10: «2 обводки») */
.hz-in { flex:none; box-sizing:border-box; width:128px; height:44px; padding:0 12px; border:1px solid #AEB1B9; border-radius:10px; background:#fff; font:inherit; font-size:16px; font-weight:500; color:#111214; }
.hz-in:focus { outline:0; border-color:#111214; }
.hz-win .hz-msg { margin:8px 0 10px; }
.hz-t { width:100%; border-collapse:collapse; font-size:15px; }
.hz-t th { padding:6px 8px; text-align:left; font-size:13px; font-weight:600; color:#4B5563; border-bottom:1px solid #D9D9DE; }
.hz-t td { padding:9px 8px; border-bottom:1px solid #ECECEF; vertical-align:top; }
.hz-t td:first-child { font-weight:800; }
.hz-t .yes { font-weight:700; color:#0B7A3B; } .hz-t .ord { color:#6B7079; }
.hz-t tr.on td { background:#F2F2F3; font-weight:700; }
.hz-t tr.on td:first-child { box-shadow:inset 4px 0 0 #111214; }
.hz-tip { margin:14px 0 0; padding-left:12px; border-left:3px solid #111214; font-size:15px; line-height:1.45; color:#3D4047; }
.hz-tip b { color:#111214; }
@media (max-width:420px) { .hz-how { grid-template-columns:1fr; } .hz-how svg { justify-self:center; } .hz-s { padding:8px 0; } .hz-s small { font-size:13px; } }
