/*

   Column pixel points:

   Assuming main layout is 598px content space (not including 10px padding either side)
   and the columns are to have a 10px gutter between.  
   Other assumption is box having 1px border and 8px padding (x2) = new content width of 580.
   
   Notes: 33-66 split is actually 38-62
   
			1st column width     3rd column width
   
   50-50* :			294
   50-50 boxed :	285
   33-66 :			222
   33-66 boxed :	215
   66-33 :			365
   66-33 boxed :	354
   33-33-33 :		192					192
   
   * proportions listed represent other templates that use similar layout (e.g. sub page listing
     uses 50-50 values.
*/

/* ################################# Common Elements and Classes ################################# */

div {
	margin: 0; padding: 0;
}

P, hr
{
	margin: 0 0 1em; /* For column (floating div) templates to work, tag must have no top-spacing */
	padding: 0 0 0;
}

/* === If width is not set, then .template screws up the layout === */

.template
{
	margin: auto;
	width:99%; /* 100% also screws up layout */
}

.imageFloatLeft
{
	float:left;
	margin-right:15px;
	margin-bottom:5px;
}
.imageFloatRight
{
	float:right;
	margin-left:15px;
	margin-bottom:5px;
}

.list IMG.thumbnail, .list IMG.picture, .detail IMG.picture
{
    float: right;
    margin: 0 0 5px 5px;
}
.list IMG
{
	margin: 5px 5px 0 0;
}
.box 
{
	margin-bottom: 5px;
}

#footer
{
	clear: both;
}

.backlink, .morelink
{
    clear: both;
}

.stepper, .stepper P 
{
	margin: 0 !important; /* Overrules any other P settings */
	padding: 0 10px !important;
	line-height: 200%;
}
.stepper P
{
	text-align: right;
}

#mainLayout TABLE#productList TD.list
{
    width: 50%;
}

.hidden
{
	display: none;
}

.textareaReadOnly {
   overflow: scroll;
   height: 8em;
   padding: 0.5em;
   border-width: 1px;
   border-style: solid;
   margin-bottom: 1em;
}

/* === If width is not set, then .content screws up the layout === */
#mainLayout .box .content
{
	width: 96%; /* 96% allows for some padding around the side */
	padding: 10px 0px;
	margin: 0px auto;
}

/* === Terminus : blank item to stop floating items exceeding their containers === */
.terminus
{
	clear:both;
	line-height:0px;
}	


/* ################################## Templates (and children) ################################## */


/* ======================== */

#template_2_Columns DIV#column1
{
	float: left;
    width: 294px;
}
#template_2_Columns DIV#column2
{
	height:1%;
	margin-left: 304px;
}

/* ======================== */

#template_2_Columns_66_33 DIV#column1
{
	float: left;
    width: 365px;
}
#template_2_Columns_66_33 DIV#column2
{
	height:1%;
    margin-left: 375px;
}

/* ======================== */

#template_2_Columns_33_66 DIV#column1
{
	float: left;
    width: 222px;
}
#template_2_Columns_33_66 DIV#column2
{
	height:1%;
    margin-left: 232px;
}

/* ======================== */

#template_2_Columns_Boxed DIV#column1
{
	float: left;
    width: 285px;
}

#template_2_Columns_Boxed DIV#column2
{
	height:1%;
	margin-left: 295px;
}

/* ======================== */

#template_2_Columns_66_33_Boxed .box .content #column1
{
	float: left;
    width: 354px;
}
#template_2_Columns_66_33_Boxed .box .content #column2
{
	height:1%;
	margin-left: 364px;
}

/* ======================== */

#template_2_Columns_33_66_Boxed .box .content #column1
{
	float: left;
    width: 215px;
}
#template_2_Columns_33_66_Boxed .box .content #column2
{
	height:1%;
	margin-left: 225px;
}

/* ======================== */

#template_3_Columns #column1
{
	float: left;
    width: 192px;
}
#template_3_Columns #column2
{
	float: left;
    margin-left: 10px;
    width: 202px;
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 192px;		
}
#template_3_Columns #column3
{
	height:1%;
	margin-left: 404px;        
}

/* ======================== */

#template_Stepped_Pages .content
{
    margin: 20px 0;
}

/* ======================== */

#template_Sub_Page_Listing #column2
{
	height:1%;
	margin-left: 304px;
}
#template_Sub_Page_Listing #column1
{
	float: left;
    width: 294px;
}

/* ======================== */

#template_Contacts_Style_2 #column1
{
	float:right;
    width: 222px;
}
#template_Contacts_Style_2 #column2
{
	height:1%;
    margin-right: 232px;   
}

/* ======================== */

#template_Contacts_List_Companies .list .terminus
{
	clear:right;
}
#template_Contacts_List_Companies .contactAddress
{
	float:right;
	width:222px;
}
#template_Contacts_List_Companies .descriptionBrief
{
	margin-right:232px;
}

/* ======================== */

#template_Events_Style_2 #column1
{
	float:right;
    width: 222px;
}
#template_Events_Style_2 #column2
{
    margin-right: 232px;   
}

/* ======================== */

#template_Home_Variant #column1
{
	float: left;
    width: 294px;
}
#template_Home_Variant #column2
{
	margin-left: 304px;
}
#template_Home_Variant .terminus
{
	clear:right;
}

/* ======================== */

#template_Image_Gallery_Left #column1
{
	float:left;
}
#template_Image_Gallery_Left #column1, #template_Image_Gallery_Right #column2
{
	width:240px;
}
#template_Image_Gallery_Right #column2
{
	float:right;
}
#template_Image_Gallery_Left #column2
{
	margin-left:250px;
}
#template_Image_Gallery_Right #column1
{
	margin-right:250px;
}
table#imageGallery td.list
{
	padding:0 5px;
}

/* ========================== */

#template_Image_Gallery_Switch .box
{
	margin-top:10px;
}
#template_Image_Gallery_Switch #column1
{
	position:relative;
	float:left;
	width:235px;
}
#template_Image_Gallery_Switch #column2
{
	margin-left:245px;
}
#template_Image_Gallery_Switch table#libraryList
{
	margin-bottom:10px;
}
#galleryFocus
{
	text-align:center;
	vertical-align:middle;
}
#imgCaption
{
	margin:1em 0;
	text-align:center;
}

/* ======================== */

#template_Image_Library_10up_Stepped td.list
{
	width:20%;
}
#template_Image_Library_9up_Stepped td.list
{
	width:33%;
}
#template_Image_Library_10up_Stepped_2col td.list
{
	width:50%;
}
#template_Image_Library_10up_Stepped_1col #column1
{
	float:left;
	width:290px;
}
#template_Image_Library_10up_Stepped_1col #column2
{
	margin-left:300px;
}
/*#template_Image_Library_10up_Stepped_1col .terminus
{
	clear:right;
}*/

/* ======================== */

/*#template_Links IMG.thumbnail
{
	margin-right: 10px;
	margin-left: 0;
	float: left;
}*/

/* ======================== */

#template_Mailform_Left #column1
{
	float: left;
    width: 365px;
}

#template_Mailform_Left #column2
{
	margin-left: 390px;
}

/* ======================== */

#template_Mailform_Right #column1
{
	float: right;
    width: 365px;
}

#template_Mailform_Right #column2
{
	margin-right: 390px;
}

/* ======================== */

#template_News_Articles_Style_2 #column1
{
	float:right;
    width: 222px;
}
#template_News_Articles_Style_2 #column2
{
    margin-right: 232px;   
}

/* ======================== */

#template_Sub_Page_Listing_Thumbnail TABLE, #template_Sub_Page_Listing_Thumbnail_2 TABLE, #template_Sub_Page_Listing_Thumbnail_3 TABLE
{
	width: 99%;
	margin: auto;
}
#template_Sub_Page_Listing_Thumbnail UL
{
    padding: 0px;
    margin: 0px 0px 0px 20px;
}
#template_Sub_Page_Listing_Thumbnail LI
{
    padding: 0px;
    margin: 0px;
}
#template_Sub_Page_Listing_Thumbnail TD.subPageItem, #template_Sub_Page_Listing_Thumbnail_2 TD.subPageItem
{
	width:25%;
	padding: 10px;
    text-align: center;
}
#template_Sub_Page_Listing_Thumbnail .subPageTitleThumb
{
	margin-bottom: 10px;
    display: block;
}
#template_Sub_Page_Listing_Thumbnail .subPageTitle
{
    display: block;
}

/* ======================== */

#template_Sub_Page_Listing_Thumbnail_3 .subPageTitle
{
    padding: 0px 20px;
}
#template_Sub_Page_Listing_Thumbnail_3 .subPageTitleThumb
{
	float:left;
}
#template_Sub_Page_Listing_Thumbnail_3 TD.subPageItem
{
	padding: 10px;
	vertical-align: middle;
}

/* ======================== */

#template_Sub_Page_Listing_Thumbnail_5 #subPageList h2
{
	font-size:110%;
}
#template_Sub_Page_Listing_Thumbnail_5 #subPageList td
{
	padding-bottom:10px;
}
#template_Sub_Page_Listing_Thumbnail_5 .col1
{
	width:150px;
}
#template_Sub_Page_Listing_Thumbnail_5 .col2
{
	padding-left:30px;
}

/* ======================== */

#template_Sub_Page_Listing_Table #column1
{
	float: left;
    width: 365px;
}
#template_Sub_Page_Listing_Table #column2
{
	margin-left: 375px;
}

/* ======================== */

#template_Product_Gallery TD
{
	width:33%;
	padding-bottom: 10px;
	vertical-align: bottom;
}

#template_Product_Gallery .detail
{
    text-align: center;
}
#template_Product_Gallery .list
{
    BORDER-BOTTOM: medium none;
}
#template_Product_Gallery .list IMG.thumbnail, #template_Product_Gallery .detail IMG.picture
{
    padding: 0px;
    margin: 0px auto 20px;
    float: none;
    display:block;
}

#template_Product_Gallery .detail .stepper
{
    text-align: center;
}
#template_Product_Gallery .detail SPAN
{
    margin: 10px
}
#template_Product_Gallery .list H3
{
    margin-bottom:10px;
    text-align: center;
}

/* ======================== */

#template_Products_Grouped #column1
{
	float: left;
    width: 222px;
}
#template_Products_Grouped #column2
{
    margin-left: 232px;
}
table#productsGrouped
{
	width:auto !important;
}
table#productsGrouped td
{
	vertical-align:middle;
	padding-right:10px;
}
table#productsGrouped H3
{
    font-size: 100%;
    margin:0;
}
table#productsGrouped H4
{
    font-weight: 400;
    font-size: 100%;
    margin:0;
}
table#productsGrouped td.options
{
    width: 80px;
}
table#productsGrouped .textBox
{
    font-size: 100%;
    width: 25px;
    text-align: right
}
table#productsGrouped td.buttons
{
	text-align:right;
}

/* ======================== */

#template_Products_Grouped_2 #column1, #template_Products_Grouped_3 #column1
{
	float: left;
    width: 250px;
}
#template_Products_Grouped_2 #column2, #template_Products_Grouped_3 #column2
{
    margin-left: 260px;
}
#template_Products_Grouped_3 #column1 IMG
{
	margin:0;
}

/* ======================== */

#template_sitemap #column1
{
	float: left;
    width: 365px;
}
#template_sitemap #column2
{
	margin-left: 375px;
}

/* ======================== */

#template_Sitemap_Style_2 UL
{
	margin:0;
	padding:0;
}
#template_Sitemap_Style_2 UL LI
{
	display:inline;
	list-style-type:none;
}
#template_Sitemap_Style_2 UL a
{
	position:relative;
	display:block;
}
#template_Sitemap_Style_2 UL UL
{
	margin-left:20px;
}
#template_Sitemap_Style_2 UL UL a
{
	float:left;
	width:130px;
	display:inline;
}
#template_Sitemap_Style_2 ul ul ul
{
	margin-left:150px;
}
#template_Sitemap_Style_2 UL UL ul a
{
	width:auto;
	white-space:nowrap;
}

/* ======================== */

.downloadlink
{
	display:block;
	margin-bottom:5px;
}
.list p.author
{
	margin:0;
}
.libraryimage p.image
{
	text-align:center;
	float:right;
	margin-left:10px;
	margin-bottom:10px;
}
.libraryimage p.image img.picture
{
	float:none;
	margin:0;
}
.libraryimage .backlink
{
	padding:0 50px;
}
td.libraryimage
{
	text-align:center;
}
td.libraryimage img.thumbnail
{
	float:none;
}
table#libraryList
{
	width:100%;
}

/* ======================== */

TABLE#subPageTable
{
    border-top: #000 1px solid;
    border-left: #000 1px solid
}
TABLE#subPageTable .col1
{
    WIDTH: 30%
}
TABLE#subPageTable .col2
{
    WIDTH: 40%
}
TABLE#subPageTable .col3
{
    WIDTH: 30%
}

/* ======================== */

#developerLink a
{
	text-decoration:none;
	font-weight:400;
	float:right;
	padding:3px 10px;
}
#developerLink a:hover
{
	text-decoration:none;
}