/* Premium price-list redesign v44. Scoped to .price-premium-page */
.price-premium-page{
  --pp-blue:#2f66eb;
  --pp-blue2:#204fbe;
  --pp-blue3:#5b8cff;
  --pp-ink:#12254a;
  --pp-muted:#617291;
  --pp-line:rgba(20,45,86,.10);
  --pp-card:rgba(255,255,255,.82);
  --pp-soft:rgba(255,255,255,.62);
  --pp-shadow:0 28px 72px -28px rgba(16,40,90,.28),0 10px 28px -18px rgba(16,40,90,.16);
  padding-bottom:36px;
  color:var(--pp-ink);
}
.price-premium-page *{box-sizing:border-box}

.pp-breadcrumb{display:flex;gap:8px;align-items:center;margin:14px 2px 10px;color:rgba(18,37,74,.62);font-size:14px}
.pp-breadcrumb a{color:var(--pp-blue);font-weight:700}

.pp-hero{
  position:relative;
  overflow:hidden;
  display:flex;
  gap:18px;
  align-items:flex-end;
  justify-content:space-between;
  padding:28px;
  border-radius:32px;
  background:
    radial-gradient(circle at 85% 18%,rgba(91,140,255,.18),transparent 22%),
    radial-gradient(circle at 12% 0%,rgba(47,102,235,.15),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.95),rgba(243,247,255,.82));
  border:1px solid rgba(255,255,255,.74);
  box-shadow:var(--pp-shadow);
}
.pp-hero:after{content:"";position:absolute;inset:auto -70px -120px auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(47,102,235,.14),transparent 70%);pointer-events:none}
.pp-eyebrow{display:inline-flex;margin-bottom:10px;padding:8px 12px;border-radius:999px;background:rgba(47,102,235,.10);color:#1948b9;font-weight:850;font-size:13px}
.pp-hero h1{margin:0;max-width:760px;font-size:clamp(30px,5.4vw,58px);line-height:.96;letter-spacing:-.055em}
.pp-hero p{max-width:760px;margin:14px 0 0;color:var(--pp-muted);font-size:clamp(15px,2vw,18px);line-height:1.55}
.pp-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.pp-metrics span{display:inline-flex;align-items:center;gap:7px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.8);border:1px solid rgba(47,102,235,.10);box-shadow:0 10px 22px -18px rgba(14,42,94,.26);font-size:14px;color:var(--pp-muted)}
.pp-metrics b{color:var(--pp-ink);font-size:17px}
.pp-hero__cta{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 24px;
  border-radius:20px;
  background:linear-gradient(180deg,var(--pp-blue3),var(--pp-blue2));
  color:#fff !important;
  font-weight:900;
  box-shadow:0 18px 36px -18px rgba(32,79,190,.75);
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}
.pp-hero__cta:hover{transform:translateY(-1px)}

.pp-shell{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:18px;align-items:start;margin-top:18px}
.pp-calc{order:2}
.pp-price-panel{order:1;min-width:0}
.pp-calc__sticky,.pp-price-panel,.pp-group{border-radius:28px;background:var(--pp-card);border:1px solid rgba(255,255,255,.78);box-shadow:var(--pp-shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.pp-calc__sticky{position:sticky;top:96px;padding:18px}
.pp-calc__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.pp-calc__top span{font-size:13px;color:var(--pp-muted);font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.pp-calc__top strong{font-size:24px;letter-spacing:-.03em}

.pp-field,.pp-search,.pp-form__phone{display:grid;gap:7px;position:relative}
.pp-field{margin-bottom:12px}
.pp-field label,.pp-search label,.pp-form__phone span{font-size:13px;font-weight:850;color:rgba(18,37,74,.78)}
.pp-field input,.pp-field select,.pp-search input,.pp-form input{
  width:100%;height:50px;border:1px solid rgba(18,37,74,.12);border-radius:16px;background:rgba(255,255,255,.88);color:var(--pp-ink);padding:0 14px;font:inherit;font-weight:750;outline:none;box-shadow:0 1px 0 rgba(255,255,255,.96) inset
}
.pp-field input:focus,.pp-field select:focus,.pp-search input:focus,.pp-form input:focus{border-color:rgba(47,102,235,.55);box-shadow:0 0 0 4px rgba(47,102,235,.12)}
.pp-field small{position:absolute;right:13px;bottom:14px;color:var(--pp-muted);font-weight:850}
.pp-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}

.pp-result{padding:16px;margin:4px 0 14px;border-radius:22px;background:linear-gradient(135deg,rgba(47,102,235,.14),rgba(255,255,255,.84));border:1px solid rgba(47,102,235,.14)}
.pp-result span,.pp-result small{display:block;color:var(--pp-muted);font-size:13px;line-height:1.35}
.pp-result strong{display:block;margin:6px 0;font-size:34px;line-height:1;letter-spacing:-.055em}

.pp-form{display:grid;gap:10px}
.pp-form button{
  height:52px;
  border:0;
  border-radius:18px;
  background:linear-gradient(180deg,var(--pp-blue3),var(--pp-blue2));
  color:#fff;
  font:inherit;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 16px 28px -18px rgba(32,79,190,.85)
}
.pp-form button:hover,.pp-row-pick:hover{transform:translateY(-1px)}
.pp-form__status{font-size:13px;color:var(--pp-muted)}

.pp-price-panel{padding:16px}
.pp-controls{
  position:sticky;
  top:92px;
  z-index:5;
  display:grid;
  grid-template-columns:minmax(220px,1fr);
  gap:12px;
  padding:14px;
  margin:-4px -4px 16px;
  border-radius:26px;
  background:linear-gradient(180deg,rgba(240,246,255,.97),rgba(249,251,255,.94));
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 24px 40px -30px rgba(16,40,90,.28), inset 0 1px 0 rgba(255,255,255,.92);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px)
}
.pp-search{padding:14px 14px 14px 16px;border-radius:24px;background:linear-gradient(180deg,rgba(237,244,255,.95),rgba(255,255,255,.98));border:1px solid rgba(47,102,235,.16);box-shadow:0 18px 30px -28px rgba(16,40,90,.32)}
.pp-search label{font-size:15px;font-weight:950;color:#22457f;letter-spacing:-.01em}
.pp-search input{height:60px;padding:0 18px;border-radius:20px;border:2px solid rgba(47,102,235,.18);background:#fff;font-size:18px;font-weight:850;box-shadow:0 10px 28px -24px rgba(16,40,90,.42)}
.pp-search input::placeholder{color:#7d95bd;opacity:1}
.pp-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:2px;scrollbar-width:none}
.pp-tabs::-webkit-scrollbar{display:none}
.pp-tabs button{white-space:nowrap;border:1px solid rgba(18,37,74,.10);background:rgba(255,255,255,.86);color:rgba(18,37,74,.72);border-radius:999px;min-height:44px;padding:0 16px;font:inherit;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 10px 18px -16px rgba(16,40,90,.22)}
.pp-tabs button.active{background:linear-gradient(180deg,var(--pp-blue3),var(--pp-blue2));border-color:rgba(47,102,235,.30);color:#fff;box-shadow:0 14px 26px -18px rgba(32,79,190,.88)}
.pp-count{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:36px;padding:0 12px;border-radius:999px;background:rgba(18,37,74,.07);font-size:13px;font-weight:850;color:var(--pp-muted)}

.pp-group{overflow:hidden;margin-top:12px}
.pp-group[hidden]{display:none}
.pp-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid var(--pp-line);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.56))}
.pp-group-head h2{margin:0;font-size:20px;letter-spacing:-.025em}
.pp-group-head span{display:inline-flex;align-items:center;height:30px;padding:0 10px;border-radius:999px;background:rgba(47,102,235,.09);color:#1948b9;font-size:13px;font-weight:900}

.pp-table-wrap{overflow:auto}
.pp-table{width:100%;border-collapse:collapse;font-size:15px}
.pp-table th{padding:12px 16px;text-align:left;color:rgba(18,37,74,.56);font-size:12px;text-transform:uppercase;letter-spacing:.07em;background:rgba(246,249,253,.78);border-bottom:1px solid var(--pp-line)}
.pp-table td{padding:14px 16px;border-bottom:1px solid rgba(18,37,74,.07);vertical-align:middle}
.pp-table tbody tr{transition:background .16s ease, transform .16s ease}
.pp-table tbody tr:hover{background:rgba(47,102,235,.05)}
.pp-service-cell strong{display:block;color:var(--pp-ink);font-size:15.5px}
.pp-service-cell a{color:inherit;text-decoration:none}
.pp-service-cell a:hover{color:var(--pp-blue)}
.pp-service-cell small{display:block;margin-top:4px;color:var(--pp-muted);font-size:12.5px}
.pp-mini-chips{display:flex;gap:6px;flex-wrap:wrap}
.pp-mini-chips span{display:inline-flex;align-items:center;min-height:26px;padding:0 8px;border-radius:999px;background:rgba(18,37,74,.065);color:rgba(18,37,74,.62);font-size:12px;font-weight:850}
.pp-price-cell{white-space:nowrap;text-align:right;font-size:17px;font-weight:950;color:#143f8a}
.pp-action-cell{text-align:right}
.pp-row-pick{height:38px;border:0;border-radius:999px;background:rgba(47,102,235,.11);color:#1948b9;padding:0 13px;font:inherit;font-size:13px;font-weight:900;cursor:pointer}
.pp-empty{padding:22px;margin-top:12px;text-align:center;border-radius:20px;background:rgba(255,255,255,.74);border:1px dashed rgba(18,37,74,.18);color:var(--pp-muted);font-weight:850}
.pp-row.is-picked{background:rgba(47,102,235,.08) !important;outline:2px solid rgba(47,102,235,.18);outline-offset:-2px}
.pp-mobile-bar{display:none !important}

@media(min-width:760px){
  .pp-controls{grid-template-columns:minmax(300px,1fr) auto auto;align-items:end}
  .pp-tabs{justify-content:flex-start}
  .pp-count{justify-self:end;margin-bottom:6px}
}

@media(max-width:980px){
  .pp-shell{grid-template-columns:1fr}
  .pp-calc{order:1}
  .pp-price-panel{order:2}
  .pp-calc__sticky{position:relative;top:auto}
  .pp-controls{position:static}
  .pp-hero{align-items:flex-start;flex-direction:column}
  .pp-hero__cta{width:100%}
}

@media(max-width:680px){
  .price-premium-page{padding-left:10px;padding-right:10px;padding-bottom:18px}
  .pp-hero{padding:20px;border-radius:24px}
  .pp-metrics span{flex:1 1 auto;justify-content:center}
  .pp-grid-2{grid-template-columns:1fr}
  .pp-price-panel{padding:10px;border-radius:22px}
  .pp-controls{margin:0 0 10px;padding:10px;border-radius:22px}
  .pp-search{padding:14px;border-radius:22px}
  .pp-search label{font-size:14px}
  .pp-search input{height:58px;font-size:17px;padding:0 16px;border-radius:18px}
  .pp-group{border-radius:22px}
  .pp-group-head{padding:14px}
  .pp-table,.pp-table tbody,.pp-table thead{display:block;width:100%}
  .pp-table thead{display:none}
  .pp-table tbody{display:grid;gap:12px;padding:12px}
  .pp-table tr{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    position:relative;
    margin:0;
    padding:16px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:24px;
    overflow:hidden;
    background:
      linear-gradient(180deg,rgba(15,31,66,.14),rgba(10,20,45,.66)),
      linear-gradient(0deg,rgba(16,33,63,.10),rgba(16,33,63,.10)),
      var(--pp-card-bg,linear-gradient(135deg,#eef4ff,#dbe8ff));
    background-size:cover;
    background-position:center;
    box-shadow:0 22px 34px -26px rgba(15,31,66,.42);
  }
  .pp-table tr::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(10,23,49,.54) 0%,rgba(10,23,49,.36) 55%,rgba(10,23,49,.24) 100%);
    pointer-events:none;
  }
  .pp-table td{padding:0;border:0;position:relative;z-index:1}
  .pp-service-cell strong,.pp-service-cell a,.pp-price-cell{color:#fff}
  .pp-service-cell strong{font-size:16px;line-height:1.15}
  .pp-service-cell small{margin-top:6px;color:rgba(255,255,255,.88);font-size:12px}
  .pp-mini-chips span{font-size:11.5px;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
  .pp-audience-cell{padding-top:0}
  .pp-price-cell{text-align:left;font-size:20px;padding-top:6px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.16)}
  .pp-action-cell{text-align:left;padding-top:4px}
  .pp-row-pick{width:100%;height:44px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,.14));color:#fff;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:none}
  .pp-row.is-picked{outline:2px solid rgba(255,255,255,.46);background:
      linear-gradient(180deg,rgba(33,74,170,.22),rgba(10,20,45,.68)),
      linear-gradient(0deg,rgba(16,33,63,.10),rgba(16,33,63,.10)),
      var(--pp-card-bg,linear-gradient(135deg,#eef4ff,#dbe8ff)) !important}
  .pp-result strong{font-size:30px}
}

@media(prefers-reduced-motion:no-preference){
  .pp-form button,.pp-row-pick,.pp-hero__cta,.pp-tabs button,.pp-table tbody tr{transition:all .18s ease}
}


/* v45 QA hotfixes */
.price-premium-page .pp-hero__cta,
.price-premium-page .pp-hero__cta:link,
.price-premium-page .pp-hero__cta:visited,
.price-premium-page .pp-hero__cta:hover,
.price-premium-page .pp-hero__cta:active{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}

@media(max-width:680px){
  .price-premium-page .pp-table tr{
    background-position:78% center !important;
    min-height:214px;
  }
  .price-premium-page .pp-table tr::after{
    background:linear-gradient(90deg,rgba(8,18,41,.74) 0%,rgba(8,18,41,.58) 48%,rgba(8,18,41,.42) 100%) !important;
  }
  .price-premium-page .pp-service-cell strong,
  .price-premium-page .pp-service-cell strong a,
  .price-premium-page .pp-service-cell a,
  .price-premium-page .pp-service-cell small,
  .price-premium-page .pp-price-cell{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-shadow:0 2px 10px rgba(0,0,0,.28);
  }
  .price-premium-page .pp-service-cell strong,
  .price-premium-page .pp-service-cell strong a{
    font-size:18px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    letter-spacing:-.02em;
  }
  .price-premium-page .pp-service-cell small{
    opacity:.95;
    font-weight:700;
  }
  .price-premium-page .pp-price-cell{
    font-size:22px !important;
    font-weight:950 !important;
  }
  .price-premium-page .pp-row-pick,
  .price-premium-page .pp-row-pick:link,
  .price-premium-page .pp-row-pick:visited{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-shadow:0 1px 0 rgba(0,0,0,.18);
  }
}


/* v47 hotfix: additional services table and hard CTA text color */
.price-premium-page .pp-hero__cta,
.price-premium-page .pp-hero__cta:link,
.price-premium-page .pp-hero__cta:visited,
.price-premium-page .pp-hero__cta:hover,
.price-premium-page .pp-hero__cta:active{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
.price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-price-cell{
  white-space:normal;
  min-width:150px;
  max-width:260px;
  line-height:1.18;
}
.price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-service-cell strong{
  line-height:1.15;
}
@media(max-width:680px){
  .price-premium-page .pp-row[data-group="Дополнительные услуги"]{
    min-height:0;
    padding:16px;
    background-position:center !important;
  }
  .price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-mini-chips{
    gap:5px;
  }
  .price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-mini-chips span{
    font-size:10.8px;
    padding:0 7px;
    min-height:24px;
  }
  .price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-price-cell{
    display:block;
    max-width:none;
    white-space:normal !important;
    overflow-wrap:anywhere;
    font-size:19px !important;
    line-height:1.15 !important;
    margin-top:2px;
  }
  .price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-service-cell strong,
  .price-premium-page .pp-row[data-group="Дополнительные услуги"] .pp-service-cell strong a{
    font-size:17px !important;
    overflow-wrap:anywhere;
  }
}
