/* Balance Codex calculator — calcpro skin (v1.15.0).
   Extracted from the approved reference snippets (02/03 …-ru-final.html).
   Scope: everything lives under .calcpro-app; the two site fonts come in via
   --serif/--sans (overridable from the theme через --bcx-serif/--bcx-sans). */
.calcpro-app{
  /* Палитра и оба шрифта наследуются из глобальной темы сайта (:root задаёт
     --paper, --paper-soft, --white, --ink, --muted, --blue, --blue-deep, --teal,
     --oxide, --line, --line-strong, --serif, --sans). Локальных цветов нет. */
  --calcpro-max:1120px;   /* внешняя ширина результата = ширине нижних секций */
  --calcpro-text:720px;   /* ширина колонки авторского текста */
  font-family:var(--sans); font-size:17px; line-height:1.58; color:var(--ink);
  background:none;
}
.calcpro-app *{box-sizing:border-box}
.calcpro-app h2,.calcpro-app h3{font-family:var(--serif);font-weight:400;margin-top:0}
.calcpro-app p{margin-top:0}
.calcpro-app button{font:inherit}
.calcpro-app [hidden]{display:none!important}

/* Mode switch (single shortcode renders both calculators) */
.calcpro-mode-switch{display:flex;gap:0;border:1px solid var(--line);width:max-content;margin:0 0 26px;background:var(--white)}
.calcpro-mode-switch button{padding:12px 22px;border:0;background:transparent;font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);cursor:pointer}
.calcpro-mode-switch button[aria-pressed="true"]{background:var(--ink);color:var(--white)}
.calcpro-field-error{display:none;margin-top:6px;font-family:var(--sans);font-size:13px;color:var(--oxide)}
.calcpro-field.has-error .calcpro-field-error{display:block}
.calcpro-field.has-error .calcpro-input{border-color:var(--oxide)}
.calcpro-form-error{margin:14px 0 0;font-family:var(--sans);font-size:14px;color:var(--oxide)}
.calcpro-app [data-calcpro-single-fields],.calcpro-app [data-calcpro-pair-fields],.calcpro-app [data-calcpro-single-result],.calcpro-app [data-calcpro-pair-result]{display:none}
/* Pair pyramid accent colours for the Main Task ring (server SVG is class-hooked) */
.calcpro-compat-pyramid--first .calcpro-main-task-ring{stroke:#688f8a}
.calcpro-compat-pyramid--second .calcpro-main-task-ring{stroke:#bf6846}
.calcpro-compat-pyramid--combined .calcpro-main-task-ring{stroke:#688f8a}
.calcpro-single-pyramid svg,.calcpro-compat-pyramid-svg svg{display:block;width:100%;height:100%}
.calcpro-single-pyramid{height:430px}
@media(max-width:760px){.calcpro-single-pyramid{height:330px}}
/* Calculator prototype — unique calcpro prefix */
.calcpro-page{background:var(--paper)}
.calcpro-hero{padding:42px 0 72px;background:linear-gradient(180deg,var(--paper) 0%,var(--paper-soft) 100%);border-bottom:1px solid var(--line)}
.calcpro-breadcrumbs{display:flex;align-items:center;gap:10px;margin-bottom:42px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.calcpro-breadcrumbs a:hover{color:var(--oxide)}
.calcpro-heading{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,.68fr);gap:70px;align-items:end;margin-bottom:46px}
.calcpro-kicker{margin-bottom:22px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.12em;text-transform:uppercase;color:var(--oxide)}
.calcpro-heading h1{margin:0;font-family:var(--serif);font-size:var(--type-display);font-weight:400;line-height:.96;letter-spacing:-.045em}
.calcpro-heading p{margin:0;color:var(--muted);font-size:var(--type-lead);line-height:1.65}
.calcpro-app{background:var(--white);border:1px solid var(--line);box-shadow:0 26px 64px rgba(31,29,27,.08)}
.calcpro-modebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(540px,100%);padding:24px 30px 0}
.calcpro-mode{min-height:52px;border:1px solid var(--blue);background:transparent;color:var(--blue);font-family:var(--sans);font-size:var(--type-label);letter-spacing:.07em;text-transform:uppercase;cursor:pointer}
.calcpro-mode+ .calcpro-mode{border-left:0}
.calcpro-mode[aria-pressed="true"]{background:var(--blue);color:#fff}
.calcpro-form-panel{padding:30px}
.calcpro-form-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.62fr);gap:32px}
.calcpro-form-main{padding:42px;background:var(--paper-soft);border:1px solid var(--line)}
.calcpro-eyebrow{display:block;margin-bottom:18px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.11em;text-transform:uppercase;color:var(--blue)}
.calcpro-form-main h2{margin:0 0 18px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1;letter-spacing:-.035em}
.calcpro-form-intro{max-width:760px;margin:0 0 34px;color:var(--muted);font-size:var(--type-body);line-height:1.68}
.calcpro-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.calcpro-field{min-width:0}
.calcpro-field.full{grid-column:1/-1}
.calcpro-field label,.calcpro-field-title{display:block;margin-bottom:10px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-input{display:block;width:100%;height:62px;padding:0 18px;border:1px solid var(--line);background:var(--white);font:400 var(--type-body)/1.2 var(--sans);color:var(--ink);outline:none}
.calcpro-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(52,78,107,.08)}
.calcpro-hint{display:block;margin-top:8px;font-family:var(--sans);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.calcpro-gender{display:grid;grid-template-columns:1fr 1fr}
.calcpro-gender button{height:58px;border:1px solid var(--line);background:var(--white);font-family:var(--sans);font-size:var(--type-small);cursor:pointer}
.calcpro-gender button+button{border-left:0}
.calcpro-gender button[aria-checked="true"]{background:var(--blue);color:#fff;border-color:var(--blue)}
.calcpro-submit{display:flex;align-items:center;justify-content:center;gap:18px;width:100%;min-height:64px;margin-top:28px;border:0;background:var(--blue);color:#fff;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.calcpro-submit:hover{background:#2b455f}
.calcpro-note{display:grid;grid-template-columns:auto 1fr;gap:16px;margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted)}
.calcpro-note strong{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--blue)}
.calcpro-note em{font-family:var(--sans);font-size:var(--type-small);font-style:normal;line-height:1.55}
.calcpro-pair-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.calcpro-person{padding:26px;background:var(--white);border:1px solid var(--line)}
.calcpro-person:nth-child(1){border-top:4px solid var(--teal)}
.calcpro-person:nth-child(2){border-top:4px solid var(--oxide)}
.calcpro-person h3{margin:0 0 24px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-person .calcpro-field+.calcpro-field{margin-top:18px}
.calcpro-benefits{padding:36px;background:#22364a;color:#fff}
.calcpro-benefits small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.1em;text-transform:uppercase;color:#c9d6df}
.calcpro-benefits h3{margin:22px 0 20px;font-family:var(--serif);font-size:var(--type-card);font-weight:400;line-height:1.08}
.calcpro-benefits-list{margin:0;padding:0;list-style:none}
.calcpro-benefits-list li{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start;padding:17px 0;border-top:1px solid rgba(255,255,255,.17);color:#dbe4ea;line-height:1.55}
.calcpro-benefits-list b{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);font-family:var(--serif);font-weight:400;color:#fff}
.calcpro-result{border-top:1px solid var(--line)}
.calcpro-result-head{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:24px 32px;background:var(--white);border-bottom:1px solid var(--line)}
.calcpro-result-summary{font-size:var(--type-small);color:var(--muted)}
.calcpro-result-summary strong{color:var(--ink)}
.calcpro-reset{border:0;background:transparent;color:var(--blue);font-family:var(--sans);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.calcpro-pyramid-stage{padding:60px 40px 48px;background:var(--paper)}
.calcpro-single-pyramid{max-width:850px;height:480px;margin:0 auto}
.calcpro-single-pyramid svg,.calcpro-pair-pyramid svg{display:block;width:100%;height:100%}
.calcpro-pair-pyramids{display:grid;grid-template-columns:1fr 84px 1fr 84px 1fr;gap:12px;align-items:center}
.calcpro-pair-pyramid{height:310px;padding:22px;background:var(--white);border:1px solid var(--line)}
.calcpro-pair-pyramid.shared{border-top:4px solid #22364a}
.calcpro-pair-symbol{text-align:center;font-family:var(--serif);font-size:44px;color:var(--oxide)}
.calcpro-pyramid-caption{margin:22px auto 0;text-align:center;color:var(--muted);font-size:var(--type-small)}
.calcpro-axes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--blue);border-bottom:1px solid var(--line)}
.calcpro-axis{padding:28px 32px;border-right:1px solid var(--line)}
.calcpro-axis:last-child{border-right:0}
.calcpro-axis small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-axis h3{margin:12px 0 8px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-axis p{margin:0;color:var(--muted);font-size:var(--type-small);line-height:1.55}
.calcpro-reading{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:56px;padding:76px 40px 34px}
.calcpro-reading-main{min-width:0;max-width:920px}
.calcpro-reading-label{display:block;margin-bottom:12px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.1em;text-transform:uppercase;color:var(--oxide)}
.calcpro-reading-title{margin:0 0 14px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1}
.calcpro-reading-meta{margin:0 0 28px;color:var(--muted);font-size:var(--type-small)}
.calcpro-reading-teaser{font-family:var(--serif);font-size:var(--type-lead)!important;line-height:1.55!important;color:var(--ink)!important}
.calcpro-reading-block{padding:36px 0;border-top:1px solid var(--line)}
.calcpro-reading-block:first-of-type{border-top:0;padding-top:0}
.calcpro-reading-block h3{margin:0 0 24px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-reading-block p{margin:0 0 18px;color:var(--ink);font-size:17px;line-height:1.78}
.calcpro-reading-block p:last-child{margin-bottom:0}
.calcpro-reading-aside{align-self:start;position:sticky;top:110px;display:grid;gap:16px}
.calcpro-aside-card{padding:28px;background:var(--paper-soft);border:1px solid var(--line)}
.calcpro-aside-card.primary{background:#22364a;color:#fff;border-color:#22364a}
.calcpro-aside-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-aside-card.primary small{color:#cbd7e0}
.calcpro-aside-card h3{margin:20px 0 12px;font-family:var(--serif);font-size:var(--type-card);font-weight:400;line-height:1.08}
.calcpro-aside-card p{margin:0 0 24px;color:var(--muted);font-size:var(--type-small);line-height:1.6}
.calcpro-aside-card.primary p{color:#dbe4ea}
.calcpro-aside-action{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:58px;padding:0 18px;border:1px solid currentColor;background:transparent;color:inherit;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.07em;text-transform:uppercase;text-decoration:none}
.calcpro-aside-card.primary .calcpro-aside-action{background:#fff;color:#22364a;border-color:#fff}
.calcpro-aside-card+.calcpro-aside-card{margin-top:0}
.calcpro-locks{padding:52px 40px 72px;border-top:1px solid var(--line)}
.calcpro-locks-head{display:grid;grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:70px;align-items:start;margin-bottom:38px}
.calcpro-locks-head h2{margin:0;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1}
.calcpro-locks-head p{margin:0;color:var(--muted);font-size:var(--type-body);line-height:1.65}
.calcpro-lock-grid{display:grid;grid-template-columns:1fr 1fr .76fr;border:1px solid var(--line)}
.calcpro-lock-column{min-width:0;border-right:1px solid var(--line)}
.calcpro-lock-column:last-child{border-right:0}
.calcpro-lock-column h3{margin:0;padding:20px 22px;background:var(--paper-soft);border-bottom:1px solid var(--line);font-family:var(--sans);font-size:var(--type-label);font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.calcpro-lock-column:nth-child(1) h3{border-top:4px solid var(--teal)}
.calcpro-lock-column:nth-child(2) h3{border-top:4px solid var(--oxide)}
.calcpro-lock-column:nth-child(3) h3{border-top:4px solid #22364a}
.calcpro-lock-column ul{margin:0;padding:0;list-style:none}
.calcpro-lock-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:56px;padding:10px 16px;border-bottom:1px solid var(--line)}
.calcpro-lock-row:last-child{border-bottom:0}
.calcpro-lock-row.is-open{background:rgba(104,143,138,.08)}
.calcpro-position-code{font-family:var(--sans);font-size:11px;color:var(--muted)}
.calcpro-position-name{min-width:0;font-size:var(--type-small);line-height:1.35}
.calcpro-lock-icon{display:flex;color:var(--muted)}
.calcpro-lock-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.calcpro-lock-open{padding:5px 7px;background:var(--teal);color:#fff;font-family:var(--sans);font-size:9px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.calcpro-seo{padding:108px 0;background:var(--white)}
.calcpro-section-head{display:grid;grid-template-columns:minmax(320px,.76fr) minmax(0,1.24fr);gap:84px;align-items:start;margin-bottom:58px}
.calcpro-section-head h2{margin:0;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1;letter-spacing:-.035em}
.calcpro-section-head p{margin:0;color:var(--muted);font-size:var(--type-lead);line-height:1.65}
.calcpro-explain-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.calcpro-explain-card{min-height:360px;padding:42px;background:var(--paper);border:1px solid var(--line)}
.calcpro-explain-card:nth-child(1){border-top:4px solid var(--blue)}
.calcpro-explain-card:nth-child(2){border-top:4px solid var(--oxide)}
.calcpro-explain-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-explain-card h3{margin:26px 0 18px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-explain-card p{margin:0;color:var(--muted);font-size:var(--type-body);line-height:1.68}
.calcpro-free{padding:100px 0;background:#22364a;color:#fff}
.calcpro-free-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(600px,1.28fr);gap:78px;align-items:center}
.calcpro-free-copy h2{margin:0 0 26px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1}
.calcpro-free-copy p{font-size:var(--type-lead);line-height:1.65;color:#dbe4ea}
.calcpro-free-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calcpro-free-card{min-height:185px;padding:28px;background:var(--paper);color:var(--ink);border:1px solid rgba(255,255,255,.2)}
.calcpro-free-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-free-card h3{margin:20px 0 10px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-free-card p{margin:0;color:var(--muted);font-size:var(--type-small);line-height:1.55}
.calcpro-read{padding:106px 0;background:var(--paper-soft)}
.calcpro-read-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.calcpro-read-card{min-height:290px;padding:34px 30px;background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column}
.calcpro-read-card:nth-child(1){border-top:4px solid var(--blue)}
.calcpro-read-card:nth-child(2){border-top:4px solid var(--teal)}
.calcpro-read-card:nth-child(3){border-top:4px solid var(--oxide)}
.calcpro-read-card:nth-child(4){border-top:4px solid #839db9}
.calcpro-read-card small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.calcpro-read-card h3{margin:26px 0 14px;font-family:var(--serif);font-size:var(--type-card);font-weight:400}
.calcpro-read-card p{margin:0 0 24px;color:var(--muted);font-size:var(--type-body);line-height:1.62}
.calcpro-read-card a{margin-top:auto;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.calcpro-full{padding:96px 0;background:var(--oxide);color:#fff}
.calcpro-full-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);gap:78px;align-items:center}
.calcpro-full-copy h2{margin:0 0 24px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1}
.calcpro-full-copy p{font-size:var(--type-lead);line-height:1.65;color:rgba(255,255,255,.9)}
.calcpro-full-steps{display:grid;gap:12px}
.calcpro-full-step{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;padding:24px;background:var(--paper);color:var(--ink)}
.calcpro-full-step b{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:#22364a;color:#fff;font-family:var(--serif);font-weight:400}
.calcpro-full-step h3{margin:0 0 7px;font-family:var(--serif);font-size:24px;font-weight:400}
.calcpro-full-step p{margin:0;color:var(--muted);font-size:var(--type-small);line-height:1.55}
.calcpro-faq{padding:104px 0;background:var(--white)}
.calcpro-faq-list{max-width:1000px;margin-left:auto}
.calcpro-faq details{border-top:1px solid var(--line)}
.calcpro-faq details:last-child{border-bottom:1px solid var(--line)}
.calcpro-faq summary{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:24px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:var(--type-card)}
.calcpro-faq summary::-webkit-details-marker{display:none}
.calcpro-faq summary::after{content:"+";font-family:var(--sans);font-size:24px;color:var(--oxide)}
.calcpro-faq details[open] summary::after{content:"−"}
.calcpro-faq details p{max-width:820px;margin:0;padding:0 0 24px;color:var(--muted);font-size:var(--type-body);line-height:1.68}
@media(max-width:1100px){
  .calcpro-heading,.calcpro-form-layout,.calcpro-reading,.calcpro-free-grid,.calcpro-full-grid{grid-template-columns:1fr}
  .calcpro-reading-aside{position:static;grid-template-columns:1fr 1fr}
  .calcpro-locks-head,.calcpro-section-head{grid-template-columns:1fr;gap:24px}
  .calcpro-read-grid{grid-template-columns:1fr 1fr}
  .calcpro-pair-pyramids{grid-template-columns:1fr 60px 1fr}
  .calcpro-pair-pyramid.shared{grid-column:1/-1}
  .calcpro-pair-symbol:nth-of-type(4){display:none}
}
@media(max-width:760px){
  .calcpro-hero{padding-top:28px}
  .calcpro-breadcrumbs{margin-bottom:34px}
  .calcpro-heading{gap:24px}
  .calcpro-heading h1{line-height:.98;letter-spacing:-.035em}
  .calcpro-modebar{padding:18px 18px 0}
  .calcpro-form-panel{padding:18px}
  .calcpro-form-main,.calcpro-benefits{padding:26px 22px}
  .calcpro-fields,.calcpro-pair-fields,.calcpro-axes,.calcpro-explain-grid,.calcpro-free-cards,.calcpro-read-grid{grid-template-columns:1fr}
  .calcpro-person{padding:22px}
  .calcpro-result-head{align-items:flex-start;padding:20px;flex-direction:column}
  .calcpro-pyramid-stage{padding:36px 18px}
  .calcpro-single-pyramid{height:330px}
  .calcpro-pair-pyramids{grid-template-columns:1fr}
  .calcpro-pair-symbol{transform:rotate(90deg)}
  .calcpro-pair-pyramid{height:260px}
  .calcpro-reading{padding:54px 20px 24px;gap:30px}
  .calcpro-reading-aside{grid-template-columns:1fr}
  .calcpro-locks{padding:42px 20px 58px}
  .calcpro-lock-grid{grid-template-columns:1fr}
  .calcpro-lock-column{border-right:0;border-bottom:1px solid var(--line)}
  .calcpro-lock-column:last-child{border-bottom:0}
  .calcpro-free,.calcpro-seo,.calcpro-read,.calcpro-full,.calcpro-faq{padding:78px 0}
  .calcpro-faq-list{margin-left:0}
}
.snippet-preview .calcpro-app{width:100%;}
/* Result funnel v2 */
.calcpro-pyramid-heading{max-width:850px;margin:0 auto 28px;text-align:center}
.calcpro-pyramid-heading small{display:block;margin-bottom:10px;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.1em;text-transform:uppercase;color:var(--oxide)}
.calcpro-pyramid-heading h2{margin:0;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1;letter-spacing:-.035em}
.calcpro-pyramid-heading p{margin:14px 0 0;color:var(--muted);font-family:var(--sans);font-size:var(--type-small);line-height:1.55}
.calcpro-reading{display:block;padding:76px 40px 0}
.calcpro-reading-main{width:min(100%,920px);max-width:none;margin:0 auto}
.calcpro-reading-meta{font-family:var(--sans)}
.calcpro-reading-block p{font-family:var(--sans)}
.calcpro-reading-teaser{font-family:var(--serif)!important}
.calcpro-reading-closing{padding-bottom:32px}
.calcpro-reading-closing p:first-child,.calcpro-reading-closing p:nth-child(2){font-family:var(--serif);font-size:var(--type-lead);line-height:1.5;color:var(--ink)}
.calcpro-author-cta-line{font-weight:600;color:var(--blue)!important}
.calcpro-reading-aside{display:none!important}
.calcpro-conversion{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.62fr);gap:46px;align-items:center;width:min(100%,1120px);margin:0 auto 72px;padding:46px;background:#22364a;color:#fff}
.calcpro-conversion-copy small{font-family:var(--sans);font-size:var(--type-label);letter-spacing:.1em;text-transform:uppercase;color:#cbd7e0}
.calcpro-conversion-copy h2{margin:20px 0 18px;font-family:var(--serif);font-size:var(--type-section);font-weight:400;line-height:1;letter-spacing:-.035em}
.calcpro-conversion-copy p{margin:0;color:#dbe4ea;font-family:var(--sans);font-size:var(--type-body);line-height:1.7}
.calcpro-conversion-actions{display:grid;gap:12px}
.calcpro-conversion-primary{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:68px;padding:0 22px;background:var(--oxide);color:#fff;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.07em;text-transform:uppercase;text-decoration:none}
.calcpro-conversion-primary:hover{background:#ad5c3f}
.calcpro-pdf-option{justify-self:start;padding:0;border:0;background:transparent;color:#dbe4ea;font-family:var(--sans);font-size:var(--type-small);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.calcpro-pdf-note{font-family:var(--sans);font-size:11px;line-height:1.5;color:#aebdca}
.calcpro-lock-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.calcpro-lock-row{grid-template-columns:minmax(0,1fr) auto;gap:14px;min-height:60px;padding:11px 18px}
.calcpro-position-name{font-family:var(--sans);font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.calcpro-lock-icon{justify-self:end}
.calcpro-lock-open{justify-self:end}
.calcpro-position-code{display:none!important}
@media(max-width:980px){
  .calcpro-conversion{grid-template-columns:1fr}
  .calcpro-lock-grid{grid-template-columns:1fr 1fr}
  .calcpro-lock-column:nth-child(2){border-right:0}
  .calcpro-lock-column:nth-child(3){grid-column:1/-1;border-top:1px solid var(--line);border-right:0}
}
@media(max-width:760px){
  .calcpro-pyramid-heading{text-align:left}
  .calcpro-reading{padding:54px 20px 0}
  .calcpro-conversion{margin-bottom:56px;padding:30px 22px}
  .calcpro-lock-grid{grid-template-columns:1fr}
  .calcpro-lock-column:nth-child(3){grid-column:auto}
}
/* v3 funnel, PDF and lock-table corrections */
.calcpro-reading-closing{padding-bottom:42px}
.calcpro-author-cta-line{display:none!important}
.calcpro-pdf-download{display:grid;
  grid-template-columns:70px minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  width:min(100%,1120px);
  margin:0 auto 18px;
  padding:30px 34px;
  background:var(--paper-soft);
  border:1px solid var(--line);
  border-left:5px solid var(--teal)}
.calcpro-pdf-download-icon{display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  background:var(--white);
  border:1px solid var(--line);
  color:var(--teal)}
.calcpro-pdf-download-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.calcpro-pdf-download-copy small{display:block;font-family:var(--sans);font-size:var(--type-label);letter-spacing:.09em;text-transform:uppercase;color:var(--teal)}
.calcpro-pdf-download-copy h2{margin:9px 0 7px;font-family:var(--serif);font-size:28px;font-weight:400;line-height:1.12}
.calcpro-pdf-download-copy p{margin:0;font-family:var(--sans);font-size:var(--type-small);line-height:1.55;color:var(--muted)}
.calcpro-pdf-download-button{min-height:54px;
  padding:0 20px;
  background:transparent;
  border:1px solid var(--blue);
  color:var(--blue);
  font-family:var(--sans);
  font-size:var(--type-label);
  letter-spacing:.07em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap}
.calcpro-pdf-download-button:hover{background:var(--blue);color:#fff}
.calcpro-conversion{margin-top:0}
.calcpro-conversion-actions{display:block}
.calcpro-conversion-primary{width:100%}
.calcpro-lock-row{min-height:66px;padding:12px 16px}
.calcpro-lock-row.is-open{position:relative;
  background:rgba(104,143,138,.14);
  box-shadow:inset 5px 0 0 var(--teal)}
.calcpro-lock-row.is-open .calcpro-position-name{font-weight:650;color:var(--ink)}
.calcpro-lock-icon,
.calcpro-lock-open{display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  font-family:var(--sans);
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap}
.calcpro-lock-icon{color:#65727d}
.calcpro-lock-icon svg{width:21px;height:21px;stroke-width:1.8}
.calcpro-lock-label{display:inline-block}
.calcpro-lock-open{min-height:36px;
  padding:7px 10px;
  background:var(--teal);
  color:#fff;
  font-size:9px;
  font-weight:600}
.calcpro-lock-open svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:980px){
  .calcpro-pdf-download{grid-template-columns:58px 1fr}
  .calcpro-pdf-download-button{grid-column:1/-1;justify-self:start}
}
@media(max-width:760px){
  .calcpro-pdf-download{grid-template-columns:1fr;margin-bottom:16px;padding:26px 22px}
  .calcpro-pdf-download-icon{width:52px;height:52px}
  .calcpro-pdf-download-button{width:100%;white-space:normal}
  .calcpro-lock-label{display:none}
  .calcpro-lock-icon svg{width:23px;height:23px}
  .calcpro-lock-open{font-size:8px;padding:7px 9px}
}
/* v4 — author closing is the conversion moment; PDF is secondary */
.calcpro-reading-closing{margin-top:16px;
  padding:42px 44px!important;
  background:#22364a;
  color:#fff;
  border-top:0!important}
.calcpro-reading-closing p{color:#fff!important}
.calcpro-reading-closing p:first-child{margin-bottom:22px!important;
  font-family:var(--serif)!important;
  font-size:30px!important;
  line-height:1.2!important}
.calcpro-reading-closing p:nth-child(2){font-family:var(--serif)!important;
  font-size:var(--type-lead)!important;
  line-height:1.5!important}
.calcpro-reading-closing p:not(:first-child):not(:nth-child(2)){color:#e1e8ed!important}
.calcpro-closing-cta{display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  width:min(100%,620px);
  min-height:70px;
  margin-top:34px;
  padding:0 24px;
  background:var(--oxide);
  color:#fff;
  font-family:var(--sans);
  font-size:var(--type-label);
  font-weight:600;
  letter-spacing:.08em;
  line-height:1.45;
  text-transform:uppercase;
  text-decoration:none}
.calcpro-closing-cta:hover{background:#ad5c3f}
.calcpro-closing-cta b{font-family:var(--sans);font-size:18px}
.calcpro-pdf-secondary{display:flex;
  justify-content:space-between;
  gap:28px;
  align-items:center;
  width:min(100%,920px);
  margin:24px auto 54px;
  padding:18px 0;
  background:transparent;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.calcpro-pdf-secondary-copy{display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0}
.calcpro-pdf-secondary-copy strong{font-family:var(--sans);
  font-size:var(--type-label);
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink)}
.calcpro-pdf-secondary-copy span{font-family:var(--sans);
  font-size:var(--type-small);
  line-height:1.55;
  color:var(--muted)}
.calcpro-pdf-secondary-button{display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:0 14px;
  border:0;
  background:transparent;
  color:var(--blue);
  font-family:var(--sans);
  font-size:var(--type-label);
  letter-spacing:.07em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap}
.calcpro-pdf-secondary-button:hover{text-decoration:underline;text-underline-offset:4px}
.calcpro-pdf-secondary-button svg{width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round}
/* Retire earlier conversion/PDF treatments completely */
.calcpro-conversion,
.calcpro-pdf-download{display:none!important}
@media(max-width:760px){
  .calcpro-reading-closing{margin-left:-20px;
    margin-right:-20px;
    padding:34px 22px!important}
  .calcpro-closing-cta{width:100%;
    min-height:66px;
    padding:14px 18px}
  .calcpro-pdf-secondary{align-items:flex-start;
    flex-direction:column;
    margin:18px 0 42px;
    padding:18px 0}
  .calcpro-pdf-secondary-button{padding-left:0}
}
/* Calculation modes are now a full-width functional bar, not a floating control */
.calcpro-modebar{width:100%;
  padding:0;
  border-bottom:1px solid var(--line)}
.calcpro-mode{min-height:58px;
  border:0;
  border-right:1px solid var(--line);
  background:var(--white);
  color:var(--blue)}
.calcpro-mode:last-child{border-right:0}
.calcpro-mode[aria-pressed="true"]{background:var(--blue);
  color:#fff}
.calcpro-result-head{min-height:82px;
  padding:22px 30px}
/* Remove the previous heavy closing treatment */
.calcpro-reading-closing{margin-top:18px;
  padding:38px 40px!important;
  background:var(--paper-soft);
  color:var(--ink);
  border:1px solid var(--line)!important;
  border-left:4px solid var(--oxide)!important}
.calcpro-reading-closing p{color:var(--ink)!important}
.calcpro-reading-closing p:first-child{margin-bottom:18px!important;
  font-family:var(--serif)!important;
  font-size:30px!important;
  line-height:1.2!important}
.calcpro-reading-closing p:not(:first-child):not(:nth-child(2)){color:var(--ink)!important}
.calcpro-closing-cta{display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  width:min(100%,700px);
  min-height:76px;
  margin-top:34px;
  padding:14px 22px;
  background:var(--oxide);
  color:#fff;
  text-decoration:none}
.calcpro-closing-cta-copy{display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0}
.calcpro-closing-cta-copy small{font-family:var(--sans);
  font-size:10px;
  font-weight:400;
  letter-spacing:.09em;
  line-height:1.35;
  text-transform:uppercase;
  color:rgba(255,255,255,.78)}
.calcpro-closing-cta-copy strong{font-family:var(--sans);
  font-size:var(--type-label);
  font-weight:600;
  letter-spacing:.07em;
  line-height:1.45;
  text-transform:uppercase;
  color:#fff}
.calcpro-closing-cta b{flex:0 0 auto;
  font-family:var(--sans);
  font-size:18px}
/* PDF stays visually secondary after the Telegram action */
.calcpro-pdf-secondary{margin-top:20px}
@media(max-width:760px){
  .calcpro-modebar{grid-template-columns:1fr 1fr}
  .calcpro-mode{min-height:54px;
    padding:8px 10px;
    line-height:1.35}
  .calcpro-result-head{min-height:0;
    padding:20px}
  .calcpro-reading-closing{margin-left:0;
    margin-right:0;
    padding:30px 22px!important}
  .calcpro-closing-cta{width:100%;
    min-height:76px;
    padding:14px 16px}
}
/* v6 — simplified type scale and compact closing list */
.calcpro-app{--calc-size-display:clamp(44px,5vw,68px);
  --calc-size-heading:32px;
  --calc-size-lead:20px;
  --calc-size-body:16px;
  --calc-size-small:14px;
  --calc-size-label:11px;
  font-family:var(--sans)}
/* Serif is reserved for meaningful headings only */
.calcpro-form-main h2,
.calcpro-benefits h3,
.calcpro-pyramid-title h2,
.calcpro-axis h3,
.calcpro-reading-title,
.calcpro-reading-block h3,
.calcpro-reading-closing p:first-child,
.calcpro-reading-closing p:nth-child(2),
.calcpro-locks-head h2{font-family:var(--serif)}
/* One stable display size */
.calcpro-pyramid-title h2{font-size:var(--calc-size-display);
  line-height:1;
  letter-spacing:-.035em}
/* One stable section-heading size */
.calcpro-form-main h2,
.calcpro-reading-title,
.calcpro-locks-head h2{font-size:var(--calc-size-heading);
  line-height:1.12;
  letter-spacing:-.02em}
/* Card and article headings share one size */
.calcpro-benefits h3,
.calcpro-axis h3,
.calcpro-reading-block h3{font-size:26px;
  line-height:1.18;
  letter-spacing:-.01em}
/* Main reading text shares one body size */
.calcpro-reading-block p,
.calcpro-form-intro,
.calcpro-locks-head p,
.calcpro-position-name,
.calcpro-result-summary{font-family:var(--sans);
  font-size:var(--calc-size-body);
  line-height:1.7}
/* Secondary copy shares one small size */
.calcpro-pyramid-caption,
.calcpro-axis p,
.calcpro-pdf-secondary-copy span,
.calcpro-note em{font-family:var(--sans);
  font-size:var(--calc-size-small);
  line-height:1.55}
/* All interface labels share one label size */
.calcpro-mode,
.calcpro-eyebrow,
.calcpro-field label,
.calcpro-field-title,
.calcpro-axis small,
.calcpro-reading-label,
.calcpro-lock-column h3,
.calcpro-lock-open,
.calcpro-lock-closed,
.calcpro-reset,
.calcpro-pdf-secondary-copy strong,
.calcpro-pdf-secondary-button{font-family:var(--sans);
  font-size:var(--calc-size-label);
  letter-spacing:.08em;
  text-transform:uppercase}
/* Author closing: compact list, no artificial paragraph gaps */
.calcpro-reading-closing p{margin-bottom:16px!important}
.calcpro-reading-closing p:first-child{font-size:30px!important;
  line-height:1.2!important}
.calcpro-reading-closing p:nth-child(2){font-size:var(--calc-size-lead)!important;
  line-height:1.5!important}
.calcpro-closing-list{display:grid;
  gap:5px;
  margin:2px 0 20px}
.calcpro-closing-list-item{margin:0!important;
  line-height:1.45!important}
/* One clear CTA phrase */
.calcpro-closing-cta{width:min(100%,760px);
  min-height:78px;
  padding:18px 24px}
.calcpro-closing-cta > span{font-family:var(--sans);
  font-size:17px;
  font-weight:600;
  letter-spacing:.015em;
  line-height:1.4;
  text-transform:none}
.calcpro-closing-cta > b{font-size:20px}
/* Retire obsolete nested CTA type rules from earlier iterations */
.calcpro-closing-cta-copy,
.calcpro-closing-cta-copy small,
.calcpro-closing-cta-copy strong{all:unset}
@media(max-width:760px){
  .calcpro-app{--calc-size-display:42px;
    --calc-size-heading:29px;
    --calc-size-lead:19px;
    --calc-size-body:16px}
  .calcpro-closing-cta{min-height:76px;
    padding:16px 18px}
  .calcpro-closing-cta > span{font-size:16px}
}
/* v7 — complete calculator from form to generated result */
.calcpro-form-panel{border-bottom:1px solid var(--line)}
.calcpro-result:not([hidden]){margin-top:0}
.calcpro-reset{text-decoration:underline;
  text-underline-offset:4px}
/* Mandatory consent after the Telegram CTA */
.calcpro-telegram-consent{width:min(100%,760px);
  margin:14px 0 0!important;
  font-family:var(--sans)!important;
  font-size:12px!important;
  line-height:1.55!important;
  color:var(--muted)!important}
.calcpro-telegram-consent a{color:var(--blue);
  text-decoration:underline;
  text-underline-offset:3px}
.calcpro-telegram-consent a:hover{color:var(--oxide)}
/* v10 — simplified form and personalized result */
.calcpro-form-layout{grid-template-columns:1fr}
.calcpro-form-main{width:100%;
  max-width:none}
.calcpro-result-head{display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:36px;
  align-items:center;
  padding:42px 40px;
  background:var(--white);
  border-bottom:1px solid var(--line)}
.calcpro-personal-result h2{max-width:980px;
  margin:0;
  font-family:var(--serif);
  font-size:clamp(38px,4.2vw,62px);
  font-weight:400;
  line-height:1.02;
  letter-spacing:-.035em}
.calcpro-personal-result p{margin:16px 0 0;
  font-family:var(--sans);
  font-size:16px;
  line-height:1.55;
  color:var(--muted)}
.calcpro-pyramid-stage{padding-top:50px}
.calcpro-reading{padding-top:72px}
.calcpro-reading-heading{margin:0 0 16px;
  font-family:var(--serif);
  font-size:clamp(40px,4.6vw,64px);
  font-weight:400;
  line-height:1;
  letter-spacing:-.035em}
.calcpro-reading-value{margin:0 0 40px;
  padding:16px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  font-family:var(--sans);
  font-size:18px;
  line-height:1.55;
  color:var(--muted)}
.calcpro-reading-value strong{color:var(--ink);
  font-weight:600}
.calcpro-benefits,
.calcpro-axes,
.calcpro-eyebrow,
.calcpro-pyramid-heading{display:none!important}
@media(max-width:760px){
  .calcpro-result-head{grid-template-columns:1fr;
    gap:22px;
    padding:30px 22px}
  .calcpro-personal-result h2{font-size:40px;
    line-height:1.04}
  .calcpro-reading{padding-top:54px}
  .calcpro-reading-heading{font-size:42px}
  .calcpro-reading-value{margin-bottom:32px;
    font-size:17px}
}
/* v11 — axis headings use the same interface sans-serif, without a third visual style */
.calcpro-lock-column h3{padding:18px 20px;
  font-family:var(--sans);
  font-size:15px;
  font-weight:600;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
  color:var(--ink)}
/* Main Task node in the Pyramid */
.calcpro-main-task-ring{vector-effect:non-scaling-stroke}
.calcpro-main-task-node,
.calcpro-main-task-value{vector-effect:non-scaling-stroke}
/* v12 — repair closing-block typography.
   Serif is used only for the heading; every other line uses the shared sans-serif. */
.calcpro-reading-closing{font-family:var(--sans)}
/* Direct-child selectors prevent nested list items from inheriting heading styles */
.calcpro-reading-closing > p{margin:0 0 18px!important;
  font-family:var(--sans)!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.68!important;
  letter-spacing:0!important;
  color:var(--ink)!important}
.calcpro-reading-closing > p:first-child{margin-bottom:20px!important;
  font-family:var(--serif)!important;
  font-size:30px!important;
  font-weight:400!important;
  line-height:1.18!important;
  letter-spacing:-.015em!important}
.calcpro-reading-closing > p:nth-child(2){margin-bottom:22px!important;
  font-family:var(--sans)!important;
  font-size:19px!important;
  font-weight:600!important;
  line-height:1.5!important;
  letter-spacing:0!important}
/* Compact, completely uniform list */
.calcpro-closing-list{display:grid;
  gap:8px;
  margin:0 0 24px}
.calcpro-reading-closing .calcpro-closing-list-item{margin:0!important;
  font-family:var(--sans)!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  color:var(--ink)!important}
/* Neutralize earlier broad selectors from previous iterations */
.calcpro-reading-closing p:first-child:not(:only-child),
.calcpro-reading-closing p:nth-child(2){text-transform:none}
@media(max-width:760px){
  .calcpro-reading-closing > p{font-size:16px!important;
    line-height:1.65!important}
  .calcpro-reading-closing > p:first-child{font-size:29px!important}
  .calcpro-reading-closing > p:nth-child(2){font-size:18px!important}
  .calcpro-reading-closing .calcpro-closing-list-item{font-size:16px!important}
}
/* Implementation reference: individual calculator only */
.calcpro-app[data-calculator-type="individual"] .calcpro-form-panel{padding-top:30px}
.calcpro-app[data-calculator-type="individual"] [data-calcpro-single-fields],
.calcpro-app[data-calculator-type="individual"] [data-calcpro-single-result]{display:block!important}
/* v2 handoff fix — stable note typography and alignment */
.calcpro-note{display:block;
  margin:24px 0 0;
  padding-top:18px;
  border-top:1px solid var(--line);
  font-family:var(--sans);
  font-size:14px;
  font-weight:400;
  line-height:1.6;
  letter-spacing:0;
  color:var(--muted)}
.calcpro-note-label{font-family:var(--sans);
  font-size:14px;
  font-weight:600;
  line-height:inherit;
  letter-spacing:0;
  text-transform:none;
  color:var(--blue)}
.calcpro-note-text{font-family:var(--sans);
  font-size:14px;
  font-weight:400;
  font-style:normal;
  line-height:inherit;
  letter-spacing:0;
  color:inherit}
/* Legal links remain readable without competing with the primary CTA */
.calcpro-telegram-consent a{color:var(--blue);
  text-decoration:underline;
  text-underline-offset:3px}
/* Compatibility result — two personal Pyramids and one combined Pyramid */
.calcpro-compat-pyramids{display:grid;
  grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr) 54px minmax(0,1.08fr);
  gap:12px;
  align-items:center}
.calcpro-compat-pyramid{min-width:0;
  padding:24px 20px 18px;
  background:var(--white);
  border:1px solid var(--line)}
.calcpro-compat-pyramid--first{border-top:4px solid var(--teal)}
.calcpro-compat-pyramid--second{border-top:4px solid var(--oxide)}
.calcpro-compat-pyramid--combined{border-top:4px solid var(--blue);
  box-shadow:0 14px 34px rgba(31,29,27,.07)}
.calcpro-compat-pyramid-head{min-height:92px;
  text-align:center}
.calcpro-compat-pyramid-head small{display:block;
  font-family:var(--sans);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted)}
.calcpro-compat-pyramid-head h3{margin:8px 0 5px;
  font-family:var(--serif);
  font-size:25px;
  font-weight:400;
  line-height:1.1}
.calcpro-compat-pyramid-head p{margin:0;
  font-family:var(--sans);
  font-size:13px;
  line-height:1.45;
  color:var(--muted)}
.calcpro-compat-pyramid-svg{height:300px}
.calcpro-compat-pyramid-svg svg{display:block;
  width:100%;
  height:100%}
.calcpro-compat-symbol{text-align:center;
  font-family:var(--serif);
  font-size:38px;
  color:var(--oxide)}
.calcpro-compat-frame{padding:30px 32px!important;
  background:var(--paper-soft);
  border-left:4px solid var(--blue)!important}
.calcpro-compat-frame p:first-child{font-family:var(--serif)!important;
  font-size:22px!important;
  line-height:1.55!important}
.calcpro-personal-result p{white-space:pre-wrap}
@media(max-width:1120px){
  .calcpro-compat-pyramids{grid-template-columns:1fr 46px 1fr}
  .calcpro-compat-pyramid--combined{grid-column:1/-1;
    width:min(100%,600px);
    margin:0 auto}
}
@media(max-width:760px){
  .calcpro-compat-pyramids{grid-template-columns:1fr}
  .calcpro-compat-symbol{transform:rotate(90deg)}
  .calcpro-compat-pyramid--combined{grid-column:auto;
    width:100%}
  .calcpro-compat-pyramid-svg{height:330px}
  .calcpro-compat-frame{padding:24px 22px!important}
}
/* Implementation reference: compatibility calculator only */
.calcpro-app[data-calculator-type="compatibility"] .calcpro-form-panel{padding-top:30px}
.calcpro-app[data-calculator-type="compatibility"] [data-calcpro-pair-fields],
.calcpro-app[data-calculator-type="compatibility"] [data-calcpro-pair-result]{display:block!important}
/* v3 — pair form without ordinal hierarchy */
.calcpro-person h3{font-family:var(--serif);
  font-size:28px;
  font-weight:400;
  line-height:1.15;
  letter-spacing:-.015em}
.calcpro-person:nth-child(1),
.calcpro-person:nth-child(2){min-height:100%}
/* v4 — perfectly aligned pair cards */
.calcpro-pair-fields{align-items:stretch}
.calcpro-person{display:flex;
  flex-direction:column;
  height:100%}
.calcpro-person h3{display:flex;
  align-items:flex-end;
  min-height:42px;
  margin:0 0 24px;
  white-space:nowrap}
.calcpro-person .calcpro-field{width:100%}

/* ============================================================
   v1.15.2 — правки автора после деплоя:
   1) калькулятор снова на белом полотне (контраст полей и кнопок),
      но без рамок, теней и вложенных карточек — одно чистое полотно;
   2) авторский текст жёстко ограничен колонкой 720px, заголовок
      результата — по широкой сетке 1120px;
   3) таблица позиций — явная трёхколоночная сетка (фикс вёрстки).
   ============================================================ */
.calcpro-app{
  max-width:var(--calcpro-max);
  margin-inline:auto;
  background:var(--white);
  padding:clamp(22px,4vw,46px) clamp(18px,3.5vw,44px) clamp(30px,4vw,54px);
  border:0;box-shadow:none;
}
/* Внутренние обёртки не рисуют собственных карточек — полотно одно */
.calcpro-form-panel,.calcpro-form-layout,.calcpro-form-main,
.calcpro-result,.calcpro-pyramid-stage,.calcpro-reading,.calcpro-reading-main,
[data-calcpro-single-result],[data-calcpro-pair-result]{
  background:transparent!important;border:0!important;box-shadow:none!important;
  padding:0!important;max-width:none!important;width:100%!important;
}
.calcpro-form-panel{margin:0 0 36px}
.calcpro-result-head{background:transparent!important;border:0!important;box-shadow:none!important}
.calcpro-reading{display:block}

/* Авторский текст — колонка 720px; большой заголовок — широкая сетка */
[data-calcpro-reading-blocks]{max-width:var(--calcpro-text)}
.calcpro-reading-value{max-width:var(--calcpro-text)}
.calcpro-reading-closing{max-width:var(--calcpro-text)}
.calcpro-reading-heading{max-width:none}
.calcpro-reading-main p{font-size:17.5px;line-height:1.72}
.calcpro-reading-block h3{font-size:23px;margin:34px 0 14px}
.calcpro-reading-block{margin-bottom:8px}

/* Концовка и PDF — плоские разделы с тонкой линейкой сверху */
.calcpro-reading-closing{background:transparent!important;border:0!important;box-shadow:none!important;
  border-top:1px solid var(--line)!important;padding:26px 0 0!important;margin-top:30px}
.calcpro-pdf-secondary{background:transparent!important;border:0!important;box-shadow:none!important;
  border-top:1px solid var(--line)!important;padding:22px 0 0!important;margin-top:26px;
  max-width:var(--calcpro-text)}

/* Таблица позиций: явная сетка, колонки эталона на белом полотне */
.calcpro-locks{margin-top:46px;background:transparent!important;border:0!important;
  box-shadow:none!important;padding:0!important}
.calcpro-lock-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;align-items:start}
.calcpro-lock-column{box-shadow:none!important;min-width:0;margin:0!important}
.calcpro-lock-column ul{margin:0!important;padding:0!important;list-style:none!important;display:block!important}
/* Строки: единый ритм в обоих языках — многострочные названия не ломают колонку */
.calcpro-lock-row{display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:12px;margin:0!important;padding:13px 16px!important;min-height:54px;
  background:transparent;border:0!important;border-top:1px solid var(--line)!important;box-shadow:none!important}
.calcpro-lock-column ul li:first-child{border-top:0!important}
.calcpro-lock-row.is-open{background:var(--paper-soft)!important;border-left:3px solid var(--teal)!important;
  padding-left:13px!important}
.calcpro-position-name{min-width:0;overflow-wrap:anywhere;hyphens:auto;font-size:15.5px;line-height:1.35}
.calcpro-lock-icon,.calcpro-lock-open{flex:0 0 auto;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.calcpro-lock-icon svg,.calcpro-lock-open svg{width:15px;height:15px;flex:0 0 auto}
@media(max-width:960px){.calcpro-lock-grid{grid-template-columns:1fr}}

/* Пирамиды пары: без теней */
.calcpro-compat-pyramid{box-shadow:none!important}
@media(max-width:760px){
  .calcpro-app{--calcpro-text:100%}
}

/* ============================================================
   v1.16.0 — result hierarchy + full-reading funnel.
   One free position → locked positions → Telegram CTA.
   The author reading itself is unchanged.
   ============================================================ */
.calcpro-reading{margin-top:68px}
.calcpro-reading-status{max-width:var(--calcpro-text);
  margin:0 0 10px!important;
  font-family:var(--sans)!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.4!important;
  letter-spacing:.08em!important;
  text-transform:uppercase;
  color:var(--teal)!important}
.calcpro-reading-heading{max-width:var(--calcpro-text);
  margin:0 0 12px;
  font-size:clamp(34px,3.4vw,46px);
  line-height:1.05;
  letter-spacing:-.025em}
.calcpro-reading-value{max-width:var(--calcpro-text);
  margin:0 0 42px;
  padding:0;
  border:0;
  font-family:var(--sans);
  font-size:20px;
  line-height:1.45;
  color:var(--ink)}
.calcpro-reading-value strong{font-weight:600;color:var(--ink)}
.calcpro-pyramid-caption{max-width:760px;margin-top:26px;line-height:1.6}

/* Locked positions now explain the paid layer before the CTA. */
.calcpro-locks{margin-top:74px!important}
.calcpro-locks-head{margin-bottom:34px}
.calcpro-lock-icon{color:var(--blue)}
.calcpro-lock-label{display:inline-block!important}

/* Final CTA: only the retained author sentence + primary action. */
.calcpro-final-cta{max-width:var(--calcpro-text);
  margin:58px 0 0;
  padding:0;
  background:transparent;
  border:0}
.calcpro-final-cta-lead{margin:0!important;
  font-family:var(--serif)!important;
  font-size:30px!important;
  font-weight:400!important;
  line-height:1.25!important;
  letter-spacing:-.015em!important;
  color:var(--ink)!important}
.calcpro-final-cta .calcpro-closing-cta{margin-top:26px}
.calcpro-final-cta .calcpro-telegram-consent{margin-top:14px!important}

@media(max-width:760px){
  .calcpro-reading{margin-top:52px}
  .calcpro-reading-status{margin-bottom:8px!important}
  .calcpro-reading-heading{font-size:34px;margin-bottom:10px}
  .calcpro-reading-value{margin-bottom:34px;font-size:18px}
  .calcpro-locks{margin-top:58px!important}
  .calcpro-final-cta{margin-top:46px}
  .calcpro-final-cta-lead{font-size:27px!important}
  .calcpro-lock-label{display:inline-block!important}
}

/* ============================================================
   v1.17.1 — RU-концовка: только оффер базового минимума.
   Порядок: разбор → оффер → «Что откроется в полном разборе».
   Внутри блока ровно четыре кегля:
     30px сериф   — заголовок оффера
     22px сериф   — утверждения автора (одинаковые между собой)
     17.5px санс  — весь основной текст, список и кнопка
     12px санс    — строка согласия
   ============================================================ */
.calcpro-offer{max-width:var(--calcpro-text);
  margin:58px 0 0;
  padding:0;
  background:transparent;
  border:0}
.calcpro-offer-box{margin:0;
  padding:36px 34px 32px;
  background:var(--paper-soft);
  border:1px solid var(--line);
  border-top:3px solid var(--oxide)}
/* 1. Заголовок */
.calcpro-offer-title{margin:0 0 20px;
  font-family:var(--serif);
  font-size:30px;
  font-weight:400;
  line-height:1.15;
  letter-spacing:.01em;
  color:var(--ink)}
/* 2. Авторские утверждения — один кегль на оба блока */
.calcpro-offer-claim,
.calcpro-offer-kicker{margin:0 0 20px;
  font-family:var(--serif);
  font-size:22px;
  font-weight:400;
  line-height:1.4;
  color:var(--ink)}
.calcpro-offer-kicker{margin:26px 0 0}
/* 3. Основной текст, список и кнопка — один кегль */
.calcpro-offer-lead,
.calcpro-offer-body,
.calcpro-offer-list li,
.calcpro-offer-box .calcpro-closing-cta > span{font-family:var(--sans);
  font-size:17.5px;
  line-height:1.6;
  color:var(--ink)}
.calcpro-offer-lead{margin:0 0 20px;font-weight:600}
.calcpro-offer-body{margin:0 0 16px;line-height:1.72}
.calcpro-offer-list{display:grid;
  gap:10px;
  margin:0 0 24px;
  padding:0;
  list-style:none}
.calcpro-offer-list li{position:relative;padding-left:26px}
.calcpro-offer-list li::before{content:'—';
  position:absolute;
  left:0;
  top:0;
  color:var(--oxide)}
.calcpro-offer-box .calcpro-closing-cta{margin-top:26px}
.calcpro-offer-box .calcpro-closing-cta > span{color:#fff;font-weight:600}
/* 4. Согласие */
.calcpro-offer-box .calcpro-telegram-consent{margin-top:14px!important}

/* Заголовки автора набраны прописными — снимаем отрицательный трекинг,
   рассчитанный на строчные. */
.calcpro-app[data-lang="ru"] .calcpro-reading-heading{letter-spacing:0}
.calcpro-app[data-lang="ru"] .calcpro-reading-block h3{letter-spacing:.01em}

/* Подпись под пирамидой и строка «Дата рождения · Возраст» — один кегль. */
.calcpro-app .calcpro-pyramid-caption{font-size:16px;line-height:1.6}

@media(max-width:760px){
  .calcpro-offer{margin-top:46px}
  .calcpro-offer-box{padding:26px 20px 24px}
  .calcpro-offer-title{font-size:26px}
  .calcpro-offer-claim,
  .calcpro-offer-kicker{font-size:20px}
}

/* ============================================================
   v1.18.0 — расположение: вступление линией, сплошной разбор,
   компактная кнопка, замки без псевдокнопок.
   ============================================================ */

/* Вступление перед разбором — акцент линией, без заливки:
   единственная заливка на странице остаётся у оффера. */
.calcpro-reading-intro{max-width:var(--calcpro-text);
  margin:0 0 46px;
  padding:2px 0 4px 26px;
  border-left:3px solid var(--teal)}
.calcpro-reading-intro .calcpro-reading-status{margin:0 0 14px!important}
.calcpro-reading-intro .calcpro-reading-heading{margin:0 0 14px!important;
  font-size:clamp(32px,3.4vw,40px)!important;
  line-height:1.05!important}
.calcpro-reading-intro-text{margin:0;
  font-family:var(--serif);
  font-size:21px;
  line-height:1.45;
  color:var(--ink)}

/* Разбор нового формата — один сплошной текст: ни линеек, ни отбивок.
   Подзаголовок отделён от предыдущего абзаца ровно вдвое сильнее,
   чем абзацы друг от друга, поэтому чтение не разрывается. */
.calcpro-reading-flow .calcpro-reading-block{padding:0;border-top:0}
.calcpro-reading-flow .calcpro-reading-block + .calcpro-reading-block{margin-top:36px}
.calcpro-reading-flow .calcpro-reading-block h3{margin:0 0 16px}

/* Кнопка — по ширине надписи, а не во всю колонку. */
.calcpro-offer-box .calcpro-closing-cta{display:inline-flex;
  width:auto;
  min-height:0;
  gap:16px;
  margin-top:28px;
  padding:18px 28px}
.calcpro-offer-box .calcpro-closing-cta > b{font-size:17px}
/* Финальная фраза — под кнопкой, последней репликой. */
.calcpro-offer-box .calcpro-offer-kicker{margin:22px 0 0!important}

/* Замки: остаются замками, перестают выглядеть кнопками. */
.calcpro-lock-label{display:none!important}

@media(max-width:760px){
  .calcpro-reading-intro{margin-bottom:38px;padding-left:20px}
  .calcpro-reading-intro-text{font-size:19px}
  .calcpro-reading-flow .calcpro-reading-block + .calcpro-reading-block{margin-top:30px}
  .calcpro-offer-box .calcpro-closing-cta{display:flex;width:100%;padding:17px 20px}
}

/* Замки поднялись под пирамиду — отступы переразмечены под новое место. */
.calcpro-locks{margin-top:56px!important}
.calcpro-reading{padding-top:64px}

/* ============================================================
   v1.20.0 — куда прислать разбор + экран после оплаты.
   ============================================================ */
.calcpro-offer-contact{margin:26px 0 0;
  padding:22px 22px 20px;
  background:var(--white);
  border:1px solid var(--line)}
.calcpro-offer-contact-label{margin:0 0 14px;
  font-family:var(--sans);
  font-size:17.5px;
  font-weight:600;
  line-height:1.4;
  color:var(--ink)}
.calcpro-offer-contact-fields{display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px}
.calcpro-offer-field{display:block}
.calcpro-offer-field span{display:block;
  margin:0 0 6px;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted)}
.calcpro-offer-field input{width:100%;
  box-sizing:border-box;
  padding:13px 14px;
  font-family:var(--sans);
  font-size:16px;
  color:var(--ink);
  background:var(--paper);
  border:1px solid var(--line-strong);
  border-radius:0}
.calcpro-offer-field input:focus{outline:2px solid var(--teal);outline-offset:-1px}
.calcpro-offer-contact-hint{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
.calcpro-offer-contact-error{margin:12px 0 0;font-size:14px;line-height:1.5;color:var(--oxide)}
/* Экран возврата с оплаты */
.calcpro-paid-note{max-width:var(--calcpro-text);
  margin:0 0 44px;
  padding:28px 30px 26px;
  background:var(--paper-soft);
  border:1px solid var(--line);
  border-top:3px solid var(--teal)}
.calcpro-paid-note h2{margin:0 0 12px;
  font-family:var(--serif);
  font-size:28px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:.01em}
.calcpro-paid-note p{margin:0;font-size:17.5px;line-height:1.6;color:var(--ink)}
@media(max-width:760px){
  .calcpro-offer-contact{padding:18px 16px 16px}
  .calcpro-offer-contact-fields{grid-template-columns:1fr}
  .calcpro-paid-note{padding:22px 20px}
  .calcpro-paid-note h2{font-size:24px}
}
