/* Benefit-first treatment cards, using the supplied VIVO palette. */
.value-promise{background:#0f172a;color:white;border-radius:16px;padding:28px;margin:28px 0;border-top:5px solid #ff7bac}
.value-promise>span{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#ffb4cf}.value-promise h2{color:white;font-size:26px;line-height:1.25;margin:12px 0 24px}.value-promise>div{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.value-promise p{color:#e1eaf6;font-size:12px;line-height:1.7;margin:0}.value-promise b{display:block;color:white;font-size:13px;margin-bottom:7px}.value-promise>small{display:block;border-top:1px solid #ffffff30;padding-top:16px;margin-top:22px;color:#e1eaf6;font-size:11px;line-height:1.7}
.extra-list{display:grid;gap:24px}.upgrade-card{border:1px solid #c4dced;border-radius:16px;overflow:hidden;background:white;box-shadow:0 8px 24px #0071bc0a;transition:border-color .15s}.upgrade-card:has(.selected){border:2px solid #13b58a}.upgrade-card-visual{height:170px;position:relative;background:#e5f3ff;overflow:hidden}.upgrade-card-visual img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.upgrade-card-visual:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0f172ac9)}.upgrade-card-visual>span{position:absolute;left:24px;bottom:18px;z-index:1;font-size:10px;font-weight:700;letter-spacing:1.3px;color:white}.upgrade-card-copy{padding:24px}.upgrade-card h2{font-size:20px;margin:0 0 10px;line-height:1.35}.upgrade-card .upgrade-benefit{font-size:18px;font-weight:700;line-height:1.45;color:#0071bc;margin:0 0 12px}.upgrade-card-copy>p{font-size:14px;line-height:1.8;color:#334155}.upgrade-value{border-left:3px solid #ff7bac;padding:9px 14px;background:#fff1f6;margin:18px 0;font-size:12px;line-height:1.7;color:#0f172a}.upgrade-value .bundle-saving{display:block;margin-top:4px}.upgrade-explainer{margin:16px 0 20px;border-bottom:1px solid #d6e4ef;padding-bottom:16px}.upgrade-explainer summary{font-size:13px;font-weight:700;color:#005c99;cursor:pointer;min-height:32px;line-height:1.6}.upgrade-explainer>div{padding:8px 0}.upgrade-explainer h3{font-size:13px;margin:18px 0 5px}.upgrade-explainer p{font-size:13px;line-height:1.8;color:#334155;margin:0}.upgrade-explainer a{display:inline-block;font-size:12px;color:#005c99;margin-top:16px;text-decoration:underline}.upgrade-card .extra{width:100%;display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;background:#edf7ff;border:1px solid #8dbce0;border-radius:10px;padding:16px;min-height:82px;text-align:left}.upgrade-card .extra.selected{background:#e3faf2;border-color:#13b58a}.upgrade-card .extra-check{display:grid;place-items:center;width:28px;height:28px;font-size:20px}.upgrade-card .extra-name strong{font-size:12px;line-height:1.5}.upgrade-card .extra-name small{font-size:10px!important;line-height:1.5}.upgrade-card .extra-price{max-width:none;min-width:90px}.upgrade-card .extra-price .price{font-size:24px}.upgrade-card .extra-price small{display:block;font-size:10px;line-height:1.6;margin-top:3px;color:#005c99}.upgrade-card .extra:hover{border-color:#0071bc;background:#e0f0ff}.welcome-visual{margin-top:30px}.intro{max-width:660px}.direct-request{border-radius:14px;box-shadow:0 8px 25px #0071bc0d}
@media(max-width:600px){.value-promise{padding:22px}.value-promise h2{font-size:24px}.value-promise>div{grid-template-columns:1fr;gap:16px}.value-promise b{margin-bottom:2px}.upgrade-card-visual{height:145px}.upgrade-card-copy{padding:20px}.upgrade-card h2{font-size:18px}.upgrade-card .upgrade-benefit{font-size:17px}.upgrade-card .extra{grid-template-columns:1fr auto;padding:14px;gap:10px}.upgrade-card .extra-check{display:none}.upgrade-card .extra-name strong{font-size:12px}.upgrade-card .extra-price .price{font-size:22px}.upgrade-card .extra-price{min-width:90px}.upgrade-explainer summary{min-height:44px}.welcome-visual{height:240px}}
@media(prefers-reduced-motion:reduce){.upgrade-card{transition:none}}
/* Keep the approved palette; put relevant media beside the benefit, not above it. */
.compact-value{padding:22px 26px;margin:24px 0}.compact-value h2{font-size:22px;margin:8px 0 10px}.compact-value>p{font-size:13px;line-height:1.8;color:#e1eaf6;max-width:590px;margin:0}
.upgrade-card{display:grid;grid-template-columns:190px minmax(0,1fr)}.upgrade-card-visual{height:auto;min-height:300px}.upgrade-card-visual img{position:absolute;inset:0;object-position:center}.upgrade-card-visual:after{inset:0;background:linear-gradient(180deg,#0f172a4d,transparent 45%,#0f172ac9)}.upgrade-card-visual>span{left:16px;right:16px;top:20px;bottom:auto;font-size:9px;line-height:1.8}.upgrade-card-copy{padding:24px}.upgrade-card h2{font-size:16px;color:#475569;font-weight:600}.upgrade-card .upgrade-benefit{font-size:22px;line-height:1.35;color:#0071bc}.upgrade-card-copy>p{font-size:13px;line-height:1.8}.upgrade-card .extra{grid-template-columns:1fr auto;gap:9px;padding:13px}.upgrade-card .extra-check{display:none}.upgrade-card .extra-name strong{font-size:11px}.upgrade-card .extra-name small{font-size:9px!important}.upgrade-card .extra-price .price{font-size:24px}.upgrade-explainer{margin:18px 0 0;padding-bottom:0;border-bottom:0}.upgrade-explainer summary{font-size:12px;min-height:28px}.upgrade-play{position:absolute;z-index:2;bottom:18px;left:12px;right:12px;border:1px solid #ffffff80;background:#ffffffed;color:#0f172a;border-radius:8px;padding:12px 10px;font:600 11px/1.6 Montserrat,Arial,sans-serif;cursor:pointer}.upgrade-play b{display:block;font-size:22px;color:#0071bc;margin-bottom:5px}.upgrade-play:hover{background:white}.upgrade-results{border:0;padding:12px 0 0;background:transparent;text-align:left;color:#005c99;font:600 12px/1.7 Montserrat,Arial,sans-serif;text-decoration:underline;cursor:pointer}.reservation-slot{margin:24px 0;border-top:1px solid #d6e4ef;padding-top:18px}.reservation-slot summary{font-size:12px;color:#475569;cursor:pointer}.reservation-slot .reserve-inline{display:inline-block;margin-top:12px;background:white;color:#005c99;border:1px solid #a5c9e4;padding:12px;border-radius:8px;font-size:12px}.request-next-steps{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid #d6e4ef;margin-bottom:10px}.request-next-steps span{flex:1;font-size:11px;line-height:1.6;color:#334155}.request-next-steps b{display:block;width:24px;height:24px;text-align:center;border-radius:50%;background:#ffe1ec;color:#0f172a;margin-bottom:8px;line-height:24px}.request-whatsapp{display:block;color:#005c99;font-size:12px;text-decoration:underline;padding:18px 0 0}.direct-request{scroll-margin-top:24px}.direct-request .request-success{background:#e3faf2;border-left:4px solid #13b58a;padding:18px!important;border-radius:8px;line-height:1.8}.direct-request .request-error{background:#fff1f6;border-left:4px solid #ff7bac;padding:18px!important;line-height:1.8}
@media(max-width:1000px) and (min-width:701px){.upgrade-card{grid-template-columns:160px minmax(0,1fr)}.upgrade-card-copy{padding:20px}.upgrade-card .upgrade-benefit{font-size:20px}}
@media(max-width:700px){.upgrade-card{grid-template-columns:1fr}.upgrade-card-visual{height:190px;min-height:0}.upgrade-card-visual img{object-position:center 42%}.upgrade-card-visual>span{top:16px;left:20px}.upgrade-play{left:auto;right:16px;bottom:14px;padding:10px 14px;display:flex;align-items:center;gap:10px;font-size:11px}.upgrade-play b{display:inline;margin:0;font-size:16px}.upgrade-card-copy{padding:22px}.upgrade-card .upgrade-benefit{font-size:22px}.upgrade-explainer summary{min-height:40px;display:flex;align-items:center}.upgrade-explainer summary:before{content:'+';margin-right:10px;font-size:18px}.upgrade-explainer[open] summary:before{content:'−'}.compact-value{padding:20px}.compact-value h2{font-size:21px}.request-next-steps{gap:10px}}
/* Final alignment and action hierarchy. */
.primary,.spotlight-add,.value-tag,.product-match,.tag{font-weight:700;text-align:center}.primary,.spotlight-add{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.45}.value-tag{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px;line-height:1.5}.upgrade-spotlight .bundle-saving{line-height:1.7}.compact-value{text-align:center}.compact-value>p{margin-left:auto;margin-right:auto}.compact-value>span{display:block}.upgrade-card .extra.selected{background:#e3faf2}.upgrade-card .extra-price{white-space:nowrap}.whatsapp-send{background:#0f172a;border-top:5px solid #13b58a;border-radius:16px;padding:30px;text-align:center;margin:28px 0}.whatsapp-send .eyebrow{color:#ffb4cf}.whatsapp-send h2{color:white;font-size:28px;margin:12px 0}.whatsapp-send p{color:#e0eaf6;font-size:14px;line-height:1.8}.whatsapp-send .primary{background:#13b58a;border-color:#13b58a;color:#0f172a;width:100%;padding:16px;box-sizing:border-box}.whatsapp-send small{display:block;color:#e0eaf6;font-size:12px;line-height:1.7;margin-top:16px}.secondary-direct{border-top:1px solid #b9d7ef;padding:20px!important;box-shadow:none}.secondary-direct>summary{color:#005c99;cursor:pointer;font-size:14px;font-weight:700;padding:8px 0;min-height:44px}.secondary-direct>.eyebrow{margin-top:24px}.skip-to-review{display:block;width:100%;background:#fff;border:1px solid #9ac3e1;border-radius:10px;padding:16px;color:#005c99;font:700 13px/1.6 Montserrat,Arial,sans-serif;margin:18px 0 26px;cursor:pointer;text-align:center}.upgrade-results{min-height:44px}.aftercare-value span{text-align:center}.aftercare-value strong{display:block}.request-next-steps span{text-align:center}.request-next-steps b{margin-left:auto;margin-right:auto}.product-card-photo img{object-fit:contain}.bottom-bar .primary{min-height:52px}.upgrade-explainer summary{min-height:44px;align-content:center}.extra-list{margin-top:24px}
@media(max-width:600px){.whatsapp-send{padding:24px 20px}.whatsapp-send h2{font-size:25px}.bottom-bar .primary{font-size:12px}.value-tag{font-size:11px}.step-trust-note button{min-height:44px}.product-match{font-size:10px;line-height:1.5}.upgrade-card .extra-name small{font-size:11px!important}.upgrade-card .extra-price small{font-size:11px}.aftercare-value{gap:8px}}

.journey-restart{margin-top:24px;text-align:center}.journey-restart button{border:0;background:transparent;color:#526477;text-decoration:underline;text-underline-offset:3px;font:inherit;font-size:12px;min-height:44px;padding:10px 16px;cursor:pointer}.journey-restart button:hover{color:#0071bc}.restart-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.restart-actions button{min-height:44px;padding:12px 20px;cursor:pointer}.restart-actions #cancel-restart{background:white;color:#0f172a;border:1px solid #ccd5de;border-radius:10px;font:inherit}
