:root {
  --pc-navy: #2a3744;
  --pc-blue: #214777;
  --pc-ink: #142033;
  --pc-muted: #65748a;
  --pc-line: #dbe3eb;
  --pc-soft: #f4f7fa;
  --pc-green: #16845b;
  --pc-green-dark: #0d6444;
  --pc-green-soft: #e9f7f1;
  --pc-red: #a80e00;
  --pc-red-soft: #ffe8e5;
  --pc-amber: #9a650d;
  --pc-amber-soft: #fff5d9;
  --pc-shadow: 0 18px 55px rgba(20,32,51,.12);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--pc-ink); background: #e8edf1; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.45; }
button,input,select,textarea { font: inherit; }
button { cursor: pointer; }
.print-only { display: none; }

.pc-app-header { position: sticky; z-index: 50; top: 0; display: flex; align-items: center; min-height: 74px; padding: 11px 24px; color: #fff; background: var(--pc-navy); box-shadow: 0 8px 28px rgba(20,32,51,.18); }
.pc-brand { display: flex; width: 190px; align-items: center; }
.pc-brand img { display: block; width: 176px; height: 44px; object-fit: contain; object-position: left center; }
.pc-header-title { display: flex; flex-direction: column; padding-left: 20px; border-left: 1px solid rgba(255,255,255,.2); }
.pc-header-title span { color: #afbdca; font-size: 8px; font-weight: 900; letter-spacing: 1.2px; text-transform: uppercase; }
.pc-header-title strong { margin-top: 2px; font-size: 14px; }
.pc-header-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.pc-save-state { margin-right: 8px; color: #c4ced8; font-size: 10px; }
.pc-save-state i { display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #4fd0a0; box-shadow: 0 0 0 4px rgba(79,208,160,.12); }
.pc-button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 10px 15px; border: 0; border-radius: 10px; font-size: 11px; font-weight: 900; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease; }
.pc-button:hover { transform: translateY(-1px); }
.pc-button-accent { color: #fff; background: var(--pc-blue); box-shadow: 0 7px 18px rgba(33,71,119,.22); }
.pc-app-header .pc-button-accent { background: #288de5; }
.pc-button-ghost { color: #fff; border: 1px solid rgba(255,255,255,.22); background: transparent; }
.pc-button-secondary { color: var(--pc-blue); border: 1px solid #cbd7e1; background: #fff; }

.pc-app-shell { display: grid; grid-template-columns: minmax(420px,520px) minmax(650px,1fr); align-items: start; max-width: 1740px; min-height: calc(100vh - 74px); margin: 0 auto; }
.pc-editor { min-width: 0; padding: 34px 30px 60px; background: #fff; border-right: 1px solid var(--pc-line); }
.pc-editor-intro { padding: 4px 3px 27px; border-bottom: 1px solid var(--pc-line); }
.pc-editor-intro > span,.pc-heading > span,.pc-preview-toolbar span,.pc-advantages > div:first-child span { color: var(--pc-blue); font-size: 9px; font-weight: 900; letter-spacing: 1.5px; text-transform: uppercase; }
.pc-editor-intro h1 { margin: 7px 0 7px; color: var(--pc-navy); font-family: Georgia,serif; font-size: 31px; line-height: 1.08; letter-spacing: -.7px; }
.pc-editor-intro p { margin: 0; color: var(--pc-muted); font-size: 11px; }
.pc-editor-section { padding: 31px 0; border-bottom: 1px solid var(--pc-line); }
.pc-section-heading { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 19px; }
.pc-section-heading > b { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 auto; color: #fff; border-radius: 10px; background: var(--pc-navy); font-size: 10px; }
.pc-section-heading h2,.pc-section-heading p { margin: 0; }
.pc-section-heading h2 { color: var(--pc-navy); font-family: Georgia,serif; font-size: 21px; }
.pc-section-heading p { margin-top: 2px; color: var(--pc-muted); font-size: 9px; line-height: 1.45; }
.pc-form-grid { display: grid; gap: 12px; }
.pc-form-grid-two,.pc-benefit-inputs { grid-template-columns: repeat(2,minmax(0,1fr)); }
.pc-benefit-inputs { margin-top: 12px; }
.pc-field-full { grid-column: 1/-1; }
.pc-field { display: block; min-width: 0; }
.pc-field > span { display: block; min-height: 15px; margin-bottom: 5px; color: #455569; font-size: 9px; font-weight: 800; }
.pc-field em { color: #8995a3; font-size: 7px; font-style: normal; font-weight: 700; text-transform: uppercase; }
.pc-field input,.pc-field select,.pc-field textarea { display: block; width: 100%; border: 1px solid #d5dfe7; outline: none; border-radius: 9px; color: var(--pc-navy); background: #fbfcfd; font-size: 11px; transition: border-color .18s ease, box-shadow .18s ease; }
.pc-field input,.pc-field select { height: 41px; padding: 0 11px; }
.pc-field textarea { min-height: 66px; padding: 10px 11px; resize: vertical; }
.pc-field input:focus,.pc-field select:focus,.pc-field textarea:focus { border-color: var(--pc-blue); box-shadow: 0 0 0 3px rgba(33,71,119,.09); }
.pc-editor-section > .pc-field-full { margin-top: 12px; }
.pc-warning-list { display: grid; gap: 6px; margin-top: 12px; }
.pc-warning-list:empty { display: none; }
.pc-warning-list p { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 9px 10px; color: #754e0d; border-radius: 8px; background: var(--pc-amber-soft); font-size: 8.5px; font-weight: 700; }
.pc-warning-list b { display: grid; place-items: center; width: 16px; height: 16px; flex: 0 0 auto; color: #fff; border-radius: 50%; background: var(--pc-amber); font-size: 9px; }
.pc-switch { position: relative; display: flex; align-items: center; gap: 12px; justify-content: space-between; min-height: 58px; padding: 11px 12px; border: 1px solid var(--pc-line); border-radius: 11px; background: #f8fafc; }
.pc-switch span,.pc-switch strong,.pc-switch small { display: block; }
.pc-switch strong { color: var(--pc-navy); font-size: 10px; }
.pc-switch small { margin-top: 2px; color: var(--pc-muted); font-size: 8px; }
.pc-switch input { position: absolute; opacity: 0; pointer-events: none; }
.pc-switch i { position: relative; width: 42px; height: 23px; flex: 0 0 auto; border-radius: 999px; background: #afbbc6; transition: background .18s ease; }
.pc-switch i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 17px; height: 17px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,.2); transition: transform .18s ease; }
.pc-switch input:checked + i { background: var(--pc-green); }
.pc-switch input:checked + i::after { transform: translateX(19px); }
.pc-switch:has(input:disabled) { opacity: .5; }
.pc-include-switch { margin-bottom: 14px; }
.pc-proposed-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 13px; }
.pc-proposed-summary div { padding: 10px; border-radius: 9px; background: var(--pc-soft); }
.pc-proposed-summary span,.pc-proposed-summary strong { display: block; }
.pc-proposed-summary span { color: var(--pc-muted); font-size: 7.5px; }
.pc-proposed-summary strong { margin-top: 3px; color: var(--pc-navy); font-size: 12px; }
.pc-proposed-summary .pc-summary-champ { background: var(--pc-green-soft); }
.pc-proposed-summary .pc-summary-champ strong { color: var(--pc-green-dark); }
.pc-row-picker { margin: 16px 0 0; padding: 13px; border: 1px solid var(--pc-line); border-radius: 11px; }
.pc-row-picker legend { padding: 0 5px; color: var(--pc-navy); font-size: 9px; font-weight: 900; }
.pc-row-picker > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
.pc-row-picker label { display: flex; align-items: center; gap: 7px; min-width: 0; color: #526174; font-size: 8.5px; cursor: pointer; }
.pc-row-picker input { position: absolute; opacity: 0; }
.pc-row-picker label > span { display: grid; place-items: center; width: 17px; height: 17px; flex: 0 0 auto; color: transparent; border: 1px solid #b9c6d1; border-radius: 5px; font-size: 9px; }
.pc-row-picker input:checked + span { color: #fff; border-color: var(--pc-green); background: var(--pc-green); }
.pc-editor-actions { display: flex; justify-content: space-between; gap: 10px; padding-top: 23px; }

.pc-preview-panel { position: sticky; top: 94px; width: min(8.15in,calc(100% - 48px)); max-height: calc(100vh - 118px); overflow: auto; justify-self: center; margin: 24px; background: #fff; border-radius: 8px; box-shadow: var(--pc-shadow); }
.pc-preview-toolbar { position: sticky; z-index: 4; top: 0; display: flex; align-items: center; justify-content: space-between; padding: 12px 18px; color: #fff; background: var(--pc-navy); }
.pc-preview-toolbar div span,.pc-preview-toolbar div strong { display: block; }
.pc-preview-toolbar div span { color: #aebdca; font-size: 7px; }
.pc-preview-toolbar div strong { margin-top: 2px; font-size: 10px; }
.pc-preview-toolbar small { color: #bfcad4; font-size: 8px; }
#comparisonPreview { padding: .34in .38in .38in; }
.pc-excluded-message { margin: 0 20px 20px; padding: 10px; color: #7a520e; border-radius: 8px; background: var(--pc-amber-soft); text-align: center; font-size: 9px; font-weight: 800; }

.plan-comparison-preview { color: var(--pc-ink); }
.pc-heading { padding-bottom: 12px; border-bottom: 1px solid var(--pc-line); }
.pc-heading h2 { margin: 5px 0 4px; color: var(--pc-navy); font-family: Georgia,serif; font-size: 28px; line-height: 1.06; letter-spacing: -.5px; }
.pc-heading p { max-width: 650px; margin: 0; color: var(--pc-muted); font-size: 10px; line-height: 1.4; }
.pc-recommendation { display: grid; grid-template-columns: 170px 1fr; gap: 12px; align-items: center; margin-top: 9px; padding: 9px 11px; border: 1px solid #b9e2d1; border-left: 5px solid var(--pc-green); border-radius: 9px; background: #eef9f4; break-inside: avoid; page-break-inside: avoid; }
.pc-recommendation div span,.pc-recommendation div strong { display: block; }
.pc-recommendation div span { color: var(--pc-green-dark); font-size: 7px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }
.pc-recommendation div strong { margin-top: 2px; color: var(--pc-navy); font-size: 11px; }
.pc-recommendation p { margin: 0; color: #42566b; font-size: 8.5px; line-height: 1.35; }
.pc-recommendation-warning { border-color: #e3c98f; border-left-color: var(--pc-amber); background: var(--pc-amber-soft); }
.pc-recommendation-warning div span { color: #8a5b08; }
.pc-category-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; margin-top: 6px; break-inside: avoid; page-break-inside: avoid; }
.pc-category-summary > button { min-width: 0; padding: 7px 9px; color: inherit; border: 1px solid var(--pc-line); border-radius: 8px; background: #f7f9fb; text-align: left; cursor: pointer; transition: border-color .16s ease,background-color .16s ease,box-shadow .16s ease,transform .16s ease; }
.pc-category-summary > button:hover:not(:disabled) { border-color: #91bce8; background: #f0f7fd; transform: translateY(-1px); }
.pc-category-summary > button.selected { border-color: var(--pc-blue); background: #e7f2fc; box-shadow: 0 0 0 2px rgba(40,141,229,.13); }
.pc-category-summary > button:focus-visible { outline: 2px solid var(--pc-blue); outline-offset: 2px; }
.pc-category-summary > button:disabled { cursor: not-allowed; opacity: .6; }
.pc-category-summary span,.pc-category-summary strong,.pc-category-summary small { display: block; }
.pc-category-summary span { color: var(--pc-muted); font-size: 6.5px; font-weight: 900; letter-spacing: .55px; text-transform: uppercase; }
.pc-category-summary strong { margin-top: 2px; color: var(--pc-navy); font-size: 8.5px; }
.pc-category-summary small { margin-top: 2px; color: #8a5b08; font-size: 6.5px; font-weight: 800; }
.pc-category-summary .pc-category-hsa { display: inline-block; width: fit-content; padding: 2px 5px; color: #155b8f; border-radius: 999px; background: #d9efff; letter-spacing: .35px; text-transform: uppercase; }
.pc-category-summary .pc-category-warning { border-color: #e3c98f; background: var(--pc-amber-soft); }
.pc-category-summary .pc-category-warning.selected { border-color: var(--pc-amber); box-shadow: 0 0 0 2px rgba(177,115,10,.14); }
.pc-hero { display: grid; grid-template-columns: minmax(0,.92fr) 40px minmax(0,1.08fr); gap: 7px; align-items: stretch; margin: 10px 0 8px; break-inside: avoid; page-break-inside: avoid; }
.pc-plan-card { position: relative; min-width: 0; min-height: 126px; padding: 10px; border: 1px solid var(--pc-line); border-radius: 12px; background: #fff; }
.pc-plan-card > span,.pc-plan-card h3,.pc-plan-card p,.pc-plan-card > strong,.pc-plan-card small { display: block; }
.pc-plan-card > span { font-size: 8px; font-weight: 900; letter-spacing: 1px; text-transform: uppercase; }
.pc-plan-card h3 { margin: 4px 0 1px; font-size: 14px; }
.pc-plan-card p { min-height: 0; margin: 0; font-size: 9px; }
.pc-plan-card > strong { position: absolute; right: 10px; bottom: 9px; margin: 0; font-size: 23px; line-height: 1; text-align: right; }
.pc-plan-card small { margin-top: 3px; font-size: 10.1667px; font-weight: 700; }
.pc-plan-card.pc-current { color: #536171; border: 2px solid #b8c2cc; border-top-width: 4px; background: #f7f9fb; }
.pc-plan-card.pc-current > span { color: #7b8794; }
.pc-plan-card.pc-current > strong { color: #52606f; }
.pc-plan-card.pc-current p,.pc-plan-card.pc-current small { color: #7c8793; }
.pc-plan-card.pc-proposed { color: #fff; border: 2px solid var(--pc-blue); border-top: 5px solid #57b7f5; background: linear-gradient(135deg,#214777,#2b3744); box-shadow: 0 10px 25px rgba(33,71,119,.25); }
.pc-plan-card.pc-proposed.pc-tier-bronze { border: 3px solid #945720; background: linear-gradient(105deg,#9a5c27 0%,#a8662c 48%,#be7434 100%); box-shadow: 0 0 0 4px #eadfd5,0 10px 24px rgba(122,72,31,.24); }
.pc-plan-card.pc-proposed.pc-tier-silver { color: #102a43; border: 3px solid #a6b0bc; background: linear-gradient(105deg,#cdd4dc 0%,#bcc4ce 50%,#abb4bf 100%); box-shadow: 0 0 0 4px #e8edf2,0 10px 24px rgba(72,88,106,.2); }
.pc-plan-card.pc-proposed.pc-tier-gold { color: #102a43; border: 3px solid #d09a05; background: linear-gradient(105deg,#f1cf74 0%,#e2b547 52%,#d29b1f 100%); box-shadow: 0 0 0 4px #f8e8b8,0 10px 24px rgba(160,111,4,.22); }
.pc-plan-card.pc-proposed.pc-tier-platinum { color: #102a43; border: 3px solid #c8cafa; background: linear-gradient(105deg,#d8e6ff 0%,#d7d7ff 52%,#d5c8ff 100%); box-shadow: inset 4px 0 0 #79d2ff,0 0 0 4px #e2f2ff,0 10px 24px rgba(77,102,151,.18); }
.pc-plan-card.pc-proposed > span { color: #fff; }
.pc-plan-card.pc-proposed p,.pc-plan-card.pc-proposed small,.pc-plan-card.pc-proposed .pc-plan-identity h3 { color: #fff; }
.pc-premium-display { position: absolute; right: 10px; bottom: 8px; width: fit-content; text-align: right; }
.pc-premium-display > span,.pc-premium-display > strong,.pc-premium-display > small { display: block; }
.pc-premium-display > span { color: #fff; font-size: 17.6667px; font-weight: 900; line-height: 1; text-align: right; text-transform: uppercase; }
.pc-premium-display > strong { color: #fff; font-size: 26px; line-height: 1; }
.pc-premium-display > small { color: #fff; }
.pc-plan-card.pc-proposed.pc-premium-better .pc-premium-display > strong { font-size: 34px; text-shadow: 0 2px 10px rgba(0,0,0,.16); }
.pc-plan-card.pc-proposed.pc-tier-silver > span,.pc-plan-card.pc-proposed.pc-tier-silver p,.pc-plan-card.pc-proposed.pc-tier-silver small,.pc-plan-card.pc-proposed.pc-tier-silver .pc-plan-identity h3,.pc-plan-card.pc-proposed.pc-tier-silver .pc-premium-display > span,.pc-plan-card.pc-proposed.pc-tier-silver .pc-premium-display > strong,.pc-plan-card.pc-proposed.pc-tier-gold > span,.pc-plan-card.pc-proposed.pc-tier-gold p,.pc-plan-card.pc-proposed.pc-tier-gold small,.pc-plan-card.pc-proposed.pc-tier-gold .pc-plan-identity h3,.pc-plan-card.pc-proposed.pc-tier-gold .pc-premium-display > span,.pc-plan-card.pc-proposed.pc-tier-gold .pc-premium-display > strong,.pc-plan-card.pc-proposed.pc-tier-platinum > span,.pc-plan-card.pc-proposed.pc-tier-platinum p,.pc-plan-card.pc-proposed.pc-tier-platinum small,.pc-plan-card.pc-proposed.pc-tier-platinum .pc-plan-identity h3,.pc-plan-card.pc-proposed.pc-tier-platinum .pc-premium-display > span,.pc-plan-card.pc-proposed.pc-tier-platinum .pc-premium-display > strong { color: #102a43; }
.pc-plan-card.pc-proposed .pc-hsa-badge { color: #fff; background: #214777; }
.pc-versus { display: grid; place-items: center; align-self: center; width: 40px; height: 40px; color: var(--pc-navy); border: 1px solid var(--pc-line); border-radius: 50%; background: #fff; box-shadow: 0 5px 14px rgba(20,32,51,.1); font-size: 9px; font-weight: 900; }
.pc-savings { grid-column: 1/-1; display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 12px 15px; color: #fff; border-radius: 12px; background: linear-gradient(125deg,var(--pc-blue),var(--pc-navy)); }
.pc-savings > span { font-size: 7px; font-weight: 900; letter-spacing: 1px; text-transform: uppercase; }
.pc-savings > strong { grid-row: span 2; font-size: 21px; }
.pc-savings strong small { margin-left: 2px; font-size: 8px; }
.pc-savings > b { color: #bfe7d7; font-size: 8px; font-weight: 700; }
.pc-mini-summary { text-align: left; }
.pc-savings-callout { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center; margin: 8px 0 9px; padding: 13px 16px; color: #fff; border: 2px solid #68dfb4; border-radius: 12px; background: linear-gradient(125deg,#1aa572,#096443); box-shadow: 0 10px 24px rgba(9,100,67,.28),inset 0 1px rgba(255,255,255,.22); break-inside: avoid; page-break-inside: avoid; }
.pc-savings-icon { display: grid; place-items: center; width: 38px; height: 38px; color: var(--pc-green-dark); border-radius: 50%; background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,.16); font-size: 22px; font-weight: 900; }
.pc-savings-details { display: grid; gap: 7px; }
.pc-mini-summary span,.pc-mini-summary strong,.pc-mini-summary em { display: block; }
.pc-mini-summary span { color: #fff; font-size: 8.5px; font-weight: 900; letter-spacing: .75px; text-transform: uppercase; }
.pc-mini-summary strong { margin-top: 3px; color: #fff; font-size: 20px; line-height: 1.1; text-shadow: 0 1px 2px rgba(0,0,0,.15); }
.pc-mini-summary em { margin-top: 5px; color: rgba(255,255,255,.82); font-size: 9.5px; font-style: italic; font-weight: 500; line-height: 1.25; }
.pc-savings-callout.pc-savings-negative { padding: 10px 14px; color: var(--pc-navy); border: 1px solid #e3c98f; background: #fffaf0; box-shadow: none; }
.pc-savings-callout.pc-savings-negative .pc-savings-icon { width: 32px; height: 32px; color: #9b680a; border: 1px solid #e3c98f; box-shadow: none; font-size: 17px; }
.pc-savings-callout.pc-savings-negative .pc-mini-summary span { color: #7a5b22; }
.pc-savings-callout.pc-savings-negative .pc-mini-summary strong { color: #5f4a25; font-size: 15px; text-shadow: none; }
.pc-savings-callout.pc-savings-negative .pc-mini-summary em { color: #80683d; }
.pc-rows { display: grid; gap: 4px; }
.pc-row { display: grid; grid-template-columns: 142px minmax(0,1fr); column-gap: 10px; row-gap: 2px; align-items: center; padding: 7px 8px; border: 1px solid var(--pc-line); border-radius: 9px; background: #fff; break-inside: avoid; page-break-inside: avoid; }
.pc-row-better { border-left: 5px solid var(--pc-green); background: linear-gradient(90deg,#f4fbf8,#fff 42%); }
.pc-row-worse { border-left: 4px solid var(--pc-amber); }
.pc-row-label { grid-row: 1 / span 2; display: flex; align-items: flex-start; flex-direction: column; justify-content: center; gap: 5px; }
.pc-row-label > span { color: var(--pc-navy); font-size: 10px; font-weight: 900; line-height: 1.15; letter-spacing: .4px; text-transform: uppercase; }
.pc-status { display: inline-flex; max-width: 100%; align-items: center; gap: 6px; font-size: 7.5px; font-weight: 400; }
.pc-status b { display: grid; place-items: center; width: 18px; height: 18px; flex: 0 0 18px; color: #fff; border-radius: 50%; font-size: 9px; line-height: 1; }
.pc-status > span { line-height: 1.15; font-weight: 400; }
.pc-status-better { color: var(--pc-green-dark); font-size: 7px; letter-spacing: .15px; }.pc-status-better b { background: var(--pc-green); }
.pc-status-equal,.pc-status-notComparable { color: #6d7987; }.pc-status-equal b,.pc-status-notComparable b { background: #7f8b98; }
.pc-status-worse { color: var(--pc-amber); }.pc-status-worse b { background: var(--pc-amber); }
.pc-row-values { display: grid; grid-template-columns: .9fr 1.1fr; gap: 6px; margin-top: 0; }
.pc-value { position: relative; min-width: 0; padding: 6px 8px; border-radius: 7px; background: var(--pc-soft); }
.pc-value small,.pc-value > strong { display: block; }
.pc-value small { color: var(--pc-muted); font-size: 7px; font-weight: 800; letter-spacing: .25px; text-transform: uppercase; }
.pc-value > strong { margin-top: 1px; color: #536171; font-size: 12px; overflow-wrap: anywhere; }
.pc-current-unfavorable { background: var(--pc-red-soft); }
.pc-current-unfavorable > strong { color: var(--pc-red); }
.pc-proposed-value { border: 1px solid #d6dfe6; background: #f5f7f9; }
.pc-proposed-value small,.pc-proposed-value > strong { color: #536171; }
.pc-proposed-better { padding-right: 33px; border-color: #b9e2d1; background: #e9f7f1; }
.pc-proposed-better small,.pc-proposed-better > strong { color: var(--pc-green-dark); }
.pc-proposed-worse { padding-right: 33px; border-color: #ead5af; background: #fff9ee; }
.pc-proposed-worse small,.pc-proposed-worse > strong { color: #76551c; }
.pc-proposed-value > strong { font-size: 14px; }
.pc-value-sentiment { position: absolute; top: 50%; right: 7px; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; transform: translateY(-50%); }
.pc-value-sentiment svg { width: 12px; height: 12px; fill: #fff; }
.pc-value-sentiment-up { background: var(--pc-green); }
.pc-value-warning { position: absolute; top: 50%; right: 7px; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--pc-amber); transform: translateY(-50%); }
.pc-value-warning b { color: #fff; font-size: 12px; line-height: 1; }
.pc-row > p { margin: 0; color: var(--pc-muted); font-size: 8px; line-height: 1.25; text-align: right; }
.pc-champ-value { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin-top: 1px; }
.pc-champ-value s { color: #7e8995; font-size: 10px; font-weight: 800; text-decoration-color: var(--pc-red); text-decoration-thickness: 2px; }
.pc-champ-value strong { color: inherit; font-size: 14px; line-height: 1; }
.pc-champ-value span { padding: 3px 6px; color: #fff; border-radius: 999px; background: var(--pc-green); font-size: 6.5px; font-weight: 900; letter-spacing: .4px; text-transform: uppercase; }
.pc-advantages { display: grid; grid-template-columns: 185px 1fr; gap: 10px; align-items: center; margin-top: 7px; padding: 10px; border: 1px solid #9bcfe2; border-radius: 10px; background: #e1f3fa; break-inside: avoid; page-break-inside: avoid; }
.pc-advantages-head { display: grid; align-self: stretch; align-items: center; justify-items: center; }
.pc-champ-logo { display: block; width: 100%; max-width: 185px; height: 76px; object-fit: contain; }
.pc-advantages-content { display: grid; gap: 5px; }
.pc-advantages-title { color: var(--pc-blue); font-size: 9px; font-weight: 900; letter-spacing: 1.5px; text-transform: uppercase; }
.pc-advantages-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4px 7px; }
.pc-advantages p { display: flex; gap: 5px; align-items: flex-start; margin: 0; color: #315d70; font-size: 7.5px; }
.pc-advantages p b { display: grid; place-items: center; width: 12px; height: 12px; flex: 0 0 auto; color: #fff; border-radius: 50%; background: #2d8fe6; font-size: 7px; }
.pc-closing { margin-top: 9px; padding: 9px 10px; color: var(--pc-navy); border-left: 3px solid var(--pc-blue); background: #f2f6fa; font-size: 7.5px; font-weight: 700; }
.pc-disclaimer { margin-top: 7px; padding: 7px 8px; color: #647183; border-radius: 8px; background: var(--pc-soft); font-size: 6.5px; line-height: 1.4; break-inside: avoid; page-break-inside: avoid; }
.pc-toast { position: fixed; z-index: 100; left: 50%; bottom: 22px; padding: 10px 14px; opacity: 0; color: #fff; border-radius: 9px; background: var(--pc-navy); box-shadow: var(--pc-shadow); font-size: 9px; transform: translate(-50%,18px); transition: .22s ease; pointer-events: none; }
.pc-toast.show { opacity: 1; transform: translate(-50%,0); }
.pc-confetti-burst { position: fixed; z-index: 200; inset: 0; overflow: hidden; pointer-events: none; }
.pc-confetti-burst i { position: absolute; top: 46%; left: 50%; width: var(--pc-confetti-width); height: var(--pc-confetti-height); opacity: 0; border-radius: 2px; background: var(--pc-confetti-color); box-shadow: 0 1px 2px rgba(20,32,51,.12); animation: pc-confetti-pop 1.45s cubic-bezier(.16,.72,.26,1) var(--pc-confetti-delay) forwards; }
@keyframes pc-confetti-pop {
  0% { opacity: 0; transform: translate(-50%,-50%) scale(.25) rotate(0); }
  7% { opacity: 1; }
  76% { opacity: 1; }
  100% { opacity: 0; transform: translate(calc(-50% + var(--pc-confetti-x)),calc(-50% + var(--pc-confetti-y))) scale(1) rotate(var(--pc-confetti-rotation)); }
}

/* Guided survey */
.pc-survey-shell { min-height: calc(100vh - 74px); padding: clamp(30px,6vw,76px) 24px 60px; background: radial-gradient(circle at 12% 8%,rgba(40,141,229,.12),transparent 31%),linear-gradient(145deg,#f6f9fc,#e8edf2); }
.pc-survey-view { display: grid; grid-template-columns: minmax(0,720px) 250px; gap: 22px; align-items: center; justify-content: center; max-width: 1050px; margin: 0 auto; }
.pc-survey-card { min-height: 570px; padding: clamp(27px,4vw,48px); border: 1px solid rgba(203,215,225,.8); border-radius: 25px; background: rgba(255,255,255,.97); box-shadow: 0 28px 75px rgba(20,32,51,.13); }
.pc-survey-brandline { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.pc-survey-brandline span { color: var(--pc-blue); font-size: 8px; font-weight: 900; letter-spacing: 1.5px; text-transform: uppercase; }
.pc-survey-brandline strong { color: var(--pc-muted); font-size: 9px; }
.pc-progress { height: 6px; margin-top: 12px; overflow: hidden; border-radius: 999px; background: #e8eef3; }
.pc-progress i { display: block; width: 12.5%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--pc-blue),#288de5); transition: width .25s ease; }
.pc-question-stage { position: relative; z-index: 2; display: flex; min-height: 378px; flex-direction: column; justify-content: center; padding: 34px 0 24px; will-change: opacity,transform; }
.pc-question-transitioning .pc-question-stage,.pc-question-transitioning .pc-survey-actions { pointer-events: none; }
.pc-question-exit-left { animation: pc-question-exit-left .16s ease-in forwards; }
.pc-question-enter-right { animation: pc-question-enter-right .24s cubic-bezier(.22,.75,.3,1) both; }
.pc-question-exit-right { animation: pc-question-exit-right .16s ease-in forwards; }
.pc-question-enter-left { animation: pc-question-enter-left .24s cubic-bezier(.22,.75,.3,1) both; }
@keyframes pc-question-exit-left { to { opacity: 0; transform: translateX(-30px); } }
@keyframes pc-question-enter-right { from { opacity: 0; transform: translateX(30px); } to { opacity: 1; transform: translateX(0); } }
@keyframes pc-question-exit-right { to { opacity: 0; transform: translateX(30px); } }
@keyframes pc-question-enter-left { from { opacity: 0; transform: translateX(-30px); } to { opacity: 1; transform: translateX(0); } }
.pc-question-kicker { color: var(--pc-green); font-size: 9px; font-weight: 900; letter-spacing: 1.35px; text-transform: uppercase; }
.pc-question-stage h1 { max-width: 610px; margin: 9px 0 9px; color: var(--pc-navy); font-family: Georgia,serif; font-size: clamp(31px,4vw,43px); line-height: 1.07; letter-spacing: -1px; }
.pc-question-stage > p { max-width: 590px; margin: 0 0 24px; color: var(--pc-muted); font-size: 12px; }
.pc-answer-input { display: flex; min-height: 64px; align-items: center; padding: 0 18px; border: 2px solid #d3dee7; border-radius: 15px; background: #fbfcfd; transition: border-color .18s ease,box-shadow .18s ease; }
.pc-answer-input:focus-within { border-color: var(--pc-blue); box-shadow: 0 0 0 4px rgba(33,71,119,.09); }
.pc-answer-input input,.pc-answer-input textarea { width: 100%; border: 0; outline: 0; color: var(--pc-navy); background: transparent; font-size: 18px; font-weight: 750; }
.pc-answer-with-affix { gap: 7px; }
.pc-answer-with-affix input { flex: 1 1 auto; min-width: 0; }
.pc-input-affix { flex: 0 0 auto; color: var(--pc-navy); font-size: 18px; font-weight: 750; line-height: 1; }
.pc-answer-input input::placeholder,.pc-answer-input textarea::placeholder { color: #9aa6b2; font-weight: 500; }
.pc-answer-textarea { min-height: 120px; padding: 14px 18px; align-items: flex-start; }
.pc-answer-input textarea { min-height: 90px; resize: vertical; }
.pc-unsure-actions { display: flex; justify-content: flex-end; margin-top: 10px; }
.pc-unsure-button { min-width: 112px; min-height: 38px; padding: 8px 16px; color: var(--pc-navy); border: 2px solid var(--pc-line); border-radius: 12px; background: #fff; font-size: 9px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; transition: .18s ease; }
.pc-unsure-button:hover,.pc-unsure-button.selected { border-color: var(--pc-blue); background: #f2f7fc; box-shadow: 0 0 0 3px rgba(33,71,119,.08); }
.pc-survey-actions { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 18px; border-top: 1px solid var(--pc-line); }
.pc-next-button { min-width: 145px; gap: 18px; }
.pc-button:disabled { cursor: not-allowed; opacity: .4; transform: none; }
.pc-question-error { min-height: 19px; margin-top: 9px; color: var(--pc-red); font-size: 9px; font-weight: 800; }
.pc-sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; }
.pc-survey-sidebar-desktop { display: grid; gap: 10px; }
.pc-survey-mobile-sidebar { display: none; }
.pc-survey-aside { display: grid; gap: 10px; }
.pc-survey-aside-mobile { display: none; }
.pc-survey-aside > article { display: flex; gap: 10px; padding: 14px; border: 1px solid rgba(203,215,225,.9); border-radius: 14px; background: rgba(255,255,255,.72); transition: border-color .2s ease,background-color .2s ease,transform .2s ease; }
.pc-survey-aside > article[data-state="complete"] { border-color: #b9ddce; background: rgba(240,250,246,.9); }
.pc-survey-aside > article[data-state="active"] { border-color: #91bce8; background: rgba(239,247,255,.94); transform: translateX(-2px); }
.pc-survey-aside > article[data-state="pending"] { background: rgba(255,255,255,.58); }
.pc-survey-aside b { display: grid; place-items: center; width: 23px; height: 23px; flex: 0 0 auto; color: #fff; border-radius: 50%; background: #8a96a3; font-size: 10px; }
.pc-survey-aside article[data-state="complete"] b { background: var(--pc-green); }
.pc-survey-aside article[data-state="active"] b { background: var(--pc-blue); box-shadow: 0 0 0 4px rgba(40,141,229,.12); }
.pc-survey-aside span,.pc-survey-aside strong,.pc-survey-aside small { display: block; }
.pc-survey-aside strong { color: var(--pc-navy); font-size: 9px; }
.pc-survey-aside small { margin-top: 3px; color: var(--pc-muted); font-size: 7.5px; line-height: 1.4; }
.pc-progress-state { margin-top: 5px; color: #738090; font-size: 6.5px; font-style: normal; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.pc-survey-aside article[data-state="complete"] .pc-progress-state { color: var(--pc-green-dark); }
.pc-survey-aside article[data-state="active"] .pc-progress-state { color: var(--pc-blue); }
.pc-survey-reassurance { padding: 13px 14px; border: 1px solid rgba(203,215,225,.9); border-radius: 14px; background: rgba(255,255,255,.72); }
.pc-survey-reassurance ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.pc-survey-reassurance li { display: grid; grid-template-columns: 14px 1fr; gap: 7px; align-items: start; font-size: 8px; line-height: 1.3; }
.pc-survey-reassurance li > b { color: var(--pc-green); font-size: 9px; line-height: 1.1; }
.pc-survey-reassurance span,.pc-survey-reassurance strong,.pc-survey-reassurance small { display: block; }
.pc-survey-reassurance strong { color: var(--pc-navy); font-size: 8px; }
.pc-survey-reassurance small { margin-top: 1px; color: var(--pc-muted); font-size: 8px; }
.pc-survey-reset { justify-self: end; margin-top: -5px; padding: 2px 4px; color: #7f8c99; border: 0; background: transparent; font-size: 7px; font-weight: 750; letter-spacing: .25px; opacity: .72; }
.pc-survey-reset:hover { color: var(--pc-blue); opacity: 1; text-decoration: underline; text-underline-offset: 2px; }
.pc-carrier-combobox { position: relative; }
.pc-carrier-input-wrap { gap: 12px; }
.pc-carrier-input-wrap > span { display: grid; place-items: center; width: 66px; height: 42px; flex: 0 0 auto; overflow: hidden; color: #fff; border-radius: 10px; background: var(--pc-navy); font-size: 11px; font-weight: 900; }
.pc-carrier-input-wrap > span img { width: 100%; height: 100%; padding: 4px; object-fit: contain; background: #fff; }
.pc-carrier-suggestions { position: absolute; z-index: 8; top: calc(100% + 7px); left: 0; right: 0; max-height: 270px; overflow: auto; padding: 7px; border: 1px solid #cad6e0; border-radius: 14px; background: #fff; box-shadow: 0 18px 40px rgba(20,32,51,.17); }
.pc-carrier-option,.pc-no-carrier { display: flex; width: 100%; align-items: center; gap: 11px; min-height: 49px; padding: 8px 10px; color: var(--pc-ink); border: 0; border-radius: 9px; background: transparent; text-align: left; }
.pc-carrier-option:hover,.pc-carrier-option.active { background: #eef5fb; }
.pc-carrier-option > b,.pc-carrier-option > img,.pc-no-carrier > b { display: grid; place-items: center; width: 62px; height: 36px; flex: 0 0 auto; padding: 4px; color: #fff; border-radius: 8px; background: var(--pc-blue); object-fit: contain; font-size: 9px; }
.pc-carrier-option > img { background: #fff; border: 1px solid var(--pc-line); }
.pc-carrier-option span,.pc-carrier-option strong,.pc-carrier-option small,.pc-no-carrier span,.pc-no-carrier strong,.pc-no-carrier small { display: block; }
.pc-carrier-option strong,.pc-no-carrier strong { font-size: 10px; }
.pc-carrier-option small,.pc-no-carrier small { margin-top: 2px; color: var(--pc-muted); font-size: 7.5px; }
.pc-no-carrier { color: var(--pc-muted); }
.pc-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }
.pc-network-choice-wrap { display: grid; gap: 11px; }
.pc-network-choice-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.pc-choice-grid button { min-height: 112px; padding: 18px; color: var(--pc-navy); border: 2px solid var(--pc-line); border-radius: 16px; background: #fff; text-align: left; transition: .18s ease; }
.pc-choice-grid button:hover,.pc-choice-grid button.selected { border-color: var(--pc-blue); background: #f2f7fc; box-shadow: 0 0 0 3px rgba(33,71,119,.08); }
.pc-choice-grid b,.pc-choice-grid span { display: block; }
.pc-choice-grid b { font-family: Georgia,serif; font-size: 23px; }
.pc-choice-grid span { margin-top: 5px; color: var(--pc-muted); font-size: 9px; }
.pc-results-view { --pc-results-main-width: min(9in,max(620px,calc(100vw - 330px))); max-width: none; margin: 0 auto; }
.pc-results-layout { position: relative; }
.pc-results-main { position: relative; width: var(--pc-results-main-width); min-width: 0; margin: 0 auto; }
.pc-results-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 13px; padding: 14px 17px; color: #fff; border-radius: 14px; background: var(--pc-navy); box-shadow: 0 12px 32px rgba(20,32,51,.14); }
.pc-results-actions > div:last-child { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.pc-results-actions span,.pc-results-actions strong { display: block; }
.pc-results-actions span { color: #aebdca; font-size: 7px; font-weight: 900; letter-spacing: 1px; text-transform: uppercase; }
.pc-results-actions strong { margin-top: 2px; font-size: 12px; }
.pc-results-actions .pc-button-secondary { min-height: 35px; padding: 8px 11px; }
.pc-results-view .pc-preview-panel { position: static; width: 100%; max-height: none; overflow: visible; justify-self: auto; margin: 0; }
.pc-comparison-switcher { position: absolute; top: 0; left: calc(100% + 14px); display: grid; width: clamp(135px,calc(15vw - 24px),220px); gap: 9px; padding: 12px; border: 1px solid rgba(203,215,225,.9); border-radius: 16px; background: rgba(255,255,255,.86); box-shadow: 0 16px 42px rgba(20,32,51,.12); backdrop-filter: blur(12px); }
.pc-comparison-switcher-heading span,.pc-comparison-switcher-heading small { display: block; }
.pc-comparison-switcher-heading span { color: var(--pc-navy); font-size: 9px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }
.pc-comparison-switcher-heading small { margin-top: 2px; color: var(--pc-muted); font-size: 7.5px; }
.pc-comparison-bubbles { display: grid; gap: 8px; max-height: calc(100vh - 170px); overflow: auto; padding: 2px; }
.pc-comparison-bubble { width: 100%; min-width: 0; padding: 10px; color: var(--pc-ink); border: 1px solid #cfd9e2; border-radius: 13px; background: #fff; box-shadow: 0 7px 18px rgba(20,32,51,.07); text-align: left; transition: border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.pc-comparison-bubble:hover { border-color: #91bce8; transform: translateY(-1px); }
.pc-comparison-bubble.selected { border-color: var(--pc-blue); background: #edf5fc; box-shadow: 0 0 0 3px rgba(40,141,229,.13),0 8px 20px rgba(20,32,51,.08); }
.pc-comparison-bubble span,.pc-comparison-bubble strong,.pc-comparison-bubble small { display: block; }
.pc-comparison-bubble span { color: var(--pc-blue); font-size: 6.5px; font-weight: 900; letter-spacing: .55px; text-transform: uppercase; }
.pc-comparison-bubble strong { margin-top: 5px; color: var(--pc-navy); font-size: 9px; line-height: 1.3; overflow-wrap: anywhere; }
.pc-comparison-bubble small { margin-top: 4px; color: var(--pc-muted); font-size: 8px; line-height: 1.35; overflow-wrap: anywhere; }
.pc-add-comparison-bubble { width: 100%; min-height: 38px; padding: 9px 10px; color: #fff; border: 0; border-radius: 11px; background: var(--pc-blue); box-shadow: 0 7px 18px rgba(33,71,119,.2); font-size: 8.5px; font-weight: 900; }
.pc-add-comparison-bubble:hover { background: #288de5; transform: translateY(-1px); }
.pc-print-pages { display: none; }
.pc-print-pages.pc-preparing-print { position: fixed; z-index: -1; top: 0; left: -10000px; display: block; visibility: hidden; }
.pc-print-page { width: 7.7in; height: 10in; overflow: hidden; padding: 0 .08in; background: #fff; }
.pc-print-brand { display: flex; align-items: center; justify-content: space-between; height: .42in; margin-bottom: .12in; padding-bottom: .08in; color: var(--pc-muted); border-bottom: 1px solid var(--pc-line); font-size: 7pt; font-weight: 900; letter-spacing: 1px; text-transform: uppercase; }
.pc-print-brand img { display: block; width: 1.45in; height: .32in; object-fit: contain; object-position: left center; }
.pc-print-page-content { width: 100%; zoom: var(--pc-print-scale,1); }
.pc-plan-identity { display: flex; min-width: 0; align-items: center; gap: 8px; margin-top: 6px; }
.pc-plan-identity > img,.pc-plan-identity > b { display: grid; place-items: center; width: 70px; height: 38px; flex: 0 0 auto; padding: 4px; color: var(--pc-navy); border-radius: 7px; background: #fff; object-fit: contain; font-size: 9px; }
.pc-current .pc-plan-identity > b { color: #fff; background: #7d8995; }
.pc-plan-identity h3,.pc-plan-identity p { min-height: 0; margin: 0; }
.pc-plan-identity h3 { font-size: 11px; }
.pc-plan-identity p { margin-top: 1px; }
.pc-plan-identity .pc-hsa-badge { display: inline-flex; width: fit-content; margin-top: 4px; padding: 2px 6px; color: #155b8f; border-radius: 999px; background: #d9efff; font-size: 6.5px; font-weight: 900; letter-spacing: .4px; line-height: 1.2; text-transform: uppercase; }

@media (max-width: 1220px) {
  .pc-app-shell { grid-template-columns: 1fr; }
  .pc-editor { border-right: 0; }
  .pc-preview-panel { position: static; width: min(8.15in,calc(100% - 32px)); max-height: none; margin: 18px auto 40px; }
}

@media (max-width: 820px) {
  .pc-results-view { --pc-results-main-width: 100%; }
  .pc-results-main { display: flex; flex-direction: column; }
  .pc-results-view .pc-preview-panel { order: 2; }
  .pc-results-actions { order: 3; margin: 13px 0 0; }
  .pc-comparison-switcher { position: static; width: 100%; min-width: 0; order: 1; margin-bottom: 13px; }
  .pc-comparison-bubbles { display: flex; max-height: none; overflow-x: auto; padding: 3px; }
  .pc-comparison-bubble { min-width: 205px; }
}

@media (max-width: 720px) {
  .pc-app-header { flex-wrap: wrap; gap: 8px; padding: 10px 14px; }
  .pc-brand { width: 150px; }.pc-brand img { width: 145px; }
  .pc-header-title,.pc-save-state { display: none; }
  .pc-header-actions { flex-wrap: wrap; justify-content: flex-end; }
  .pc-header-actions .pc-button { min-height: 35px; padding: 8px 10px; font-size: 9px; }
  .pc-editor { padding: 25px 17px 45px; }
  .pc-editor-intro h1 { font-size: 27px; }
  .pc-form-grid-two,.pc-benefit-inputs,.pc-row-picker > div { grid-template-columns: 1fr; }
  .pc-preview-panel { width: 100%; margin: 0; border-radius: 0; box-shadow: none; }
  #comparisonPreview { padding: 22px 15px 35px; }
  .pc-hero { grid-template-columns: 1fr; }
  .pc-versus { justify-self: center; margin: -4px 0; }
  .pc-plan-card p { min-height: 0; }
  .pc-advantages { align-items: stretch; flex-direction: column; grid-template-columns: 1fr; }
  .pc-mini-summary { text-align: left; }
  .pc-savings-callout { grid-template-columns: auto 1fr; }
  .pc-advantages-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pc-row { grid-template-columns: 1fr; }
  .pc-row-label { grid-row: auto; align-items: center; flex-direction: row; justify-content: space-between; }
  .pc-row-values { grid-template-columns: 1fr; }
  .pc-row > p { margin-top: 2px; }
  .pc-survey-shell { padding: 18px 12px 38px; }
  .pc-survey-view { grid-template-columns: 1fr; }
  .pc-survey-card { min-height: 0; padding: 24px 18px; border-radius: 19px; }
  .pc-survey-sidebar-desktop { display: none; }
  .pc-survey-mobile-sidebar { display: grid; gap: 10px; margin-top: 14px; }
  .pc-survey-aside-mobile { display: grid; }
  .pc-survey-aside-mobile > article { padding: 11px 12px; }
  .pc-question-stage { min-height: 390px; padding: 28px 0 20px; }
  .pc-question-stage h1 { font-size: 32px; }
  .pc-survey-aside { grid-template-columns: 1fr; }
  .pc-choice-grid { grid-template-columns: 1fr; }
  .pc-choice-grid button { min-height: 90px; }
  .pc-results-actions { align-items: flex-start; flex-direction: column; }
  .pc-results-actions > div:last-child { width: 100%; }
  .pc-results-actions .pc-button { flex: 1; }
}

@media (max-width: 480px) {
  .pc-app-header { min-height: 58px; flex-wrap: nowrap; padding: 8px 11px; }
  .pc-brand { width: 132px; }
  .pc-brand img { width: 126px; height: 34px; }
  .pc-header-actions { flex-wrap: nowrap; gap: 5px; }
  .pc-header-actions .pc-button { min-height: 36px; padding: 8px 10px; border-radius: 8px; font-size: 10px; white-space: nowrap; }
  .pc-survey-shell { padding: 12px 9px 26px; }
  .pc-survey-card { padding: 18px 14px; border-radius: 16px; }
  .pc-survey-brandline span { font-size: 9px; letter-spacing: 1px; }
  .pc-survey-brandline strong { font-size: 10px; }
  .pc-progress { height: 5px; margin-top: 9px; }
  .pc-survey-mobile-sidebar { gap: 7px; margin-top: 10px; }
  .pc-survey-aside-mobile > article { padding: 9px 10px; border-radius: 11px; }
  .pc-survey-aside b { width: 20px; height: 20px; font-size: 8px; }
  .pc-survey-aside strong { font-size: 10px; }
  .pc-survey-aside small { font-size: 9px; }
  .pc-survey-reassurance { display: none; }
  .pc-question-stage { min-height: 300px; padding: 22px 0 15px; }
  .pc-question-kicker { font-size: 9px; letter-spacing: 1px; }
  .pc-question-stage h1 { margin: 7px 0; font-size: 27px; letter-spacing: -.6px; }
  .pc-question-stage > p { margin-bottom: 16px; font-size: 12px; }
  .pc-answer-input { min-height: 54px; padding: 0 13px; border-radius: 12px; }
  .pc-answer-input input,.pc-answer-input textarea,.pc-input-affix { font-size: 16px; }
  .pc-carrier-input-wrap { gap: 8px; }
  .pc-carrier-input-wrap > span { width: 55px; height: 36px; border-radius: 8px; font-size: 9px; }
  .pc-carrier-suggestions { max-height: 218px; padding: 5px; border-radius: 11px; }
  .pc-carrier-option,.pc-no-carrier { min-height: 43px; padding: 6px 7px; }
  .pc-carrier-option > b,.pc-carrier-option > img,.pc-no-carrier > b { width: 52px; height: 31px; }
  .pc-choice-grid { gap: 8px; }
  .pc-choice-grid button { min-height: 70px; padding: 12px 13px; border-radius: 12px; }
  .pc-choice-grid b { font-size: 19px; }
  .pc-choice-grid span { margin-top: 3px; font-size: 10px; }
  .pc-unsure-button { min-width: 96px; min-height: 36px; padding: 8px 12px; font-size: 10px; }
  .pc-survey-actions { padding-top: 13px; }
  .pc-survey-actions .pc-button { min-height: 40px; padding: 9px 12px; font-size: 11px; }
  .pc-next-button { min-width: 128px; gap: 10px; }

  .pc-comparison-switcher { gap: 7px; padding: 9px; border-radius: 13px; }
  .pc-comparison-switcher-heading span { font-size: 10px; }
  .pc-comparison-switcher-heading small { font-size: 9px; }
  .pc-comparison-bubbles { gap: 6px; }
  .pc-comparison-bubble { min-width: 170px; padding: 8px; border-radius: 10px; }
  .pc-comparison-bubble span { font-size: 9px; }
  .pc-comparison-bubble strong { margin-top: 3px; font-size: 10px; }
  .pc-comparison-bubble small { margin-top: 3px; font-size: 9px; }
  .pc-add-comparison-bubble { min-height: 38px; padding: 8px 10px; font-size: 10px; }
  .pc-results-actions { gap: 10px; margin: 10px 0 0; padding: 11px 12px; border-radius: 12px; }
  .pc-results-actions span { font-size: 9px; }
  .pc-results-actions strong { font-size: 12px; }
  .pc-results-actions > div:last-child { gap: 5px; }
  .pc-results-actions .pc-button { min-width: 0; min-height: 38px; padding: 8px 7px; border-radius: 8px; font-size: 10px; white-space: nowrap; }
  #comparisonPreview { padding: 16px 12px 25px; }
  .pc-heading { padding-bottom: 9px; }
  .pc-heading > span { font-size: 9px; letter-spacing: 1.1px; }
  .pc-heading h2 { margin: 4px 0 3px; font-size: 23px; line-height: 1.02; letter-spacing: -.4px; }
  .pc-heading p { font-size: 10.5px; line-height: 1.4; }
  .pc-recommendation { grid-template-columns: 1fr; gap: 4px; margin-top: 7px; padding: 8px 9px; border-left-width: 4px; border-radius: 8px; }
  .pc-recommendation div span { font-size: 9px; }
  .pc-recommendation div strong { font-size: 12px; }
  .pc-recommendation p { font-size: 10px; }
  .pc-category-summary { gap: 4px; margin-top: 5px; }
  .pc-category-summary > button { padding: 6px; border-radius: 7px; }
  .pc-category-summary span { font-size: 9px; letter-spacing: .35px; }
  .pc-category-summary strong { font-size: 10.5px; line-height: 1.3; }
  .pc-category-summary small { font-size: 9px; }
  .pc-hero { grid-template-columns: 1fr; gap: 7px; margin: 9px 0 8px; }
  .pc-versus { width: 32px; height: 32px; margin: -2px 0; font-size: 9px; }
  .pc-plan-card { display: grid; grid-template-columns: minmax(0,1fr) max-content; grid-template-rows: auto auto; min-height: 0; align-items: center; gap: 8px 12px; padding: 11px 12px; border-radius: 11px; }
  .pc-plan-card > span { grid-column: 1 / -1; font-size: 9px; letter-spacing: .7px; }
  .pc-plan-identity { grid-column: 1; grid-row: 2; gap: 8px; margin-top: 0; }
  .pc-plan-identity > img,.pc-plan-identity > b { width: 62px; height: 38px; padding: 4px; font-size: 9px; }
  .pc-plan-identity h3 { font-size: 13px; line-height: 1.25; }
  .pc-plan-identity p { font-size: 10px; line-height: 1.3; }
  .pc-plan-card.pc-current > strong { position: static; grid-column: 2; grid-row: 2; align-self: center; justify-self: end; font-size: 24px; }
  .pc-plan-card small { font-size: 9px; }
  .pc-premium-display { position: static; grid-column: 2; grid-row: 2; align-self: center; justify-self: end; }
  .pc-premium-display > span { font-size: 13px; }
  .pc-premium-display > strong,.pc-plan-card.pc-proposed.pc-premium-better .pc-premium-display > strong { font-size: 29px; }
  .pc-premium-display > small { font-size: 9px; }
  .pc-savings-callout { gap: 8px; margin: 6px 0; padding: 9px 10px; border-radius: 9px; }
  .pc-savings-icon { width: 30px; height: 30px; font-size: 17px; }
  .pc-mini-summary span { font-size: 9px; }
  .pc-mini-summary strong { font-size: 16px; }
  .pc-mini-summary em { margin-top: 4px; font-size: 9px; }
  .pc-rows { gap: 3px; }
  .pc-row { grid-template-columns: 1fr; gap: 8px; padding: 10px; border-radius: 9px; }
  .pc-row-label { grid-row: auto; align-items: center; flex-flow: row wrap; justify-content: space-between; gap: 6px 10px; }
  .pc-row-label > span { font-size: 10px; letter-spacing: .25px; }
  .pc-status,.pc-status-better { gap: 5px; font-size: 9px; }
  .pc-status b { width: 18px; height: 18px; flex-basis: 18px; font-size: 8px; }
  .pc-row-values { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; }
  .pc-value { padding: 7px 8px; border-radius: 7px; }
  .pc-value small { font-size: 9px; }
  .pc-value > strong,.pc-proposed-value > strong { font-size: 13px; }
  .pc-row > p { grid-column: 1; margin: 0; font-size: 9px; line-height: 1.35; text-align: right; }
  .pc-value-sentiment,.pc-value-warning { right: 6px; width: 22px; height: 22px; }
  .pc-proposed-better,.pc-proposed-worse { padding-right: 32px; }
  .pc-champ-value { gap: 6px; }
  .pc-champ-value s { font-size: 10px; }
  .pc-champ-value strong { font-size: 14px; }
  .pc-champ-value span { padding: 4px 7px; font-size: 8.5px; }
  .pc-advantages { gap: 7px; margin-top: 5px; padding: 8px; border-radius: 8px; }
  .pc-champ-logo { height: 48px; }
  .pc-advantages-title { font-size: 9px; }
  .pc-advantages-list { gap: 3px 6px; }
  .pc-advantages p { font-size: 9px; }
  .pc-disclaimer { font-size: 9px; line-height: 1.45; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .pc-confetti-burst { display: none; }
  .pc-question-exit-left,.pc-question-enter-right,.pc-question-exit-right,.pc-question-enter-left { animation: none; }
}

@media print {
  @page { size: Letter; margin: .35in .4in; }
  html,body { width: auto; min-height: 0; color: #111; background: #fff; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .no-print { display: none !important; }
  .pc-app-shell { display: block; min-height: 0; }
  .pc-survey-shell { min-height: 0; padding: 0; background: #fff; }
  .pc-results-view { display: none !important; }
  .pc-print-pages { display: block; }
  .pc-print-page { width: 100%; break-after: page; page-break-after: always; }
  .pc-print-page:last-child { break-after: auto; page-break-after: auto; }
  .pc-print-brand { break-after: avoid; page-break-after: avoid; }
  .pc-print-page-content { padding: 0; }
  .plan-comparison-preview { width: 100%; }
  .pc-heading { padding-bottom: 8px; break-after: avoid; page-break-after: avoid; }
  .pc-heading h2 { margin-top: 3px; font-size: 19pt; }
  .pc-heading p { font-size: 8pt; }
  .pc-hero { margin: 7px 0 6px; break-inside: avoid; page-break-inside: avoid; }
  .pc-plan-card { min-height: 108px; padding: 8px; }
  .pc-plan-card h3 { font-size: 12px; }
  .pc-plan-card > strong { font-size: 20px; }
  .pc-premium-display > strong { font-size: 23px; }
  .pc-plan-card.pc-proposed.pc-premium-better .pc-premium-display > strong { font-size: 29px; }
  .pc-savings-callout { margin: 6px 0; padding: 9px 12px; break-inside: avoid; page-break-inside: avoid; }
  .pc-savings-icon { width: 32px; height: 32px; font-size: 18px; }
  .pc-mini-summary strong { font-size: 16px; }
  .pc-mini-summary em { margin-top: 3px; font-size: 8px; }
  .pc-rows { display: block; }
  .pc-row { padding: 5px 7px; break-inside: avoid; page-break-inside: avoid; }
  .pc-row + .pc-row { margin-top: 3px; }
  .pc-row-label > span { font-size: 9px; }
  .pc-value { padding: 5px 7px; }
  .pc-advantages { margin-top: 5px; padding: 8px; break-inside: avoid; page-break-inside: avoid; }
  .pc-disclaimer { margin-top: 5px; padding: 6px 7px; font-size: 6pt; break-inside: avoid; page-break-inside: avoid; }
  .pc-comparison-disabled .pc-preview-panel { display: none; }
}
