/* @group Main */

body
	{
	font-family: "Gill Sans", "Gill Sans MT", Helvetica, sans-serif;
	margin: 0px;
	color: #ae1f23;
	background-color: #ae1f23;
	}

a
	{
	text-decoration: none;
	color: #ae1f23;
	}

h1
	{
	font-weight: normal;
	text-align: center;
	text-shadow: #aaaaaa 1px 1px 2px;
	font-size: 16pt;
	margin: 10px;
	}

h2
	{
	font-weight: normal;
	text-shadow: #aaaaaa 1px 1px 2px;
	font-size: 17pt;
	margin: 5px;
	}

h3
	{
	display: inline;
	font-weight: normal;
	text-shadow: #aaaaaa 1px 1px 2px;
	font-size: 17pt;
	margin: 5px;
	}

.right
	{
	text-align: right;
	}

.center
	{
	text-align: center;
	}

.notice_box
	{
	display: inline-block;
	padding: 3px 6px;
	border: solid 2px #B4B4B4;
	border-radius: 15px;
	margin-top: 10px;
	font-size: 14pt;
	}

.gain
	{
	color: green;
	}

.loss
	{
	color: red;
	}

/* @end */

/* @group Bars */

.bar
	{
	color: white;
	font-size: 15pt;
	text-shadow: #481c1c 1px 1px 2px;
	display: table;
	width: 100%;
	border-spacing: 0px;
	}

	.bar div
		{
		background-image: url('/images/bar.png');
		display: table-cell;
		height: 50px;
		text-align: center;
		vertical-align: middle;
		}

	.bar a:hover
		{
		background-image: url('/images/bar.dark.png');
		}
	
	.bar a
		{
		background-image: url('/images/bar.png');
		display: block;
		color: white;
		line-height: 50px;
		}

/* @end */

/* @group Layout Tables */

.layout_table
	{
	display: table;
	width: 100%;
	border-spacing: 15px;
	}

	.layout_table > div
		{
		display: table-cell;
		vertical-align: top;
		background-color: white;
		background-image: url('/images/background.jpg');
		color: #ae1f23;
		border: solid 1px #660000;
		border-radius: 10px;
		box-shadow: 0px 0px 12px #cd8585,inset 3px 3px 5px #cccccc;
		}

	.layout_table *
		{
		border-spacing: 0px;
		}


.header_table
	{
	display: table;
	width: 100%;
	}
	
	.header_table > div
		{
		display: table-cell;
		width: 50%;
		vertical-align: middle;
		text-align: center;
		}
	
.footer_table
	{
	border-spacing: 15px;
	display: table;
	width: 100%;
	}
	
	.footer_table > div
		{
		display: table-cell;
		vertical-align: middle;
		}

.mass_n_mac_table
	{
	display: table;
	width: 100%;
	margin: 10px 0px 10px 0px;
	}

	.mass_n_mac_table > div
		{
		display: table-cell;
		vertical-align: middle;
		text-align: center;
		width: 25%;
		}

	.mass_n_mac_table > div + div
		{
		width: 50%;
		}

	.mass_n_mac_table > div + div + div
		{
		width: 25%;
		}

.service_list_table
	{
	display: table;
	width: 100%;
	margin: 0 auto;
	}
	
	.service_list_table > div
		{
		display: table-cell;
		width: 30%;
		text-align: center;
		}

	.service_list_table ul
		{
		display: inline-block;
		text-align: left;
		padding-left: 20px;
		}

.town_list_table
	{
	display: table;
	width: 100%;
	margin: 15px 0px;
	}

	.town_list_table ul
		{
		display: table-cell;
		width: 33%;
		text-align: left;
		}
	
.info_page_layout > div
	{
	width: 60%;
	text-align: center;
	}
	
	.info_page_layout > div + div
		{
		width: 40%;
		text-align: left;
		padding-right: 8px;
		}
		
	.info_page_layout > div + div h2
		{
		text-align: center;
		}

.cd_page_layout_2 > div
	{
	width: 50%;
	text-align: center;
	}
	
	.cd_page_layout_2 > div + div
		{
		width: 50%;
		text-align: left;
		padding-right: 8px;
		}
		
	.cd_page_layout_2 > div + div h2
		{
		text-align: center;
		}

	.cd_page_layout_2 p
		{
		margin: 40px;
		}

.article_page > div
	{
	width: 30%;
	text-align: center;
	}
	
	.article_page > div + div
		{
		width: 70%;
		}
	
.cd_page_layout > div
	{
	padding: 0px 8px;
	text-align: justify;
	}
	
.mail_table > div
	{
	width: 50%;
	text-align: center;
	}

.mail_sent_table > div
	{
	height: 350px;
	width: 100%;
	text-align: center;
	vertical-align: middle;
	}
			
.extra_boxes > div
	{
	text-align: center;
	width: 33%;
	}

.article_boxes > div
	{
	text-align: center;
	width: 20%;
	}

.article_boxes > div + div
	{
	width: 60%;
	}

.article_boxes > div + div + div
	{
	text-align: center;
	width: 20%;
	}

.no_bottom
	{
	margin-bottom: -15px;
	}

.data_box
	{
	min-height: 30px;
	text-align: center;
	margin: 5px;
	}

	#stock_quote
		{
		color: black;
		font-size: 10.5pt;
		float: left;
		}
	
	#date
		{
		font-size: 10.5pt;
		float: right;
		}
	
.admin_table_4up h2, admin_table_2up h2
	{
	text-align: center;
	}
	
.admin_table_4up ul
	{
	list-style-type: none;
	padding: 0px 8px;
	}
	
.admin_table_4up > div
	{
	width: 25%;
	}
	
.admin_table_2up > div
	{
	width: 50%;
	text-align: center;
	}
	
/* @end */

/* @group Articles Homepage*/

#highlight_article
	{
	border-color: #cccc80;
	background-color: #ffffcc;
	}
	
.article_boxes ul
	{
	list-style-type: none;
	padding: 0;
	margin: 0px;
	}

.article_boxes li
	{
	border: 1px solid #bbbbbb;
	border-radius: 4px;
	padding: 3px;
	margin: 0px 8px 8px 8px;
	background-color: #f0f0f0;
	text-align: left;
	font-size: 11pt;
	}

.article_boxes li:hover, #highlight_article:hover
	{
	background-color: #d5dceb;
	border-color: #92a5cd;
	}

.article_boxes li div
	{
	font-size: 9pt;
	text-align: right;
	color: #333333;
	}

.article_boxes li a
	{
	display: block;
	}

.article_body
	{
	text-align: justify;
	font-size: 11pt;
	margin: 0px 8px 8px 8px;
	}

	.article_body img
		{
		margin-right: 8px;
		}

	.article_body_text a
		{
		background-color: #EEEEEE;
		border: 1px dotted #AE1F23;
		padding-left: 2px;
		padding-right: 2px;
		}

	.article_body_text a:hover
		{
		background-color: #CCCCCC;
		border: 1px solid #AE1F23;
		padding-left: 2px;
		padding-right: 2px;
		}

/* @end */

/* @group Images */

#main_logo
	{
	height: 99px;
	width: 275px;
	border: 0px;
	}

#lock
	{
	height: 25px;
	width: 16px;
	border: none;
	margin-bottom: -4px;
	}

.footer_img
	{
	height: 32px;
	width: 32px;
	border: none;
	padding-right: 5px;
	margin-bottom: -8px;
	}

.preload
	{
	display: none;
	}

#massachusetts
	{
	height: 113px;
	width: 190px;
	border: none;
	}

#macs_container
	{
	display: inline-block;
	height: 192px;
	width: 192px;
	overflow: hidden;
	}
	
	#macs
		{
		-webkit-mask-image: url('/images/animation.mask.png');
		mask-image: url('/images/animation.mask.png');
		position: relative;
		left: 0px;
		top: 0px;
		}

#finders
	{
	width: 137px;
	height: 32px;
	border: none;
	margin: 10px 0px 20px 0px;
	}

#coldmac
	{
	height: 83px;
	width: 120px;
	border: none;
	margin: 10px 0px 20px 0px;
	}

#g_reviews
	{
	width: 161px;
	height: 30px;
	border: none;
	}

#y_reviews
	{
	width: 125px;
	height: 55px;
	border: none;
	}

.rss_icon
	{
	height: 16px;
	width: 16px;
	border: none;
	padding-right: 5px;
	margin-bottom: -2px;
	}

#email_link
	{
	padding-top: 55px;
	height: 200px;
	width: 200px;
	border: none;
	}

.yesno_img
	{
	height: 16px;
	width: 16px;
	border: none;
	margin: 0px 2px -2px 0px;
	}

#itunes
	{
	height: 160px;
	width: 160px;
	border: none;
	float: right;
	padding: 0px 4px 0px 10px;
	}

#ipod
	{
	height: 160px;
	width: 114px;
	border: none;
	float: left;
	padding: 0px 18px 0px 15px;
	}

#apple_icon
	{
	height: 24px;
	width: 20px;
	border: none;
	margin: 0px 10px -2px 0px;
	}
	
#win_icon
	{
	height: 24px;
	width: 27px;
	border: none;
	margin: 0px 10px -4px 10px;
	}

#cd_imac
	{
	height: 90px;
	width: 110px;
	border: none;
	}

.cdstack
	{
	width: 102px;
	height: 80px;
	border: none;
	margin: 0px 15px;
	}

#import
	{
	width: 101px;
	height: 90px;
	border: none;
	}
	
#ipodclassic
	{
	width: 77px;
	height: 90px;
	border: none;
	}

#sync
	{
	width: 60px;
	height: 60px;
	border: none;
	margin-bottom: 18px;
	}

.dl
	{
	height: 16px;
	width: 16px;
	border: none;
	padding-right: 4px;
	margin-bottom: -3px;
	}
	
/* @end */

/* @group Socialism */

.social_buttons
	{
	margin: 5px 5px 15px 5px;
	vertical-align: top;
	}

#fb-button
	{
	display: inline-block;
	vertical-align: top;
	}

.fb-like-box
	{
	margin: 5px;
	}


/* @end */

/* @group Contact */

.form_input
	{
	display: block;
	width: 80%;
	border: solid 1px grey;
	border-radius: 4px;
	font-size: 12pt;
	font-family: "Gill Sans", "Gill Sans MT", Helvetica, sans-serif;
	padding: 2px;
	margin: 0px auto 5px auto;
	box-shadow: inset 0px 0px 5px #cccccc;
	}

	.form_input_error
		{
		display: block;
		width: 80%;
		border: solid 1px #ae1f23;
		border-radius: 4px;
		color: #ae1f23;
		font-size: 12pt;
		font-family: "Gill Sans", "Gill Sans MT", Helvetica, sans-serif;
		padding: 2px;
		margin: 0px auto 5px auto;
		box-shadow: 0px 0px 8px #990000, inset 0px 0px 5px #cccccc;
		}

	.form_input:focus, .form_input:focus
		{
		outline: none;
		}

.send_button
	{
	font-size: 12pt;
	}

#mail_success
	{
	display: none;
	margin: 100px 0px;
	}

/* @end */

/* @group Information / Towns */

#map
	{
	width: 100%;
	height: 450px;
	border: solid 1px #660000;
	margin: 0px 0px -1px -1px;
	}

/* @end */

/* @group Mac OS History Chart */

.mac_os_chart > div
	{
	text-align: center;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	}

.mac_os_chart table
	{
	width: 100%;
	border-spacing: 0px;
	border-collapse: collapse;
	}

.mac_os_chart td
	{
	border: solid 1px #b5b5b5;
	padding: 2px;
	font-size: 11pt;
	}

.mac_os_chart th
	{
	font-weight: normal;
	font-size: 11pt;
	border: solid 1px #b5b5b5;
	padding: 2px;
	background: #dddddd;
	}

.mac_os_chart tr:nth-child(1n+2) th
	{
	text-align: right;
	}

.dark_row td
	{
	background: #eeeeee;
	}
	
/* @end */
