/*
The styles in this stylesheet only apply to resolutions 768px and up

CALCULATING DIMENSIONS:
----------------------
The layout is fluid. The sote wrapper (.col-full) has a fixed pixel max-width.
All subsequent dimensions are calculated based on that fixed pixel width, using the formula: target / context = result
Credit - http://www.alistapart.com/articles/fluidgrids/

-----
INDEX
-----

1. Global dropdown styles
2. Top Navigation
3. Main navigation dropdown menus
 -3.1 General dropdown menus
4. Containers & Columns
5. Footer widgets
6. IE Fixes
7. Featured Slider

/*----------------------*/
/**
 * Variables
 */
/**
 * Functions
 */
/**
 * Mixins
 */
/**
 * Animations
 */
@-webkit-keyframes spin-360 {
  from {
    -webkit-transform: rotate(0);
    /* Saf3.1+, Chrome */
  
    -moz-transform: rotate(0);
    /* FF3.5+ */
  
    -ms-transform: rotate(0);
    /* IE9 */
  
    -o-transform: rotate(0);
    /* Opera 10.5 */
    transform: rotate(0);
    zoom: 1;
  }
  50% {
    -webkit-transform: rotate(180deg);
    /* Saf3.1+, Chrome */
  
    -moz-transform: rotate(180deg);
    /* FF3.5+ */
  
    -ms-transform: rotate(180deg);
    /* IE9 */
  
    -o-transform: rotate(180deg);
    /* Opera 10.5 */
    transform: rotate(180deg);
    zoom: 1;
  }
  to {
    -webkit-transform: rotate(0);
    /* Saf3.1+, Chrome */
  
    -moz-transform: rotate(0);
    /* FF3.5+ */
  
    -ms-transform: rotate(0);
    /* IE9 */
  
    -o-transform: rotate(0);
    /* Opera 10.5 */
    transform: rotate(0);
    zoom: 1;
  }
}
/*----------------------*/
@media only screen and (min-width: 769px) {
  /* 1. GLOBAL DROPDOWN STYLES (these are purely for the dropdown layout and you should only edit the width of the dropdowns) */
  ul.nav {
    position: relative;
    margin-bottom: 0;
    /* LEVEL 2 */
  
    /* LEVEL 3 */
  
  }
  ul.nav li {
    position: relative;
    float: left;
    zoom: 1;
    list-style: none;
  }
  ul.nav li a {
    display: block;
    padding: .53em 1em;
  }
  ul.nav ul {
    width: 11.089em;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;
    margin: 0;
  }
  ul.nav ul li {
    float: none;
  }
  ul.nav ul li a {
    width: 100%;
    display: inline-block;
    -webkit-box-sizing: border-box;
    /* Safari/Chrome, other WebKit */
  
    -moz-box-sizing: border-box;
    /* Firefox, other Gecko */
  
    box-sizing: border-box;
    /* Opera/IE 8+ */
  
  }
  ul.nav ul ul {
    left: 100%;
    top: 0;
  }
  ul.nav li:hover > ul {
    visibility: visible;
  }
  /* 2. TOP NAVIGATION (Add top navigation presentational styles here) */
  .admin-bar #top {
    top: 28px;
  }
  #top {
    background: #00142c;
    border-bottom: 1px solid #20364e;
    padding: 0 1.618em 0;
    position: fixed;
    z-index: 9998;
    top: 0;
    width: 100%;
  }
  #top #top-nav {
    display: block;
  }
  #top ul.nav {
    font-size: .857em;
    /* LEVEL 2 */
  
    /* LEVEL 3 */
  
  }
  #top ul.nav > li > a {
    border: 1px solid #20364e;
    border-width: 0 1px 0 0;
    padding: 0em 1.618em;
    margin: .53em 0;
  }
  #top ul.nav > li:first-child > a {
    padding-left: 0;
  }
  #top ul.nav li.parent > a {
    position: relative;
    padding-right: 1.8em;
  }
  #top ul.nav li.parent > a:after {
    content: "";
    display: block;
    border: 0.3em solid #43a1d6;
    border-color: #43a1d6 transparent transparent transparent;
    position: absolute;
    top: 42%;
    right: .8751em;
  }
  #top ul.nav ul {
    background: #00142c;
  }
  /* 3. MAIN NAVIGATION DROPDOWN MENUS (Add main navigation presentational styles here) */
  #navigation {
    display: block !important;
    float: left;
    margin: 0 0 0 3.631em;
  }
  #navigation ul.nav {
    /* LEVEL 2 */
  
    /* LEVEL 3 */
  
  }
  #navigation ul.nav > li a {
    color: #ffffff;
    font-size: 1.2em;
    margin: 0;
  }
  #navigation ul.nav > li a:hover {
    text-decoration: none;
    color: #43a1d6;
  }
  #navigation ul.nav > li.current_page_item a,
  #navigation ul.nav > li.current_page_parent a,
  #navigation ul.nav > li.current-menu-ancestor a,
  #navigation ul.nav > li.current-cat a,
  #navigation ul.nav > li.li.current-menu-item a {
    color: #ff9d4c;
  }
  #navigation ul.nav > li.current_page_item li a,
  #navigation ul.nav > li.current_page_parent li a,
  #navigation ul.nav > li.current-menu-ancestor li a,
  #navigation ul.nav > li.current-cat li a,
  #navigation ul.nav > li.li.current-menu-item li a {
    color: #ffffff;
  }
  #navigation ul.nav li.parent > a:after {
    font-family: 'FontAwesome';
    display: inline-block;
    font-size: 100%;
    margin-left: .618em;
    font-weight: normal;
    line-height: 1em;
    width: 1em;
    text-align: right;
    content: "\f078";
    position: relative;
    top: -2px;
    left: -3px;
    font-size: .8em;
    width: 1.387em;
    color: #43a1d6;
  }
  #navigation ul.nav li.parent ul.sub-menu a:after {
    color: #fff;
  }
  #navigation ul.nav ul {
    background: #43a1d6;
    border: 4px solid #82c0e4;
    left: -1px;
  }
  #navigation ul.nav ul li {
    border-bottom: 1px dashed #82c0e4;
    margin: 0 1em;
  }
  #navigation ul.nav ul li a {
    padding: .53em 0;
  }
  #navigation ul.nav ul li a:hover {
    color: #dddddd;
  }
  #navigation ul.nav ul li:last-child {
    border: 0;
  }
  #navigation ul.nav ul ul {
    top: -1px;
    left: 100%;
  }
  .nav-toggle {
    display: none;
  }
  /* 4. CONTAINERS & COLUMNS */
  .has-top-menu #header {
    margin-top: 32px;
  }
  #header {
    padding: 2.618em 0;
  }
  #header #fixed-header.fixed {
    position: fixed;
    width: 100%;
    z-index: 9997;
    padding: 10px 0;
    box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.15);
  }
  #header #fixed-header.fixed #logo {
    margin-top: 1.4em;
  }
  #header #fixed-header.fixed #navigation {
    padding: 1em 0 1.1em;
  }
  #header #fixed-header.fixed #header-contact {
    top: .53em;
  }
  #header #fixed-header.fixed #header-components {
    padding: 1em 0 1.1em;
  }
  #header #logo {
    margin: 0;
  }
  #header hgroup {
    float: left;
  }
  #header hgroup h1,
  #header hgroup h2,
  #header hgroup h3 {
    float: none;
  }
  #header #header-contact {
    float: right;
    position: relative;
    top: -0.618em;
  }
  #header #header-contact ul.nav li.phone {
    font-size: 1.618em;
    line-height: .7;
    background-size: auto;
    font-weight: normal;
    background-position: left bottom;
  }
  #header #header-contact ul.nav li.phone span {
    display: block;
  }
  #header #header-components {
    float: none;
    margin-left: 0;
  }
  #main.fullwidth,
  .layout-full #main,
  .col-full {
    max-width: 1140px;
    margin: 0 auto;
    width: 100%;
  }
  #content {
    margin: 0 auto;
  }
  #main {
    width: 65%;
  }
  #sidebar {
    margin-top: 0;
    width: 31%;
  }
  .entry img {
    max-width: 100%;
  }
  .layout-full .entry img {
    max-width: 100%;
  }
  .layout-right-content #main {
    float: right;
  }
  .layout-right-content #sidebar {
    float: left;
  }
  .layout-full #main {
    width: 100%;
  }
  .col-left {
    float: left;
  }
  .col-right {
    float: right;
  }
  .page-template-template-contact-php .location-twitter .col-left {
    float: left;
  }
  .page-template-template-contact-php .location-twitter #office-location {
    width: 48%;
    margin: 0;
  }
  .page-template-template-contact-php .location-twitter .contact-social {
    float: left;
    width: 48%;
  }
  .page-template-template-contact-php .location-twitter .contact-social #twitter {
    margin: 0 0 1em;
  }
  #footer-wrapper {
    padding: 2.618em 0 0;
  }
  #footer {
    margin: 0 auto;
    padding: 2.618em 0;
  }
  #footer ul.nav {
    margin: .53em 0 0;
  }
  #footer ul.nav li a {
    padding: 0 1em;
  }
  /* Comments */
  #comments .comment .comment-entry {
    width: 85%;
    margin: 0 0 0 2.244em;
  }
  /* Comment Form */
  #respond .comment-form-author,
  #respond .comment-form-email,
  #respond .comment-form-url {
    width: 30.75%;
    float: left;
    margin-right: 3.8%;
  }
  #respond .comment-form-url {
    margin-right: 0;
  }
  /* Post Stuff */
  .post .post-meta ul li.post-date,
  .type-page .post-meta ul li.post-date,
  .type-feature .post-meta ul li.post-date,
  .type-testimonial .post-meta ul li.post-date,
  .search-results .page .post-meta ul li.post-date,
  .search-results .type-product .post-meta ul li.post-date,
  .search-results .type-feature .post-meta ul li.post-date,
  .search-results .type-testimonial .post-meta ul li.post-date {
    display: none;
  }
  .post .date-badge,
  .type-page .date-badge,
  .type-feature .date-badge,
  .type-testimonial .date-badge,
  .search-results .page .date-badge,
  .search-results .type-product .date-badge,
  .search-results .type-feature .date-badge,
  .search-results .type-testimonial .date-badge {
    display: block;
  }
  .post .entry blockquote,
  .type-page .entry blockquote,
  .type-feature .entry blockquote,
  .type-testimonial .entry blockquote,
  .search-results .page .entry blockquote,
  .search-results .type-product .entry blockquote,
  .search-results .type-feature .entry blockquote,
  .search-results .type-testimonial .entry blockquote {
    padding: 1.618em 2.618em 1.618em 6.854em;
  }
  .archive .type-testimonial .testimonial-avatar {
    float: left;
    width: 16%;
    margin: 0;
  }
  .archive .type-testimonial .testimonial-avatar .testimonial-border {
    float: left;
  }
  .archive .type-testimonial .testimonial-avatar .testimonial-border .avatar {
    margin: 0;
  }
  .archive .type-testimonial .testimonial-content {
    float: right;
    width: 72%;
  }
  .archive .type-testimonial .testimonial-content:after {
    left: -17px;
    top: 40%;
    -webkit-transform: rotate(90deg);
    /* Saf3.1+, Chrome */
  
    -moz-transform: rotate(90deg);
    /* FF3.5+ */
  
    -ms-transform: rotate(90deg);
    /* IE9 */
  
    -o-transform: rotate(90deg);
    /* Opera 10.5 */
    transform: rotate(90deg);
    zoom: 1;
  }
  /* 5. FOOTER WIDGETS */
  #footer-widgets {
    margin: 0 auto;
  }
  #footer-widgets .block {
    margin-right: 3.8%;
    float: left;
  }
  #footer-widgets.col-1 .block {
    width: 100%;
    float: none;
  }
  #footer-widgets.col-1 .footer-widget-1 {
    margin-right: 0;
  }
  #footer-widgets.col-2 .block {
    width: 48%;
  }
  #footer-widgets.col-2 .footer-widget-2 {
    margin-right: 0;
  }
  #footer-widgets.col-3 .block {
    width: 30.75%;
  }
  #footer-widgets.col-3 .footer-widget-3 {
    margin-right: 0;
  }
  #footer-widgets.col-4 .block {
    width: 22.05%;
  }
  #footer-widgets.col-4 .footer-widget-4 {
    margin-right: 0;
  }
  #footer-widgets .widget {
    margin: 0 0 2.244em;
    border: 0;
    padding: 0;
  }
  /* 6. IE FIXES */
  .ie7 #top-nav {
    position: relative;
    z-index: 9999999;
  }
  .ie7 #header {
    position: relative;
    z-index: 9999999;
  }
  /* 7. Featured Slider */
  #featured-slider {
    padding: 0 0 2.618em;
  }
  #featured-slider .col-full {
    margin: 0 auto;
    position: relative;
  }
  #featured-slider ul.slides li {
    overflow: hidden;
    z-index: 2;
  }
  #featured-slider ul.slides li .slide-content {
    opacity: 0;
    filter: alpha(opacity=@opacity * 100);
    transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -webkit-transition: opacity 1s ease-in-out;
    position: absolute;
    bottom: 0;
    width: 24.883em;
    background: #0f253d;
    background: rgba(17, 35, 65, 0.85);
    padding: 1.387em 2.244em;
    margin: .53em;
    font-size: .857em;
  }
  #featured-slider ul.slides li .slide-content p:last-child {
    margin-bottom: 0;
  }
  #featured-slider ul.slides li .slide-media {
    margin: 0;
  }
  #featured-slider ul.slides li.has-image {
    box-shadow: 1px 6px 5px 0 rgba(0, 0, 0, 0.25);
    -webkit-box-shadow: 1px 6px 5px 0 rgba(0, 0, 0, 0.25);
  }
  #featured-slider ul.slides li.no-image .slide-content {
    position: static;
    float: left;
    width: 100%;
    background: none;
    padding: 0;
    margin: 0;
  }
  #featured-slider ul.slides li.has-video-and-image {
    position: relative;
  }
  #featured-slider ul.slides li.has-video-and-image .slide-video {
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -moz-background-clip: padding;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 8px solid #000;
    border-color: rgba(0, 0, 0, 0.6);
    width: 60%;
    position: absolute;
    bottom: 1.387em;
    right: 1.387em;
  }
  #featured-slider ul.slides li.flex-active-slide .slide-content {
    opacity: 1;
    filter: alpha(opacity=@opacity * 100);
  }
  #featured-slider .flex-direction-nav {
    z-index: 0;
    position: absolute;
    margin: 0;
    top: 0;
    width: 100%;
    left: 0;
  }
  #featured-slider .flex-direction-nav a {
    position: absolute;
  }
  #featured-slider .flex-direction-nav a.flex-prev {
    left: -4em;
  }
  #featured-slider .flex-direction-nav a.flex-next {
    right: -4em;
  }
  #featured-slider .flex-control-nav {
    bottom: 1em;
    right: 1.387em;
  }
  /* 8. Homepage */
  #intro-message .left-section {
    float: left;
    margin: 0;
  }
  #intro-message .right-section {
    float: right;
  }
  #home-gallery article .post {
    width: 31%;
    margin-right: 3%;
  }
  .homepage-area .widget_woothemes_testimonials .quote {
    padding-bottom: 1em;
    margin-bottom: 0;
    float: left;
    width: 26%;
    padding-right: 5%;
    margin-right: 5%;
    border: 1px solid #eeeeee;
    border-width: 0 1px 0 0;
  }
  .homepage-area .widget_woothemes_testimonials .quote.last {
    padding-bottom: 1em;
  }
  .homepage-area .widget_woothemes_features .feature {
    padding-bottom: 1em;
    margin-bottom: 0;
    float: left;
    width: 26%;
    padding-right: 5%;
    margin-right: 5%;
    border: 1px solid #eeeeee;
    border-width: 0 1px 0 0;
  }
  .homepage-area .widget_woothemes_features .feature.last {
    padding-bottom: 1em;
    padding-right: 0;
    border-right: 0;
  }
  /* 9. Bottom Social Connect */
  #bottom-social-connect {
    margin: 0 0 2.618em;
    padding: 1.327em 0 0;
  }
  #bottom-social-connect ul li {
    padding: 0 0 1.387em;
  }
  #bottom-social-connect ul li a {
    margin: 0 1.618em 0 0;
    padding: .618em 1.9em .618em 3.6em;
    text-indent: 0;
    width: auto;
    border-width: 0 1px 0 0;
    height: auto;
  }
  /* 10. CSS Conditionals */
  .has-footer-widgets #footer-widgets {
    margin: 0 auto 2.244em;
  }
  /* 11. Image Gallery */#main .gallery .gallery-item {
    width: 33%;
  }
  #main .gallery-columns-2 .gallery-item {
    width: 50%;
  }
  #main .gallery-columns-4 .gallery-item {
    width: 25%;
  }
  #main .gallery-columns-2 .attachment-medium {
    max-width: 92%;
    height: auto;
  }
  #main .gallery-columns-4 .attachment-thumbnail {
    max-width: 84%;
    height: auto;
  }
  #main #connect .col-left,
  #main #connect .col-right {
    width: 46%;
  }
  #main #connect .related-posts {
    margin-top: 0;
    padding-left: 2.244em;
    border-left: 1px solid #eeeeee;
  }
  #home-gallery article .post {
    width: 210px;
    height: 146px;
    overflow: hidden;
  }
  #home-gallery article .post .details {
    display: block;
    position: relative;
    width: 210px;
    height: 146px;
    cursor: pointer;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    background: rgba(15, 37, 61, 0.95);
    -webkit-box-sizing: border-box;
    /* Safari/Chrome, other WebKit */
  
    -moz-box-sizing: border-box;
    /* Firefox, other Gecko */
  
    box-sizing: border-box;
    /* Opera/IE 8+ */
  
  }
  #home-gallery article .post .details:before {
    font-family: 'FontAwesome';
    display: inline-block;
    font-size: 100%;
    margin-right: .618em;
    font-weight: normal;
    line-height: 1em;
    width: 1em;
    content: "\f002";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 4.618em;
    color: #fff;
    text-indent: 0;
    line-height: 2.244;
  }
  #home-gallery article .post .details h3 {
    position: absolute;
    bottom: 0;
    color: #fff;
    font-size: 1em;
    margin: 1em;
  }
  #home-gallery article .post:hover .details {
    margin-top: -146px;
  }
  /* 12. Timeline Template */
  #archives .archives_list li {
    padding-bottom: 0;
    border-bottom: 0;
  }
  #archives .archives_list .date {
    display: inline-block;
    width: 22.5%;
  }
  #archives .archives_list .linked {
    display: inline-block;
    width: 48%;
  }
  #archives .archives_list .comments {
    display: inline-block;
    width: 22.5%;
  }
  #archives .archives_list .comments a {
    padding-left: 1.236em;
  }
}
@media all and (max-width: 1025px) {
  .widget .star-rating {
    margin-top: 1.618em;
  }
  .col-full {
    width: auto;
    margin: 0 2em;
  }
  #content {
    margin: 0 2em;
  }
  .post .date-badge,
  .type-page .date-badge,
  .type-feature .date-badge,
  .type-testimonial .date-badge,
  .search-results .page .date-badge,
  .search-results .type-product .date-badge,
  .search-results .type-feature .date-badge,
  .search-results .type-testimonial .date-badge {
    display: none;
  }
  .post .post-meta ul li.post-date,
  .type-page .post-meta ul li.post-date,
  .type-feature .post-meta ul li.post-date,
  .type-testimonial .post-meta ul li.post-date,
  .search-results .page .post-meta ul li.post-date,
  .search-results .type-product .post-meta ul li.post-date,
  .search-results .type-feature .post-meta ul li.post-date,
  .search-results .type-testimonial .post-meta ul li.post-date {
    display: inline-block;
  }
  #footer-widgets,
  #footer {
    padding-left: 2em;
    padding-right: 2em;
  }
  #featured-slider {
    padding-left: 2em;
    padding-right: 2em;
  }
  #featured-slider .flex-direction-nav {
    z-index: 3;
  }
  #featured-slider .flex-direction-nav a.flex-prev {
    left: 2em;
  }
  #featured-slider .flex-direction-nav a.flex-next {
    right: 2em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .cart-page #main {
    width: 100%;
  }
  .cart-page #sidebar {
    display: none;
  }
  #top {
    width: auto;
    position: static;
  }
  .has-top-menu #header {
    margin-top: 0;
  }
  #home-gallery article .post {
    height: auto;
  }
  #home-gallery article .post .details {
    display: none;
  }
  .homepage-area .widget_woothemes_testimonials .quote a img {
    width: 40px;
    height: 40px;
  }
}
@media all and (max-width: 320px) {
  .homepage-area .button {
    margin: 0 0 1em;
  }
  .homepage-area .button.view-all {
    float: none;
  }
}
