parseSelector.pseudoClasses = {
  'not': function(nodes, selector) {
    var result = [];
    each: for(var i = 0, node; i < nodes.length; i++) {
      node = nodes[i];
      var ignore = parseSelector(selector, node.parentNode);
      for(var j = 0; j < ignore.length; j++) {
        if(ignore[j] == node) continue each;
      }
      result.push(node);
    }
    return result;
  }
}

//register fonts:
var gotham = { src: '/wp-content/themes/control4/_swf/gotham.swf' };
//activate fonts (only 1 activate call!):
sIFR.activate(gotham);
//replace fonts:
sIFR.replace(gotham, {
  selector: 'h1:not(.no_replace)',
  css: '.sIFR-root { color: #c52032; font-size: 40px}',  wmode: 'transparent'
});
sIFR.replace(gotham, {
  selector: 'h2:not(.no_replace)',
  css: '.sIFR-root { color: #c52032; font-size: 38px;}',  wmode: 'transparent'
});
sIFR.replace(gotham, {
  selector: 'h3:not(.no_replace)',
  css: '.sIFR-root { color: #c52032; font-size: 24px}',  wmode: 'transparent'
});

sIFR.replace(gotham, {
  selector: 'h4:not(.no_replace)',
  css: '.sIFR-root { color: #636363; font-size: 22px}',  wmode: 'transparent'
});

sIFR.replace(gotham, {
  selector: '.gotham',
  css: '.sIFR-root { color: #636363; font-size: 20px}',  wmode: 'transparent'
});
