html:not([lang="en"]) .personalization-page .lang-en,
html[lang="en"] .personalization-page .lang-zh{display:none!important}

.personalization-page{
  --pz-gold:#b49b57;
  background:#fff;
  color:var(--ds-ink);
}

.personalization-page > .shead{
  padding:40px 0 24px;
  background:#fff;
}

.personalization-page .shead .eyebrow{
  color:var(--pz-gold);
  font-family:var(--ds-data);
  font-size:11px;
  letter-spacing:.08em;
}

.personalization-page .shead h1{
  max-width:18ch;
  margin-top:12px;
  font-size:var(--ds-page-title);
  font-weight:500;
}

.personalization-page .shead p{
  max-width:42rem;
  margin-top:14px;
  color:var(--ds-muted);
  font-size:15px;
  line-height:1.7;
}

.personalization-page .pz-consult{
  padding:var(--ds-space-8) 0 88px;
}

.personalization-page .pz-shell{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:56px;
  align-items:start;
}

.personalization-page .pz-intro{
  position:sticky;
  top:96px;
}

.personalization-page .pz-intro h2{
  max-width:14ch;
  margin:0 0 16px;
  font-size:var(--ds-page-title);
  font-weight:500;
  line-height:1.16;
  letter-spacing:-.02em;
}

.personalization-page .pz-intro > p{
  margin:0 0 22px;
  color:var(--ds-muted);
  font-size:14px;
  line-height:1.7;
}

.personalization-page .pz-bound{
  margin:0;
  padding:16px 0 0;
  border-top:1px solid var(--ds-border);
}

.personalization-page .pz-bound div{
  display:grid;
  grid-template-columns:4.5rem minmax(0,1fr);
  gap:10px 16px;
  padding:10px 0;
  border-bottom:1px solid var(--ds-border);
}

.personalization-page .pz-bound dt{
  margin:0;
  color:var(--pz-gold);
  font:600 11px/1.5 var(--ds-data);
  letter-spacing:.06em;
  text-transform:uppercase;
}

.personalization-page .pz-bound dd{
  margin:0;
  color:var(--ds-text);
  font-size:13px;
  line-height:1.65;
}

.personalization-page .pz-panel{
  min-height:520px;
  padding:36px 36px 28px;
  border:1px solid var(--ds-border);
  background:#fff;
}

.personalization-page .pz-progress{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:6px;
  margin-bottom:32px;
}

.personalization-page .pz-progress span{
  height:3px;
  background:var(--ds-border);
}

.personalization-page .pz-progress span.is-active{
  background:var(--ds-ink);
}

.personalization-page .pz-step{display:none}
.personalization-page .pz-step.is-active{display:block}

.personalization-page .pz-step-label{
  margin:0 0 10px;
  color:var(--ds-quiet);
  font:500 11px/1.4 var(--ds-data);
  letter-spacing:.06em;
}

.personalization-page .pz-step h3{
  margin:0 0 8px;
  font-size:clamp(20px,2vw,28px);
  font-weight:600;
  line-height:1.25;
  letter-spacing:-.02em;
}

.personalization-page .pz-help{
  margin:0 0 22px;
  color:var(--ds-muted);
  font-size:14px;
  line-height:1.7;
}

.personalization-page .pz-safety{
  display:grid;
  gap:0;
  margin-bottom:8px;
}

.personalization-page .pz-field{
  display:grid;
  grid-template-columns:7.2rem minmax(0,1fr);
  gap:8px 18px;
  padding:12px 0;
  border-bottom:1px solid var(--ds-border);
}

.personalization-page .pz-field dt{
  margin:0;
  padding-top:8px;
  color:var(--ds-muted);
  font-size:13px;
  line-height:1.4;
}

.personalization-page .pz-field dd{margin:0}

.personalization-page .pz-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.personalization-page .pz-chip{
  padding:8px 12px;
  border:1px solid var(--ds-border);
  background:#fff;
  color:var(--ds-ink);
  font:500 13px/1.35 var(--ds-ui);
  text-align:left;
  cursor:pointer;
}

.personalization-page .pz-chip:hover,
.personalization-page .pz-chip:focus-visible{
  border-color:var(--ds-ink);
  outline:none;
}

.personalization-page .pz-chip[aria-pressed="true"]{
  background:var(--ds-ink);
  border-color:var(--ds-ink);
  color:#fff;
}

.personalization-page .pz-note{
  margin-top:10px;
}

.personalization-page .pz-note input,
.personalization-page .pz-age-input{
  width:100%;
  max-width:28rem;
  padding:8px 10px;
  border:1px solid var(--ds-border);
  background:#fff;
  color:var(--ds-ink);
  font:14px/1.4 var(--ds-ui);
}

.personalization-page .pz-age-input{
  max-width:8rem;
  font:600 18px/1.2 var(--ds-data);
  font-variant-numeric:tabular-nums;
}

.personalization-page .pz-age-label{
  display:block;
  margin-bottom:8px;
  color:var(--ds-muted);
  font-size:12px;
}

.personalization-page .pz-need-count{
  position:sticky;
  top:72px;
  z-index:2;
  margin:0 0 16px;
  padding:10px 0 8px;
  background:#fff;
  border-bottom:1px solid var(--ds-border);
  color:var(--ds-ink);
  font:500 13px/1.45 var(--ds-data);
}

.personalization-page .pz-need-count.is-max{
  color:#8a3429;
}

.personalization-page .pz-chip.is-capped{
  opacity:.42;
  cursor:not-allowed;
}

.personalization-page .pz-need-groups{
  display:grid;
  gap:18px;
  margin-bottom:8px;
}

.personalization-page .pz-need-group h4{
  margin:0 0 8px;
  color:var(--ds-muted);
  font-size:13px;
  font-weight:600;
  letter-spacing:.02em;
}

.personalization-page .pz-need-group .pz-chips{
  gap:6px;
}

.personalization-page .pz-need-group .pz-chip{
  padding:7px 10px;
  font-size:12px;
}

.personalization-page .pz-need-other{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--ds-border);
}

.personalization-page .pz-followup{
  padding:16px 0;
  border-top:1px solid var(--ds-border);
}

.personalization-page .pz-followup h4{
  margin:0 0 6px;
  font-size:15px;
  font-weight:600;
}

.personalization-page .pz-followup-prompt{
  margin:0 0 10px;
  color:var(--ds-muted);
  font-size:13px;
  line-height:1.6;
}

.personalization-page .pz-uncovered-name{
  margin:0 0 4px;
  font-weight:600;
  color:var(--ds-ink);
}

.personalization-page .demo-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.personalization-page .demo-option{
  display:flex;
  min-height:72px;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100%;
  padding:16px 18px;
  border:1px solid var(--ds-border);
  background:#fff;
  color:var(--ds-ink);
  font:500 14px/1.45 var(--ds-ui);
  text-align:left;
  cursor:pointer;
}

.personalization-page .demo-option::after{
  width:10px;
  height:10px;
  border:1px solid var(--ds-quiet);
  border-radius:50%;
  content:"";
  flex:0 0 auto;
}

.personalization-page .demo-option:hover,
.personalization-page .demo-option:focus-visible{
  border-color:var(--ds-ink);
  outline:none;
}

.personalization-page .demo-option[aria-pressed="true"]{
  background:var(--ds-ink);
  border-color:var(--ds-ink);
  color:#fff;
}

.personalization-page .demo-option[aria-pressed="true"]::after{
  border:3px solid #fff;
}

.personalization-page .pz-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid var(--ds-border);
}

.personalization-page .demo-button{
  min-width:112px;
  padding:12px 18px;
  border:1px solid var(--ds-ink);
  background:var(--ds-ink);
  color:#fff;
  font:600 12px/1 var(--ds-data);
  cursor:pointer;
}

.personalization-page .demo-button.secondary{
  background:transparent;
  color:var(--ds-ink);
}

.personalization-page .demo-button:disabled{
  opacity:.35;
  cursor:not-allowed;
}

.personalization-page .pz-validation{
  min-height:1.4em;
  margin:12px 0 0;
  color:var(--ds-danger);
  font-size:12px;
}

.personalization-page .pz-summary{
  display:grid;
  gap:0;
  margin:8px 0 22px;
  border-top:1px solid var(--ds-border);
}

.personalization-page .pz-summary div{
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:20px;
  padding:13px 0;
  border-bottom:1px solid var(--ds-border);
}

.personalization-page .pz-summary dt{
  color:var(--ds-quiet);
  font:500 11px/1.5 var(--ds-data);
  letter-spacing:.04em;
}

.personalization-page .pz-summary dd{
  margin:0;
  font-size:14px;
  line-height:1.6;
}

.personalization-page .pz-budget-title{
  margin:0 0 10px;
  color:var(--ds-muted);
  font-size:13px;
}

.personalization-page .budget-frame{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0 0 28px;
  border-top:1px solid var(--ds-border);
  border-bottom:1px solid var(--ds-border);
}

.personalization-page .budget-frame article{
  padding:18px 16px 20px 0;
}

.personalization-page .budget-frame article + article{
  padding-left:18px;
  border-left:1px solid var(--ds-border);
}

.personalization-page .budget-frame strong{
  display:block;
  margin-bottom:8px;
  font:600 22px/1 var(--ds-data);
}

.personalization-page .budget-frame span{
  display:block;
  color:var(--ds-muted);
  font-size:12px;
  line-height:1.55;
}

.personalization-page .pz-blocks{
  display:grid;
  gap:0;
}

.personalization-page .pz-block{
  min-height:140px;
  padding:22px 0 26px;
  border-top:1px solid var(--ds-border);
}

.personalization-page .pz-kicker{
  margin:0 0 8px;
  color:var(--pz-gold);
  font:600 11px/1.4 var(--ds-data);
  letter-spacing:.08em;
}

.personalization-page .pz-block h3,
.personalization-page .pz-block h4{
  margin:0 0 10px;
  font-size:20px;
  font-weight:600;
  line-height:1.3;
}

.personalization-page .pz-block p,
.personalization-page .pz-block li{
  color:var(--ds-text);
  font-size:14px;
  line-height:1.7;
}

.personalization-page .pz-block a{
  color:var(--ds-ink);
  text-decoration:underline;
  text-underline-offset:3px;
}

.personalization-page [data-result="worth"] [data-worth-title]{
  display:block;
  margin-bottom:8px;
  font-size:28px;
  font-weight:600;
  letter-spacing:-.03em;
}

.personalization-page [data-ingredient-list]{
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:pz-ing;
}

.personalization-page [data-ingredient-list] li{
  position:relative;
  padding:14px 0 14px 2.2rem;
  border-top:1px solid var(--ds-border);
  counter-increment:pz-ing;
}

.personalization-page [data-ingredient-list] li::before{
  position:absolute;
  left:0;
  top:16px;
  color:var(--ds-quiet);
  font:500 12px/1 var(--ds-data);
  content:counter(pz-ing, decimal-leading-zero);
}

.personalization-page .pz-food{
  color:var(--ds-muted);
}

.personalization-page .pz-dose-num{
  font-family:var(--ds-data);
  font-size:14px;
  font-variant-numeric:tabular-nums;
  color:var(--ds-ink);
}

.personalization-page [data-dose-notice]{
  display:inline-block;
  margin-bottom:12px;
  color:var(--ds-ink);
  font:500 12px/1.4 var(--ds-data);
  letter-spacing:.04em;
}

.personalization-page .pz-block.is-closed{
  min-height:180px;
}

.personalization-page .pz-closed-title{
  font-weight:600;
  color:var(--ds-ink);
}

.personalization-page .pz-overlap,
.personalization-page .pz-ask{
  color:var(--ds-ink);
}

.personalization-page .pz-empty-entry{
  margin:0;
  padding:16px 18px;
  border:1px dashed var(--ds-border-strong);
  color:var(--ds-muted);
}

.personalization-page .pz-disclosure{
  margin:6px 0 14px;
  color:var(--ds-muted);
  font-size:12px;
}

@media (max-width:900px){
  .personalization-page .pz-shell{
    grid-template-columns:1fr;
    gap:28px;
  }
  .personalization-page .pz-intro{position:static}
  .personalization-page .pz-panel{min-height:0;padding:24px}
  .personalization-page .pz-field{grid-template-columns:1fr;gap:8px}
}

@media (max-width:600px){
  .personalization-page .pz-consult{padding-top:var(--ds-space-7)}
  .personalization-page .demo-options{grid-template-columns:1fr}
  .personalization-page .budget-frame{grid-template-columns:1fr}
  .personalization-page .budget-frame article + article{
    padding-left:0;
    border-top:1px solid var(--ds-border);
    border-left:0;
  }
  .personalization-page .pz-summary div{
    grid-template-columns:1fr;
    gap:4px;
  }
}
