@charset "UTF-8";
html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

/* Calculate values */
body {
  color: #666;
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  font-size: 1em;
  line-height: 1.5; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  line-height: 1.2;
  margin: 0 0 0.75em;
  color: #2E8DCD; }

p {
  margin: 0 0 0.75em; }

a {
  color: #7B479C;
  text-decoration: none;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: shade(#7B479C, 25%); }

hr {
  border-bottom: 1px solid #ddd;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

table {
  border-collapse: collapse;
  margin: 0.75em 1.2em;
  table-layout: fixed;
  width: 100%; }

th {
  border-bottom: 1px solid shade(#ddd, 25%);
  font-weight: 600;
  padding: 0.75em 0;
  text-align: left; }

td {
  border-bottom: 1px solid #ddd;
  padding: 0.75em 0; }

tr,
td,
th {
  vertical-align: middle; }

html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

/* Calculate values */
body {
  color: #666;
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  font-size: 1em;
  line-height: 1.5; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  line-height: 1.2;
  margin: 0 0 0.75em;
  color: #2E8DCD; }

p {
  margin: 0 0 0.75em; }

a {
  color: #7B479C;
  text-decoration: none;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: shade(#7B479C, 25%); }

hr {
  border-bottom: 1px solid #ddd;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

table {
  border-collapse: collapse;
  margin: 0.75em 1.2em;
  table-layout: fixed;
  width: 100%; }

th {
  border-bottom: 1px solid shade(#ddd, 25%);
  font-weight: 600;
  padding: 0.75em 0;
  text-align: left; }

td {
  border-bottom: 1px solid #ddd;
  padding: 0.75em 0; }

tr,
td,
th {
  vertical-align: middle; }

header.navigation {
  /*transparentize(white, 0.5); */
  background-color: auto;
  /* $navigation-background; */
  border: 0px solid red;
  min-height: 2.4em;
  width: 100%;
  min-width: 350px;
  z-index: 999; }
  header.navigation img {
    height: auto;
    width: auto; }
  header.navigation .navigation-wrapper {
    position: relative;
    z-index: 9999; }
  header.navigation .signature {
    display: none; }
    @media only screen and (max-width: 700px) {
      header.navigation .signature {
        position: absolute;
        top: 0px;
        left: 10px;
        display: block;
        float: left;
        max-width: 240px; } }
  header.navigation nav {
    float: left;
    min-height: 2.4em;
    z-index: 9999999;
    padding-top: 0;
    border: 0px solid green;
    width: 100%; }
    @media only screen and (min-width: 700px) {
      header.navigation nav {
        padding-top: 0px;
        padding-left: 0px;
        float: left; } }
  header.navigation ul.navigation-menu {
    font-family: "Bree Serif", serif;
    clear: both;
    display: none;
    margin: 0 auto;
    overflow: visible;
    padding: 0;
    width: 100%;
    z-index: 9999;
    margin-bottom: 20px; }
    header.navigation ul.navigation-menu.show {
      display: block; }
    @media only screen and (min-width: 700px) {
      header.navigation ul.navigation-menu {
        display: inline;
        margin: 0;
        padding: 0; } }
  header.navigation ul li.nav-link {
    background: white;
    font-size: 1.2em;
    display: block;
    line-height: 2.4em;
    overflow: hidden;
    padding-right: 2px;
    padding-left: 2px;
    text-align: left;
    width: 100%;
    z-index: 9999; }
    @media only screen and (min-width: 700px) {
      header.navigation ul li.nav-link {
        font-size: 1.2em;
        background: transparent;
        display: inline;
        line-height: 2.4em;
        text-decoration: none;
        width: auto; } }
    header.navigation ul li.nav-link a {
      width: 100%;
      /*
      &:focus,
      &:hover {
        background-color: lighten($brand-primary, 8%);
        color: white;
      }
      
      @media only screen and (min-width: $horizontal-bar-mode) {
        &:focus,
        &:hover {
          color: $navigation-color-hover;
          background-color: inherit;
        }
      }
      */ }
      @media only screen and (min-width: 700px) {
        header.navigation ul li.nav-link a {
          width: inherit; } }
  header.navigation .active-nav-item a {
    background-color: #7B479C;
    color: white; }
    @media only screen and (min-width: 700px) {
      header.navigation .active-nav-item a {
        border-bottom: 1px solid #346D98;
        padding-bottom: 3px; } }
  header.navigation li.more.nav-link {
    padding-right: 0; }
    @media screen {
      header.navigation li.more.nav-link {
        padding-right: 0em; } }
    header.navigation li.more.nav-link > ul > li:first-child a {
      padding-top: 1em; }
    header.navigation li.more.nav-link a {
      margin-right: 1em; }
    header.navigation li.more.nav-link > a {
      padding-right: 0.6em; }
    header.navigation li.more.nav-link > a::after {
      color: rgba(52, 109, 152, 0.7);
      content: "\25BE"; }
  header.navigation li.more {
    overflow: visible;
    padding-right: 0; }
    header.navigation li.more a {
      padding-right: 0.8em; }
    header.navigation li.more > a {
      padding-right: 1.6em;
      position: relative; }
      @media screen {
        header.navigation li.more > a {
          margin-right: 1em; } }
      header.navigation li.more > a::after {
        content: "›";
        font-size: 1.2em;
        position: absolute;
        right: 0.5em; }
    header.navigation li.more:focus > .submenu, header.navigation li.more:hover > .submenu {
      display: block; }
    @media screen {
      header.navigation li.more {
        padding-right: 0.8em;
        position: relative; } }
  header.navigation ul.submenu {
    display: none;
    padding-left: 0;
    font-size: 0.9em; }
    @media screen {
      header.navigation ul.submenu {
        left: -1em;
        position: absolute;
        top: 1.5em; } }
    @media screen {
      header.navigation ul.submenu .submenu.fly-out-right {
        left: 7.8em;
        top: 0; } }
    @media screen {
      header.navigation ul.submenu .submenu.fly-out-left {
        left: -7.8em;
        top: 0; } }
    @media screen {
      header.navigation ul.submenu .submenu {
        left: 7.8em;
        top: 0; } }
    header.navigation ul.submenu li {
      display: block;
      padding-right: 0; }
      @media screen {
        header.navigation ul.submenu li {
          line-height: 1.8461538462em; }
          header.navigation ul.submenu li:first-child > a {
            border-top-left-radius: 3px;
            border-top-right-radius: 3px; }
          header.navigation ul.submenu li:last-child > a {
            border-bottom-left-radius: 3px;
            border-bottom-right-radius: 3px;
            padding-bottom: 0.7em; } }
      header.navigation ul.submenu li a {
        background-color: #f7f7f7;
        display: inline-block;
        text-align: right;
        width: 100%; }
        @media screen {
          header.navigation ul.submenu li a {
            background-color: white;
            padding-left: 1em;
            text-align: left;
            width: 8em; } }
  header.navigation .navigation-tools {
    background: #505050;
    margin-right: 60px;
    clear: both;
    display: block;
    height: 2.4em; }
    @media screen {
      header.navigation .navigation-tools {
        background: transparent;
        clear: none;
        float: right; } }
  header.navigation .search-bar {
    float: left;
    padding: 0.85em 0.85em 0.7em 0.6em;
    width: 60%; }
    header.navigation .search-bar form {
      position: relative; }
      header.navigation .search-bar form input[type=search] {
        background: white;
        border: 1px solid #f2f2f2;
        border-radius: 6px;
        box-sizing: border-box;
        color: rgba(52, 109, 152, 0.7);
        font-size: 0.9em;
        font-style: italic;
        margin: 0;
        padding: 0.5em 0.8em;
        width: 100%; }
        @media screen {
          header.navigation .search-bar form input[type=search] {
            width: 100%; } }
      header.navigation .search-bar form button[type=submit] {
        background: white;
        border: 0;
        bottom: 0.3em;
        left: auto;
        outline: none;
        padding: 0 9px;
        position: absolute;
        right: 0.3em;
        top: 0.3em; }
        header.navigation .search-bar form button[type=submit] img {
          height: 12px;
          opacity: 0.7;
          padding: 1px; }
    @media screen {
      header.navigation .search-bar {
        display: inline-block;
        position: relative;
        width: 16em; }
        header.navigation .search-bar input {
          box-sizing: border-box;
          display: block; } }

logo .navigation-menu-button {
  position: absolute;
  top: 10px;
  right: 20px;
  color: rgba(52, 109, 152, 0.7);
  display: block;
  float: left;
  line-height: 2.4em;
  margin: 0 15px 0 10px;
  padding-right: 1em;
  text-decoration: none;
  text-transform: uppercase; }
  @media only screen and (min-width: 700px) {
    logo .navigation-menu-button {
      display: none; } }
  logo .navigation-menu-button:focus, logo .navigation-menu-button:hover {
    color: #666; }

html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

/* Calculate values */
body {
  color: #666;
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  font-size: 1em;
  line-height: 1.5; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  line-height: 1.2;
  margin: 0 0 0.75em;
  color: #2E8DCD; }

p {
  margin: 0 0 0.75em; }

a {
  color: #7B479C;
  text-decoration: none;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: shade(#7B479C, 25%); }

hr {
  border-bottom: 1px solid #ddd;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

table {
  border-collapse: collapse;
  margin: 0.75em 1.2em;
  table-layout: fixed;
  width: 100%; }

th {
  border-bottom: 1px solid shade(#ddd, 25%);
  font-weight: 600;
  padding: 0.75em 0;
  text-align: left; }

td {
  border-bottom: 1px solid #ddd;
  padding: 0.75em 0; }

tr,
td,
th {
  vertical-align: middle; }

header .logged_in_block {
  width: 100%;
  font-size: 86%;
  padding: 0px;
  margin: 0px;
  border: 0px solid #7E8CB8; }
  header .logged_in_block .logged_in {
    color: #6C7FA9;
    vertical-align: top;
    width: auto !important;
    display: block;
    text-align: right; }
    header .logged_in_block .logged_in a {
      color: #6C7FA9;
      padding: 0 5px; }
      header .logged_in_block .logged_in a:link, header .logged_in_block .logged_in a:visited {
        text-decoration: none;
        color: #6C7FA9; }
      header .logged_in_block .logged_in a:hover {
        color: #445786;
        text-decoration: underline; }
    header .logged_in_block .logged_in .loginpre {
      width: 22px;
      height: 26px; }
    header .logged_in_block .logged_in .logincontent {
      padding: 0;
      background: url(c27-login-bg.png) repeat-x top; }
      header .logged_in_block .logged_in .logincontent b {
        padding-right: 10px; }
      header .logged_in_block .logged_in .logincontent img {
        vertical-align: bottom; }
    header .logged_in_block .logged_in .loginpost {
      width: 22px;
      height: 26px;
      background: url(c27-login-right.png) no-repeat top; }
header nav li a {
  padding: 4px 6px;
  color: #334998;
  text-decoration: none; }
header nav li .selected {
  background: #AEB6D6; }
header nav .tab_spacer a {
  color: #FFF;
  border-bottom: 5px solid #2E8DCD;
  display: none; }
header nav .tab_spacer_right {
  display: none; }
header nav .tab_home a {
  color: #3E578E;
  border-bottom: 5px solid #E02A90; }
header nav .tab_home a:hover {
  color: #fff;
  background-color: #E02A90; }
header nav .tab_pages a {
  color: #334998;
  border-bottom: 5px solid #334998; }
header nav .tab_pages a:hover {
  color: #fff;
  background-color: #334998; }
header nav .tab_blogs a {
  color: #FF6600;
  border-bottom: 5px solid #FF6600; }
header nav .tab_blogs a:hover {
  color: #fff;
  background-color: #FF6600; }
header nav .tab_contact a {
  color: #32B530;
  border-bottom: 5px solid #8CD965; }
header nav .tab_contact a:hover {
  color: #fff;
  background-color: #8CD965; }
header #blogs_tab .tab_blogs a, header #photos_tab .tab_photos a, header #projects_tab .tab_projects a {
  background: #AEB6D6; }
header #blogs_tab .tab_blogs a:hover, header #photos_tab .tab_photos a:hover, header #projects_tab .tab_projects a:hover {
  background: #334998; }

subnav-bar {
  margin: 6px 0 16px 4px;
  padding: 0;
  background-color: #AEB6D6;
  border-top: 0px solid #7E8CB8;
  min-height: 16px;
  clear: both;
  font-size: 90%; }
  subnav-bar ul {
    float: right;
    margin: 0 20px;
    padding: 0; }
  subnav-bar li {
    display: inline;
    list-style-type: none; }
  subnav-bar a:link, subnav-bar a:visited {
    float: left;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    padding: 2px 20px; }
  subnav-bar a:hover {
    color: #FFF;
    background: #334998; }

.home-page {
  background: #AEB6D6 url("/site_media/static/pages/images/section_headers/about_us.jpg") no-repeat; }

.about-us {
  background: #AEB6D6 url("/site_media/static/pages/images/section_headers/about_us.jpg") no-repeat; }

.projects {
  background: #AEB6D6 url("/site_media/static/pages/images/section_headers/projects.jpg") no-repeat; }

.contact-us {
  background: #AEB6D6 url("/site_media/static/pages/images/section_headers/contact_us.jpg") no-repeat; }

.tags {
  background: #AEB6D6 url("/site_media/static/pages/images/section_headers/projects.jpg") no-repeat; }

@media only screen and (min-width: 45em) {
  header nav .tab_spacer_left a {
    display: inline; } }
@media only screen and (min-width: 1100px) {
  header nav .tab_spacer_right a {
    display: inline; } }
html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

/* Calculate values */
body {
  color: #666;
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  font-size: 1em;
  line-height: 1.5; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Seravek, "Gill Sans Nova", Ubuntu, Calibri, "DejaVu Sans", source-sans-pro, sans-serif;
  line-height: 1.2;
  margin: 0 0 0.75em;
  color: #2E8DCD; }

p {
  margin: 0 0 0.75em; }

a {
  color: #7B479C;
  text-decoration: none;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: shade(#7B479C, 25%); }

hr {
  border-bottom: 1px solid #ddd;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

table {
  border-collapse: collapse;
  margin: 0.75em 1.2em;
  table-layout: fixed;
  width: 100%; }

th {
  border-bottom: 1px solid shade(#ddd, 25%);
  font-weight: 600;
  padding: 0.75em 0;
  text-align: left; }

td {
  border-bottom: 1px solid #ddd;
  padding: 0.75em 0; }

tr,
td,
th {
  vertical-align: middle; }

.footer-container {
  background-color: #2E8DCD;
  margin-top: 1em; }

footer {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  grid-auto-rows: minmax(40px, auto);
  grid-column-gap: 10px;
  grid-template-areas: "sp op op op op sp ct ct ct";
  border: 0px solid red;
  max-width: 1060px;
  margin: 10px auto;
  min-height: 160px;
  -webkit-font-smoothing: antialiased;
  background-size: auto;
  background-repeat: repeat-x;
  background-color: #2E8DCD;
  padding: 3em 2em 2em 2.3em; }
  footer .contact {
    /* neat include span-columns(10) */
    grid-area: ct;
    grid-row: 1;
    border-right: 0;
    border-left: 0px dotted white;
    padding-left: 1em; }
    footer .contact h2 {
      font-size: 2em;
      margin: 0.5em 0; }
    footer .contact a {
      color: white;
      padding: 0;
      hover-color: red;
      hover-style: underline; }
    footer .contact ul {
      max-width: inherit; }
    footer .contact li {
      display: block;
      width: 100%;
      border-bottom: 0px dotted #666;
      padding: 6px 0; }
      footer .contact li i {
        display: block;
        float: left;
        margin-top: 4px;
        margin-right: 0.5em;
        font-size: 1em; }
  footer button,
  footer .button {
    background-color: #FF653F; }
  footer .offices {
    /* neat include span-columns(10) */
    grid-area: op;
    margin-top: 2em; }
    footer .offices a img {
      width: 60%; }
    footer .offices h3 {
      font-size: 1.5em; }
    footer .offices ul {
      margin: 0 auto; }
    footer .offices li {
      background-size: 3em;
      padding: 0;
      font-size: 1.1em; }
    footer .offices li:first-child {
      margin-right: -1px; }
  footer .tel {
    display: block; }
  footer .vcard {
    -o-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    transition: all 0.2s ease;
    overflow: hidden;
    font-size: 0.9em;
    padding-left: 0.5em; }
    footer .vcard a {
      color: #fff; }
    footer .vcard a:hover {
      text-decoration: underline; }
    footer .vcard span {
      display: block; }

@media only screen and (min-width: 45em) {
  footer {
    min-height: 260px; }
    footer .contact {
      grid-area: op;
      grid-row: 1;
      border-left: 2px dotted white;
      padding-left: 1em; }
      footer .contact ul {
        max-width: 18em; }
      footer .contact a {
        padding: 0.5em; }
      footer .contact li i {
        display: block;
        margin-right: 0.5em; }
    footer .offices {
      border: 0px solid red;
      /* neat include span-columns(4) */
      margin-top: 0; }
      footer .offices a img {
        width: 60%; }
      footer .offices a img {
        width: 60%; }
    footer .vcard {
      padding-left: 1em; } }
.section-navigation {
  padding-bottom: 15px;
  border: 0px solid #999;
  margin-bottom: 30px;
  width: 90%; }
  .section-navigation h2 {
    font-size: 1.2em;
    margin-bottom: 12px; }
  .section-navigation ul {
    margin: 0;
    padding: 0; }
    .section-navigation ul .children {
      margin-left: 1em; }
  .section-navigation li {
    list-style-type: none;
    margin-top: 0px; }
  .section-navigation a {
    display: block; }
    .section-navigation a:link, .section-navigation a:visited {
      font-size: 1.1em;
      text-decoration: none;
      color: #828BB1;
      padding: 0.6em 20px;
      width: 100%;
      border-top: 1px dotted #334998;
      background: url("../pages/images/buttons/nav_bullet_blue.png") 8px 1.3em no-repeat; }
    .section-navigation a:hover {
      color: #334998;
      background: #D3D8E7 url("../pages/images/buttons/nav_bullet_blue.png") 11px 1.3em no-repeat; }

@media only screen and (min-width: 45em) {
  .section-navigation {
    width: 70%; } }
body {
  margin: 0px;
  min-height: 300px; }

#main-container {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-auto-rows: minmax(35px, auto);
  grid-column-gap: 10px;
  grid-template-areas: "logo logo logo logo logo logo" "hd  hd  hd  hd  hd  hd" "snb  snb  snb  snb  snb  snb" "main main main main main main" "rc rc rc rc rc rc" "ft  ft  ft  ft  ft  ft";
  border: 0px solid red;
  max-width: 940px;
  margin: 0 auto;
  padding: 20px; }

#main-container > * {
  min-width: 0;
  box-sizing: border-box; }

/*---------------------------
/   Default columns layout
---------------------------*/
header {
  grid-area: hd;
  border: 0px solid orange; }

logo {
  grid-area: logo;
  display: flex;
  max-width: 240px;
  border: 0px solid orange;
  padding: 20px 50px 0px 10px; }
  logo .header-strapline {
    display: none; }
  @media only screen and (min-width: 700px) {
    logo {
      display: block;
      max-width: 240px; }
      logo img {
        width: auto;
        height: auto; }
      logo .header-strapline {
        display: block; } }

subnav-bar {
  grid-area: snb;
  border: 0px solid orange; }

.left-column {
  grid-area: main;
  padding-top: 0;
  border: 0px solid green;
  padding-right: 1em; }

.right-column {
  background: #fff url("/static/images/header-blue-gradient.jpg") right 0 top 0;
  background-size: auto;
  background-repeat: repeat-x;
  grid-area: rc;
  border: 0px solid blue;
  padding: 2em 1em;
  margin-top: 40px; }
  .right-column .content {
    margin-top: 4em; }
  .right-column img {
    width: auto;
    border: 0px solid grey;
    padding: 4px;
    margin-top: 3em; }

/*************************************
*
* TYPOGRAPHY
*
**************************************/
h1 {
  font-size: 146.41%;
  color: #384665; }

h2 {
  font-size: 133.1%;
  color: #384665; }

h3 {
  font-size: 121%;
  color: #384665; }

.clear-section {
  clear: both;
  border: 0px solid green;
  height: 10px; }

.body-copy p,
.body-copy ul {
  list-style-type: disc;
  margin-left: 20px;
  list-style-position: inside;
  font-size: 1.1em;
  color: #666; }
  .body-copy p li,
  .body-copy ul li {
    margin-bottom: 1em; }

.body-copy h1 {
  font-size: 3em; }

.body-copy h1.long-title {
  font-size: 3em; }

.body-copy h2 {
  font-size: 1.4em;
  color: #384665;
  border: 0px solid green;
  margin-top: 1.5em; }

.body-content {
  padding-right: 20px;
  border: 0px solid green; }

.intro {
  font-size: 1.1em;
  color: #666;
  margin-bottom: 3em; }

.list-inline > li {
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px; }

.container {
  padding: 0;
  max-width: 96em;
  margin: 0 auto; }

.bxslider {
  width: 90%; }

.screenshots-main {
  text-align: center;
  width: 100%;
  max-width: initial; }
  .screenshots-main img {
    border: 1px solid #999;
    padding: 5px;
    width: 100%; }

.pull-quote {
  padding: 3em;
  border: 0px solid #999;
  background: url("/static/images/quote-66.png") 8px 1.3em no-repeat; }

.pull-quote p {
  background: url("/static/images/quote-99.png") bottom right no-repeat;
  padding-bottom: 3em;
  font-style: italic;
  text-indent: 30px; }

.right-column .pull-quote {
  padding: 40px 0px 0px 0px;
  margin: 10px;
  border: 0px solid green;
  background: url("/static/images/quote-66.png") -5px 0px no-repeat; }
.right-column .pull-quote p {
  text-indent: 60px; }

.blue-tinted-box {
  background-color: #DDE9F2;
  padding: 15px;
  border: 0px solid #ccc;
  margin: 20px 0;
  border-radius: 10px; }
  .blue-tinted-box ul {
    list-style-type: disc;
    margin-left: 20px;
    list-style-position: inside; }
    .blue-tinted-box ul li {
      margin-bottom: 1em; }

/*# sourceMappingURL=main.css.map */
