@font-face {
    font-family: 'OpenSansRegular';
    src: url('/themes/theme_rainfo/OpenSans-Regular-webfont.eot');
    src: url('/themes/theme_rainfo/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('/themes/theme_rainfo/OpenSans-Regular-webfont.woff') format('woff'),
         url('/themes/theme_rainfo/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('/themes/theme_rainfo/OpenSans-Regular-webfont.svg#OpenSansRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'OpenSansItalic';
    src: url('/themes/theme_rainfo/OpenSans-Italic-webfont.eot');
    src: url('/themes/theme_rainfo/OpenSans-Italic-webfont.eot?#iefix') format('embedded-opentype'),
         url('/themes/theme_rainfo/OpenSans-Italic-webfont.woff') format('woff'),
         url('/themes/theme_rainfo/OpenSans-Italic-webfont.ttf') format('truetype'),
         url('/themes/theme_rainfo/OpenSans-Italic-webfont.svg#OpenSansItalic') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'OpenSansSemibold';
    src: url('/themes/theme_rainfo/OpenSans-Semibold-webfont.eot');
    src: url('/themes/theme_rainfo/OpenSans-Semibold-webfont.eot?#iefix') format('embedded-opentype'),
         url('/themes/theme_rainfo/OpenSans-Semibold-webfont.woff') format('woff'),
         url('/themes/theme_rainfo/OpenSans-Semibold-webfont.ttf') format('truetype'),
         url('/themes/theme_rainfo/OpenSans-Semibold-webfont.svg#OpenSansSemibold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'OpenSansBold';
    src: url('/themes/theme_rainfo/OpenSans-Bold-webfont.eot');
    src: url('/themes/theme_rainfo/OpenSans-Bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('/themes/theme_rainfo/OpenSans-Bold-webfont.woff') format('woff'),
         url('/themes/theme_rainfo/OpenSans-Bold-webfont.ttf') format('truetype'),
         url('/themes/theme_rainfo/OpenSans-Bold-webfont.svg#OpenSansBold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
  font-family: 'FontAwesome';
  src: url('/themes/theme_rainfo/fonts/fontawesome-webfont.eot?v=4.5.0');
  src: url('/themes/theme_rainfo/fonts/fontawesome-webfont.eot?#iefix&v=4.5.0') format('embedded-opentype'),
        url('/themes/theme_rainfo/fonts/fontawesome-webfont.woff2?v=4.5.0') format('woff2'),
        url('/themes/theme_rainfo/fonts/fontawesome-webfont.woff?v=4.5.0') format('woff'),
        url('/themes/theme_rainfo/fonts/fontawesome-webfont.ttf?v=4.5.0') format('truetype'),
        url('/themes/theme_rainfo/fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 'FontAwesome';
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#social .fa-rss, #social .fa-facebook {
color: #f6f5f5;
text-align: right;
margin-top: 10px;
vertical-align: bottom;
}

#social .fa-rss, #meta .fa-rss {
font-size: 2em;
margin: 0 0 0 20px;
}

#social .fa-facebook, #meta .fa-facebook {
font-size: 1.7em;
}

#social .fa-rss:hover, #social .fa-facebook:hover {
color: #E6F1F1;
}

html {
margin: 0;
padding: 0;
height: 100%;
}

body {
color: #444;
font-family: 'OpenSansRegular', Lucida Grande, Lucida Sans Unicode, sans-serif;
font-size: 94%;
margin: 0;
padding: 0;
width: 100%;
text-align: center;
height: 100%;
letter-spacing: 0.02em;
line-height: 1.6em;
background: #f6f5f5;
}

.clearfix:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}

.clearfix { display: inline-block;}

html[xmlns] .clearfix {display: block;}

* html .clearfix { height: 1%;}


#wrapper{
position: relative;
margin: 0;
padding: 0;
text-align: center;
width: 100%;
min-height: 100%;		
height: auto !important;	
height: 100%;
}

#container{
margin: 0 auto;
padding: 0;
width: 100%;
min-height: 100%;		/* Min height for modern Browser */
height: auto !important;	/* !important-Rule for modern Browser */
height: 100%;/* Min height for IE (<7) */
}

#header {
position: relative;
margin: 0;
padding: 0;
width: 100%;
background: #c2cfd1 url(/themes/theme_rainfo/images/headerbg3.png) top center repeat-x;
}

#social {
position: absolute;
top: 20px;
right: 20px;
width: 270px;
padding: 0;
text-align: left;
}

#social img a {
margin: 0;
padding: 0;
outline: 0;
cursor: pointer;
}

#social p {
margin: 0 0 5px 0;
color: #f6f5f5;
}

#social a.notice-link {
color: #f6f5f5;
text-decoration: none;
}

#social a.notice-link:hover {
color: #E6F1F1;
}

.notice-content {
position: fixed;
left: 50%;
padding: 30px;
width: 70%;
max-width: 600px;
border: solid 3px #238d94;
z-index: 110;
background: #f6f5f5;
text-align: left;
transform: translate(-50%, -200%);
-webkit-transform: translate(-50%, -200%);
-ms-transform: translate(-50%, -200%);
transition: transfer, 500ms ease-out;
-webkit-transition: transfer, 500ms ease-out;
-ms-transition: transfer, 500ms ease-out;
}

.notice:before {
content: "";
position: fixed;
display: none;
background-color: rgba(102, 102, 102, 0.8);
height: 100%;
width: 100%;
z-index: 100;
}

.notice:target:before {
display: block;
}

.notice:target .notice-content {
top: 20%;
transform: translate(-50%, 0);
-webkit-transform: translate(-50%, 0);
-ms-transform: translate(-50%, 0);
}

#notice-close {
}

a.nclose {
display: block;
text-decoration: none;
font-size: 16px;
text-transform: uppercase;
text-align: right;
line-height: 30px;
vertical-align: bottom;
}

a.nclose:hover {
text-decoration: none;
}

a.nclose i {
font-size: 30px;
vertical-align: bottom;
}

#logo {
margin: 0 auto;
padding: 80px 0 30px 0;
width: 90%;
max-width: 1100px;
min-height: 180px;
color: #316467;
text-align: left;
}

#logo img.imglogo {
float: left;
margin-right: 30px;
border: solid 2px #67a2a6;
}

#logo a img.imglogo:hover {
border: solid 2px #e6f1f1;
}

h1.logo {
margin: 0 0 4px 0;
font-weight: 500;
}

h1.logo a {
display: block;
margin: 0;
padding: 27px 0 0 0;
color: #316467;
text-decoration: none;
font-size: 1.4em;
line-height: 1.2em;
}

#logo h4 {
margin: 0; padding: 0;
color: #316467;
}

#hdrtext {
float: left;
}

#mobilemenu, #submenu, .mobilemenu span, .submenu span {
display: none;
}

#menu {
margin: 0;
padding: 5px 0;
width: 100%;
text-align: center;
background: #e6f1f1;
color: #316467;
}

ul.nav-header {
list-style: none;
margin: 0 auto;
padding: 12px 0;
width: 90%;
max-width: 1100px;
display: table;
text-align: left;
}

ul.nav-header li {
float: left;
margin: 3px 0;
padding: 8px 30px 8px 0;
}

ul.nav-header li a {
margin: 0;
padding: 3px;
outline: 0;
color: #316467;
font-size: 1.05em;
font-weight: bold;
text-decoration: none;
text-transform: uppercase;
}

ul.nav-header li a:active {
color: #4c8e92;
}

ul.nav-header li a:hover, ul.nav-header li.nav-selected a, ul.nav-header li.nav-path-selected a {
color: #4c8e92;
border-bottom: solid 1px #4c8e92;
}

#pagebody {
position: relative;
margin: 0;
padding: 0 0 40px 0;
width: 100%;
text-align: center;
background: #f6f5f5 url(/themes/theme_rainfo/images/pagebodybg.png) bottom center repeat-x;
min-height: 800px;
}

#maincontent {
position: relative;
margin: 0 auto;
padding: 10px 0 0 0;
width: 90%;
max-width: 1100px;
min-height: 800px;
text-align: left;
}

#maincontent, #content.home, #middle, #sidebar, #sidebar.home  {
word-wrap: break-word; 
}

#widecontent {
position: relative;
margin: 0;
padding: 0;
width: 90%;
max-width: 1100px;
min-height: 800px;
}

#content.home {
margin: 0;
padding: 40px 30px 40px 0;
width: 45%;
max-width: 450px;
box-sizing: border-box;
}

#secondary {
float:right;
margin: 60px 0 0 0;
padding: 0;
width: 55%;
max-width: 530px;
}

#secondary .banner {
margin: 0;
padding: 20px;
background: #39767a;
color: #f6f5f5;
}

#secondary .banner:hover {
background: #4C8E92;
}

#secondary .banner h1, #secondary .banner h1 a, #secondary .banner h3 {
margin: 0;
padding: 0;
color: #f6f5f5;
text-decoration: none;
}

#secondary .banner h1 a:hover {
color: #E6F1F1;
}

#sidebar {
float:right;
margin: 50px 0 0 20px;
padding: 0;
width: 30%;
max-width: 280px;
box-sizing: border-box;
}

#middle {
margin: 40px 0;
padding: 0  0 0 20px;
border-left: 2px solid #E6F1F1;
font-size: 0.95em;
}

#sidebar.home {
float: none;
margin: 30px 0 30px 0;
padding: 10px 30px;
width: auto;
max-width: 100%;
line-height: 1.3em;
font-size: 0.95em;
background: #e6f1f1;
color: #316467;
}

#pagetitle {
margin: 0;
padding: 15px 30px;
width: 100%;
background: #39767a;
box-sizing: border-box;
}

#pagetitle h1, #pagetitle h2 {
margin: 5px 0;
padding: 0;
color: #f6f5f5;
line-height: 1.2em;
}

#pagetitle a {
color: #f6f5f5;
text-decoration: none;
}

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

#sidebarnav {
margin: 0;
padding: 30px 30px 20px 30px;
width: 100%;
box-sizing: border-box;
font-size: 0.9em;
background-color: #E6F1F1;
}

#sidebarnav ul.subnav, #sidebarnav ul.nav {
list-style: none;
position: static;
display: block;
margin: 0;
padding:  0;
text-align: left;
}

#sidebarnav ul.subnav li, #sidebarnav ul.nav li {
margin: 0 0 20px 0;
padding: 0;
line-height: 1.3em;
}

#sidebarnav ul.subnav li a, #sidebarnav ul.nav li a {
margin: 0;
padding: 0;
font-size: 1.1em;
line-height: 1.3em;
text-decoration: none;
}

#sidebarnav ul.subnav li a:hover, #sidebarnav ul.subnav li a.nav-selected, #sidebarnav ul.subnav li a.nav-path-selected, #sidebarnav ul.nav li a:hover, #sidebarnav ul.nav li a.nav-selected, #sidebarnav ul.nav li a.nav-path-selected {
color: #238d94;
border-bottom: 1px solid #238d94;
}

#sidebarnav ul.subnav li ul, #sidebarnav ul.nav li ul {
list-style: none;
margin: 5px 0 12px 15px;
padding: 0;
text-transform: none;
font-size: 0.95em;
}

#sidebarnav ul.subnav li ul li, #sidebarnav ul.nav li ul li {
list-style: none;
margin: 8px 0;
padding: 0;
}

#sidebarnav div.ccm-page-list h3 {
margin: 5px 0;
padding: 0;
font-size: 1.1em;
}

#sidebarnav div.ccm-page-list h3 a {
color: #333;
}

#sidebarnav div.ccm-page-list h3 a:hover {
color: #238d94;
text-decoration: underline;
}


#content {
margin: 0;
padding: 50px 30px 60px 0;
width: 70%;
max-width: 740px;
box-sizing: border-box;
}

#content img {
margin-right: 20px;
border: 3px solid #dcdfdf;
}

#content ul {
list-style-type: none;
margin: 5px 0;
padding: 0;
line-height: 1.5em;
}

#content ul li {
margin: 5px 20px 5px 25px;
padding: 0 0 0 0px;
}

#content ul li:before {
display: inline-block;
content: '\25FC';
color: #d0e7e7;
margin: 0 15px 0 -25px;
}

#content ol {
margin: 5px 0 5px 20px;
padding: 0;
font-size: 1em;
}

#content ol li {
margin: 5px 0;
padding: 0;
}

#footer {
margin: 0;
padding: 30px 0;
min-height: 120px;
background: #316467;
color: #f6f5f5;
}

#meta {
margin: 0 auto;
padding:0;
width: 90%;
max-width: 1100px;
font-size: 0.95em;
}

#meta p.credits {
clear: both;
padding-top: 30px;
font-size: 0.9em;
}

#meta a {
color: #f6f5f5; 
text-decoration: none;
}

#meta a:hover, #meta a:active {
color: #E6F1F1;
text-decoration: underline;
}

#meta ul.nav-footer {
float: left;
list-style: none;
margin: 20px 0;
padding: 0 30px 30px 0;
box-sizing: border-box;
width: 30%;
}

#meta ul.nav-footer:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}

#meta ul.nav-footer li {
display: block;
list-style: none;
margin: 10px;
padding: 0;
text-align: left;
}

#meta ul.nav-footer li a {
margin: 0;
padding: 0;
text-transform: uppercase;
}

#meta ul.nav-footer li a:hover {
text-decoration: none;
border-bottom: solid 1px #f6f5f5;
}

#meta ul.nav-footer li a.soc:hover {
border-bottom: none;
}

/****************Expander********************************************/

#content:first-child div.ccm-remo-expand {
margin-top: 30px;
}

#content div.ccm-remo-expand {
margin: 20px 0;
border-bottom: 1px solid #D0E7E7;
}

#content div.ccm-remo-expand-closed, #content div.ccm-remo-expand-open {
margin: 0;
padding: 0 0 10px 0;
color: #238d94;
font-size: 1.3em;
}

#content div.ccm-remo-expand-content {
padding: 0 0 20px 0;
}



/**Blog Styles*******************************************************/

#maincontent div.title h3 a, #content div.title h3 a, #subcontent div.title h3 a {
color: #777;
font-size: 1.4em;
text-decoration: none;
}

#maincontent div.title h3 a:hover, #content div.title h3 a:hover, #subcontent div.title h3 a:hover {
color: #238d94;
text-decoration: underline;
}

div.title h4, p.meta {
font-size: 0.9em;
text-transform: none;
margin: -5px 0 20px 0;
}

div.entry {
padding-bottom: 10px;
}

hr.blog-entry-divider {
margin: 0 0 20px 0;
height: 1px;
width: 80%;
background-color: #7ecddd;
color: #7ecddd;
border: none;
}

div.ccm-next-previous-wrapper {
padding: 20px 0 5px 0;
border-bottom: solid 1px #7ecddd;
}

div.ccm-search-block-tag-cloud-wrapper ul.ccm-search-block-tag-cloud, div.ccm-tags-display ul.ccm-tag-list
{list-style-type: none; margin: 0px; padding: 0px}
div.ccm-search-block-tag-cloud-wrapper ul.ccm-search-block-tag-cloud li, div.ccm-tags-display ul.ccm-tag-list li
{margin: 0; padding: 0; display: inline-block;font-size: 10px;}
div.ccm-search-block-tag-cloud-wrapper ul.ccm-search-block-tag-cloud li a, div.ccm-tags-display ul.ccm-tag-list li a
{border: none; background: transparent;padding: 4px; display: inline-block; text-decoration: none; vertical-align: middle;}
div.ccm-search-block-tag-cloud-wrapper ul.ccm-search-block-tag-cloud li a:hover, div.ccm-tags-display ul.ccm-tag-list li a:hover
{color: #7ecddd;border:none;background:transparent;}
div.ccm-search-block-tag-cloud-wrapper ul.ccm-search-block-tag-cloud li:first-child, div.ccm-tags-display ul.ccm-tag-list li:first-child {float: left; margin-right: 20px; white-space: nowrap; padding: 0px; margin-left: 0px}
* html ul.ccm-search-block-tag-cloud li {float: left; margin-right: 20px; white-space: nowrap; padding: 0px; margin-left: 0px}


/**End Blog Styles**/


/**Form styles*************************************************************/
#search {
margin: 0 0 10px 0;
padding: 0;
width: 270px;
height: 30px;
text-align: left;
}

#search h3, #search h4, #social #searchResults, #social .ccm-pagination {
display: none;
}

#search input[type="text"] {
margin: 0;
height: 30px;
width: 230px;
font-size: 12px;
padding: 2px 5px 1px 10px;
color: #044246;
border: none;
background: #f6f5f5;
}

#search input[type="submit"], button {
border: none;
color: #f6f5f5;
font-size: 1.5em;
cursor: pointer;
margin: 0;
padding: 0;
height: 37px;
width: 32px;
vertical-align: middle;
background: transparent;
}

#content .fa-search {
color: #316467;
}

#search input[type="submit"]:hover {
color: #444;
border: none;
}

.searchResult h3 a {
margin-top: 5px;
}

.searchResult .searchHighlight {
background-color: #696969;
}

#content div.field label {
display: block
}


#content input[type="text"], .guestBook-formBlock input[type="text"], div.field input[type="email"] {
margin: 5px 0 20px 0;
height: 30px;
width: 200px;
font-size: 12px;
padding: 2px 3px 1px 3px;
color: #000;
border: none;
background: #e6f1f1;
}

#content textarea, .guestBook-formBlock textarea {
margin: 20px 0;
padding: 3px;
color: #000;
border: none;
background: #e6f1f1;
}

#content input[type="submit"], submit.ccm-input-submit, #content .btn {
text-transform: uppercase;
background: #39767a;
color: #f6f5f5;
border: none;
cursor: pointer;
margin: 0;
padding:  7px 12px;
font-size: 1em;
height: 34px;
vertical-align: middle;
}

#content div.buttons {
margin: 20px 0;
}

#content input[type="submit"]:hover, .guestBook-formBlock input[type="submit"]:hover, #content .btn:hover {
color: #e6f1f1;
background: #316467;
border: none;
}

a.btn, a.btn:hover {
text-decoration: none;
}

/**Guestbook******************************************************************/

div.guestBook-entry {
padding:4px 0 4px 0;
margin:6px 0 12px 0;
}

.guestBook-entry div.contentByLine {
color: #fff;
margin-bottom: 4px;
}

.guestBook-entry div.guestBook-manage-links {
font-size:.8em;
color:#333333;
text-align:right;
float:right;
padding-left:8px; 
}
.guestBook-formBlock {
margin:12px 0 12px 0;
}
.guestBook-formBlock label {
display:block;
}
.guestBook-formBlock textarea {
width:100%;
height: 150px;
margin: 12px 0 12px 0;
}
.guestBook-formBlock .note {
font-size:10px;
}

.guestBook-formBlock span.error, div#guestBook-formBlock-<?php echo $controller->bID?> span.error {
color:#990000;
text-align:left;
}

/**End Form styles**/

/*===================== Responsive ====================*/
@media screen and (min-width: 906px) and (max-width: 1024px) {

p.socmedia {
display: none;
}
}

@media screen and (max-width: 906px) {

#logo img.imglogo, #hdrtext {
float: none;
}

h1.logo {
margin: 0 0 4px 0;
}

h1.logo a {
font-size: 1.2em;
line-height: 1.2em;
}

.mobilemenu, .submenu {
text-decoration: none;
text-align: left;
width: 90%;
padding: 10px 5%;
  display: block;
  font: normal normal normal 36px/1 'FontAwesome';
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
cursor: pointer;
}

.mobilemenu:before, .submenu:before {
  content: '\f0c9';
padding-right: 15px;
}

.mobilemenu span, .submenu span {
display: inline-block;
font-size: 24px;
}

/*Hide checkbox*/
input[type=checkbox]#mobilemenu, input[type=checkbox]#submenu {
    display: none;
}

/*Show menu when invisible checkbox is checked*/
input[type=checkbox]#mobilemenu:checked ~ .nav-header{
    display: block;
}

input[type=checkbox]#submenu:checked ~ .nav {
    display: block;
}

ul.nav-header, #sidebarnav ul.nav  {
display: none;
}

ul.nav-header li {
float: none;
}

.submenu {
margin: 0;
padding: 15px 30px;
width: 100%;
background: #4C8E92;
box-sizing: border-box;
color: #f6f5f5;
line-height: 1.2em;
}

.submenu h1 {
margin: 0;
padding: 0;
font-size: 24px;
color: #f6f5f5;
line-height: 1.2em;
}

#sidebarnav ul.nav {
margin: 0;
padding: 30px;
}

#sidebar, #secondary {
float: none;
width: 100%;
max-width: 100%;
margin: 40px 0 0 0;
padding: 0;
}

#middle {
border-left: none;
}

#sidebarnav, #content, #content.home, #middle, #sidebar.home {
width: 100%;
margin: 0;
padding: 30px 0;
}

#sidebarnav {
padding: 0;
}

#sidebar.home {
margin-top: 30px;
padding: 20px 30px;
}

#pagetitle {
display: none;
}
}

@media screen and (max-width: 768px) {
#social {
position: static;
margin: 0;
padding: 20px;
width: 100%;
box-sizing: border-box;
background: #316467;
}

#search {
margin-bottom: 20px;
width: 100%;
}

#search input[type="text"] {
margin: 0;
width: 330px;
}

p.socmedia {
display: none;
}

#logo {
padding-top: 30px;
}

#meta ul.nav-footer {
float: none;
width: 100%
}

}