By "the card name" I assume you mean the value of the id attribute of the card you want to process. Then I suspect you want something like this:
<xsl:param name="cardId"/>
<xsl:template match="/">
<xsl:apply-templates
select="rates/cardInfo/card[@id=$cardId]"/>
</xsl:template>
<xsl:template match="card">
<div id="image"><a href="{../cardRate/productLink}">{largeImage}</a></div>
<div id="rate">
<div class="name"><xsl:value-of select="@id" /></div>
<div class="rates"><xsl:value-of select="format-number(../cardRate/localRate, '##.00', 'us')"/>c per minute</div>
<div class="button"><a href="{../cardRate/productLink}"><img src="images/buy_button.gif" alt="Buy Now" width="65" height="18" border="0" /></a></div>
<div class="button"><a href="{../cardRate/productLink}"><img src="images/info_button.gif" alt="More Info" width="67" height="20" border="0" /></a></div>
</div>
Note that the path expressions need to start at the context node - the selected card element.
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference