#ps-calculator-final,
#ps-calculator-final * { box-sizing: border-box; }

#ps-calculator-final {
  --primary:#0497ab;
  --primary-dark:#037d8e;
  --primary-soft:#edf9fa;
  --background:#f4f9fa;
  --border:#d8e6e8;
  --text:#163638;
  --muted:#657b7d;
  --white:#fff;
  width:100%;
  padding:26px 14px 42px;
  background:var(--background);
  color:var(--text);
  font-family:inherit;
}

.pscalc-layout {
  width:100%;
  max-width:1160px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.58fr) minmax(285px,.72fr);
  gap:20px;
  align-items:start;
}

.pscalc-card {
  background:var(--white);
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow:0 10px 26px rgba(20,55,60,.06);
}

.pscalc-main { padding:24px; }
.pscalc-summary { position:sticky; top:22px; padding:22px; }

.pscalc-progress { display:flex; align-items:center; margin-bottom:26px; }
.pscalc-progress-step { display:flex; align-items:center; gap:6px; color:#849799; font-size:11px; font-weight:700; white-space:nowrap; }
.pscalc-progress-step span { width:27px; height:27px; display:grid; place-items:center; border-radius:50%; background:#edf3f4; }
.pscalc-progress-step.active,.pscalc-progress-step.complete { color:var(--primary-dark); }
.pscalc-progress-step.active span,.pscalc-progress-step.complete span { background:var(--primary); color:var(--white); }
.pscalc-progress-line { flex:1; height:1px; margin:0 8px; background:var(--border); }

.pscalc-step { display:none; }
.pscalc-step.active { display:block; }

.pscalc-heading { margin-bottom:18px; }
.pscalc-heading>span { display:block; margin-bottom:4px; color:var(--primary); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.pscalc-heading h2 { margin:0 0 6px; color:var(--text); font-size:23px; line-height:1.25; }
.pscalc-heading p,.pscalc-block-heading p { margin:0; color:var(--muted); font-size:12px; line-height:1.45; }

.pscalc-services { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.pscalc-service {
  appearance:none;
  min-height:56px;
  width:100%;
  padding:11px 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--white);
  color:var(--text)!important;
  text-align:center;
  font:inherit;
  font-size:13px;
  font-weight:750;
  cursor:pointer;
  transition:.18s ease;
}
.pscalc-service-wide { grid-column:1/-1; }
.pscalc-service:hover,.pscalc-service.active {
  border-color:var(--primary);
  background:var(--primary-soft);
  color:var(--text)!important;
  box-shadow:0 0 0 2px rgba(4,151,171,.05);
}

.pscalc-package-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.pscalc-package {
  appearance:none;
  min-height:88px;
  width:100%;
  padding:13px 14px;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--white);
  color:var(--text)!important;
  text-align:left;
  font:inherit;
  cursor:pointer;
  transition:.18s ease;
}
.pscalc-package-wide { grid-column:1/-1; }
.pscalc-package:hover,.pscalc-package.active {
  border-color:var(--primary);
  background:var(--primary-soft);
  color:var(--text)!important;
  box-shadow:0 0 0 2px rgba(4,151,171,.05);
}
.pscalc-package strong { display:block; margin-bottom:3px; color:var(--text)!important; font-size:13px; }
.pscalc-package span { display:block; color:var(--muted); font-size:10px; line-height:1.35; }

.pscalc-details {
  margin-top:18px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--white);
  overflow:hidden;
}
.pscalc-details summary {
  min-height:68px;
  padding:13px 15px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  list-style:none;
  cursor:pointer;
}
.pscalc-details summary::-webkit-details-marker { display:none; }
.pscalc-details-copy strong { display:block; margin-bottom:3px; color:var(--text); font-size:13px; }
.pscalc-details-copy span { display:block; color:var(--muted); font-size:10px; line-height:1.4; }
.pscalc-details-status { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.pscalc-details-status span { color:var(--primary-dark); font-size:10px; font-weight:700; }
.pscalc-details-status i {
  width:9px; height:9px;
  border-right:2px solid var(--primary-dark);
  border-bottom:2px solid var(--primary-dark);
  transform:rotate(45deg);
  transition:.2s ease;
}
.pscalc-details[open] .pscalc-details-status i { transform:rotate(225deg); }
.pscalc-details-content { padding:0 12px 12px; border-top:1px solid var(--border); }

.pscalc-block { margin-top:21px; }
.pscalc-block-heading { margin-bottom:10px; }
.pscalc-block-heading h3 { margin:0 0 3px; color:var(--text); font-size:15px; }

.pscalc-counter-list { display:grid; gap:8px; }
.pscalc-addon-list { margin-top:8px; }
.pscalc-window-addon { display:grid; gap:8px; }
.pscalc-addon-extra-row { margin-left:18px; background:#fbfdfd; }
.pscalc-counter-row,.pscalc-toggle-row {
  min-height:62px;
  padding:11px 13px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:13px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--white);
}
.pscalc-details-content .pscalc-counter-row { margin-top:8px; }
.pscalc-counter-row strong,.pscalc-toggle-row strong { display:block; margin-bottom:2px; color:var(--text); font-size:12px; }
.pscalc-counter-row span,.pscalc-toggle-row span { display:block; color:var(--muted); font-size:10px; line-height:1.4; }
.pscalc-counter { display:flex; align-items:center; gap:6px; flex-shrink:0; }
.pscalc-counter button {
  width:31px; height:31px; padding:0;
  border:1px solid var(--border);
  border-radius:50%;
  background:var(--white);
  color:var(--primary-dark);
  font:inherit;
  font-size:17px;
  cursor:pointer;
}
.pscalc-counter button:hover { border-color:var(--primary); background:var(--primary-soft); }
.pscalc-counter output { min-width:26px; color:var(--text); font-size:13px; font-weight:800; text-align:center; }

.pscalc-condition-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.pscalc-condition {
  appearance:none;
  min-height:76px;
  width:100%;
  padding:12px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--white);
  color:var(--text)!important;
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.pscalc-condition:hover,.pscalc-condition.active { border-color:var(--primary); background:var(--primary-soft); }
.pscalc-condition strong { color:var(--text)!important; font-size:11px; line-height:1.35; }

.pscalc-frequency-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.pscalc-frequency {
  appearance:none;
  min-height:52px;
  padding:8px 6px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--white);
  color:var(--text)!important;
  font:inherit;
  cursor:pointer;
}
.pscalc-frequency:hover,.pscalc-frequency.active { border-color:var(--primary); background:var(--primary-soft); }
.pscalc-frequency strong,.pscalc-frequency small { display:block; }
.pscalc-frequency strong { color:var(--text)!important; font-size:10px; }
.pscalc-frequency small { margin-top:3px; color:var(--muted); font-size:8px; }

.pscalc-toggle-row { position:relative; cursor:pointer; }
.pscalc-toggle-row input { position:absolute; opacity:0; }
.pscalc-toggle-row i { position:relative; width:45px; height:25px; flex-shrink:0; border-radius:999px; background:#dbe6e7; transition:.2s; }
.pscalc-toggle-row i::after {
  content:"";
  position:absolute;
  top:3px; left:3px;
  width:19px; height:19px;
  border-radius:50%;
  background:var(--white);
  box-shadow:0 2px 6px rgba(0,0,0,.14);
  transition:.2s;
}
.pscalc-toggle-row input:checked+i { background:var(--primary); }
.pscalc-toggle-row input:checked+i::after { transform:translateX(20px); }

.pscalc-airbnb-laundry { margin-top:18px; }
.pscalc-exclusive-label {
  display:inline-block;
  margin-bottom:7px;
  padding:4px 8px;
  border-radius:999px;
  background:var(--primary-soft);
  color:var(--primary-dark);
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.pscalc-notice,.pscalc-summary-note,.pscalc-price-warning {
  margin-top:14px;
  padding:12px;
  border-left:4px solid var(--primary);
  border-radius:9px;
  background:var(--primary-soft);
  color:var(--muted);
  font-size:10px;
  line-height:1.5;
}
.pscalc-price-warning { border-left-color:#d89a28; background:#fff9ed; }

.pscalc-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.pscalc-form-grid label span { display:block; margin-bottom:5px; color:var(--text); font-size:11px; font-weight:700; }
.pscalc-form-grid input,.pscalc-form-grid select,.pscalc-form-grid textarea {
  width:100%;
  min-height:44px;
  padding:10px 11px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--white);
  color:var(--text);
  font:inherit;
  font-size:13px;
}
.pscalc-form-grid textarea { min-height:96px; resize:vertical; }
.pscalc-form-grid input:focus,.pscalc-form-grid select:focus,.pscalc-form-grid textarea:focus {
  outline:none;
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(4,151,171,.11);
}
.pscalc-full-field { grid-column:1/-1; }

.pscalc-pets-field {
  width:360px;
  max-width:100%;
  margin:0;
  padding:11px 12px 12px;
  border:1px solid var(--border);
  border-radius:11px;
  background:var(--white);
}

.pscalc-pets-field legend {
  padding:0 4px;
  color:var(--text);
  font-size:11px;
  font-weight:800;
}

.pscalc-pets-field > p {
  margin:0 0 7px;
  color:var(--muted);
  font-size:10px;
  line-height:1.4;
}

.pscalc-pets-options {
  display:flex;
  gap:8px;
}

.pscalc-radio-option {
  position:relative;
  min-width:86px;
  min-height:42px;
  padding:9px 13px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--white);
  cursor:pointer;
  transition:.18s ease;
}

.pscalc-radio-option:hover {
  border-color:#b9dde2;
  background:#f8fcfc;
}

.pscalc-radio-option input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.pscalc-radio-option span {
  position:relative;
  margin:0!important;
  padding-left:18px;
  color:var(--text)!important;
  font-size:11px!important;
  font-weight:800!important;
}

.pscalc-radio-option span::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:11px;
  height:11px;
  border:1.5px solid #b9cacc;
  border-radius:50%;
  background:#fff;
  transform:translateY(-50%);
}

.pscalc-radio-option:has(input:checked) {
  border-color:var(--primary);
  background:var(--primary-soft);
  box-shadow:0 0 0 2px rgba(4,151,171,.05);
}

.pscalc-radio-option:has(input:checked) span::before {
  border-color:var(--primary);
  background:var(--primary);
  box-shadow:inset 0 0 0 3px #fff;
}

.pscalc-pet-types-wrap {
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--border);
}

.pscalc-pet-types-wrap > p {
  margin:0 0 8px;
  color:var(--muted);
  font-size:10px;
  font-weight:700;
}

.pscalc-pet-types {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.pscalc-checkbox-option {
  position:relative;
  min-width:86px;
  min-height:42px;
  padding:9px 13px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--white);
  cursor:pointer;
  transition:.18s ease;
}

.pscalc-checkbox-option:hover {
  border-color:#b9dde2;
  background:#f8fcfc;
}

.pscalc-checkbox-option input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.pscalc-checkbox-option span {
  position:relative;
  margin:0!important;
  padding-left:18px;
  color:var(--text)!important;
  font-size:11px!important;
  font-weight:800!important;
}

.pscalc-checkbox-option span::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:11px;
  height:11px;
  border:1.5px solid #b9cacc;
  border-radius:3px;
  background:#fff;
  transform:translateY(-50%);
}

.pscalc-checkbox-option:has(input:checked) {
  border-color:var(--primary);
  background:var(--primary-soft);
  box-shadow:0 0 0 2px rgba(4,151,171,.05);
}

.pscalc-checkbox-option:has(input:checked) span::before {
  content:"✓";
  display:grid;
  place-items:center;
  border-color:var(--primary);
  background:var(--primary);
  color:#fff;
  font-size:8px;
  font-weight:900;
}

.pscalc-pet-other-field {
  display:block;
  margin-top:10px;
}

.pscalc-pet-other-field span {
  display:block;
  margin-bottom:5px;
  color:var(--text);
  font-size:10px;
  font-weight:700;
}

.pscalc-pet-other-field input {
  width:100%;
}

.pscalc-policy {
  margin-top:14px;
  padding:12px;
  display:flex;
  align-items:flex-start;
  gap:8px;
  border:1px solid var(--border);
  border-radius:11px;
  color:var(--muted);
  font-size:11px;
  line-height:1.5;
}
.pscalc-policy input { margin-top:3px; }
.pscalc-policy a { color:var(--primary-dark); font-weight:700; }

.pscalc-honeypot {
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}

.pscalc-submit-message.is-error { border-left-color:#c84444; background:#fff2f2; color:#7d2424; }
.pscalc-submit-message.is-success { border-left-color:#2d9a62; background:#effaf4; color:#1f6543; }

.pscalc-submit-message {
  margin-top:13px;
  padding:12px;
  border-left:4px solid var(--primary);
  border-radius:9px;
  background:var(--primary-soft);
  color:var(--text);
  font-size:11px;
  line-height:1.5;
}

.pscalc-navigation { margin-top:22px; display:flex; justify-content:space-between; gap:10px; }
.pscalc-navigation button {
  min-width:104px;
  padding:11px 18px;
  border:0;
  border-radius:999px;
  font:inherit;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.pscalc-secondary { background:#edf3f4; color:var(--text); }
.pscalc-secondary:disabled { opacity:.42; cursor:not-allowed; }
.pscalc-primary { margin-left:auto; background:var(--primary); color:var(--white); }
.pscalc-primary:hover { background:var(--primary-dark); }
.pscalc-primary:disabled { opacity:.55; cursor:not-allowed; }

.pscalc-summary-label { display:block; margin-bottom:4px; color:var(--muted); font-size:11px; }
.pscalc-total { display:block; color:var(--primary-dark); font-size:27px; line-height:1.2; }
.pscalc-summary>small { display:block; margin-top:3px; color:var(--muted); font-size:9px; }

.pscalc-summary-info {
  margin:18px 0;
  padding:15px 0;
  display:grid;
  gap:9px;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.pscalc-summary-info>div,.pscalc-breakdown>div:not(.pscalc-divider):not(.pscalc-breakdown-title),.pscalc-line-item {
  display:flex;
  justify-content:space-between;
  gap:10px;
}
.pscalc-summary-info span,.pscalc-breakdown span { color:var(--muted); font-size:10px; }
.pscalc-summary-info strong,.pscalc-breakdown strong { max-width:68%; color:var(--text); font-size:10px; text-align:right; }

.pscalc-breakdown { display:grid; gap:8px; }
.pscalc-breakdown-title { margin-bottom:2px; color:var(--text); font-size:11px; font-weight:800; }
#pscalc-line-items { display:grid; gap:8px; }
.pscalc-line-item span { max-width:72%; }
.pscalc-divider { height:1px; margin:2px 0; background:var(--border); }

[hidden] { display:none!important; }

@media (max-width:830px) {
  .pscalc-layout { grid-template-columns:1fr; }
  .pscalc-summary { position:static; }
}

@media (max-width:660px) {
  #ps-calculator-final { padding:12px 7px 26px; }
  .pscalc-main,.pscalc-summary { padding:16px; border-radius:17px; }
  .pscalc-progress-step small { display:none; }
  .pscalc-progress-line { margin:0 4px; }
  .pscalc-services,.pscalc-package-grid,.pscalc-condition-grid,.pscalc-form-grid { grid-template-columns:1fr; }
  .pscalc-service-wide,.pscalc-package-wide,.pscalc-full-field { grid-column:auto; }
  .pscalc-frequency-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pscalc-heading h2 { font-size:20px; }
  .pscalc-service { min-height:50px; }
  .pscalc-package { min-height:78px; }
  .pscalc-condition { min-height:64px; }
  .pscalc-details summary { align-items:flex-start; }
  .pscalc-counter-row,.pscalc-toggle-row { padding:10px 11px; }
}

@media (max-width:420px) {
  .pscalc-counter-row { align-items:flex-start; }
  .pscalc-counter { margin-top:2px; }
  .pscalc-details-status span { display:none; }
}

/* ==========================================================
   FINAL VISUAL REFINEMENT + MOBILE EXPERIENCE
   ========================================================== */

.pscalc-main {
  padding:26px;
}

.pscalc-heading {
  margin-bottom:16px;
}

.pscalc-block {
  margin-top:27px;
}

.pscalc-block + .pscalc-block {
  padding-top:2px;
}

.pscalc-details {
  margin-top:20px;
  border-color:#e7eff0;
  box-shadow:none;
}

.pscalc-details-copy strong em {
  color:var(--muted);
  font-size:10px;
  font-style:normal;
  font-weight:600;
}

/* Home-size cards: lighter, shorter and centered */
.pscalc-package-grid {
  gap:10px;
}

.pscalc-package {
  min-height:64px;
  padding:11px 14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-color:#e8eff0;
  border-radius:14px;
  text-align:center;
  box-shadow:0 2px 8px rgba(20,55,60,.025);
}

.pscalc-package:hover {
  border-color:#b9dde2;
  background:#f8fcfc;
  box-shadow:0 5px 14px rgba(20,55,60,.045);
  transform:translateY(-1px);
}

.pscalc-package.active {
  border-color:var(--primary);
  background:var(--primary-soft);
  box-shadow:0 0 0 2px rgba(4,151,171,.055);
  transform:none;
}

.pscalc-package strong {
  margin-bottom:4px;
  font-size:12px;
  line-height:1.25;
}

.pscalc-package span {
  font-size:9px;
  line-height:1.3;
}

/* Condition cards: compact selection chips */
.pscalc-condition-grid {
  gap:9px;
}

.pscalc-condition {
  position:relative;
  min-height:58px;
  padding:10px 12px 10px 34px;
  justify-content:center;
  border-color:#e8eff0;
  border-radius:14px;
  box-shadow:none;
}

.pscalc-condition::before {
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  width:12px;
  height:12px;
  border:1.5px solid #b9cacc;
  border-radius:50%;
  transform:translateY(-50%);
  background:#fff;
}

.pscalc-condition.active::before {
  border-color:var(--primary);
  background:var(--primary);
  box-shadow:inset 0 0 0 3px #fff;
}

.pscalc-condition:hover {
  border-color:#b9dde2;
  background:#f8fcfc;
}

.pscalc-condition.active {
  border-color:var(--primary);
  background:var(--primary-soft);
}

.pscalc-condition strong {
  font-size:10px;
  line-height:1.35;
}

/* Frequency: lighter pill-style options */
.pscalc-frequency-grid {
  gap:8px;
}

.pscalc-frequency {
  min-height:46px;
  padding:8px 7px;
  border-color:#e8eff0;
  border-radius:999px;
  box-shadow:none;
}

.pscalc-frequency:hover {
  border-color:#b9dde2;
  background:#f8fcfc;
}

.pscalc-frequency.active {
  border-color:var(--primary);
  background:var(--primary-soft);
  box-shadow:inset 0 0 0 1px rgba(4,151,171,.04);
}

.pscalc-frequency strong {
  font-size:9px;
  letter-spacing:.015em;
}

.pscalc-frequency small {
  margin-top:2px;
  font-size:7px;
}

/* Lighter rows throughout the customization flow */
.pscalc-counter-row,
.pscalc-toggle-row {
  border-color:#e8eff0;
  box-shadow:none;
}

.pscalc-counter-row:hover,
.pscalc-toggle-row:hover {
  border-color:#d5e6e8;
}

/* More premium, calmer summary panel */
.pscalc-summary {
  border-color:#e1ebec;
  box-shadow:0 14px 34px rgba(20,55,60,.075);
}

.pscalc-summary-info {
  margin:17px 0;
}

/* Button state refinement */
.pscalc-navigation button {
  transition:transform .16s ease, background .16s ease, opacity .16s ease;
}

.pscalc-navigation button:not(:disabled):active {
  transform:translateY(1px);
}

/* Tablet */
@media (max-width:830px) {
  #ps-calculator-final {
    padding:18px 10px 30px;
  }

  .pscalc-layout {
    max-width:720px;
    gap:14px;
  }

  .pscalc-main {
    order:1;
  }

  .pscalc-summary {
    order:2;
    position:static;
  }
}

/* Mobile */
@media (max-width:660px) {
  #ps-calculator-final {
    padding:8px 5px 22px;
  }

  .pscalc-layout {
    gap:10px;
  }

  .pscalc-main,
  .pscalc-summary {
    padding:15px;
    border-radius:16px;
  }

  .pscalc-progress {
    margin-bottom:20px;
  }

  .pscalc-heading {
    margin-bottom:14px;
  }

  .pscalc-heading h2 {
    font-size:19px;
  }

  .pscalc-heading p,
  .pscalc-block-heading p {
    font-size:11px;
  }

  .pscalc-package-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  .pscalc-package-wide {
    grid-column:1/-1;
  }

  .pscalc-package {
    min-height:62px;
    padding:9px 8px;
    border-radius:12px;
  }

  .pscalc-package strong {
    font-size:10px;
  }

  .pscalc-package span {
    font-size:8px;
  }

  .pscalc-details {
    margin-top:14px;
  }

  .pscalc-details summary {
    min-height:61px;
    padding:11px 12px;
  }

  .pscalc-block {
    margin-top:22px;
  }

  .pscalc-condition-grid {
    grid-template-columns:1fr;
    gap:7px;
  }

  .pscalc-condition {
    min-height:48px;
    padding:9px 10px 9px 34px;
  }

  .pscalc-frequency-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  .pscalc-frequency {
    min-height:44px;
  }

  .pscalc-counter-row,
  .pscalc-toggle-row {
    min-height:58px;
  }

  .pscalc-addon-extra-row {
    margin-left:10px;
  }

  .pscalc-form-grid {
    grid-template-columns:1fr;
    gap:10px;
  }

  .pscalc-full-field {
    grid-column:auto;
  }

  .pscalc-form-grid input,
  .pscalc-form-grid select,
  .pscalc-form-grid textarea {
    min-height:46px;
    font-size:16px; /* Prevents iOS form zoom */
  }

  .pscalc-pets-field {
    width:100%;
  }

  .pscalc-pets-options {
    width:100%;
  }

  .pscalc-radio-option {
    flex:1;
  }

  .pscalc-navigation {
    position:sticky;
    bottom:8px;
    z-index:5;
    margin:18px -5px -5px;
    padding:8px 5px 5px;
    border-radius:14px;
    background:rgba(255,255,255,.94);
    box-shadow:0 -8px 20px rgba(20,55,60,.055);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }

  .pscalc-navigation button {
    min-height:44px;
  }

  .pscalc-summary {
    padding:17px;
  }

  .pscalc-total {
    font-size:25px;
  }
}

/* Small phones */
@media (max-width:420px) {
  .pscalc-package-grid {
    grid-template-columns:1fr;
  }

  .pscalc-package-wide {
    grid-column:auto;
  }

  .pscalc-package {
    min-height:55px;
  }

  .pscalc-frequency-grid {
    grid-template-columns:1fr 1fr;
  }

  .pscalc-details-copy span {
    max-width:220px;
  }

  .pscalc-counter-row {
    align-items:center;
  }

  .pscalc-counter-row > div:first-child {
    min-width:0;
  }

  .pscalc-counter {
    margin-top:0;
  }

  .pscalc-counter button {
    width:30px;
    height:30px;
  }

  .pscalc-summary-info strong,
  .pscalc-breakdown strong {
    max-width:62%;
  }
}

