/* Real prices, shown together: regular, Npay, and eligible first visits. */
.price-compare-amounts{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.35;letter-spacing:-.02em}
.price-compare-amounts s{font-size:11px;font-weight:400;color:#6a6a6a;text-decoration-thickness:1px}
.price-compare-amounts strong{font-size:16px;font-weight:700;color:#161616}
.price-compare-amounts .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.price-compare-key{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;line-height:1.6;margin:0 0 16px;color:#666}
.price-compare-key strong{font-weight:600;color:#262626}
.product-story .price-compare-table th,.product-story .price-compare-table td{padding:16px 9px}
.product-story .price-compare-table th:first-child{padding-left:0}
.product-story .price-compare-table th:not(:first-child),.product-story .price-compare-table td{text-align:center;border-left:1px solid #cecece}
.product-story .price-compare-table th:nth-child(2),.product-story .price-compare-table td:nth-child(2){background:#fafafa}
.product-story .price-compare-table th:nth-child(3),.product-story .price-compare-table td:nth-child(3){background:#f0f0f0}
.product-story .price-compare-table th:nth-child(4),.product-story .price-compare-table td:nth-child(4){background:#e7e7e7}
.product-story .price-compare-table th:nth-child(5),.product-story .price-compare-table td:nth-child(5){background:#dedede}
.product-story .price-compare-table thead th:not(:first-child){font-weight:650;color:#252525;border-top:2px solid #aaa}
.product-story .price-compare-table .price-compare-amounts{align-items:center}
.product-story .price-compare-table .price-compare-amounts strong{font-size:15px}
.price-first-panel{margin:26px 0 20px;padding:22px;border:1px solid #bbb;border-radius:15px;background:linear-gradient(145deg,#f5f5f5,#e8e8e8)}
.price-first-badge{display:inline-block;padding:5px 9px;background:#252525;color:#fff;font-size:10px;font-weight:650;border-radius:5px;line-height:1.4}
.price-first-panel__heading h3{font-size:18px;line-height:1.4;margin:12px 0 6px;letter-spacing:-.04em}
.price-first-panel__heading p{font-size:11px;line-height:1.7;margin:0;color:#595959}
.price-first-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;margin:20px 0}
.price-first-grid>div{min-width:0;padding:14px 0 0;border-top:1px solid #c8c8c8}
.price-first-grid dt{font-size:12px;font-weight:550;line-height:1.5;margin-bottom:8px}
.price-first-grid dd{margin:0}
.price-first-grid .price-compare-amounts{flex-direction:row;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:8px}
.price-first-grid .price-compare-amounts strong{font-size:20px}
.price-first-terms{font-size:10px;line-height:1.85;color:#606060;margin:0}
.profile-price-mini{margin:18px 0 12px;padding:15px 12px;background:#f4f4f4;border:1px solid #d6d6d6;border-radius:10px;min-width:0}
.profile-price-mini--first{background:linear-gradient(140deg,#f6f6f6,#e9e9e9);border-color:#c4c4c4}
.journey-designer-profile .profile-price-mini .profile-price-mini__title{font-size:11px;line-height:1.55;color:#202020;font-weight:700;margin:0 0 12px}
.profile-price-mini>.price-compare-amounts{flex-direction:row;align-items:baseline;justify-content:flex-start;flex-wrap:wrap;gap:7px}
.profile-price-mini>.price-compare-amounts strong{font-size:20px}
.profile-price-mini__rows{margin:0}
.profile-price-mini__rows>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #d0d0d0}
.profile-price-mini__rows dt{font-size:11px;line-height:1.5;min-width:0}
.profile-price-mini__rows dd{margin:0}
.profile-price-mini__rows .price-compare-amounts s{font-size:10px}
.profile-price-mini__rows .price-compare-amounts strong{font-size:15px}
.journey-designer-profile .profile-price-mini .profile-price-mini__terms{font-size:9px;line-height:1.7;color:#666;margin:11px 0 0}

/* Menu tabs still switch grades; every displayed menu shows the conditions together. */
.price-comparison-page .price-card .price-row{grid-template-columns:minmax(0,1fr) minmax(175px,auto);gap:24px}
.program-price-comparison{display:flex;justify-content:flex-end;gap:28px;min-width:0}
.program-price-option{display:flex;flex-direction:column;align-items:flex-end;gap:6px;padding:2px 0}
.program-price-option+.program-price-option{border-left:1px solid #c9c9c9;padding-left:22px}
.program-price-option>small{font-size:10px;font-weight:600;line-height:1.5;color:#616161;white-space:nowrap}
.program-price-option .price-compare-amounts strong{font-size:21px}
.program-price-option--first>small{color:#161616}
.program-price-option--first .price-compare-amounts strong{font-weight:800}
.price-comparison-page .price-card__h .perk{animation:none;cursor:default}
@media(max-width:700px){
 .product-story .price-comparison-sheet{padding:24px 14px}
 .price-compare-key{display:block;font-size:10px;margin-bottom:16px}
 .price-compare-key strong{display:block;margin-top:3px}
 .product-story .journey-grade-prices.price-compare-table tr{column-gap:0}
 .product-story .journey-grade-prices.price-compare-table thead tr{padding-bottom:0;border-bottom:0}
 .product-story .journey-grade-prices.price-compare-table thead th:not(:first-child){padding:12px 2px;border-left:1px solid #ccc;font-size:10px}
 .product-story .journey-grade-prices.price-compare-table tbody tr{padding:17px 0 0;border-bottom:0}
 .product-story .journey-grade-prices.price-compare-table tbody th{padding:0 0 10px;background:none;border:0}
 .product-story .journey-grade-prices.price-compare-table tbody td{padding:12px 2px;border-left:1px solid #ccc;border-bottom:1px solid #ccc}
 .product-story .price-compare-table .price-compare-amounts s{font-size:10px}
 .product-story .price-compare-table .price-compare-amounts strong{font-size:13px;letter-spacing:-.045em}
 .price-first-panel{padding:17px 12px;margin-top:25px}
 .price-first-panel__heading h3{font-size:16px}
 .price-first-grid{gap:16px 12px}
 .price-first-grid dt{font-size:11px}
 .price-first-grid .price-compare-amounts{gap:6px}
 .price-first-grid .price-compare-amounts s{font-size:10px}
 .price-first-grid .price-compare-amounts strong{font-size:17px}
 .price-first-terms{font-size:9px}
 .profile-price-mini{padding:13px 10px}
 .profile-price-mini__rows>div{display:block;padding:8px 0}
 .profile-price-mini__rows dt{font-size:10px;margin-bottom:4px}
 .profile-price-mini__rows .price-compare-amounts{flex-direction:row;justify-content:flex-start;align-items:baseline;gap:6px;flex-wrap:wrap}
 .profile-price-mini__rows .price-compare-amounts strong{font-size:15px}
 .profile-price-mini>.price-compare-amounts strong{font-size:17px}
 .price-comparison-page .price-card .price-row{grid-template-columns:1fr;gap:14px;padding:20px}
 .program-price-comparison{justify-content:flex-start;gap:22px}
 .program-price-option{align-items:flex-start}
 .program-price-option .price-compare-amounts{align-items:flex-start;flex-direction:row;align-items:baseline;gap:7px}
 .program-price-option .price-compare-amounts strong{font-size:18px}
 .program-price-option .price-compare-amounts s{font-size:11px}
 .program-price-option+.program-price-option{padding-left:22px}
}
@media(max-width:360px){
 .product-story .price-comparison-sheet{padding-left:12px;padding-right:12px}
 .product-story .price-compare-table .price-compare-amounts strong{font-size:12px}
 .price-first-grid .price-compare-amounts{flex-direction:column;align-items:flex-start;gap:2px}
 .profile-price-mini{padding:11px 8px}
 .profile-price-mini__rows .price-compare-amounts strong{font-size:14px}
 .program-price-comparison{gap:14px}
 .program-price-option+.program-price-option{padding-left:14px}
 .program-price-option .price-compare-amounts{flex-direction:column;align-items:flex-start;gap:3px}
}

@media(max-width:700px){.product-story .journey-grade-prices.price-compare-table thead th:not(:first-child){height:56px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}}

/* Four grade tabs keep one readable row, including narrow phones. */
@media(max-width:560px){
 .price-comparison-page .price-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:420px;box-sizing:border-box;gap:2px;padding:4px}
 .price-comparison-page .price-tab{width:100%;min-width:0;padding:10px 2px;font-size:11px;letter-spacing:0;box-sizing:border-box}
}
