/* Purposeful Money scalable inline CTA SVGs and slightly smaller home hero title. */
.cta-icon{width:20px;height:20px;flex:0 0 20px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .17s ease;pointer-events:none}
.primary-btn .cta-icon.btn-cart-icon{width:28px;height:28px;flex:0 0 28px;stroke-width:1.8}
.free-tool a,.workbook-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px}
.free-tool a:hover .cta-arrow-icon,.workbook-cta:hover .cta-arrow-icon,.primary-btn:hover:not(:disabled) .cta-arrow-icon{transform:translate(2px,-2px)}
.hero #hero-title{font-size:clamp(46px,4.8vw,64px);line-height:1.045;letter-spacing:-.65px}
@media(max-width:820px){.hero #hero-title{font-size:clamp(43px,7.5vw,55px)}}
@media(max-width:520px){.hero #hero-title{font-size:clamp(39px,9.1vw,45px)}.free-tool a,.workbook-cta{gap:10px}}
@media(max-width:350px){.hero #hero-title{font-size:38px}}
@media(prefers-reduced-motion:reduce){.cta-icon{transition:none}}

/* Purposeful Money inline SVG controls: vectors scale crisply across phones and desktops. */
.pm-icon{display:inline-block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;pointer-events:none}
.pm-icon *{vector-effect:non-scaling-stroke}
.download-button .pm-icon{width:22px;height:22px;flex-basis:22px}
.add-button .pm-icon{width:18px;height:18px;flex-basis:18px;margin-right:6px;vertical-align:-4px}
.auth-submit .pm-icon{width:20px;height:20px;flex-basis:20px}
.close-btn .pm-icon{width:22px;height:22px;flex-basis:22px}
.toolbar-print{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.toolbar-print .pm-icon{width:19px;height:19px;flex-basis:19px}
.toolbar-back .pm-icon,.members-back .pm-icon{width:17px;height:17px;flex-basis:17px;margin-right:5px;vertical-align:-3px}
@media(max-width:520px){
 .download-button .pm-icon{width:20px;height:20px;flex-basis:20px}
 .auth-submit .pm-icon{width:19px;height:19px;flex-basis:19px}
}
@media(prefers-reduced-motion:reduce){.pm-icon{transition:none}}