/* PROFILIO ZUS LANDING – scoped */
.ppzu, .ppzu * { box-sizing: border-box; }
.ppzu { font-family: "Poppins", sans-serif !important; color: #0f172a; background: #ffffff; }
.ppzu-wrap { width: 100%; }

.ppzu-container{
  max-width: 1152px;
  margin: 0 auto;
  padding: 0 16px;
}

/* section rhythm + anchors */
.ppzu-sec{
  padding: 64px 0;
  scroll-margin-top: 80px;
}
.ppzu-sec--muted{ background: #f8fafc; }
.ppzu-sec__head{ margin-bottom: 24px; }

.ppzu-h1, .ppzu-h2, .ppzu-lead, .ppzu-sub, .ppzu-card__title, .ppzu-card__desc, .ppzu-label{
  font-family: "Poppins", sans-serif !important;
  letter-spacing: -0.02em;
}

.ppzu-h1{
  font-size: 40px !important;
  line-height: 1.08 !important;
  font-weight: 600 !important;
  margin: 10px 0 14px !important;
}
.ppzu-h1__sub{ font-weight: 600 !important; }
@media (min-width: 768px){
  .ppzu-h1{ font-size: 54px !important; }
}

.ppzu-h2{
  font-size: 30px !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  margin: 8px 0 10px !important;
}
@media (min-width: 768px){
  .ppzu-h2{ font-size: 40px !important; }
}

.ppzu-lead{
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #475569 !important;
  margin: 0 0 18px !important;
}
@media (min-width: 768px){
  .ppzu-lead{ font-size: 18px !important; }
	#ppzu-root{
		padding-top: 160px;
	}
}
.ppzu-sub{
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: #64748b !important;
  margin: 0 !important;
}

/* eyebrow */
.ppzu-eyebrow{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
}
.ppzu-eyebrow__pill{
  display:inline-flex;
  align-items:center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  border: 1px solid rgba(148,163,184,.25);
}
.ppzu-eyebrow__pill--emerald{
  background: #ecfdf5;
  color: #047857;
  border-color: rgba(16,185,129,.22);
}
.ppzu-eyebrow__line{
  width: 110px;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #10b981, #22c55e);
}

/* grid */
.ppzu-grid{
  display: grid;
  gap: 18px;
}
.ppzu-grid--2{ grid-template-columns: 1fr; }
.ppzu-grid--3{ grid-template-columns: 1fr; }
@media (min-width: 900px){
  .ppzu-grid--2{ grid-template-columns: 1fr 1fr; gap: 22px; }
  .ppzu-grid--3{ grid-template-columns: 1fr 1fr 1fr; gap: 22px; }
}

/* cards */
.ppzu-card{
  background: #fff;
  border-radius: 28px;
  border: 1px solid rgba(148,163,184,.35);
  box-shadow: 0 1px 2px rgba(15,23,42,.06);
  padding: 18px;
}
@media (min-width: 768px){
  .ppzu-card{ padding: 22px; border-radius: 32px; }
}
.ppzu-card__title{
  font-size: 15px !important;
  font-weight: 600 !important;
  margin: 0 0 6px !important;
}
.ppzu-card__desc{
  font-size: 13px !important;
  color: #64748b !important;
  line-height: 1.6 !important;
  margin: 0 0 14px !important;
}
.ppzu-card__note{
  margin-top: 12px;
  font-size: 12px !important;
  color: #64748b !important;
  line-height: 1.55 !important;
}
.ppzu-card__note--muted{ color:#94a3b8 !important; }

/* buttons */
.ppzu-btn{
  -webkit-appearance:none;
  appearance:none;
  border: 1px solid rgba(148,163,184,.35);
  background: #fff;
  color: #0f172a;
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  padding: 12px 14px;
  border-radius: 16px;
  cursor: pointer;
  transition: transform .08s ease, background .12s ease, border-color .12s ease, color .12s ease, box-shadow .12s ease;
  outline: none !important;
  font-family: "Poppins", sans-serif !important;
}
.ppzu-btn:active{ transform: translateY(1px); }
.ppzu-btn--block{ width: 100%; display:block; }
.ppzu-btn--primary{
  background: #0f172a;
  color: #fff;
  border-color: rgba(15,23,42,.75);
}
.ppzu-btn--primary:hover{ background:#111c33; }
.ppzu-btn--dark{
  background: #0f172a;
  color: #fff;
  border-color: rgba(15,23,42,.85);
}
.ppzu-btn--dark:hover{ background:#111c33; }
.ppzu-btn--outline{
  background:#fff;
  border-color: rgba(148,163,184,.45);
}
.ppzu-btn--outline:hover{ background:#f8fafc; }
.ppzu-actions{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0 16px;
}
.ppzu-actions--small{ margin-top: 14px; }
.ppzu-actions--small .ppzu-btn{ padding: 11px 13px; }

/* hero layout */
.ppzu-hero{
  display:grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
@media (min-width: 980px){
  .ppzu-hero{ grid-template-columns: 1.05fr .95fr; gap: 22px; align-items: start; }
}

.ppzu-stats{
  display:grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 16px 0 14px;
}
@media (min-width: 680px){
  .ppzu-stats{ grid-template-columns: 1fr 1fr 1fr; }
}
.ppzu-stat{
  border: 1px solid rgba(148,163,184,.25);
  border-radius: 18px;
  background: #ffffff;
  padding: 12px 12px;
  display:flex;
  gap: 10px;
  align-items: center;
  box-shadow: 0 1px 2px rgba(15,23,42,.04);
}
.ppzu-stat__icon{
  width: 40px; height: 40px;
  border-radius: 16px;
  display:flex; align-items:center; justify-content:center;
  background: #ecfdf5;
  border: 1px solid rgba(16,185,129,.18);
  color:#047857;
  font-size: 16px;
}
.ppzu-stat__label{
  font-size: 12px !important;
  color:#64748b !important;
  font-weight: 600 !important;
  margin:0 !important;
}
.ppzu-stat__value{
  font-size: 14px !important;
  font-weight: 600 !important;
  margin:0 !important;
}

.ppzu-who{
  margin-top: 10px;
  border: 1px solid rgba(148,163,184,.25);
  border-radius: 18px;
  padding: 12px 14px;
  background: #fff;
}
.ppzu-who__label{
  font-size: 12px !important;
  font-weight: 700 !important;
  color:#0f172a !important;
  margin-bottom: 4px;
}
.ppzu-who__text{
  font-size: 13px !important;
  color:#64748b !important;
  line-height: 1.6 !important;
}

/* preview card content */
.ppzu-card--preview{ padding: 20px; }
.ppzu-preview{ display:flex; flex-direction: column; gap: 10px; margin: 12px 0 14px; }
.ppzu-preview__item{
  border: 1px solid rgba(148,163,184,.25);
  border-radius: 18px;
  padding: 12px 12px;
  background: #fff;
}
.ppzu-preview__top{
  display:flex; justify-content: space-between; gap: 10px;
  align-items:center;
  margin-bottom: 6px;
}
.ppzu-preview__name{
  font-size: 13px !important;
  font-weight: 700 !important;
  color:#0f172a !important;
  display:flex; gap: 8px; align-items: center;
}
.ppzu-preview__name i{ color:#0f172a; opacity:.85; }
.ppzu-preview__text{
  font-size: 12px !important;
  color:#64748b !important;
  line-height: 1.55 !important;
}

/* badges */
.ppzu-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px !important;
  font-weight: 700 !important;
  border: 1px solid rgba(148,163,184,.25);
}
.ppzu-badge--slate{ background:#f1f5f9; color:#0f172a; }
.ppzu-badge--emerald{ background:#ecfdf5; color:#047857; border-color: rgba(16,185,129,.22); }

.ppzu-pill{
  display:inline-flex;
  align-items:center;
  padding: 4px 10px;
  border-radius: 999px;
  background:#f1f5f9;
  color:#0f172a;
  font-weight: 700 !important;
  font-size: 11px !important;
  border: 1px solid rgba(148,163,184,.25);
}

/* chips */
.ppzu-chips{
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 18px;
}
.ppzu-chip{
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148,163,184,.25);
  background: #fff;
  font-size: 12px !important;
  font-weight: 600 !important;
  color:#0f172a !important;
}

/* lists */
.ppzu-list{
  margin: 10px 0 14px !important;
  padding: 0 !important;
  list-style: none !important;
  color:#64748b !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}
.ppzu-list li{ margin: 6px 0 !important; }

.ppzu-bullets{
  margin: 10px 0 14px !important;
  padding: 0 !important;
  list-style:none !important;
  display:flex;
  flex-direction: column;
  gap: 8px;
}
.ppzu-bullets li{
  font-size: 13px !important;
  color:#0f172a !important;
  display:flex;
  gap: 10px;
  align-items:flex-start;
  line-height: 1.55 !important;
}
.ppzu-bullets li i{
  margin-top: 3px;
  color:#0ea5e9;
  opacity: .95;
}
.ppzu-bullets--tight li{ font-size: 12.5px !important; color:#0f172a !important; }

/* questions card */
.ppzu-card--questions .ppzu-q{ display:flex; flex-direction: column; gap: 10px; margin-top: 12px; }
.ppzu-q__row{
  padding: 12px 12px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.25);
  background: #fff;
  font-size: 13px !important;
  font-weight: 600 !important;
  color:#0f172a !important;
  display:flex;
  gap: 10px;
  align-items:center;
}
.ppzu-q__row i{ color:#10b981; }

/* steps */
.ppzu-steps{ display:flex; flex-direction: column; gap: 10px; }
.ppzu-step{
  background:#fff;
  border: 1px solid rgba(148,163,184,.25);
  border-radius: 22px;
  padding: 14px;
  display:flex;
  gap: 12px;
  align-items:flex-start;
}
.ppzu-step__icon{
  width: 44px; height: 44px;
  border-radius: 18px;
  background:#f8fafc;
  border: 1px solid rgba(148,163,184,.22);
  display:flex; align-items:center; justify-content:center;
  color:#10b981;
  font-size: 16px;
  flex: 0 0 auto;
}
.ppzu-step__badge{
  display:inline-flex;
  padding: 4px 10px;
  border-radius: 999px;
  background:#f1f5f9;
  border: 1px solid rgba(148,163,184,.25);
  font-size: 11px !important;
  font-weight: 700 !important;
  margin-bottom: 6px;
}
.ppzu-step__title{
  font-size: 14px !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
}
.ppzu-step__text{
  font-size: 12.5px !important;
  color:#64748b !important;
  line-height: 1.6 !important;
}

/* tasks card list */
.ppzu-tasklist{
  display:flex;
  flex-direction: column;
  gap: 8px;
  margin: 12px 0 14px;
}
.ppzu-task{
  display:flex;
  justify-content: space-between;
  gap: 12px;
  align-items:center;
  background:#f8fafc;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 16px;
  padding: 10px 12px;
  font-size: 12.8px !important;
  color:#0f172a !important;
  font-weight: 600 !important;
}
.ppzu-task span{ display:flex; align-items:center; gap: 10px; }
.ppzu-task i{ color:#10b981; }
.ppzu-task__time{
  font-size: 11.5px !important;
  color:#475569 !important;
  font-weight: 700 !important;
  background:#fff;
  border: 1px solid rgba(148,163,184,.25);
  padding: 4px 10px;
  border-radius: 999px;
}

/* pricing top */
.ppzu-pricingTop{
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap: 16px;
  margin: 14px 0 18px;
}
.ppzu-pricingTop__left{
  display:flex; align-items:center; gap: 12px;
}
.ppzu-pricingTop__icon{
  width: 44px; height: 44px;
  border-radius: 18px;
  background:#ecfdf5;
  border: 1px solid rgba(16,185,129,.18);
  display:flex; align-items:center; justify-content:center;
  color:#047857;
}
.ppzu-pricingTop__title{
  font-size: 14px !important;
  font-weight: 700 !important;
  margin-bottom: 2px;
}
.ppzu-pricingTop__desc{
  font-size: 12.5px !important;
  color:#64748b !important;
}

/* switch */
.ppzu-switch{
  display:flex;
  align-items:center;
  gap: 10px;
  white-space: nowrap;
}
.ppzu-switch__label{
  font-size: 12.5px !important;
  color:#475569 !important;
  font-weight: 600 !important;
}
.ppzu-switch__toggle{
  position: relative;
  width: 50px;
  height: 28px;
  display:inline-block;
}
.ppzu-switch__toggle input{
  position:absolute;
  opacity:0;
  width:0; height:0;
}
.ppzu-switch__ui{
  position:absolute; inset:0;
  border-radius: 999px;
  background:#e2e8f0;
  border: 1px solid rgba(148,163,184,.35);
  transition: background .12s ease;
}
.ppzu-switch__ui:after{
  content:"";
  position:absolute;
  top: 3px; left: 3px;
  width: 22px; height: 22px;
  border-radius: 999px;
  background:#fff;
  border: 1px solid rgba(148,163,184,.35);
  box-shadow: 0 1px 2px rgba(15,23,42,.12);
  transition: transform .14s ease;
}
#ppzu-yearly-toggle:checked + .ppzu-switch__ui{
  background:#c7f9e4;
  border-color: rgba(16,185,129,.25);
}
#ppzu-yearly-toggle:checked + .ppzu-switch__ui:after{
  transform: translateX(22px);
}

/* plan cards */
.ppzu-plan{ position: relative; }
.ppzu-plan__top{
  display:flex;
  justify-content: space-between;
  gap: 12px;
  align-items:flex-start;
  margin-bottom: 8px;
}
.ppzu-plan__name{
  font-size: 18px !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
}
.ppzu-plan__tag{
  font-size: 12.5px !important;
  color:#64748b !important;
  line-height: 1.55 !important;
}
.ppzu-price{ margin: 12px 0 10px; }
.ppzu-price__main{
  font-size: 28px !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em;
}
.ppzu-price__main span{
  font-size: 12px !important;
  font-weight: 700 !important;
  color:#64748b !important;
}
.ppzu-price__sub{
  margin-top: 4px;
  font-size: 12px !important;
  color:#64748b !important;
}
.ppzu-plan.is-selected{
  border-color: rgba(14,165,233,.65) !important;
  box-shadow: 0 0 0 2px rgba(14,165,233,.25), 0 1px 2px rgba(15,23,42,.06);
}
.ppzu-plan--popular{
  border-color: rgba(148,163,184,.35);
}
.ppzu-ribbon{
  position:absolute;
  top: -10px; left: 18px;
  background:#10b981;
  color:#fff;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 11px !important;
  font-weight: 800 !important;
  border: 1px solid rgba(16,185,129,.35);
  box-shadow: 0 6px 14px rgba(16,185,129,.14);
}

/* selected bar */
.ppzu-selectedBar{
  margin-top: 18px;
  background:#fff;
  border-radius: 22px;
  border: 1px solid rgba(148,163,184,.35);
  box-shadow: 0 1px 2px rgba(15,23,42,.06);
  padding: 14px 14px;
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap: 12px;
  flex-wrap: wrap;
}
.ppzu-selectedBar__title{
  font-size: 12px !important;
  font-weight: 700 !important;
  color:#64748b !important;
  margin-bottom: 2px;
}
.ppzu-selectedBar__text{
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color:#0f172a !important;
}

/* fields */
.ppzu-field{ margin-bottom: 14px; }
.ppzu-label{
  display:block;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color:#0f172a !important;
  margin: 0 0 8px !important;
}
.ppzu-input{
  width:100%;
  height: 44px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.35);
  background:#fff;
  padding: 0 14px;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color:#0f172a !important;
  outline:none !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.04);
  font-family: "Poppins", sans-serif !important;
}
.ppzu-input:focus{
  border-color: rgba(14,165,233,.55);
  box-shadow: 0 0 0 3px rgba(14,165,233,.18), 0 1px 2px rgba(15,23,42,.04);
}

/* tabs */
.ppzu-tabs{
  display:flex;
  gap: 8px;
  align-items:center;
  flex-wrap: wrap;
}
.ppzu-tab{
  border: 1px solid rgba(148,163,184,.25);
  background:#f1f5f9;
  color:#0f172a;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: background .12s ease, border-color .12s ease;
  font-family: "Poppins", sans-serif !important;
}
.ppzu-tab:hover{ background:#eaf0f6; }
.ppzu-tab.is-active{
  background:#fff;
  border-color: rgba(148,163,184,.45);
  box-shadow: 0 1px 2px rgba(15,23,42,.06);
}

/* mini plan box */
.ppzu-miniPlan{
  margin-top: 10px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.22);
  background:#f8fafc;
  padding: 12px 12px;
}
.ppzu-miniPlan__name{
  font-size: 13px !important;
  font-weight: 700 !important;
  margin-bottom: 4px;
}
.ppzu-miniPlan__price{
  font-size: 12.5px !important;
  color:#475569 !important;
  font-weight: 700 !important;
}

/* result card */
.ppzu-card--result .ppzu-resultBoxes{
  display:flex;
  flex-direction: column;
  gap: 10px;
  margin: 12px 0;
}
.ppzu-rbox{
  border-radius: 22px;
  background:#f8fafc;
  border: 1px solid rgba(148,163,184,.22);
  padding: 14px 14px;
}
.ppzu-rbox__label{
  font-size: 12px !important;
  font-weight: 700 !important;
  color:#64748b !important;
  margin-bottom: 4px;
}
.ppzu-rbox__value{
  font-size: 22px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em;
}

.ppzu-diff{
  margin: 12px 0 14px;
  border-radius: 22px;
  border: 1px solid rgba(148,163,184,.22);
  background:#fff;
  padding: 14px 14px;
}
.ppzu-diff__top{
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap: 10px;
  margin-bottom: 8px;
}
.ppzu-diff__label{
  font-size: 12.5px !important;
  font-weight: 800 !important;
  color:#0f172a !important;
}
.ppzu-diff__value{
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em;
  margin-bottom: 4px;
}
.ppzu-diff__hint{
  font-size: 12px !important;
  color:#64748b !important;
  line-height: 1.55 !important;
}
.ppzu-divider{
  height: 1px;
  background: rgba(148,163,184,.22);
  margin: 12px 0;
}
.ppzu-diff__row{
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap: 10px;
}
.ppzu-diff__muted{
  font-size: 12px !important;
  color:#94a3b8 !important;
  font-weight: 700 !important;
}
.ppzu-diff__year{
  margin-top: 4px;
  font-size: 20px !important;
  font-weight: 800 !important;
}

/* PZU stats */
.ppzu-pzuStats{
  display:grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 12px 0 14px;
}
@media (min-width: 700px){
  .ppzu-pzuStats{ grid-template-columns: 1fr 1fr 1fr; }
}
.ppzu-pzuStat{
  background:#ecfdf5;
  border: 1px solid rgba(16,185,129,.18);
  border-radius: 18px;
  padding: 12px 12px;
  display:flex;
  gap: 10px;
  align-items:center;
}
.ppzu-pzuStat__icon{
  width: 40px; height: 40px;
  border-radius: 16px;
  background:#fff;
  border: 1px solid rgba(16,185,129,.20);
  display:flex; align-items:center; justify-content:center;
  color:#047857;
}
.ppzu-pzuStat__label{
  font-size: 12px !important;
  color:#047857 !important;
  font-weight: 700 !important;
  margin-bottom: 2px;
}
.ppzu-pzuStat__value{
  font-size: 13px !important;
  font-weight: 800 !important;
  color:#0f172a !important;
}

/* PZU pane */
.ppzu-pzuPane{
  margin-top: 12px;
  background:#f8fafc;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 20px;
  padding: 14px 14px;
}
.ppzu-pzuPane__title{
  font-size: 13px !important;
  font-weight: 800 !important;
  margin-bottom: 8px;
}

/* info box */
.ppzu-infoBox{
  margin-top: 14px;
  border-radius: 22px;
  border: 1px solid rgba(148,163,184,.22);
  background:#f8fafc;
  padding: 14px 14px;
}
.ppzu-infoBox__title{
  font-size: 13px !important;
  font-weight: 800 !important;
  margin-bottom: 6px;
}
.ppzu-infoBox__text{
  font-size: 12.5px !important;
  color:#475569 !important;
  line-height: 1.65 !important;
}

/* accordion */
.ppzu-acc{
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 22px;
  overflow: hidden;
  background:#fff;
  margin-bottom: 10px;
}
.ppzu-acc__head{
  width:100%;
  text-align:left;
  border:0;
  background:#fff;
  padding: 14px 14px;
  display:flex;
  justify-content: space-between;
  align-items:center;
  gap: 12px;
  cursor:pointer;
  font-size: 13px !important;
  font-weight: 700 !important;
  color:#0f172a !important;
  font-family: "Poppins", sans-serif !important;
}
.ppzu-acc__head i{
  color:#64748b;
  transition: transform .15s ease;
}
.ppzu-acc.is-open .ppzu-acc__head i{ transform: rotate(180deg); }
.ppzu-acc__body{
  display:none;
  padding: 0 14px 14px;
  font-size: 12.5px !important;
  color:#64748b !important;
  line-height: 1.65 !important;
}

/* checklist */
.ppzu-checklist{ display:flex; flex-direction: column; gap: 10px; margin-top: 10px; }
.ppzu-check{
  padding: 12px 12px;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 18px;
  background:#fff;
  display:flex;
  gap: 10px;
  align-items:center;
  font-size: 12.8px !important;
  font-weight: 700 !important;
  color:#0f172a !important;
}
.ppzu-check__dot{
  width: 28px; height: 28px;
  border-radius: 14px;
  background:#ecfdf5;
  border: 1px solid rgba(16,185,129,.20);
  display:flex; align-items:center; justify-content:center;
  color:#10b981;
}

/* presentation tile */
.ppzu-card--presentation{
  background: linear-gradient(180deg, #eafaf3, #ffffff);
  border-color: rgba(16,185,129,.20);
}
.ppzu-presTop{
  display:flex;
  justify-content: space-between;
  gap: 12px;
  align-items:flex-start;
}
.ppzu-presIcon{
  width: 40px; height: 40px;
  border-radius: 16px;
  background:#ecfdf5;
  border: 1px solid rgba(16,185,129,.20);
  display:flex; align-items:center; justify-content:center;
  color:#047857;
}
.ppzu-presList{ margin-top: 14px; }
.ppzu-presList__title{
  font-size: 12.5px !important;
  font-weight: 800 !important;
  color:#0f172a !important;
  margin-bottom: 8px;
}

/* modal */
.ppzu-modal{ display:none; position: fixed; inset:0; z-index: 9999; }
.ppzu-modal.is-open{ display:block; }
.ppzu-modal__overlay{ position:absolute; inset:0; background: rgba(15,23,42,.55); }
.ppzu-modal__dialog{
  position:relative;
  width: min(920px, calc(100% - 24px));
  margin: 40px auto;
  background:#fff;
  border-radius: 32px;
  border: 1px solid rgba(148,163,184,.35);
  box-shadow: 0 20px 60px rgba(15,23,42,.22);
  padding: 18px;
}
@media (min-width: 768px){
  .ppzu-modal__dialog{ padding: 22px; }
}
.ppzu-modal__close{
  position:absolute;
  top: 12px; right: 12px;
  width: 40px; height: 40px;
  border-radius: 16px;
  border: 1px solid rgba(148,163,184,.35);
  background:#fff;
  cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}
.ppzu-modal__head{ padding-right: 48px; }
.ppzu-modal__title{
  font-size: 16px !important;
  font-weight: 800 !important;
  margin-bottom: 4px;
}
.ppzu-modal__desc{
  font-size: 12.5px !important;
  color:#64748b !important;
  line-height: 1.6 !important;
}

.ppzu-modalTabs{
  margin-top: 14px;
  display:flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ppzu-mtab{
  border: 1px solid rgba(148,163,184,.25);
  background:#f1f5f9;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 12px !important;
  font-weight: 800 !important;
  cursor:pointer;
  font-family: "Poppins", sans-serif !important;
}
.ppzu-mtab.is-active{
  background:#fff;
  border-color: rgba(148,163,184,.45);
  box-shadow: 0 1px 2px rgba(15,23,42,.06);
}
.ppzu-modal__body{
  margin-top: 14px;
  max-height: 70vh;
  overflow:auto;
  padding-right: 4px;
}
.ppzu-mpane{ display:none; }
.ppzu-mpane.is-active{ display:block; }
.ppzu-mh{
  font-size: 14px !important;
  font-weight: 900 !important;
  margin: 0 0 10px !important;
}
.ppzu-muted{ color:#64748b !important; font-size: 12.5px !important; }
.ppzu-mtext{
  font-size: 12.5px !important;
  color:#475569 !important;
  line-height: 1.65 !important;
}
.ppzu-mbox{
  margin-top: 12px;
  border-radius: 22px;
  border: 1px solid rgba(148,163,184,.22);
  background:#f8fafc;
  padding: 14px;
}
.ppzu-mbox__title{
  font-size: 12.5px !important;
  font-weight: 900 !important;
  margin-bottom: 6px;
}
.ppzu-mbox__text{
  font-size: 12.5px !important;
  color:#475569 !important;
  line-height: 1.65 !important;
}
.ppzu-mbox--warn{
  background: #fff7ed;
  border-color: rgba(251,146,60,.25);
}

.ppzu-mgrid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
@media (min-width: 760px){
  .ppzu-mgrid{ grid-template-columns: 1fr 1fr; }
}
.ppzu-mcard{
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.22);
  background:#fff;
  padding: 12px;
  font-size: 12.5px !important;
  color:#475569 !important;
  line-height: 1.6 !important;
}
.ppzu-mplan{
  border-radius: 24px;
  border: 1px solid rgba(148,163,184,.22);
  background:#fff;
  padding: 14px;
  margin-bottom: 10px;
}
.ppzu-mplan__top{
  display:flex;
  justify-content: space-between;
  gap: 12px;
  align-items:flex-start;
  margin-bottom: 8px;
}

/* contact pills */
.ppzu-pills{ display:flex; flex-wrap: wrap; gap: 8px; }
.ppzu-pillBtn{
  border: 1px solid rgba(148,163,184,.25);
  background:#fff;
  padding: 8px 12px;
  border-radius: 999px;
  font-size: 12px !important;
  font-weight: 800 !important;
  cursor:pointer;
  font-family: "Poppins", sans-serif !important;
}
.ppzu-pillBtn.is-active{
  background:#eff6ff;
  border-color: rgba(14,165,233,.35);
  box-shadow: 0 1px 2px rgba(15,23,42,.06);
}
.ppzu-summary{
  margin-top: 10px;
  background:#f8fafc;
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 18px;
  padding: 12px;
  font-size: 12.5px !important;
  color:#475569 !important;
}

/* contact cards */
.ppzu-contactCard{
  margin-top: 12px;
  border-radius: 22px;
  border: 1px solid rgba(14,165,233,.28);
  background:#fff;
  padding: 14px;
}
.ppzu-contactCard__title{
  font-size: 13px !important;
  font-weight: 900 !important;
  margin-bottom: 4px;
}
.ppzu-contactCard__who{
  font-size: 12.5px !important;
  color:#64748b !important;
  font-weight: 700 !important;
  margin-bottom: 10px;
}
.ppzu-contactRow{
  display:flex;
  justify-content: space-between;
  gap: 10px;
  align-items:center;
  border: 1px solid rgba(148,163,184,.22);
  background:#f8fafc;
  border-radius: 16px;
  padding: 10px 12px;
  margin-bottom: 8px;
}
.ppzu-contactRow__left{
  display:flex;
  gap: 10px;
  align-items:center;
  font-size: 12.8px !important;
  font-weight: 800 !important;
  color:#0f172a !important;
}
.ppzu-contactRow__left i{ color:#0f172a; opacity:.85; }
.ppzu-miniBadge{
  font-size: 11px !important;
  font-weight: 900 !important;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(148,163,184,.25);
  background:#fff;
  color:#0f172a;
}
.ppzu-contactCard__note{
  margin-top: 8px;
  font-size: 12px !important;
  color:#64748b !important;
  line-height: 1.55 !important;
}
.ppzu-contactCard--pzu{
  border-color: rgba(16,185,129,.22);
}

/* dark right panel */
.ppzu-card--dark{
  background:#0b1220;
  border-color: rgba(255,255,255,.08);
  color:#fff;
  box-shadow: 0 18px 60px rgba(15,23,42,.22);
}
.ppzu-darkTitle{
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-bottom: 6px;
  color:#fff !important;
}
.ppzu-darkDesc{
  font-size: 12.5px !important;
  color: rgba(255,255,255,.72) !important;
  line-height: 1.6 !important;
  margin-bottom: 14px;
}
.ppzu-darkSteps{ display:flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.ppzu-darkStep{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  padding: 12px 12px;
  display:flex;
  justify-content: space-between;
  gap: 10px;
  align-items:center;
  font-size: 12.5px !important;
  font-weight: 800 !important;
}
.ppzu-darkTag{
  font-size: 11px !important;
  font-weight: 900 !important;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  color:#fff !important;
}
.ppzu-darkNote{
  font-size: 11.5px !important;
  color: rgba(255,255,255,.65) !important;
  line-height: 1.55 !important;
}

/* footer + float */
.ppzu-footer{
  margin-top: 26px;
  padding-top: 18px;
  border-top: 1px solid rgba(148,163,184,.22);
}
.ppzu-footer__copy{
  font-size: 12px !important;
  color:#64748b !important;
  font-weight: 700 !important;
}

.ppzu-float{
  position: fixed;
  right: 16px;
  bottom: 16px;
  display:flex;
  gap: 10px;
  z-index: 9998;
}
.ppzu-float__btn{
  border-radius: 999px;
  padding: 10px 12px;
  font-size: 12px !important;
  font-weight: 900 !important;
  border: 1px solid rgba(148,163,184,.35);
  cursor:pointer;
  font-family: "Poppins", sans-serif !important;
  box-shadow: 0 8px 24px rgba(15,23,42,.16);
}
.ppzu-float__btn--light{
  background:#fff;
  color:#0f172a;
}
.ppzu-float__btn--dark{
  background:#0f172a;
  color:#fff;
  border-color: rgba(15,23,42,.85);
}
@media (max-width: 420px){
  .ppzu-float{ right: 10px; bottom: 10px; gap: 8px; }
  .ppzu-float__btn{ padding: 10px 10px; }
}
