.pricing-hero, .pricing-hero * { box-sizing: border-box; }
.pricing-hero { position: relative; isolation: isolate; overflow: hidden; padding: 5.5rem 0; background: linear-gradient(135deg, #F8FAFC 0%, #fff 52%, #F0FDF4 100%); }
.pricing-hero__background { position: absolute; z-index: -1; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.pricing-hero__container { display: grid; grid-template-columns: minmax(0, 3fr) minmax(20rem, 2fr); align-items: center; gap: 2.5rem; width: min(100% - 4rem, 1280px); margin: 0 auto; }
.pricing-hero__content { min-width: 0; }
.pricing-hero__eyebrow { display: inline-flex; align-items: center; gap: .6rem; margin: 0; color: #168A46; font-size: .74rem; font-weight: 900; letter-spacing: .12em; line-height: 1.3; }
.pricing-hero__eyebrow span { width: 1.65rem; height: 2px; background: #20B15A; }
.pricing-hero h1 { max-width: 45rem; margin: 1rem 0; color: #15157E; font-size: clamp(2.3rem, 4.2vw, 4.15rem); font-weight: 900; letter-spacing: -.05em; line-height: 1.08; }
.pricing-hero h1 em { color: #2563EB; font-style: normal; text-decoration: none; }
.pricing-hero h1 strong { color: #20B15A; font-weight: inherit; }
.pricing-hero__description { max-width: 39rem; margin: 0; color: #475569; font-size: 1.04rem; line-height: 1.7; }
.pricing-hero__pills { display: flex; flex-wrap: wrap; gap: .65rem; max-width: 43rem; margin: 1.7rem 0 0; padding: 0; list-style: none; }
.pricing-hero__pills li { display: inline-flex; align-items: center; gap: .42rem; min-height: 2.45rem; padding: .5rem .7rem; border: 1px solid #DCE8E2; border-radius: 999px; background: rgba(255, 255, 255, .86); box-shadow: 0 5px 12px rgba(21, 21, 126, .04); color: #334155; font-size: .78rem; font-weight: 800; line-height: 1.2; }
.pricing-hero__pills svg { width: 1.05rem; height: 1.05rem; flex: 0 0 1.05rem; fill: none; stroke: #20B15A; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.pricing-hero__visual { width: 100%; max-width: 34rem; justify-self: center; }
.pricing-hero__visual svg { display: block; width: 100%; height: auto; }
@media (max-width: 1023.98px) { .pricing-hero__pills { justify-content: center; margin-left: auto; margin-right: auto; } }
@media (max-width: 360px) { .pricing-hero { padding: 3.25rem 0; } .pricing-hero__container { grid-template-columns: 1fr; gap: 1.7rem; width: min(100% - 1.5rem, 1280px); } .pricing-hero__eyebrow { font-size: .58rem; gap: .38rem; } .pricing-hero__eyebrow span { width: 1rem; } .pricing-hero h1 { margin: .8rem 0; font-size: 2rem; } .pricing-hero__description { font-size: .87rem; } .pricing-hero__pills { gap: .48rem; margin-top: 1.25rem; } .pricing-hero__pills li { min-height: 2.2rem; padding: .4rem .55rem; font-size: .64rem; } .pricing-hero__pills svg { width: .9rem; height: .9rem; flex-basis: .9rem; } .pricing-hero__visual { max-width: 18.25rem; } }
@media (min-width: 361px) and (max-width: 480px) { .pricing-hero { padding: 3.75rem 0; } .pricing-hero__container { grid-template-columns: 1fr; gap: 1.9rem; width: min(100% - 2rem, 1280px); } .pricing-hero h1 { font-size: 2.3rem; } .pricing-hero__description { font-size: .94rem; } .pricing-hero__visual { max-width: 22rem; } }
@media (min-width: 481px) and (max-width: 767.98px) { .pricing-hero { padding: 4.25rem 0; } .pricing-hero__container { grid-template-columns: 1fr; gap: 2.15rem; width: min(100% - 3rem, 660px); } .pricing-hero h1 { font-size: 2.75rem; } .pricing-hero__visual { max-width: 27rem; } }
@media (min-width: 768px) and (max-width: 1023.98px) { .pricing-hero { padding: 4.75rem 0; } .pricing-hero__container { grid-template-columns: 1fr; gap: 2.4rem; width: min(100% - 4rem, 820px); } .pricing-hero__visual { max-width: 31rem; } }
@media (min-width: 1024px) and (max-width: 1279.98px) { .pricing-hero { padding: 5.5rem 0; } .pricing-hero__container { grid-template-columns: minmax(0, 3fr) minmax(19rem, 2fr); gap: 2rem; width: min(100% - 5rem, 1160px); } .pricing-hero h1 { font-size: 3.4rem; } .pricing-hero__visual { max-width: 30rem; } }
@media (min-width: 1280px) { .pricing-hero { padding: 6.25rem 0; } .pricing-hero__container { grid-template-columns: minmax(0, 3fr) minmax(21rem, 2fr); gap: 3rem; width: min(100% - 6rem, 1280px); } .pricing-hero__visual { max-width: 34rem; animation: pricing-hero-float 4.4s ease-in-out infinite; } }
@keyframes pricing-hero-float { 50% { transform: translateY(-7px); } }
@media (prefers-reduced-motion: reduce) { .pricing-hero *, .pricing-hero *::before, .pricing-hero *::after { animation-duration: .01ms !important; scroll-behavior: auto !important; transition-duration: .01ms !important; } }

/* Phase 02: Brokerage plan comparison. */
.pricing-plans { padding: 4.5rem 0; background: #F8FAFC; }
.pricing-plans__container { width: min(100% - 2rem, 1280px); margin: 0 auto; }
.pricing-plans__header { max-width: 48rem; margin: 0 auto; text-align: center; }
.pricing-plans__eyebrow { margin: 0; color: #168A46; font-size: .72rem; font-weight: 900; letter-spacing: .13em; line-height: 1.3; }
.pricing-plans__header h2 { margin: .72rem 0 .85rem; color: #15157E; font-size: clamp(1.85rem, 4vw, 3.15rem); font-weight: 900; letter-spacing: -.045em; line-height: 1.1; }
.pricing-plans__header h2 span { color: #20B15A; }
.pricing-plans__header > p:last-child { margin: 0; color: #475569; font-size: 1rem; line-height: 1.65; }
.pricing-plans__grid { display: grid; gap: 1rem; margin-top: 2.25rem; }
.pricing-plan { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 1.35rem; border: 1px solid #DCE5F1; border-radius: 1.25rem; background: #fff; box-shadow: 0 8px 22px rgba(15, 23, 42, .05); }
.pricing-plan--standard { border-top: 4px solid #15157E; }
.pricing-plan--advanced { border-top: 4px solid #20B15A; background: linear-gradient(155deg, #fff 0%, #F0FDF4 180%); }
.pricing-plan__popular { align-self: flex-start; margin: 0 0 .9rem; padding: .36rem .62rem; border-radius: 999px; background: #15157E; color: #fff; font-size: .63rem; font-weight: 900; letter-spacing: .08em; line-height: 1.25; }
.pricing-plan__popular span { color: #A7F3D0; }
.pricing-plan__intro { border-bottom: 1px solid #E2E8F0; padding-bottom: 1rem; }
.pricing-plan__name, .pricing-plan__subtitle { margin: 0; font-weight: 900; letter-spacing: .1em; line-height: 1.3; }
.pricing-plan__name { color: #15157E; font-size: .72rem; }.pricing-plan--advanced .pricing-plan__name { color: #147B41; }.pricing-plan__subtitle { margin-top: .28rem; color: #64748B; font-size: .62rem; }
.pricing-plan__intro h3 { margin: .7rem 0 .35rem; color: #15157E; font-size: 1.35rem; font-weight: 850; letter-spacing: -.025em; line-height: 1.2; }.pricing-plan__intro > p:last-child { margin: 0; color: #475569; font-size: .88rem; line-height: 1.55; }
.pricing-plan__charge-list { display: grid; gap: .6rem; margin: 1rem 0; }.pricing-plan__charge-list > div { display: grid; grid-template-columns: minmax(6.2rem, .75fr) minmax(0, 1.25fr); gap: .7rem; align-items: center; padding: .7rem 0; border-bottom: 1px solid #EEF2F6; }.pricing-plan__charge-list > div:last-child { border-bottom: 0; }
.pricing-plan__charge-list dt, .pricing-plan__charge-list dd, .pricing-plan__coverage dt, .pricing-plan__coverage dd { margin: 0; }.pricing-plan__charge-list dt strong { display: block; color: #15157E; font-size: 1.65rem; font-weight: 900; line-height: 1.05; }.pricing-plan__charge-list dt span { display: block; margin-top: .28rem; color: #64748B; font-size: .64rem; line-height: 1.35; }.pricing-plan__charge-list dd b { display: block; color: #334155; font-size: .8rem; font-weight: 850; line-height: 1.3; }.pricing-plan__charge-list dd span, .pricing-plan__coverage dd { display: block; margin-top: .28rem; color: #64748B; font-size: .7rem; font-weight: 700; line-height: 1.45; }.pricing-plan i { color: #20B15A; font-style: normal; }
.pricing-plan__annual-price { margin: 1.05rem 0 .8rem; text-align: center; }.pricing-plan__annual-price strong { color: #15157E; font-size: clamp(2rem, 4vw, 2.75rem); font-weight: 900; letter-spacing: -.045em; line-height: 1; }.pricing-plan__annual-price strong small { font-size: .4em; font-weight: 850; vertical-align: middle; }.pricing-plan__annual-price strong em { color: #168A46; font-size: .4em; font-style: normal; font-weight: 850; }.pricing-plan__annual-price > span { display: block; margin-top: .4rem; color: #64748B; font-size: .7rem; font-weight: 750; }
.pricing-plan__unlimited { display: flex; align-items: center; gap: .65rem; padding: .75rem; border: 1px solid #BBF7D0; border-radius: .8rem; background: rgba(232, 247, 238, .78); }.pricing-plan__unlimited svg { width: 1.55rem; height: 1.55rem; flex: 0 0 1.55rem; fill: none; stroke: #168A46; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }.pricing-plan__unlimited b, .pricing-plan__unlimited span { display: block; }.pricing-plan__unlimited b { color: #147B41; font-size: .78rem; line-height: 1.3; }.pricing-plan__unlimited span { color: #475569; font-size: .7rem; line-height: 1.4; }
.pricing-plan__coverage { display: grid; gap: .65rem; margin: 1rem 0; }.pricing-plan__coverage > div { padding: .75rem; border-left: 3px solid #20B15A; background: rgba(255, 255, 255, .62); }.pricing-plan__coverage dt { color: #15157E; font-size: .65rem; font-weight: 900; letter-spacing: .08em; }
.pricing-plan__ideal { margin-top: auto; padding: .8rem; border-radius: .75rem; background: #F1F5F9; color: #475569; font-size: .78rem; line-height: 1.55; }.pricing-plan--advanced .pricing-plan__ideal { background: rgba(232, 247, 238, .65); }.pricing-plan__ideal strong { color: #15157E; font-weight: 850; }.pricing-plan__ideal small { display: block; margin-top: .38rem; color: #64748B; font-size: .68rem; line-height: 1.45; }
.pricing-plan__cta { display: inline-flex; align-items: center; justify-content: center; align-self: center; gap: .45rem; width: min(100%, 17rem); min-height: 2.75rem; margin-top: 1rem; border: 2px solid #15157E; border-radius: 999px; background: transparent; color: #15157E; font-size: .75rem; font-weight: 900; letter-spacing: .03em; text-decoration: none; transition: background-color .2s ease, color .2s ease, transform .2s ease; }.pricing-plan--advanced .pricing-plan__cta { border-color: #20B15A; color: #168A46; }.pricing-plan__cta:hover { background: #15157E; color: #fff; transform: translateY(-2px); }.pricing-plan--advanced .pricing-plan__cta:hover { background: #20B15A; color: #fff; }.pricing-plan__cta:focus-visible { outline: 3px solid #20B15A; outline-offset: 3px; }
@media (max-width: 360px) { .pricing-plans { padding: 3.25rem 0; }.pricing-plans__container { width: min(100% - 1.5rem, 1280px); }.pricing-plans__header h2 { font-size: 1.75rem; }.pricing-plans__header > p:last-child { font-size: .86rem; }.pricing-plans__grid { gap: .9rem; margin-top: 1.7rem; }.pricing-plan { padding: 1rem; border-radius: 1rem; }.pricing-plan__charge-list > div { grid-template-columns: minmax(5.45rem, .78fr) minmax(0, 1.22fr); gap: .5rem; }.pricing-plan__charge-list dt strong { font-size: 1.05rem; }.pricing-plan__charge-list dd b { font-size: .74rem; }.pricing-plan__charge-list dd span { font-size: .64rem; }.pricing-plan__intro h3 { font-size: 1.18rem; } }
@media (min-width: 361px) and (max-width: 480px) { .pricing-plans { padding: 3.75rem 0; }.pricing-plans__container { width: min(100% - 2rem, 1280px); }.pricing-plans__header h2 { font-size: 2rem; }.pricing-plans__grid { gap: 1rem; margin-top: 1.9rem; }.pricing-plan { padding: 1.2rem; } }
@media (min-width: 481px) and (max-width: 767.98px) { .pricing-plans { padding: 4.25rem 0; }.pricing-plans__container { width: min(100% - 3rem, 660px); }.pricing-plans__header h2 { font-size: 2.25rem; }.pricing-plans__grid { gap: 1.15rem; }.pricing-plan { padding: 1.4rem; } }
@media (min-width: 768px) and (max-width: 1023.98px) { .pricing-plans { padding: 5rem 0; }.pricing-plans__container { width: min(100% - 4rem, 1000px); }.pricing-plans__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem; margin-top: 2.35rem; }.pricing-plan { padding: 1.35rem; }.pricing-plan__charge-list > div { grid-template-columns: minmax(5.6rem, .8fr) minmax(0, 1.2fr); } }
@media (min-width: 1024px) and (max-width: 1279.98px) { .pricing-plans { padding: 5.5rem 0; }.pricing-plans__container { width: min(100% - 5rem, 1180px); }.pricing-plans__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; margin-top: 2.7rem; }.pricing-plan { padding: 1.6rem; } }
@media (min-width: 1280px) { .pricing-plans { padding: 6rem 0; }.pricing-plans__container { width: min(100% - 6rem, 1280px); }.pricing-plans__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.75rem; margin-top: 2.9rem; }.pricing-plan { padding: 1.85rem; transition: box-shadow .22s ease, transform .22s ease; }.pricing-plan:hover { box-shadow: 0 16px 32px rgba(21, 21, 126, .12); transform: translateY(-5px); } }
@media (prefers-reduced-motion: reduce) { .pricing-plans *, .pricing-plans *::before, .pricing-plans *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }

/* Phase 03: Account and service charges. */
.pricing-charges { padding: 4.5rem 0; background: #fff; }
.pricing-charges__container { width: min(100% - 2rem, 1280px); margin: 0 auto; }
.pricing-charges__intro { max-width: 47rem; }
.pricing-charges__eyebrow { margin: 0; color: #168A46; font-size: .72rem; font-weight: 900; letter-spacing: .13em; line-height: 1.3; }
.pricing-charges__intro h2 { margin: .72rem 0 .85rem; color: #15157E; font-size: clamp(1.85rem, 4vw, 3.15rem); font-weight: 900; letter-spacing: -.045em; line-height: 1.1; }
.pricing-charges__intro h2 span { color: #20B15A; }
.pricing-charges__intro > p:last-child { margin: 0; color: #475569; font-size: 1rem; line-height: 1.65; }
.pricing-charges__tabs { display: inline-flex; position: relative; gap: .22rem; margin-top: 2rem; padding: .27rem; border: 1px solid #DDE7E5; border-radius: 999px; background: #F1F5F9; }
.pricing-charges__tab { min-width: 6.5rem; min-height: 2.65rem; padding: .55rem .9rem; border: 0; border-radius: 999px; background: transparent; color: #475569; cursor: pointer; font: inherit; font-size: .8rem; font-weight: 850; touch-action: manipulation; -webkit-tap-highlight-color: transparent; transition: background-color .2s ease, box-shadow .2s ease, color .2s ease; }
.pricing-charges__tab.is-active { background: #15157E; box-shadow: 0 4px 12px rgba(21,21,126,.18); color: #fff; }
.pricing-charges__tab:hover:not(.is-active) { color: #15157E; }
.pricing-charges__tab:focus-visible { outline: 3px solid #20B15A; outline-offset: 3px; }
.pricing-charges__panel { margin-top: 1.05rem; }
.pricing-charges__panel[hidden] { display: none !important; }
.pricing-charges__scroll-hint { display: flex; align-items: center; gap: .4rem; margin: 0 0 .48rem; color: #64748B; font-size: .72rem; font-weight: 750; line-height: 1.3; }
.pricing-charges__scroll-hint span { color: #20B15A; font-size: 1rem; }
.pricing-charges__table-wrap { overflow: auto; border: 1px solid #DCE5F1; border-radius: 1rem; box-shadow: 0 8px 22px rgba(15,23,42,.045); scrollbar-color: #20B15A #E2E8F0; scrollbar-width: thin; }
.pricing-charges__table { width: 100%; min-width: 58rem; border-collapse: separate; border-spacing: 0; color: #475569; font-size: .83rem; line-height: 1.48; }
.pricing-charges__table th, .pricing-charges__table td { padding: .9rem 1rem; border-right: 1px solid #E2E8F0; border-bottom: 1px solid #E2E8F0; text-align: left; vertical-align: top; }
.pricing-charges__table thead th { position: sticky; top: 0; z-index: 2; min-width: 11rem; background: #15157E; color: #fff; font-size: .75rem; font-weight: 850; letter-spacing: .02em; line-height: 1.35; }
.pricing-charges__table tr > *:first-child { position: sticky; left: 0; z-index: 1; width: 11.25rem; min-width: 11.25rem; background: #F8FAFC; box-shadow: 2px 0 0 #E2E8F0; color: #15157E; font-weight: 850; }
.pricing-charges__table thead tr > *:first-child { z-index: 3; background: #0F1B5F; color: #FFF;}
.pricing-charges__table tbody tr:nth-child(even) td { background: #FBFDFE; }
.pricing-charges__table tbody tr:last-child > * { border-bottom: 0; }
.pricing-charges__table tr > *:last-child { border-right: 0; }
.pricing-charges__brokerage td { background: #F0FDF4 !important; }
.pricing-charges__brokerage th { background: #E8F7EE !important; }
.pricing-charges__standard { color: #2563EB; font-weight: 850; }
.pricing-charges__advanced { color: #168A46; font-weight: 850; }
.pricing-charges__note { margin-top: 1.35rem; padding: 1rem 1.1rem; border: 1px solid #D7EEE0; border-left: 5px solid #20B15A; border-radius: .85rem; background: #F0FDF4; color: #475569; font-size: .83rem; line-height: 1.55; }
.pricing-charges__note p { margin: 0; }.pricing-charges__note p strong { color: #15157E; font-size: .72rem; font-weight: 900; letter-spacing: .09em; }.pricing-charges__note ul { display: grid; gap: .35rem; margin: .45rem 0 0; padding-left: 1.1rem; }.pricing-charges__note li::marker { color: #20B15A; }.pricing-charges__note b { color: #15157E; }
@media (max-width: 360px) { .pricing-charges { padding: 3.25rem 0; }.pricing-charges__container { width: min(100% - 1.5rem, 1280px); }.pricing-charges__intro h2 { font-size: 1.75rem; }.pricing-charges__intro > p:last-child { font-size: .86rem; }.pricing-charges__tabs { display: flex; width: 100%; margin-top: 1.45rem; }.pricing-charges__tab { min-width: 0; flex: 1; padding-inline: .35rem; font-size: .68rem; }.pricing-charges__table { min-width: 45rem; font-size: .71rem; }.pricing-charges__table th, .pricing-charges__table td { padding: .65rem .7rem; }.pricing-charges__table thead th { min-width: 8.8rem; font-size: .66rem; }.pricing-charges__table tr > *:first-child { width: 7.9rem; min-width: 7.9rem; }.pricing-charges__note { padding: .85rem .9rem; font-size: .74rem; } }
@media (min-width: 361px) and (max-width: 480px) { .pricing-charges { padding: 3.75rem 0; }.pricing-charges__container { width: min(100% - 2rem, 1280px); }.pricing-charges__intro h2 { font-size: 2rem; }.pricing-charges__tabs { display: flex; width: 100%; }.pricing-charges__tab { min-width: 0; flex: 1; font-size: .74rem; }.pricing-charges__table { min-width: 49rem; font-size: .76rem; }.pricing-charges__table th, .pricing-charges__table td { padding: .75rem .8rem; }.pricing-charges__table tr > *:first-child { width: 8.8rem; min-width: 8.8rem; }.pricing-charges__note { font-size: .78rem; } }
@media (min-width: 481px) and (max-width: 767.98px) { .pricing-charges { padding: 4.25rem 0; }.pricing-charges__container { width: min(100% - 3rem, 660px); }.pricing-charges__intro h2 { font-size: 2.25rem; }.pricing-charges__table { min-width: 53rem; font-size: .8rem; }.pricing-charges__table tr > *:first-child { width: 10rem; min-width: 10rem; } }
@media (min-width: 768px) and (max-width: 1023.98px) { .pricing-charges { padding: 5rem 0; }.pricing-charges__container { width: min(100% - 4rem, 1000px); }.pricing-charges__table { min-width: 57rem; font-size: .84rem; }.pricing-charges__scroll-hint { display: none; } }
@media (min-width: 1024px) and (max-width: 1279.98px) { .pricing-charges { padding: 5.5rem 0; }.pricing-charges__container { width: min(100% - 5rem, 1180px); }.pricing-charges__table { font-size: .87rem; }.pricing-charges__scroll-hint { display: none; } }
@media (min-width: 1280px) { .pricing-charges { padding: 6rem 0; }.pricing-charges__container { width: min(100% - 6rem, 1280px); }.pricing-charges__table { font-size: .9rem; }.pricing-charges__table th, .pricing-charges__table td { padding: 1rem 1.15rem; }.pricing-charges__scroll-hint { display: none; }.pricing-charges__tab:hover:not(.is-active) { background: rgba(32,177,90,.1); } }
@media (prefers-reduced-motion: reduce) { .pricing-charges *, .pricing-charges *::before, .pricing-charges *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }

/* Phase 04: Unmatched value. */
.pricing-values { position: relative; isolation: isolate; overflow: hidden; padding: 4.5rem 0; background: #F8FAFC; }
.pricing-values__background { position: absolute; z-index: -1; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.pricing-values__container { width: min(100% - 2rem, 1280px); margin: 0 auto; }
.pricing-values__intro { max-width: 47rem; margin: 0 auto; text-align: center; }
.pricing-values__eyebrow { margin: 0; color: #168A46; font-size: .72rem; font-weight: 900; letter-spacing: .13em; line-height: 1.3; }
.pricing-values__intro h2 { margin: .72rem 0 .85rem; color: #15157E; font-size: clamp(1.85rem, 4vw, 3.15rem); font-weight: 900; letter-spacing: -.045em; line-height: 1.1; }
.pricing-values__intro h2 span { color: #20B15A; }
.pricing-values__intro > p:last-child { margin: 0; color: #475569; font-size: 1rem; line-height: 1.65; }
.pricing-values__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1rem; max-width: 58rem; margin: 2.45rem auto 0; padding: 0; list-style: none; }
.pricing-value { display: flex; min-width: 0; flex-direction: column; align-items: center; color: #475569; text-align: center; }
.pricing-value__icon { display: grid; width: 3.6rem; height: 3.6rem; place-items: center; margin-bottom: .85rem; border-radius: 1rem; background: #E8F7EE; color: #20B15A; }
.pricing-value__icon svg { width: 2.15rem; height: 2.15rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.5; }
.pricing-value__icon--plans, .pricing-value__icon--research, .pricing-value__icon--hybrid { background: #EEF2FF; color: #2563EB; }
.pricing-value__icon--zero, .pricing-value__icon--support { background: #E8F7EE; color: #168A46; }
.pricing-value strong { color: #15157E; font-size: .66rem; font-weight: 900; letter-spacing: .075em; line-height: 1.35; }
.pricing-value > span:last-child { margin-top: .38rem; color: #475569; font-size: .88rem; font-weight: 600; line-height: 1.45; }
@media (max-width: 360px) { .pricing-values { padding: 3.25rem 0; }.pricing-values__container { width: min(100% - 1.5rem, 1280px); }.pricing-values__intro h2 { font-size: 1.75rem; }.pricing-values__intro > p:last-child { font-size: .86rem; }.pricing-values__grid { gap: 1.55rem .65rem; margin-top: 1.85rem; }.pricing-value__icon { width: 2.75rem; height: 2.75rem; margin-bottom: .62rem; border-radius: .75rem; }.pricing-value__icon svg { width: 1.72rem; height: 1.72rem; }.pricing-value strong { font-size: .56rem; }.pricing-value > span:last-child { font-size: .74rem; } }
@media (min-width: 361px) and (max-width: 480px) { .pricing-values { padding: 3.75rem 0; }.pricing-values__container { width: min(100% - 2rem, 1280px); }.pricing-values__intro h2 { font-size: 2rem; }.pricing-values__grid { gap: 1.75rem 1rem; margin-top: 2rem; }.pricing-value__icon { width: 3rem; height: 3rem; }.pricing-value__icon svg { width: 1.85rem; height: 1.85rem; }.pricing-value strong { font-size: .6rem; }.pricing-value > span:last-child { font-size: .8rem; } }
@media (min-width: 481px) and (max-width: 767.98px) { .pricing-values { padding: 4.25rem 0; }.pricing-values__container { width: min(100% - 3rem, 660px); }.pricing-values__intro h2 { font-size: 2.25rem; }.pricing-values__grid { gap: 2rem 1.5rem; }.pricing-value__icon { width: 3.5rem; height: 3.5rem; }.pricing-value__icon svg { width: 2.1rem; height: 2.1rem; }.pricing-value strong { font-size: .67rem; }.pricing-value > span:last-child { font-size: .88rem; } }
@media (min-width: 768px) and (max-width: 1023.98px) { .pricing-values { padding: 5rem 0; }.pricing-values__container { width: min(100% - 4rem, 1000px); }.pricing-values__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.45rem 1.5rem; max-width: none; margin-top: 2.6rem; }.pricing-value__icon { width: 3.75rem; height: 3.75rem; }.pricing-value__icon svg { width: 2.25rem; height: 2.25rem; }.pricing-value > span:last-child { font-size: .93rem; } }
@media (min-width: 1024px) and (max-width: 1279.98px) { .pricing-values { padding: 5.5rem 0; }.pricing-values__container { width: min(100% - 5rem, 1180px); }.pricing-values__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.75rem 2rem; max-width: none; margin-top: 2.8rem; }.pricing-value__icon { width: 4rem; height: 4rem; }.pricing-value__icon svg { width: 2.4rem; height: 2.4rem; }.pricing-value > span:last-child { font-size: .97rem; } }
@media (min-width: 1280px) { .pricing-values { padding: 6rem 0; }.pricing-values__container { width: min(100% - 6rem, 1280px); }.pricing-values__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem 2.5rem; max-width: none; margin-top: 3rem; }.pricing-value { transition: transform .22s ease; }.pricing-value:hover { transform: translateY(-5px); }.pricing-value__icon { width: 4.25rem; height: 4.25rem; }.pricing-value__icon svg { width: 2.55rem; height: 2.55rem; }.pricing-value strong { font-size: .72rem; }.pricing-value > span:last-child { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { .pricing-values *, .pricing-values *::before, .pricing-values *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }

/* Phase 05: Final account-opening call to action. */
.pricing-cta, .pricing-cta * { box-sizing: border-box; }
.pricing-cta { padding: 4.5rem 1rem; overflow: hidden; background: #fff; }
.pricing-cta__card { position: relative; isolation: isolate; width: min(100%, 960px); margin: 0 auto; overflow: hidden; padding: 3rem 2rem; border-radius: 1.5rem; background: linear-gradient(135deg, #0F8E48 0%, #20B15A 49%, #38C776 100%); box-shadow: 0 20px 40px rgba(15, 74, 44, .22); color: #fff; text-align: center; }
.pricing-cta__background { position: absolute; z-index: -1; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.pricing-cta__content { position: relative; max-width: 44rem; margin: 0 auto; }
.pricing-cta__eyebrow { margin: 0; color: #E8F7EE; font-size: .7rem; font-weight: 900; letter-spacing: .13em; line-height: 1.3; }
.pricing-cta h2 { margin: .8rem 0 .9rem; color: #fff; font-size: clamp(1.9rem, 4.5vw, 3rem); font-weight: 900; letter-spacing: -.045em; line-height: 1.1; }
.pricing-cta h2 span { color: #15157E; }
.pricing-cta__description { margin: 0; color: #F0FDF4; font-size: 1rem; line-height: 1.65; }
.pricing-cta__button { display: inline-flex; align-items: center; justify-content: center; gap: .48rem; min-height: 2.6rem; margin-top: 1.45rem; padding: .58rem 1.05rem; border: 2px solid #15157E; border-radius: 999px; background: #15157E; color: #fff; font-size: .76rem; font-weight: 900; text-decoration: none; transition: background-color .2s ease, color .2s ease, transform .2s ease, box-shadow .2s ease; }
.pricing-cta__button:hover { background: #fff; box-shadow: 0 8px 18px rgba(15,23,42,.2); color: #15157E; transform: translateY(-2px); }.pricing-cta__button:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.pricing-cta__highlights { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .85rem; margin: 1.75rem 0 0; padding: 1.2rem 0 0; border-top: 1px solid rgba(255,255,255,.28); list-style: none; }
.pricing-cta__highlights li { display: flex; align-items: center; justify-content: center; gap: .45rem; min-width: 0; color: #fff; font-size: .875rem; font-weight: 800; line-height: 1.35; }.pricing-cta__highlights svg { width: 1.2rem; height: 1.2rem; flex: 0 0 1.2rem; fill: none; stroke: #15157E; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
@media (max-width: 360px) { .pricing-cta { padding: 3.25rem .75rem; }.pricing-cta__card { padding: 1.5rem 1rem; border-radius: 1.2rem; }.pricing-cta h2 { font-size: 1.55rem; }.pricing-cta__description { font-size: .84rem; }.pricing-cta__highlights { gap: .35rem; margin-top: 1.35rem; padding-top: 1rem; }.pricing-cta__highlights li { flex-direction: column; gap: .28rem; font-size: .845rem; }.pricing-cta__highlights svg { width: 1.05rem; height: 1.05rem; flex-basis: 1.05rem; } }
@media (min-width: 361px) and (max-width: 480px) { .pricing-cta { padding: 3.75rem 1rem; }.pricing-cta__card { padding: 1.75rem 1.25rem; border-radius: 1.35rem; }.pricing-cta h2 { font-size: 1.75rem; }.pricing-cta__description { font-size: .9rem; }.pricing-cta__highlights { gap: .55rem; }.pricing-cta__highlights li { flex-direction: column; gap: .32rem; font-size: .875rem; } }
@media (min-width: 481px) and (max-width: 767.98px) { .pricing-cta { padding: 4.25rem 1.5rem; }.pricing-cta__card { padding: 2rem 1.5rem; }.pricing-cta h2 { font-size: 2rem; }.pricing-cta__highlights { gap: .75rem; }.pricing-cta__highlights li { font-size: .9rem; } }
@media (min-width: 768px) and (max-width: 1023.98px) { .pricing-cta { padding: 5rem 2rem; }.pricing-cta__card { width: min(100%, 720px); padding: 2.5rem 2rem; }.pricing-cta h2 { font-size: 2.15rem; } }
@media (min-width: 1024px) and (max-width: 1279.98px) { .pricing-cta { padding: 5.5rem 2.5rem; }.pricing-cta__card { width: min(100%, 840px); padding: 3rem 2.5rem; }.pricing-cta h2 { font-size: 2.45rem; } }
@media (min-width: 1280px) { .pricing-cta { padding: 6rem 3rem; }.pricing-cta__card { padding: 3.5rem 3rem; border-radius: 1.75rem; transition: transform .22s ease, box-shadow .22s ease; }.pricing-cta__card:hover { box-shadow: 0 25px 48px rgba(15,74,44,.28); transform: translateY(-3px); }.pricing-cta h2 { font-size: 2.7rem; } }
@media (prefers-reduced-motion: reduce) { .pricing-cta *, .pricing-cta *::before, .pricing-cta *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }
