/* Base Reset & Fonts
------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0;padding:0;}
a img {border:none;}

/* Typography - 100% = 16px
------------------------------------------------- */

body, input, textarea {font-size:100%;font-family:Arial,Helvetica,sans-serif;}
h1, h2, h3, h4, h5, h6 {font-weight:normal;}
h1, h2 {font-family:'Lucida Grande',Arial,Helvetica,sans-serif;}
h1, body#onecol h2 {font-size:1.5em;line-height:1;margin-bottom:1em;}
p.date {margin-top:-1.5em;font-style:italic;}
h1#logo {font-size:100%;margin:0;}
body#onecol #pri h1 {margin-bottom:0.5em;}
h2 {font-size:1.125em;margin-bottom:0.33em;}
li h2 {font-size:1.125em;}
/*#pri h2 {font-size:0.75em;font-weight:bold;margin-bottom:0;}*/
h2 + h3, h2 + dl {margin-top:1em;}
h3 {font-size:0.875em;font-weight:bold;line-height:1.25;margin-bottom:0.5em;}
h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
h6 {font-size:1em;font-weight:bold;}
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
p, li, dt, dd, label, th, td, address {font-size:0.8125em;line-height:1.5;}
#sec p, #sec li {font-size:0.75em;}
body#onecol #pri p {line-height:1.33;margin-bottom:1.33em;}
li p, li li, #sec li li {font-size:1em;}
p {margin:0 0 1.5em;}
img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
a:focus, a:hover {color:#000;}
a {color:#009;text-decoration:underline;}
blockquote {margin:1.5em;color:#666;font-style:italic;}
strong {font-weight:bold;}
em, dfn {font-style:italic;}
dfn {font-weight:bold;}
sup, sub {line-height:0;}
abbr, acronym {border-bottom:1px dotted #666;}
address {margin:0 0 1.5em;font-style:italic;}
del {color:#666;}
pre {margin:1.5em 0;white-space:pre;}
pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
li ul, li ol {margin:0 1.5em;}
ul, ol {margin:0 1.5em 1.5em 1.5em;}
ul {list-style-type:disc;}
ol {list-style-type:decimal;}
dl {margin:0 0 1.5em 0;}
dl dt {font-weight:bold;}
dd {margin-bottom:0.33em;}

#pri ul#nav_categories, #pri ul#sponsorlist, #login ul  {list-style:none;margin:0;}



/* Main Structure - DO NOT CHANGE THIS SECTION!!
------------------------------------------------- */
#wrap, #ft {margin:0 auto;position:relative;}
#pri, #sec, #ter {float:left;}
#pri {width:100%;}
#sec {position:relative;left:-100%;}
#ft {clear:both;position:relative;}
.grid-2 .col, .grid-4 .grid-2 {float:right;display:inline;}
.grid-2 div.first, .grid-4 div.first, .grid-3 .col {float:left;}
.grid-2 .col, .grid-4 .grid-2, .grid-4 .grid-2 .col {width:50%;}
.grid-3 .col {width:33%;}
body#onecol #sec, body#onecol #ter, body#twocol-left #ter, body#twocol-right #sec {display:none;}
body#onecol #pri .pad {margin:0;}
body#twocol-left #pri .pad {margin-right:0;}
body#twocol-right #pri .pad {margin-left:0;}

.director .col {width:461px;}
.director div.first {width:171px;}

body#onecol .grid-2 {padding:0 0 0 44px;}
body#onecol .grid-2 .col {width:500px;}
body#onecol .grid-2 div.first {width:360px;padding-right:18px;}

body#onecol .homecols {padding-top:24px;}
body#onecol .homecols div.first {width:348px;padding-right:30px;}
body#onecol .homecols div.second {width:496px;}

body#onecol .homecols .newscols {padding-left:0;padding-bottom:16px;}
body#onecol .homecols .newscols div.first {width:260px;padding-right:24px;}
body#onecol .homecols .newscols div.second {width:212px;}


/* Widths & Footer height
------------------------------------------------- */
#wrap, #ft {width:960px;}

#pri .pad {
margin:0 0 0 290px;
padding:48px 38px 56px 0;
}

#sec {
width:290px;
margin-right:-290px;
display:inline;
}

#sec .pad {padding:48px 31px 56px 45px;}



/* Theme
------------------------------------------------- */

body {
background:url(cssimages/bg-body.gif) repeat;
color:#1e1e1e;
}

#wrap {background:#fff url(cssimages/bg-wrap.png) repeat-x 0 0;}

a {
color:#672c98;
text-decoration:none;
}

#sec a, #login a, #ft a {color:#2b3e5f;}

p a, a:hover {text-decoration:underline;}
p.more a {text-decoration:none;}

#logo, #logo a {
display:inline;
background:url(cssimages/logo.gif) no-repeat 0 0;
}

#logo a {
display:block;
width:250px;
height:190px;
text-indent:-9999px;
outline:none;
}

#tagline {
position:absolute;
left:-9999px;
}

#utilitynav {
position:absolute;
margin:0;
top:0;
left:0;
background:#600094;
width:960px;
}

#utilitynav li {
display:inline;
font-size:0.75em;
}

#utilitynav li a {
display:block;
float:right;
padding:0.3em 0 0.45em;
margin:0 1em;
color:#e1e1e1;
}

#utilitynav li a:hover {
color:#fff;
text-decoration:none;
}

#masthead {position:relative;}

#login {
width:316px;
position:absolute;
right:0;
top:0;
margin:2.25em 2em 1em 0;
text-align:left;
}

#login div.loginwrap {padding-right:60px;}

#login div.loginwrap div {
float:left;
margin-right:4px;
}

#login div.loginwrap div.autologin {
float:none;
margin:0;
position:relative;
}

#login label, #login input {font-size:0.75em;}
#login label {display:block;}
#login input.input {width:120px;}

#login input.submit {
position:absolute;
top:19px;
right:0;
}

#login span {
display:block;
font-size:0.75em;
position:absolute;
left:127px;
margin-top:-1.1em;
}

#login li {
display:inline;
}

#login li a {
display:block;
float:left;
line-height:1em;
border-right:1px solid #1e1e1e;
padding-right:1em;
margin-right:1em;
}

#login li:last-child a {
border-right:0;
margin-right:0;
padding-right:0;
}

#login li.last-child a {
border-right:0;
margin-right:0;
padding-right:0;
}

#nav {
clear:both;
width:100%;
overflow:hidden;
margin:0;
list-style:none;
}

#nav li {display:inline;}

#nav, #nav a {background:url(cssimages/bg-nav.png) no-repeat 0 0;height:40px;}

#nav a {
display:block;
float:left;
text-indent:-9999px;
outline:none;
height:40px;
overflow:hidden;
}

#nav-home a {
width:117px;
background-position:0 0;
}

#nav-about a {
width:137px;
background-position:-117px 0 ;
}

#nav-membership a {
width:153px;
background-position:-254px 0 ;
}

#nav-conference a {
width:144px;
background-position:-407px 0 ;
}

#nav-sponsors a {
width:129px;
background-position:-551px 0 ;
}

#nav-webinars a {
width:128px;
background-position:-680px 0 ;
}

#nav-contact a {
width:152px;
background-position:-808px 0 ;
}

#nav-home a:hover, #nav-home.current a {background-position:0 -40px;}
#nav-about a:hover, #nav-about.current a {background-position:-117px -40px;}
#nav-membership a:hover, #nav-membership.current a {background-position:-254px -40px;}
#nav-conference a:hover, #nav-conference.current a {background-position:-407px -40px;}
#nav-sponsors a:hover, #nav-sponsors.current a {background-position:-551px -40px;}
#nav-webinars a:hover, #nav-webinars.current a {background-position:-680px -40px;}
#nav-contact a:hover, #nav-contact.current a {background-position:-808px -40px;}

.board {
float:left;
width:316px;
min-height:12em;
}

.board a.boardmember {
display:block;
float:left;
}

img.boardsupporting {
float:right;
margin:0 0 24px 8px;
}

.board h2, .board .vcard {margin:0 0 0 140px;}
.board h2, .director h2 {font-size:0.75em;}
.board a, .director h2 {font-weight:bold;}

.vcard span.fn, .vcard .org, .vcard .street-address, .vcard .extended-address, .vcard .cityetc, .vcard .tel, .vcard a.email {
font-size:0.75em;
line-height:1.5;
}

.vcard span.fn, .vcard a.email {display:block;}
.vcard .tel {text-transform:capitalize;}
.vcard .tel span.type {font-weight:bold;}

a.boardmember img, img.boardmember, img.boardsupporting {
display:block;
padding:3px;
border:1px solid #ccc;
}

a.boardmember img:hover {border:1px solid #666;}
#addressbook {margin:-18px 0 18px 171px;}

.sponsor {
display:block;
float:left;
width:176px;
}

/*#pri .sponsor {min-height:9em;}*/

body#onecol .sponsor {
width:166px;
}

#pri .webinar {
border-bottom:1px solid #ccc;
margin-bottom:1em;
}

#faq dt, #faq dd {
padding:1em;
background:#fcf9fd;
}

#faq dt {padding-bottom:0;}
#faq dd {padding-top:0.5em;}
#faq dt.even, #faq dd.even {background:#f3f0f4;}

#pri table {
width:100%;
margin-bottom:1em;
}

#pri table, #pri th, #pri td {
border:1px solid #856e98;
border-collapse:collapse;
}

#pri th, #pri td {
/*width:50%;*/
text-align:center;
padding:2px 0 3px;
}

#pri th {background:#f3f0f4;}

#pri .thumb a {
float:left;
width:244px;
border:1px solid #ccc;
margin:12px 36px 12px 0;
padding:10px;
display:block;
font-size:0.6875em;
text-align:center;
}

#pri .thumb a {
display:block;
font-size:0.6875em;
text-align:center;
}

#pri .thumb a:hover {
text-decoration:none;
border:1px solid #666;
}

.paginate {
clear:both;
font-size:0.75em;
padding-top:2em;
}

.callout, #sec .box {background:#ebe3f2;}

.callout {
float:right;
width:287px;
margin-left:16px;
padding:33px 33px 6px;
}

.homeimg {
display:block;
padding:23px 21px;
background:#ebe3f2;
}

p.video {
background:url(cssimages/bg-vid.gif) no-repeat 0 22px;
padding:12px 0 0 40px;
}

#pri table#sponsortable, #pri table#sponsortable td {
border:0;
vertical-align:middle;
}

#sec h2 {margin:0 0 13px;}

#secnav, #secnav ul {
list-style:none;
margin:0;
}

#secnav {margin-bottom:2em;}
#secnav ul {margin-top:0.5em;}

#secnav li {
background:url(cssimages/bullet-subnav.gif) no-repeat 0 5px;
margin:3px 0 8px;
padding:0 0 8px 14px;
border-bottom:1px solid #ccc;
}

#secnav a {text-decoration:none;}

#secnav li li {
background:url(cssimages/bullet-sub-subnav.gif) no-repeat 0 5px;
border-bottom:0;
margin:0;
}

#secnav li.current {font-weight:bold;}
#secnav li.current ul li {font-weight:normal;}
#secnav li.current ul li.current {font-weight:bold;}

#sec .box {
margin:0 0 24px 0;
padding:12px 19px 4px;
}

#ft {
padding-top:5em;
background:#fff url(cssimages/bg-ft.png) repeat-x bottom left;
}

#ft p {
font-size:0.6875em;
text-align:right;
padding:1em 1.5em;
margin:0;
}

#ft ul {
position:absolute;
left:1.5em;
list-style:none;
margin:0.7em 0 0;
}

#ft li {
display:inline;
font-size:0.6875em;
}

#ft a {
display:block;
float:left;
margin-right:1.5em;
text-decoration:none;
}

#ft a:hover {
text-decoration:underline;
}


/* Shadowbox styles
------------------------------------------------- */
#shadowbox_container, #shadowbox_overlay {
top:0;
left:0;
height:100%;
width:100%;
margin:0;
padding:0;
}

#shadowbox_container {
position:fixed;
display:block;
visibility:hidden;
z-index:999;
text-align:center;
}

#shadowbox_overlay {
position:absolute;
background-image:url(cssimages/shadowbox/overlay.png);
background-repeat:repeat;
}

#shadowbox {
position:relative;
margin:0 auto;
text-align:left;
}

#shadowbox_body {
position:relative;
margin:0;
padding:0;
border:1px solid #fff;
overflow:hidden;
}

#shadowbox_body_inner {
position:relative;
height:100%;
}

#shadowbox_content.html {
height:100%;
overflow:auto;
}

#shadowbox_loading {
position:absolute;
top:0;
width:100%;
height:100%;
}

#shadowbox_body, #shadowbox_loading {
background-color:#060606;
}

#shadowbox_loading_indicator {
float:left;
margin:10px 10px 0 10px;
height:32px;
width:32px;
background-image:url(cssimages/shadowbox/loading.gif);
background-repeat:no-repeat;
}

#shadowbox_loading span {
font-family:'Lucida Grande', Tahoma, sans-serif;
font-size:10px;
float:left;
margin-top:16px;
}

#shadowbox_loading span a:link, #shadowbox_loading span a:visited {
color:#fff;
text-decoration:underline;
}

#shadowbox_title, #shadowbox_info {
position:relative;
margin:0;
padding:0;
overflow:hidden;
}

#shadowbox_title_inner, #shadowbox_info_inner {
position:relative;
font-family:'Lucida Grande', Tahoma, sans-serif;
line-height:16px;
}

#shadowbox_title {
height:26px;
}

#shadowbox_title_inner {
font-size:16px;
padding:5px 0;
color:#fff;
}

#shadowbox_info {
height:20px;
}

#shadowbox_info_inner {
font-size:12px;
color:#fff;
}

#shadowbox_nav {
float:right;
height:16px;
padding:2px 0;
width:45%;
}

#shadowbox_nav a {
display:block;
float:right;
height:16px;
width:16px;
margin-left:3px;
cursor:pointer;
}

#shadowbox_nav_close {
background-image:url(cssimages/shadowbox/close.png);
background-repeat:no-repeat;
}

#shadowbox_nav_next {
background-image:url(cssimages/shadowbox/next.png);
background-repeat:no-repeat;
}

#shadowbox_nav_previous {
background-image:url(cssimages/shadowbox/previous.png);
background-repeat:no-repeat;
}

#shadowbox_nav_play {
background-image:url(cssimages/shadowbox/play.png);
background-repeat:no-repeat;
}

#shadowbox_nav_pause {
background-image:url(cssimages/shadowbox/pause.png);
background-repeat:no-repeat;
}

#shadowbox_counter {
float:left;
padding:2px 0;
width:45%;
}

#shadowbox_counter a {
padding:0 4px 0 0;
text-decoration:none;
cursor:pointer;
color:#fff;
}

#shadowbox_counter a.shadowbox_counter_current {
text-decoration:underline;
}

div.shadowbox_clear {
clear:both;
}

div.shadowbox_message {
font-family:'Lucida Grande', Tahoma, sans-serif;
font-size:12px;
padding:10px;
text-align:center;
}

div.shadowbox_message a:link, div.shadowbox_message a:visited {
color:#fff;
text-decoration:underline;
}


/* Forms (#pri)
------------------------------------------------- */
#pri form {
margin: 0;
padding: 0;
/*width: 500px;*/
}

#pri form fieldset {
clear: both;
border-color: #b9b9b9;
border-width: 1px 0 0 0;
border-style: solid none none none;
padding: 10px;
margin:0;
}

#pri form fieldset legend {
font-weight: normal;
color:#000;
margin:0;
padding: 0 5px;
}

#pri form input, #pri form select, #pri form textarea {
color: #000;
font-size:0.8125em;
}

#pri form textarea {
overflow: auto;
}

#pri form div {
clear: left;
display: block;
margin: 5px 0 0 0;
padding: 1px 3px;
}

#pri form div.wide input.inputText, #pri form div.wide input.inputPassword, #pri form div.wide input.inputFile, #pri form div.wide select, #pri form div.wide textarea {
margin:0;
width:480px;
}

#pri form div.col div.wide textarea {width:auto;}

#pri form select, #pri form div.wide div#showme select {
width:206px;
}

#pri form input, #pri form textarea {
width:200px;
border:1px solid #b9b9b9;
padding:2px;
}

#pri form input.inputRadio, #pri form input.inputCheckbox, #pri form input.inputSubmit {
width:auto;
border:0;
padding:0;
}

#pri form div.wide label {
display:block;
float:none;
width:auto;
text-align:left;
}

#pri form fieldset div.notes {
float: right;
width: 158px;
height: auto;
margin: 0 0 10px 10px;
padding: 5px;
border: 1px solid #666666;
background-color: #ffffe1;
color: #666666;
font-size: 88%;
}

#pri form fieldset div.notes h4 {
background-image: url(/images/icon_info.gif);
background-repeat: no-repeat;
background-position: top left;
padding: 3px 0 3px 27px;
border-width: 0 0 1px 0;
border-style: solid;
border-color: #666666;
color: #666666;
font-size: 110%;
}

#pri form fieldset div.notes p {
margin: 0em 0em 1.2em 0em;
color: #666666;
}

#pri form fieldset div.notes p.last {margin:0;}

#pri form div fieldset {
clear: none;
border-width: 1px;
border-style: solid;
border:1px solid #b9b9b9;
margin: 0 0 0 144px;
padding: 8px 5px 5px 15px;
width: 197px;
}

#pri form div.wide fieldset {
margin:0;
width:auto;
}

#pri form div fieldset legend {padding: 0 3px 0 9px;}
#pri form div.required fieldset legend {font-weight: bold;}

#pri form div label, #pri form div.wide div#showme label {
display: block;
float: left;
width: 170px;
padding: 3px 5px;
margin: 0 0 5px 0;
text-align: right;
}

#pri form div.optional label, #pri form label.optional {font-weight: normal;}
#pri form div.required label, #pri form label.required {font-weight: bold;}

#pri form div label.labelCheckbox, #pri form div label.labelRadio {
float: none;
display: block;
width: 330px;
padding: 0;
margin: 0 0 5px 172px;
text-align: left;
}

#pri form div fieldset label.labelCheckbox, #pri form div fieldset label.labelRadio {margin: 0 0 5px 0;}
#pri form div img {border:1px solid #b9b9b9;}

#pri form label.error {
background:url(cssimages/icon-error.gif) no-repeat 0 4px;
color:#f00;
padding:4px 3px 5px 25px;
margin:0 0 0 170px;
width:auto;
text-align:left;
float:none;
}

#pri form div textarea {
width: 200px;
padding: 1px 3px;
margin: 0 0 0 0;
}

#pri form div input.inputText, #pri form div input.inputPassword {
width: 200px;
padding: 1px 3px;
margin: 0 0 0 0;
}

#pri form div input.inputFile {width: 211px;}

#pri form div select.selectOne, #pri form div select.selectMultiple {
width: 211px;
padding: 1px 3px;
}

#pri form div input.inputCheckbox, #pri form div input.inputRadio, #pri form input.inputCheckbox, #pri form input.inputRadio {
display: inline;
height: auto;
width: auto;
background-color: transparent;
border-width: 0;
padding: 0;
margin:0;
}

#pri form div.submit {
width: 214px;
padding: 0 0 0 146px;
}

#pri form div.submit div {
display: inline;
float: left;
text-align: left;
width: auto;
padding: 0;
margin: 0;
}

#pri form div input.inputSubmit, #pri form div input.inputButton, #pri form input.inputSubmit, #pri form input.inputButton {
background-color: #cccccc;
color: #000000;
width: auto;
padding: 0 6px;
margin: 0;
}

#pri form div.submit div input.inputSubmit, #pri form div.submit div input.inputButton {
float: right;
margin: 0 0 0 5px;
}

#pri form div small {
display: block;
margin: 0 0 5px 142px;
padding: 1px 3px;
font-size: 88%;
}

span.req {color:red;}
#showme {background:#fcf9fd;}

#showme p, #showme address {
padding:1em 4em 0;
margin:0;
}

#showme address {
padding-bottom:1em;
font-style:normal;
font-weight:bold;
}


/* Event Calendar
------------------------------------------------- */

#pri #event_calendar, #sec #event_calendar {
width: 100%;
border:none;
margin-bottom:0.5em;
border-collapse:collapse;
}

#event_calendar th, #event_calendar td {font-size:0.75em;text-align:center;}
#pri #event_calendar th, #pri #event_calendar td {width:14%;}
#pri #event_calendar th {background:#fff;font-size:1.25em;border:none;}
#pri #event_calendar td {padding:2.2em 0;border:1px solid #fff;}

.calendarBlank { 
background-color: #dcc9e8;
width: 14%;
text-align: center;
}

.calendarHeader { 
color:#000; 
font-weight:bold; 
padding-bottom:1px; 
line-height:2.2em; 
margin: 0px 0px 12px 0px;
}

.calendarMonthLinks {
font-size: 11px;
font-weight: bold;
letter-spacing: .1em;
text-decoration: none;
color: #000;
}

.calendarMonthLinks a {
color: #000;
text-decoration: none;
}

.calendarMonthLinks a:hover {color:#ab89ca;}

.calendarDayHeading {
font-weight: bold; 
color: #fff; 
background-color: #ab89ca;
text-align:  center;
vertical-align: middle;
padding: 2px 0;
}

.calendarToday { 
letter-spacing: .1em;
text-align: center;
vertical-align: middle;
color: #fff;
background-color: #7b6290;
}

.calendarCell {
/*letter-spacing: .1em;*/
text-align: center;
vertical-align: middle;
color: #000;
background-color: #e0d6e8;
width: 14%;
padding:0.4em 0 0.5em;
}

.calendarCellEvent {
background:#7B6290;
color:#DFB932;
font-weight:bold;
}

#pri .calendarCellEvent a, #sec .calendarCellEvent a {color:#DFB932;}
.event_link {padding: 5px 0;}

.event_link  a {
font-weight:bold;
color: #1e1e1e;
text-decoration: none;
}

.event_link a:hover {text-decoration:underline;}

.event_details {
padding:10px; 
margin:0;
}

.event_details h3 {
border: none;
text-transform: none;
padding:0;
margin:-5px 0 -15px 0;
font-size: 1em;
}	

.event_details p {line-height:1.5em;}


/* sIFR
------------------------------------------------- */

@media screen {
  .sIFR-flash {
    visibility: visible !important;
    margin: 0;
    padding: 0;
  }
  
  .sIFR-replaced, .sIFR-ignore {
    visibility: visible !important;
  }
  
  .sIFR-alternate {
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 0;
    display: block;
    overflow: hidden;
  }
  
  .sIFR-replaced div.sIFR-fixfocus {
    margin: 0pt; 
    padding: 0pt; 
    overflow: auto; 
    letter-spacing: 0px; 
    float: none;
  }
}

@media print {
  .sIFR-flash {
    display    : none !important;
    height     : 0;
    width      : 0;
    position   : absolute;
    overflow   : hidden;
  }
  
  .sIFR-alternate {
    visibility : visible !important;
    display    : block   !important;
    position   : static  !important;
    left       : auto    !important;
    top        : auto    !important;
    width      : auto    !important;
    height     : auto    !important;
  }
}

/*
Place CSS rules for to-be-replaced elements here. Prefix by .sIFR-active
so they only apply if sIFR is active. Make sure to limit the CSS to the screen
media type, in order not to have the printed text come out weird.
*/
@media screen {

  .sIFR-active p.video {
    font-family: Verdana;
    visibility: hidden;
    margin-bottom:0.5em;
  }
  
  .sIFR-active p.more {
    font-family: Verdana;
    visibility: hidden;
  }
  
  .sIFR-active body#onecol p.more, .sIFR-active #sec p.more, .sIFR-active #login p {
    margin-bottom:0;
  }
}



/* Clearfix
------------------------------------------------- */
#wrap:after, .grid-2:after, #piece-details:after, #masthead:after, #utilitynav:after, #nav:after, .vcard:after {
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
}