/* Интерфейс страницы calculator.html */
.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;border-radius:4px;padding:16px 23px;font-weight:700;font-size:14px}
.selection h2{font-size:clamp(34px,3.6vw,52px);line-height:1.07;letter-spacing:-.035em;margin:0}
.tag{color:var(--red)!important;text-transform:uppercase;letter-spacing:.14em;font-size:11px!important;font-weight:800;margin-top:23px!important}
.selection{margin:0 clamp(24px,7vw,112px);padding:clamp(52px,6vw,82px);display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;background:var(--dark);color:#fff;border-radius:20px}
.calculator{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--warm);margin-top:clamp(70px,8vw,116px)}
.room{border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px;cursor:pointer}
.room:hover{border-color:var(--red);color:var(--red)}
.result{border-top:1px solid var(--line);padding-top:23px;display:grid;grid-template-columns:1fr auto}
.result span,.result small{color:var(--muted);font-size:13px}
.result strong{font-size:27px}
.result small{grid-column:1/-1;margin-top:7px}
@media(max-width:900px){.selection{grid-template-columns:1fr;padding:38px 24px;gap:35px}
.calculator{grid-template-columns:1fr}}
@media(max-width:600px){.selection h2{font-size:34px}
.selection{margin-left:12px;margin-right:12px;border-radius:12px}
.result{grid-template-columns:1fr}
.result strong{margin-top:6px}}
@media(max-width:600px){.selection h2{font-size:32px}}
.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:12px}
.lead-form label{display:grid;gap:7px;font-size:12px;font-weight:700}
.lead-form textarea,.lead-form label:has(textarea),.lead-form .button{grid-column:1/-1}
.lead-form input,.lead-form textarea{width:100%;border:1px solid #d8d5d2;border-radius:12px;padding:13px;background:#fff}
.lead-form input:focus,.lead-form textarea:focus{outline:2px solid #f3b2b6;border-color:var(--red)}
.lead-form .button{border:0;cursor:pointer}
@media(max-width:1280px){.lead-form{max-width:760px}}
@media(max-width:600px){.lead-form{grid-template-columns:1fr;padding:22px 17px}
.lead-form label{grid-column:1/-1}}
.lead-form input,.lead-form textarea{font-size:16px}
@media(max-width:600px){.button{width:100%;min-height:50px}}
.form-status{grid-column:1/-1;margin:2px 0 0;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.45}
.lead-form button:disabled{opacity:.65;cursor:wait}
.lead-form{position:relative}
.catalog-row-link{cursor:pointer;transition:background .2s}
.catalog-row-link:hover,.catalog-row-link:focus{background:#fff0f2;outline:none}
.catalog-row-link td:first-child{font-weight:700;color:#e71d32}
.catalog-row-link td:last-child::after{content:'  →';color:#e71d32;font-weight:700}
.selection h2{max-width:760px;line-height:1.08}
.button{min-height:52px;padding:14px 24px;border-radius:12px;transition:transform .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(238,31,45,.22)}
.catalog-row-link td:first-child{min-width:260px}
.catalog-row-link td:first-child small{display:block;margin-top:5px;color:#777;font-size:12px}
@media(max-width:600px){.catalog-row-link td:first-child{min-width:225px}}
.pt-eyebrow{font-size:12px!important;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--pt-red);margin-bottom:22px}
.pt-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin:28px 0}
.pt-actions>a:not(.pt-button){font-size:15px;text-underline-offset:6px}
.pt-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:var(--pt-red);color:white!important;border:0;border-radius:4px;padding:16px 25px;font-size:15px;font-weight:600;text-decoration:none;min-height:54px;cursor:pointer}
.pt-button:hover{background:#c91828}
.pt-button:disabled{opacity:.6;cursor:wait}
.pt-intro{padding:70px 8% 35px;background:var(--pt-paper)}
.pt-intro h1{margin-bottom:25px}
.pt-lead{font-size:20px;max-width:760px;line-height:1.6}
.pt-note{background:var(--pt-paper);padding:24px;margin-top:30px;white-space:pre-line}
.pt-lead-form{display:grid;gap:18px}
.pt-lead-form label{display:flex;flex-direction:column;font-size:14px;gap:7px}
.pt-lead-form input,.pt-lead-form textarea,.pt-field input,.pt-field select,.pt-field textarea{width:100%;border:1px solid #b9c0b9;border-radius:4px;padding:13px;background:white;color:var(--pt-ink);min-height:48px}
.pt-status{margin:0}
.pt-status.error{color:#b70020}
.pt-status.success{color:#266c3c}
.pt-wizard{max-width:var(--pt-col,1280px);margin:45px auto 85px;padding:0 30px}
.pt-progress{display:flex;gap:15px;padding-bottom:20px;border-bottom:1px solid var(--pt-line);margin-bottom:35px;font-size:14px}
.pt-progress span{flex:1;color:#7c837e}
.pt-progress .current{color:var(--pt-red);font-weight:700}
.pt-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.pt-choice{border:1px solid var(--pt-line);border-radius:4px;padding:25px;background:var(--pt-paper);text-align:left;min-height:125px;color:var(--pt-ink)}
.pt-choice:hover{border-color:var(--pt-red)}
.pt-choice strong{display:block;font-size:22px;font-weight:500;line-height:1.15;margin-bottom:10px}
.pt-choice span{display:block;font-size:14px;color:var(--pt-muted)}
.pt-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pt-field{display:flex;flex-direction:column;gap:8px;font-size:15px}
.pt-field small{color:var(--pt-muted)}
.pt-back{border:0;background:none;text-decoration:underline;padding:12px 0;display:block;margin:20px 0}
.pt-result{border:1px solid var(--pt-line);padding:30px;background:var(--pt-paper)}
.pt-result h3{font-size:30px}
.pt-result dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--pt-line);border:1px solid var(--pt-line)}
.pt-result dl>div{background:white;padding:15px}
.pt-result dt{font-size:13px;color:var(--pt-muted)}
.pt-result dd{margin:4px 0 0;font-size:20px}
.pt-result ul{padding-left:20px}
.pt-result li{margin:10px 0}
.pt-result-summary{white-space:pre-line;padding:20px;border-left:3px solid var(--pt-red);margin-bottom:30px;font-size:14px}
.pt-result .pt-button{margin-top:15px}
@media(max-width:900px){.pt-intro{padding:50px 6% 25px}}
@media(max-width:600px){.pt-actions{gap:18px;align-items:start}
.pt-intro h1{font-size:38px}
.pt-lead{font-size:17px}
.pt-fields{grid-template-columns:1fr}
.pt-wizard{padding:0 6%;margin-top:30px}
.pt-choice{padding:18px;min-height:140px}
.pt-choice strong{font-size:20px}
.pt-choice span{font-size:13px}
.pt-progress{font-size:12px;gap:6px}
.pt-result{padding:20px}
.pt-result dl{grid-template-columns:1fr}}
.pt-consent-banner{position:fixed;bottom:18px;left:18px;right:18px;max-width:710px;background:white;border:1px solid var(--pt-line);box-shadow:0 8px 35px #0002;padding:20px;z-index:50;border-radius:4px}
.pt-consent-banner p{font-size:13px;margin:0 0 12px}
.pt-consent-banner button{font-size:13px;min-height:40px;padding:9px 15px;margin:0 10px 0 0}
.pt-consent-banner .pt-decline{background:white;border:1px solid var(--pt-line);border-radius:4px}
.pt-cookie-settings{background:none;border:0;padding:0;color:#ddd;font-size:13px;text-decoration:underline}
a.pt-choice{display: block;
  text-decoration: none;}
a.pt-choice:focus-visible{outline: 2px solid var(--pt-red, #c4342b);
  outline-offset: 2px;}
.calc-form{display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 18px;
  align-items: end;
  margin: 0 0 26px;
  padding: 22px;
  border: 1px solid var(--pt-line, #dcdcd6);
  border-radius:4px;
  background: var(--pt-paper, #fff);}
.calc-form label{display: block;
  font-size: 14px;
  color: var(--pt-muted, #6b7280);}
.calc-form input,.calc-form select{width: 100%;
  margin-top: 8px;
  padding: 12px 14px;
  min-height: 46px;
  font: inherit;
  font-size: 16px;
  color: var(--pt-ink, #1d1d1b);
  border: 1px solid var(--pt-line, #dcdcd6);
  border-radius:4px;
  background: #fff;}
.calc-form small{display: block;
  margin-top: 6px;
  font-size: 13px;
  color: var(--pt-muted, #6b7280);}
.calc-figures{display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 16px;
  margin-bottom: 20px;}
.calc-figures span{display: block;
  font-size: 13px;
  color: var(--pt-muted, #6b7280);}
.calc-figures strong{display: block;
  margin-top: 4px;
  font-size: 26px;
  font-weight: 500;}
.calc-list{list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;}
.calc-list li{padding: 14px 16px;
  border: 1px solid var(--pt-line, #dcdcd6);
  border-radius:4px;
  background: #fff;}
.calc-list a{text-decoration: none;
  color: var(--pt-ink, #1d1d1b);}
.calc-list a:hover{text-decoration: underline;}
.calc-list span{display: block;
  margin-top: 5px;
  font-size: 14px;
  color: var(--pt-muted, #6b7280);}
.calc-hint{font-size: 14px;
  line-height: 1.55;
  color: var(--pt-muted, #6b7280);}
.calc-table{width: 100%;
  border-collapse: collapse;
  margin: 18px 0 8px;
  font-size: 15px;}
.calc-table th,.calc-table td{padding: 11px 12px;
  border-bottom: 1px solid var(--pt-line, #dcdcd6);
  text-align: left;
  vertical-align: top;}
.calc-table th{font-weight: 500;}
@media (max-width:900px){.calc-table{display: block; overflow-x: auto;}}
.pt-limits{margin: 20px 0;
  padding: 16px 18px;
  border-left: 3px solid var(--pt-red, #e82436);
  background: var(--pt-paper, #f6f5f1);
  border-radius: 4px;}
.pt-limits ul{margin: 8px 0 0;
  padding-left: 18px;}
.pt-limits li{margin-bottom: 6px;
  font-size: 14px;
  line-height: 1.55;}
.pt-back{display: inline-block;
  margin-bottom: 18px;
  padding: 9px 16px;
  min-height: 40px;
  border: 1px solid var(--pt-line, #dcdcd6);
  border-radius: 999px;
  background: #fff;
  font: inherit;
  font-size: 14px;
  color: var(--pt-ink, #1d1d1b);
  cursor: pointer;}
.pt-back:hover{border-color: var(--pt-red, #e82436);}
.pt-eyebrow{letter-spacing: 0.06em;}
.calc-table td,.calc-figures strong,.pt-result dd{font-variant-numeric: tabular-nums;}
.pt-intro{padding: 70px 8% 38px;
  background: var(--pt-paper, #f6f5f1);
  color: var(--pt-ink, #1d1d1b);
  background-image: none;
  min-height: 0;}
.pt-intro h1{margin: 0 0 18px;
  max-width: 18ch;
  color: var(--pt-ink, #1d1d1b);}
.pt-intro p{color: #4b5158;
  max-width: 62ch;}
.pt-eyebrow{color: var(--pt-red, #e82436);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 0 0 14px;}
@media (max-width:900px){.pt-intro{padding: 46px 6% 26px;}}
.pt-intro img{border-radius: var(--pt-radius-m);}
.pt-note{border-radius: var(--pt-radius-s);
  border-left: 3px solid var(--pt-red, #e82436);}
.pt-intro,.pt-wizard{max-width: none;
  margin-inline: 0;
  padding-inline: max(var(--pt-gutter), calc((100% - var(--pt-col)) / 2));}
.pt-intro{padding-block: 70px 38px;}
@media (max-width:900px){.pt-intro{padding-block: 46px 26px;}}
.button,.pt-button,a.button,button.button{display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 13px 24px;
  border-radius: 4px;
  border: 0;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .18s ease, border-color .18s ease;}
.button,.pt-button{background: var(--pt-red, #e82436);
  color: #fff;}
.button:hover,.pt-button:hover{background: #c91828;}
.pt-actions{display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 22px;
  margin-top: 26px;}
.calc-table{display: block; overflow-x: auto; white-space: nowrap;}
@media (min-width:601px){.calc-table{display: table; white-space: normal;}}
@media (max-width:900px){.button,.pt-button,.pt-back{min-height: 48px;}}
@media (max-width: 600px){.pt-actions{gap: 12px;}
.pt-actions > *{width: 100%; justify-content: center;}}