.pricing-page--public {
    --pricing-ink: #08275f;
    --pricing-muted: #526b91;
    --pricing-line: #d7e2ef;
    --pricing-soft: #f4f8fc;
    --pricing-mint: #eaf9f6;
    color: var(--pricing-ink);
    background: radial-gradient(circle at 12% 4%, rgba(43, 191, 177, .1), transparent 24rem), linear-gradient(180deg, #f8fbff 0, #fff 35rem);
}
.pricing-page--public .pricing-hero { width: min(70rem, calc(100% - 3rem)); margin: 0 auto; padding: 5.2rem 0 3.8rem; }
.pricing-page--public .pricing-hero__title { max-width: 62rem; margin-inline: auto; font-size: clamp(2.6rem, 5.4vw, 4.8rem); }
.pricing-page--public .pricing-hero__lead { max-width: 54rem; }
.pricing-model { display: flex; justify-content: center; flex-wrap: wrap; gap: .65rem; margin: 1.7rem auto 0; }
.pricing-model span { display: inline-flex; align-items: center; gap: .55rem; border: 1px solid var(--pricing-line); border-radius: 999px; padding: .48rem .8rem .48rem .5rem; color: var(--pricing-muted); background: rgba(255, 255, 255, .8); font-size: .82rem; font-weight: 700; }
.pricing-model b { width: 1.45rem; height: 1.45rem; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--teal-dark); font-size: .72rem; }
.pricing-page--public .pricing-hero__candidate-note { margin-top: 1.15rem; }
.pricing-plans, .pricing-onboarding, .pricing-services, .pricing-commitment, .pricing-final, .pricing-comparison { width: min(88rem, calc(100% - 4rem)); margin-inline: auto; }
.pricing-section-heading { max-width: 46rem; margin-bottom: 1.65rem; }
.pricing-section-heading h2, .pricing-commitment h2, .pricing-final h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 2.55rem); line-height: 1.12; letter-spacing: -.04em; }
.pricing-section-heading > p:last-child, .pricing-commitment > div > p:last-child, .pricing-final > div > p:last-child { margin: .65rem 0 0; color: var(--pricing-muted); line-height: 1.55; }
.pricing-page--public .pricing-grid { width: auto; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.pricing-page--public .pricing-card { border-radius: 1rem; padding: 1.5rem; box-shadow: 0 16px 42px rgba(8, 39, 95, .07); }
.pricing-page--public .pricing-card--featured { padding: calc(1.5rem - 1px); background: linear-gradient(180deg, #f2fffc, #fff 38%); }
.pricing-page--public .pricing-card--ribboned { overflow: hidden; }
.pricing-page--public .pricing-card--standalone { border-color: #9ddbd4; background: linear-gradient(180deg, #f4fffd, #fff 40%); }
.pricing-card__value-ribbon { position: absolute; z-index: 2; top: 2.5rem; right: -3.25rem; width: 14rem; transform: rotate(42deg); padding: .35rem .65rem; color: #fff; background: linear-gradient(90deg, #087d78, #00aa9c); box-shadow: 0 .35rem 1rem rgba(8, 39, 95, .2); font-size: .5625rem; font-weight: 800; letter-spacing: .01em; line-height: 1.2; text-align: center; text-transform: uppercase; white-space: nowrap; pointer-events: none; }
.pricing-card--enterprise { background: linear-gradient(180deg, #f5f8ff, #fff 42%); }
.pricing-page--public .pricing-card__title { font-size: 1.7rem; }
.pricing-page--public .pricing-card__description { min-height: 3rem; margin: .55rem 0 1rem; }
.pricing-billing-switch { display:flex; flex-wrap:wrap; gap:4px; width:max-content; max-width:100%; margin:0 auto 1.5rem; padding:5px; border:1px solid var(--pricing-line); border-radius:10px; background:#fff; }
.pricing-billing-switch button { min-height:44px; padding:9px 18px; border:0; border-radius:6px; color:var(--pricing-muted); background:transparent; font:inherit; font-weight:700; cursor:pointer; }
.pricing-billing-switch button[aria-pressed="true"] { color:#007f79; background:var(--pricing-mint); }
.pricing-billing-switch button span { margin-left:6px; color:#007f79; font-size:.85em; }
.pricing-billing-switch button:focus-visible { outline:3px solid #008d84; outline-offset:2px; }
.pricing-card__billing-detail { min-height:3em; margin:0 0 .75rem; color:var(--pricing-muted); font-size:.85rem; line-height:1.5; }
.pricing-page--public .pricing-card__price { min-height: 3.4rem; margin: .4rem 0 .35rem; }
.pricing-page--public .pricing-card__price strong { font-size: clamp(2.15rem, 3vw, 2.8rem); white-space: nowrap; }
.pricing-page--public .pricing-card__price--quote { align-items: center; }
.pricing-page--public .pricing-card__price--quote strong { font-size: 2.15rem; }
.pricing-card__volume { min-height: 2.5rem; margin: 0 0 1rem; color: var(--pricing-muted); font-size: .82rem; line-height: 1.35; }
.pricing-card__volume strong { display: block; color: var(--pricing-ink); font-size: .9rem; }
.pricing-seats-note { display: grid; grid-template-columns: minmax(17rem, .8fr) minmax(0, 1.2fr); align-items: center; gap: 2rem; margin-top: 1rem; border: 1px solid #cfe6e3; border-radius: 1rem; padding: 1.15rem 1.35rem; color: var(--pricing-muted); background: #fff; font-size: .82rem; line-height: 1.45; }
.pricing-seats-note > div { display: grid; gap: .18rem; }
.pricing-seats-note strong { color: var(--pricing-ink); font-size: .92rem; }
.pricing-seats-note :is(p, small) { margin: 0; color: inherit; font-size: inherit; }
.pricing-card__setup { display: grid; grid-template-columns: 1fr auto; gap: .2rem .6rem; margin-bottom: .15rem; border: 1px solid #cfe6e3; border-radius: .75rem; padding: .85rem; background: var(--pricing-mint); }
.pricing-card__setup span { color: var(--pricing-muted); font-size: .72rem; font-weight: 750; text-transform: uppercase; }
.pricing-card__setup strong { font-size: .86rem; text-align: right; }
.pricing-card__setup small { grid-column: 1 / -1; color: var(--pricing-muted); font-size: .72rem; }
.pricing-page--public .pricing-card__features { gap: .62rem; margin-bottom: 1.4rem; padding-top: 1rem; }
.pricing-page--public .pricing-card__features li { font-size: .84rem; }
.pricing-onboarding, .pricing-services { padding-top: 5.2rem; }
.pricing-onboarding__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.pricing-inclusion-card { border: 1px solid var(--pricing-line); border-radius: 1rem; padding: 1.5rem; background: #fff; box-shadow: 0 16px 38px rgba(8, 39, 95, .055); }
.pricing-inclusion-card header { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; border-bottom: 1px solid var(--pricing-line); padding-bottom: 1rem; }
.pricing-inclusion-card header span { color: var(--teal-dark); font-size: .75rem; font-weight: 850; text-transform: uppercase; }
.pricing-inclusion-card h3 { margin: .25rem 0 0; font-size: 1.25rem; }
.pricing-inclusion-card header > strong { color: var(--teal-dark); white-space: nowrap; }
.pricing-inclusion-card ul { display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; }
.pricing-inclusion-card li { position: relative; padding-left: 1.5rem; color: var(--pricing-muted); font-size: .88rem; line-height: 1.45; }
.pricing-inclusion-card li::before { content: "\2713"; position: absolute; left: 0; color: var(--teal-dark); font-weight: 900; }
.pricing-inclusion-card__notice { margin: 1rem 0 0; border-radius: .65rem; padding: .75rem; color: var(--pricing-ink); background: var(--pricing-soft); font-size: .78rem; font-weight: 750; line-height: 1.45; }
.pricing-services__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.pricing-service { display: flex; align-items: start; justify-content: space-between; gap: 1rem; border: 1px solid var(--pricing-line); border-radius: .85rem; padding: 1.1rem; background: #fff; }
.pricing-service span { color: var(--teal-dark); font-size: .68rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.pricing-service h3 { margin: .25rem 0 .2rem; font-size: .98rem; overflow-wrap: anywhere; }
.pricing-service > div { min-width: 0; }
.pricing-service p { margin: 0; color: var(--pricing-muted); font-size: .78rem; line-height: 1.4; }
.pricing-service .pricing-service__availability { margin: 0 0 .45rem; color: var(--teal-dark); font-weight: 800; }
.pricing-service > strong { color: var(--pricing-ink); font-size: .9rem; white-space: nowrap; }
.pricing-success-card, .pricing-consulting { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 1rem; border-radius: 1rem; padding: 1.45rem 1.6rem; }
.pricing-success-card { border: 1px solid #aadfd8; color: #fff; background: linear-gradient(115deg, #087d78, #00aa9c); }
.pricing-success-card h3, .pricing-consulting h3 { margin: 0; font-size: 1.25rem; }
.pricing-success-card p:last-child, .pricing-consulting p { max-width: 48rem; margin: .35rem 0 0; font-size: .85rem; line-height: 1.45; opacity: .9; }
.pricing-success-card > strong, .pricing-consulting > strong { font-size: 1.35rem; white-space: nowrap; }
.pricing-success-card small, .pricing-consulting small { display: block; font-size: .7rem; font-weight: 600; text-align: right; }
.pricing-consulting { border: 1px solid var(--pricing-line); background: var(--pricing-soft); }
.pricing-consulting p { color: var(--pricing-muted); opacity: 1; }
.pricing-commitment { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(23rem, .9fr); align-items: center; gap: 3rem; margin-top: 5.2rem; border: 1px solid #cee6e2; border-radius: 1rem; padding: 2rem; background: linear-gradient(120deg, #effbf9, #f7faff); }
.pricing-commitment ul { display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; }
.pricing-commitment li { display: grid; gap: .18rem; border: 1px solid #d6e4ed; border-radius: .75rem; padding: .9rem 1rem; background: rgba(255, 255, 255, .8); }
.pricing-commitment li strong { font-size: .86rem; }
.pricing-commitment li span { color: var(--teal-dark); font-size: .82rem; font-weight: 750; }
.pricing-final { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 5.2rem; border-radius: 1rem; padding: 2rem; color: #fff; background: var(--pricing-ink); }
.pricing-final > div > p:last-child { color: #c8d6e9; }
.pricing-final .button { flex: 0 0 auto; }
.pricing-page--public .pricing-legal { width: min(88rem, calc(100% - 4rem)); margin-top: 1.25rem; }
.pricing-comparison { margin-top: 5.2rem; padding-bottom: 5.2rem; }
.pricing-comparison__heading { max-width: 54rem; margin-bottom: 1.65rem; }
.pricing-comparison__eyebrow { margin: 0 0 .55rem; color: var(--teal-dark); font-size: .76rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.pricing-comparison__heading h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 2.55rem); line-height: 1.12; letter-spacing: -.04em; }
.pricing-comparison__heading > p:last-child { margin: .65rem 0 0; color: var(--pricing-muted); line-height: 1.55; }
.pricing-comparison__mobile-hint { display: none; margin: 0 0 .75rem; color: var(--pricing-muted); font-size: .78rem; }
.pricing-comparison__scroll { overflow-x: auto; overscroll-behavior-x: contain; border: 1px solid var(--pricing-line); border-radius: 1rem; background: #fff; box-shadow: 0 16px 42px rgba(8, 39, 95, .055); scrollbar-color: var(--teal-dark) #eef4f8; }
.pricing-comparison__scroll:focus-visible { outline: 3px solid rgba(0, 141, 132, .35); outline-offset: 3px; }
.pricing-comparison__table { width: 100%; min-width: 72rem; border-spacing: 0; table-layout: fixed; color: var(--pricing-ink); }
.pricing-comparison__table :is(th, td) { border-right: 1px solid #e4ebf2; border-bottom: 1px solid #e4ebf2; padding: .9rem 1rem; vertical-align: middle; }
.pricing-comparison__table :is(th, td):last-child { border-right: 0; }
.pricing-comparison__table tbody tr:last-child :is(th, td) { border-bottom: 0; }
.pricing-comparison__table thead th { height: 5rem; background: #f7faff; text-align: center; }
.pricing-comparison__table thead th:first-child { z-index: 3; width: 23%; text-align: left; }
.pricing-comparison__table thead th:nth-child(3) { background: #effbf9; }
.pricing-comparison__table thead th:nth-child(4) { background: #e4f8f4; }
.pricing-comparison__table thead th:nth-child(5) { color: #fff; background: var(--pricing-ink); }
.pricing-comparison__table thead strong { display: block; font-size: 1rem; }
.pricing-comparison__table thead small { display: block; margin-top: .25rem; color: inherit; font-size: .7rem; font-weight: 650; opacity: .75; }
.pricing-comparison__table tbody th[scope="row"] { z-index: 2; background: #fff; font-size: .82rem; line-height: 1.35; text-align: left; }
.pricing-comparison__table :is(thead th:first-child, tbody th[scope="row"]) { position: sticky; left: 0; box-shadow: .55rem 0 .8rem -.75rem rgba(8, 39, 95, .35); }
.pricing-comparison__table tbody td { color: var(--pricing-muted); font-size: .76rem; line-height: 1.35; text-align: center; }
.pricing-comparison__group th { padding: .62rem 1rem; color: var(--teal-dark); background: #edf7f7; font-size: .7rem; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.pricing-comparison__value { display: inline-flex; min-height: 2rem; align-items: center; justify-content: center; border-radius: .55rem; padding: .38rem .58rem; font-weight: 750; }
.pricing-comparison__value--1 { color: #536780; background: #f3f6f9; }
.pricing-comparison__value--2 { color: #087d78; background: #eaf9f6; }
.pricing-comparison__value--3 { color: #006e68; background: #d9f4ef; }
.pricing-comparison__value--4 { color: var(--pricing-ink); background: #e8eef7; }
@media (max-width: 75rem) {
    .pricing-page--public .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pricing-page--public .pricing-card__description { min-height: auto; }
}
@media (max-width: 58rem) {
    .pricing-services__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .pricing-commitment { grid-template-columns: 1fr; gap: 1.5rem; }
}
@media (max-width: 44rem) {
    .pricing-page--public .pricing-hero { width: calc(100% - 2rem); padding: 3.4rem 0 2.8rem; }
    .pricing-plans, .pricing-onboarding, .pricing-services, .pricing-commitment, .pricing-final, .pricing-comparison { width: calc(100% - 2rem); }
    .pricing-page--public .pricing-grid, .pricing-onboarding__grid, .pricing-services__grid { grid-template-columns: 1fr; }
    .pricing-page--public .pricing-grid { max-width: none; }
    .pricing-model { align-items: stretch; flex-direction: column; }
    .pricing-model span { justify-content: flex-start; }
    .pricing-onboarding, .pricing-services { padding-top: 4rem; }
    .pricing-inclusion-card header, .pricing-service, .pricing-success-card, .pricing-consulting, .pricing-final { align-items: flex-start; flex-direction: column; }
    .pricing-success-card small, .pricing-consulting small { display: inline; }
    .pricing-final .button { width: 100%; }
    .pricing-page--public .pricing-legal { width: calc(100% - 2rem); }
    .pricing-comparison { margin-top: 4rem; padding-bottom: 4rem; }
    .pricing-comparison__mobile-hint { display: block; }
}
