
html
{
	background-color: lightgrey ;
	color: black ;
	font-family: Garamond, serif ;
	font-size: 16pt ; 
	margin: 0em ;
	padding: 0em ;
}

body
{
	background-color: whitesmoke ;
	text-align: left ;
	padding: 0em ;
	margin: 0 ;
}

article
{
	padding: 0em 1em 0em 1em ;
}

img
{
	border: none ; /* IE9+ defaults to displaying borders around img... */
}

#banner
{
	font-size: 36pt ;
	color: #CC0033 ;
	background-color: lightgrey ;
	font-family: "Trebuchet MS", Helvetica, FreeSans, sans-serif ;
	margin: 0 ;
	padding: 0em .5em .125em .5em ;
}

a.colourhover
{
    filter: grayscale(100%) ;
	filter: url( "magic/filters.svg#greyscale" ); /* Firefox 3.5+, Firefox for Android */
	-webkit-filter: grayscale(100%) ; /* Chrome 19+, Safari 6+, Safari 6+ for iOS */
	-o-filter: grayscale(100%) ;
	-ms-filter: grayscale(100%) ;
/*	-ms-filter: 'progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)'; /*IE9 */
/*	filter: gray; /* IE 6-9 */
}

a.colourhover:hover, a.colourhover:focus, a.colourhover:active
{
	outline: none ;
	filter: none ;
	-webkit-filter: grayscale(0%) ;
	-o-filter: grayscale(0%) ;
	-ms-filter: grayscale(0%) ; 
/*	-ms-filter: none ; */
}

#banner a#GaenoviumHeader
{
	font-family: "Sanchez", "Times New Roman", Times, serif ;
	text-decoration: none ;
	font-size: 48pt ;
	margin: -.25em 0.125em -.25em 0em ;
	color: #666666 ;
	display: inline-block ;
	padding: 0 ;
	display: inline-block ;
}

#banner a#GaenoviumHeader:hover, #banner a#GaenoviumHeader:focus, #banner a#GaenoviumHeader:active
{
	outline: none ;
	color: #003399 ;
}

#banner img.header
{
	height: .75em ;
	vertical-align: middle ;
	padding: 0 0.125em 0 0.125em ;
}

#banner a.socialicon
{
	display: inline-block ;
	float: right ;
	padding: 0 ;
	margin: 0 .125em 0 .125em ;
	width: 1em ; /* this valid CSS fixes IE margin bug in IE9, IE10, IE11 + */
}

#banner p
{
	text-align: center ;
	margin: 0 ;
	padding: 0 ;
}

@media screen and (max-width: 600px)
{
#banner 
{
	display: none ;
}
}

@media screen and (max-width: 800px)
{
#banner a.socialicon
{
	display: none ;
}
}


a:link, a:visited
{
	text-decoration: none ;
	color: midnightblue ;
}

a:link, a:visited
{
	color: midnightblue ;
}

a:hover, a:focus, a:active
{
	outline: none ;
	color: crimson ;
	text-decoration: underline ;
}

nav#topnav 
{
	padding: .125em .125em .125em 1em ;
	background: lightgrey ;
}

nav#topnav ul
{
	z-index: 1 ;
	list-style: none ;
	display: inline-table ;
	position: relative ;
	margin: 0 ;
	padding: 0 ;
} 

nav#topnav ul:after
{
	content: "" ; 
	clear: both ; 
	display: block ;
}

nav#topnav ul li
{
	float: left ;
	padding:.125em ;
} 

nav#topnav ul li:hover > ul, nav#topnav ul li:focus > ul, nav#topnav ul li:active > ul
{
	outline: none ;
	display: block ;
} 

nav#topnav ul ul
{
	display: none ;

	position: absolute ;
	top: 100% ;
} 

nav#topnav ul ul li
{
	float: none ;
	position: relative ;
} 

nav#topnav ul ul ul
{
	position: absolute ;
	top: 0 ;
	left: 100% ;
} 


nav#topnav ul ul li
{
	position: relative ;
} 

nav#topnav li
{
	float: left ;
} 

nav#topnav ul li a
{
	text-decoration: none ;
	display: block ;
	color: #666666 ;
	background: #EEEEEE ;
	
	padding: .125em .5em .125em .5em ;
	margin: 0 ;

	border-style: solid ;
	border-width: thin ;
	border-color: #666666 ;
	border-radius: .25em ;
	-moz-border-radius: .25em ;
	-webkit-border-radius: .25em ;
	-o-border-radius: .25em ;
	-ms-border-radius: .25em ;

	transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-moz-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-webkit-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-o-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-ms-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
} 

nav#topnav ul li a:hover, nav#topnav ul li a:focus, nav#topnav ul li a:active
{
	outline: none ;
	background: white ;
	color: #003366 ;
	border-color: #003366 ;
} 

ul.onpagenav 
{
	list-style: none ;
}

h1, h2, h3, h4, h5, h6
{
	text-align: left ;
	font-family: "Trebuchet MS", Helvetica, FreeSans, sans-serif ;
	font-variant: small-caps ;
	color: midnightblue ;
}

p
{
	text-align: left ;
}

footer
{
	clear: both ;
	background-color: lightgrey ;
	font-size: smaller ;
	margin: 0 ;
	padding: .5em ;
}

footer nav
{
	margin:  0;
	padding: 0 .25em 0 .25em ;
	column-width: 8em ;
	column-count: 4 ;
	column-gap: .5em ;
	column-rule: 1px dotted white ;
	-moz-column-width: 8em ;
	-moz-column-count: 4 ;
	-moz-column-gap: .5em ;
	-moz-column-rule: 1px dotted white ;
	-webkit-column-width: 8em ;
	-webkit-column-count: 4 ;
	-webkit-column-gap: .5em ;
	-webkit-column-rule: 1px dotted white ;
	-o-column-width: 8em ;
	-o-column-count: 4 ;
	-o-column-gap: .5em ;
	-o-column-rule: 1px dotted white ;
	-ms-column-width: 8em ;
	-ms-column-count: 4 ;
	-ms-column-gap: .5em ;
	-ms-column-rule: 1px dotted white ;
	border-left: 1px dotted white ;
	border-right: 1px dotted white ;
}

footer nav div.keep
{
	column-break-after: always ;
	-moz-column-break-after: always ;
	-webkit-column-break-after: always ;
	-o-column-break-after: always ;
	-ms-column-break-after: always ;
}

footer nav div.keep
{
	width: 100% ;
	margin: 0 ;
	padding: 0 ;
	display: inline-block ; 
	color: #666666 ;
}

footer nav div.keep h5
{
	margin: 0 ;
	padding: .25em .5em .5em .5em ;
	text-align: left ;
	color: #336699 ;
	color: #003366 ;
}

footer nav div.keep ul li a
{
	width: 100% ;
	color: #666666 ;
}

footer nav div.keep ul li a:hover, footer nav div.keep ul li a:active, footer nav div.keep ul li a:focus
{
	outline: none ;
	width: 100% ;
	color: crimson ;
	text-decoration: none ;
}

footer nav div.keep ul
{
	margin: 0 ;
	padding: 0 .5em 0 .5em ;
	list-style: none ;
	font-size: smaller ;
}

footer p
{
	padding: 0 .5em 0 .5em ;
	color: #333333 ;
	font-size: smaller ;
	text-align: center ;
}

footer p:before, footer p:after
{
	content: "\02015" ;
	color: #666666 ;
	position: relative ;
	padding: 0 .5em 0 .5em ;
} 



img.size256
{
	height: 12em ;
	width: 12em ;
}

img.size192
{
	height: 9em ;
	width: 9em ;
}

img.size128
{
	height: 6em ;
	width: 6em ;
}

img.size64
{
	height: 3em ;
	width: 3em ;
}

img.size512x256
{
	width: 24em ;
	height: 12em ;
}

img.size640x480
{
	width: 30em ;
	height: 22.5em ;
}

img.size320x240
{
	width: 15em ;
	height: 11.25em ;
}

img.figwidth256
{
	width: 11em ;
}

img.width256
{
	width: 12em ;
}

img.height256
{
	height: 12em ;
}

img.height128
{
	height: 6em ;
}

img.height96
{
	height: 4.5em ;
}

img.height64
{
	height: 3em ;
}

img.height48
{
	height: 2.25em ;
}

img.height32
{
	height: 1.5em ;
}

img.size96
{
	height: 4.25em ;
	width: 4.5em ;
}

img.size64
{
	height: 3em ;
	width: 3em ;
}

img.size48
{
	height: 2.25em ;
	width: 2.25em ;
}

img.size1em
{
	height: 1em ;
	vertical-align: middle ;
}

img.sizeSocial
{
	height: 1em ;
	vertical-align: middle ;
	margin: 0 ;
	padding: 0 ;
}

img.sizeLogo
{
	height: 1.125em ;
	vertical-align: text-bottom ;
	overflow: visible ;
}


table.bland
{
	margin: 1em auto 1em auto ;
	background-color: whitesmoke ;
	border-spacing: .125em ;
	padding: .5em ;
	border: none ;
}

table.bland caption
{
	background-color: whitesmoke ;
	color: midnightblue ;
	margin: .25em 0 .25em 0 ;
	padding: 0 ;
	font-variant: small-caps ;
	font-weight: bold ;
}

table.bland tfoot 
{
	background-color: white ;
	color: midnightblue ;
	margin: 1.25em 0 .25em 0 ;
	font-variant: normal ;
}

table.programme
{
	margin: 1em auto 1em auto ;
	background-color: whitesmoke ;
	color: black ;
	border-spacing: .125em ;
	padding: .5em ;
	border: 1px solid white ;
	border-top: none ;
}

table.programme caption
{
	background-color: whitesmoke ;
	color: midnightblue ;
	margin: 0 ;
	padding-top: 0.5em ;
	font-variant: small-caps ;
	font-weight: bold ;
	border: 1px solid white ;
	border-bottom: none ;
}

table.programme  thead th
{
	background-color: lightsteelblue ;
	background-color: powderblue ;
	color: midnightblue ;
}

table.programme tr
{
	padding: .25em ;
} 

table.programme tr:nth-child(odd)
{
	background-color: lightblue ;
	background-color: azure ;
}

table.programme tr:nth-child(even)
{
	background-color: lightcyan ;
	background-color: lightcyan ;
}

table.programme tr:hover , table.programme tr:focus , table.programme tr:active
{
	outline: none ;
	background-color: white ;
	color: black ;
}

table.programme tr td, table.programme tr th
{
	padding-left: .5em ;
	padding-right: .5em ;
}

table.programme thead tr th:first-child
{
	text-align: center ;
}

table.programme tbody tr td:first-child, table.programme tr td:nth-child(2)
{ 
/*	font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace ; */
	font-weight: normal ;
	text-align: right ;
}

table.programme tfoot tr td
{
	text-align: center ;
	background: whitesmoke ;
}

/*
.hidden
{
	visibility: hidden ;
}

.hidden:target
{
	visibility: visible ;
}
*/

figure figcaption
{
	text-align: center ;
	overflow: hidden ;
	font-variant: small-caps ;
	display: block ;
}

figure.photo
{
	padding: 0 ;
	background: white ;
	border: 1px solid black ;
	margin-bottom: 1.5em ;
}

figure.photo img
{
	text-align: center ;
	padding: .75em .75em .75em .75em ;
	margin-bottom: 0 ;
}

figure.photo figcaption
{
	padding: .25em .75em .25em .75em ;
	margin-top: -.25em ;
	display: block ;
	color: black ;
	text-align: center ;
	height: 2.5em ;
	overflow: hidden ;
	border: none ;
	font-variant: small-caps ;
	font-weight: lighter ;
}

figure.photo256 img
{
	padding: .5em ;
}

figure.photo256 figcaption.small
{
	padding: .25em .5em .25em .5em ;
	font-size: small ;
}

figure.size640x480 
{
	width: 31.5em ;
	height: 27em ;
}

figure.size640x480 figcaption
{
	width: 30em ;
}

div.travelgallery
{
	position: relative ;
	margin-bottom: 1em ;
}

div.travelgallery a, div.travelgallery a:visited
{
	color: royalblue ;
	text-decoration: none ;
}

div.travelgallery a:hover, div.travelgallery a:focus, div.travelgallery a:active
{
	color: darkmagenta ;
}

div.travelgallery figure
{
	position: absolute ;
	display: block ;
	top: 0 ;
	left: 0 ;
	right: 0 ;
	bottom: 0 ;
	margin-left: auto ;
	margin-right: auto ;
}

div.travelgallery figure.defaultimage
{
	position: relative ;
	visibility: visible ;
	margin-left: auto ;
	margin-right: auto ;
	top: 1em ;
}

div.travelgallery  figure.showonhover
{
	visibility: hidden ;
}

div.travelgallery a:hover+figure.showonhover, div.travelgallery a:focus+figure.showonhover, div.travelgallery a:active+figure.showonhover
{
	outline: none ;
	visibility: visible ;
}

div.travelprint
{
	display: none ;
}

article > img
{
	margin: .5em ;
}

.floatleft
{
	float: left ;
	margin-left: 0 ;
}

.floatright
{
	float: right ;
	margin-right: 0 ;
}

.ToBeDone
{
	color: red ;
	font-weight: bold ;
}

.strike
{
	text-decoration:line-through ;
}


div.imagepluscode
{
	background: white ;
	margin: 1em ;
	clear: both ;
}

div.imagepluscode:after
{
	content: "" ;
	display: block ;
	clear: both ;
} 

div.imagepluscode img.speakerbadge, div.imagepluscode img.promo
{
	float: left ;
	padding: 1em ;
}

div.imagepluscode p 
{
	padding: 1em ;
}

div.imagepluscode pre
{
	display: inline-block ;
	padding: 1em ;
}

.clear
{
	clear: both ;
}

iframe#GoogleMaps
{
	width: 640px ;
	height: 480px ;
	padding: 1em ;
	background: white ;
	border: 1px solid black ;
	display: block ;
	margin: 0 auto ;
}

div.speaker 
{
	clear: both ;
	padding: 0 ;
	margin: 0 ;
} 

div.speaker figure
{
	margin-top: 0em ;
}

form
{
	font-size: inherit ;
	font-family: inherit ;
	margin: 0 0 1em 0 ;
	padding: 1em ;
	background: white ;
	border: 1px solid black ;
}

form label
{
	font-size: inherit ;
	font-family: inherit ;
	font-weight: bold ;
	display: block ;
	margin: 0;
	padding: 0 ;
}


form input, form button, form textarea
{
	font-size: inherit ;
	font-family: inherit ;
	display: block ;
	margin: 0 ;
	padding: 0 ;
}

form input + label, form button.button
{
	margin-top: 1em ;
} 


/* using button for button, instead of input */
form button.button
{
	font-weight: bold ;
	padding: .25em 1em .25em 1em ;
}

form#ContactUs  
{
	max-width: 48em ;
}

form#ContactUs  input#fname, form#ContactUs  input#email
{
	width: 16em ;
	max-width: 100% ;
}

form#ContactUs  textarea#message
{
	width: 48em ;
	max-width: 100% ;
	height: 8em ;
	resize: none ;
}

form#ContactUs  input#submit
{
	margin-left: auto ;
	margin-right: auto ;
} 

form#ContactUs  ul#errors, form#ContactUs  p#success
{
	display: none ;
}

.required
{
	color: darkred ;
	font-weight: bold ;
}

p.hoverclickinstructions
{
	color: darkgrey ;
	text-align: center ;
}

a.sponsorlogo
{
	padding: .125em ;
}

div.press 
{
	max-width: 40em ;
	min-width: 6em ;
	background: white ;
	margin: 1em ;
	padding: 1em ;
	padding-left: 6em ;
}

div.press p
{
	display: block ;
	width: 100% ;
	overflow: visible ;
}

div.press p time
{
	display: inline-block ;
	width: 5em ;
	padding: 0 ;
	margin-left: -5em ;
}

div.paymentoption
{
	background: white ;
	padding: 1em ;
	margin: 1em 0 1em 0 ;
}

div.paymentoption form
{
	border: none ;
	background: whitesmoke ;
}

a.bigbutton
{
	text-decoration: none ;
	display: block ;
	color: #666666 ;
	background: #EEEEEE ;
	font-size: larger ;
	font-weight: normal ;
	text-align: center ;
	
	padding: 1.25em .5em 1.25em .5em ;
	margin: 0 ;

	border-style: solid ;
	border-width: thin ;
	border-color: #666666 ;
	border-radius: .25em ;
	-moz-border-radius: .25em ;
	-webkit-border-radius: .25em ;
	-o-border-radius: .25em ;
	-ms-border-radius: .25em ;

	transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-moz-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-webkit-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-o-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
	-ms-transition: background .1s ease-in, color .1s ease-in, border-color .1s ease-in;
}

a*.bigbutton:hover, a.bigbutton:focus, a.bigbutton:active
{
	outline: none ;
	background: white ;
	color: #003366 ;
	border-color: #003366 ;
} 



/*
div.welcome
{
	position: absolute ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	height: 100% ;
	opacity: 0.4 ;
	filter: alpha( opacity=40 ) ;
}
*/

*